KR20140051483A - 오브젝트 특성에 따라 적응적으로 화면 정보 데이터를 보호하는 방법 및 장치 - Google Patents

오브젝트 특성에 따라 적응적으로 화면 정보 데이터를 보호하는 방법 및 장치 Download PDF

Info

Publication number
KR20140051483A
KR20140051483A KR1020120110687A KR20120110687A KR20140051483A KR 20140051483 A KR20140051483 A KR 20140051483A KR 1020120110687 A KR1020120110687 A KR 1020120110687A KR 20120110687 A KR20120110687 A KR 20120110687A KR 20140051483 A KR20140051483 A KR 20140051483A
Authority
KR
South Korea
Prior art keywords
information data
screen information
screen
client device
cloud server
Prior art date
Application number
KR1020120110687A
Other languages
English (en)
Other versions
KR102038963B1 (ko
Inventor
박성범
김용제
엄명진
조대성
최웅일
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020120110687A priority Critical patent/KR102038963B1/ko
Priority to US14/038,057 priority patent/US9807062B2/en
Publication of KR20140051483A publication Critical patent/KR20140051483A/ko
Application granted granted Critical
Publication of KR102038963B1 publication Critical patent/KR102038963B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

클라우드 서버가 클라이언트 디바이스에서 표시하기 위한 화면을 나타내는 화면 정보 데이터를 제공하는 방법 및 장치가 개시된다.
본 발명에 따른 클라우드 서버가 클라이언트 디바이스에서 표시하기 위한 화면을 나타내는 화면 정보 데이터를 제공하는 방법은 화면 정보 데이터를 생성하는 단계; 화면을 구성하는 오브젝트의 특성에 기초하여 상기 화면 정보 데이터의 보호 여부를 결정하는 단계; 결정된 결과에 기초하여 상기 화면 정보 데이터를 암호화 하는 단계; 및 암호화된 화면 정보 데이터를 전송하는 단계를 포함한다.

Description

오브젝트 특성에 따라 적응적으로 화면 정보 데이터를 보호하는 방법 및 장치{Method and Apparatus for Selectively Providing Protection of Screen information data}
본 발명은 클라우드 서버에서, 클라이언트 디바이스에서 표시하기 위한 화면을 나타내는 데이터를 전송하는 기술과 관련되며, 특히 클라이언트 디바이스로 전송하는 데이터를 선택적으로 암호화하는 기술과 관련된다.
클라우드 컴퓨팅(Cloud Computing)은 인터넷 또는 네트워크를 기반으로 하는 컴퓨팅 환경을 말한다. 인터넷 상에 존재하는 데이터 서버에 프로그램 인프라를 구축하고, 사용자가 이용하고자 할 때 컴퓨터, 휴대폰 등을 통해 데이터 서버에 저장된 프로그램들을 이용할 수 있도록 한다. 다시 말하면, 구름(Cloud)과 같이 무형의 형태로 존재하는 하드웨어 및/또는 소프트웨어 등의 컴퓨팅 자원을 사용자가 컴퓨터, 휴대폰과 같은 단말기(Terminal 또는 Client)를 통해 이용할 수 있다. 최근에는 클라우드 컴퓨팅 기술이 발전하여 대부분의 업무를 서버에서 수행하고 사용자는 씬 클라이언트(Thin Client)/제로 클라이언트(Zero Client)를 통해 서버에서 수행된 프로그램의 결과가 표시된 화면을 수신하는 방식 또한 대두되고 있다. 씬 클라이언트/제로 클라이언트란 서버에 접속하기 위한 단말의 역할만을 수행하는 클라이언트로서 이전의 클라이언트들에 비해 적은 시스템 요구 사항을 가진 클라이언트를 의미한다.
도 1은 클라우드 컴퓨팅 시스템의 일 예를 도시한다. 본 발명에서 “클라우드 서버(100)”라고 하면 클라우드 컴퓨팅에서 데이터가 저장되어 있는 서버를 의미한다. 클라우드 서버에 저장된 데이터는 프로그램, 어플리케이션과 같은 소프트웨어가 포함된다. “클라이언트 디바이스(110 내지 160)”는 클라우드 서버에 접속하는데 사용하는 단말로서, 클라우드 서버에서 소프트웨어를 이용하여 처리한 결과를 디스플레이 하기 위한 하드웨어를 제공하는 역할을 하는 장치를 의미한다. 클라이언트 디바이스는 퍼스널 컴퓨터(Personal Computer: PC)(110), 태블릿(120). 핸드폰(130), 랩탑(Laptop)(140), 스마트폰(150)일 수 있다. 물론 상술한 예시에 한정되는 것은 아니다. 또한 클라이언트 디바이스(110 내지 160)는 디스플레이 장치와 사용자 입력을 수신하고 이를 클라우드 서버로 송신하기 위한 최소한의 구성요소를 포함하는 씬 클라이언트/제로 클라이언트인 디스플레이 디바이스(160)일 수 있다.
도 1의 예시에서, 클라이언트 디바이스는 제어 신호를 수신하여 클라우드 서버로 송신하고, 클라우드 서버는 제어 신호에 따른 동작을 수행한다. 예를 들어 클라이언트 디바이스가 특정 어플리케이션을 실행하기 위한 제어 신호를 클라우드 서버로 송신하면, 클라우드 서버는 제어 신호에 따라 특정 어플리케이션을 실행하고, 실행된 결과 화면을 표시하기 위한 데이터를 클라이언트 디바이스에게 송신한다.
일반적인 컴퓨팅 디바이스에서는 사용자기 키보드, 마우스 등의 입력 장치를 통해 제어 신호를 입력하면, 제어 신호를 입력 받은 컴퓨팅 디바이스 내부의 중앙 처리 장치(CPU)와 같은 연산 유닛 및 저장 장치를 이용하여 제어 신호를 처리하고, 처리 결과를 모니터 등의 디스플레이 장치에 출력한다. 반면 클라우드 컴퓨팅 시스템에서는 클라이언트 디바이스를 통해 입력된 제어신호를 네트워크를 통해 클라우드 서버로 송신하고, 클라우드 서버에서 제어 신호에 따른 동작을 실행한 후, 실행된 결과 화면을 표시하기 위한 데이터를 네트워크를 통해 클라이언트 디바이스에게 송신한다.
이러한 클라우드 컴퓨팅 시스템에서는 실행된 결과 화면에 대한 데이터를 클라이언트 디바이스에게 전송하는 것이 필수적이며, 실행된 결과 화면에 대한 데이터는 클라이언트 디바이스에서 수행한 정보들을 그대로 포함하고 있으므로, 클라우드 서버와 클라이언트 디바이스간 송수신하는 데이터에 대한 보안은 필수적이다. 일반적으로 서버와 클라이언트간 전송되는 데이터는 SRTP(Secure Real-Time Transport Protocol)과 같은 네트워크 전송 보안 프로토콜(Protocol)을 통해 보호된다. 하지만 네트워크 레벨에서 보안 문제가 발생하는 경우에는 클라우드 서버에서 실행된 결과를 화면에 표시하기 위한 데이터는 제 3 자에게 그대로 노출될 수 있다. 따라서 네트워크 레벨의 보안과는 별도로, 클라우드 서버와 클라이언트 디바이스 간 송수신 하는 데이터를 암호화하여 전송하는 방식을 사용할 수 있다. 그러나 클라우드 서버와 클라이언트 디바이스 간 송수신되는 모든 데이터를 암호화하는 경우에는 클라우드 서버의 과부하가 발생할 수 있으며, 전송 효율이 대폭 저하되어, 실시간으로 사용자가 입력한 신호의 처리가 어려울 수 있고, 별도의 장치나 프로세스가 필요하여 추가비용이 발생할 수 있다.
본 발명은 클라우드 컴퓨팅 시스템에 있어서, 클라우드 서버와 클라이언트 디바이스 간 송수신하는 데이터를 암호화 하는 방법을 제공한다. 특히 클라우드 서버에서 클라이언트 디바이스로 전송되는 화면 정보 데이터를 선택적으로 암호화함으로써 클라우드 서버의 과부하, 전송 효율이 저하와 같은 문제점을 해결하고자 한다.
상술한 문제점을 해결하기 위한 클라우드 서버가 클라이언트 디바이스에서 표시하기 위한 화면을 나타내는 화면 정보 데이터를 제공하는 방법은, 상기 화면 정보 데이터를 생성하는 단계; 상기 화면을 구성하는 오브젝트의 특성에 기초하여 상기 화면 정보 데이터의 보호 여부를 결정하는 단계; 상기 결정된 결과에 기초하여 상기 화면 정보 데이터를 암호화 하는 단계; 및 상기 암호화된 화면 정보 데이터를 전송하는 단계를 포함한다.
상기 화면 정보 데이터를 암호화 하는 단계는, 상기 화면 정보 데이터의 일부에 대해 암호화할 수 있다.
상기 화면 정보 데이터의 보호 여부를 결정하는 단계는, 상기 클라우드 서버에서 상기 오브젝트를 표시하기 위해 실행되는 어플리케이션에 기초하여, 화면 정보 데이터의 보호여부를 결정할 수 있다.
상기 화면 정보 데이터의 보호 여부를 결정하는 단계는, 상기 화면에 포함된 오브젝트의 종류에 기초하여 상기 화면 정보 데이터의 보호여부를 결정할 수 있다.
상기 오브젝트의 종류는, 이미지, 텍스트 및 비디오 중 적어도 하나를 포함할 수 있다.
상기 암호화 하는 단계는, 엔트로피 인코딩 및 심볼 맵핑 알고리즘을 이용하여 암호화 하는 단계를 포함할 수 있다.
상기 화면 정보 데이터 제공 방법은, 상기 클라이언트 디바이스가 유효한 클라이언트 디바이스인지 여부를 판단하는 단계; 및 상기 클라이언트 디바이스가 유효한 클라이언트 디바이스인 경우, 복호화를 위한 정보를 상기 클라이언트 디바이스에게 전송하는 단계를 더 포함할 수 있다.
상기 화면 정보 데이터의 보호 여부를 결정하는 단계는, 상기 보호 여부를 결정하기 위한 오브젝트의 특성에 대한 기준 정보를 클라이언트 디바이스로부터 수신하는 단계를 포함할 수 있다.
상기 보호 여부를 결정하는 단계는, 상기 오브젝트의 특성 및 기 설정된 시간 정보를 고려하여 보호 여부를 결정할 수 있다.
상기 보호 여부를 결정하는 단계는, 상기 오브젝트의 특성 및 기 설정된 좌표 정보를 고려하여 상기 좌표에 대응되는 화면 정보 데이터의 보호 여부를 결정하는 것을 특징으로 하는 화면 정보 데이터 제공 방법.
본 발명에 따른 클라이언트 디바이스에서 표시하기 위한 화면을 나타내는 화면 정보 데이터를 제공하는 클라우드 서버는, 상기 화면 정보 데이터를 생성하는 화면 정보 데이터 생성부; 상기 화면을 구성하는 오브젝트의 특성에 기초하여 상기 화면 정보 데이터의 보호 여부를 결정하는 보호 결정부; 상기 결정된 결과에 기초하여 상기 화면 정보 데이터를 암호화 하는 암호화부; 및 상기 암호화된 화면 정보 데이터를 전송하는 송신부를 포함한다.
상기 암호화부는, 상기 화면 정보 데이터의 일부에 대해 암호화하는 것을 포함할 수 있다.
상기 보호 결정부는, 상기 클라우드 서버에서 상기 오브젝트를 표시하기 위해 실행되는 어플리케이션에 기초하여, 화면 정보 데이터의 보호여부를 결정할 수 있다.
상기 보호 결정부는, 상기 화면에 포함된 오브젝트의 종류에 기초하여 상기 화면 정보 데이터의 보호여부를 결정할 수 있다.
상기 객체는 이미지, 텍스트 및 비디오 중 적어도 하나를 포함할 수 있다.
상기 암호화부는, 엔트로피 인코딩 및 심볼 맵핑 알고리즘을 이용하여 암호화를 수행할 수 있다.
상기 클라우드 서버는, 상기 클라이언트 디바이스가 유효한 클라이언트 디바이스인지 여부를 판단하는 유효 단말 판단부를 더 포함할 수 있고, 상기 판단한 결과에 근거하여 상기 송신부에서 상기 클라이언트 디바이스가 유효한 클라이언트 디바이스인 경우 복호화를 위한 정보를 상기 클라이언트 디바이스에게 전송할 수 있다.
상기 클라우드 서버는, 상기 보호 여부를 결정하기 위한 오브젝트의 특성에 대한 기준 정보를 클라이언트 디바이스로부터 수신하는 수신부를 더 포함할 수 있다.
상기 보호 결정부는, 상기 오브젝트의 특성 및 기 설정된 시간 정보를 고려하여 보호 여부를 결정할 수 있다.
상기 보호 결정부는, 상기 오브젝트의 특성 및 기 설정된 좌표 정보를 고려하여 상기 좌표에 대응되는 화면 정보 데이터의 보호 여부를 결정할 수 있다.
본 발명에 따르면, 클라우드 컴퓨팅 시스템에서 클라우드 서버가 클라이언트 디바이스에서 표시하기 위한 화면을 나타내는 화면 정보 데이터를 제공시 선택적으로 암호화함으로써, 네트워크 레벨의 보안 문제가 발생하는 경우에도 화면 정보 데이터의 보안이 유지된다.
또한 모든 화면 정보 데이터를 암호화 하지 않으므로, 전송 효율에 큰 차이가 없어 실시간으로 사용자가 입력한 신호를 처리하는데 유리하다
도 1은 일반적인 클라우드 컴퓨팅 시스템을 나타낸다.
도 2는 본 발명의 일 실시예에 따른 클라우드 서버의 화면 정보 데이터 제공 방법을 도시한다.
도 3은 본 발명의 일 실시예에 따른 클라우드 서버의 구조를 도시하는 블록도이다.
도 4는 본 발명의 다른 실시예에 따른 클라우드 서버의 화면 정보 데이터 제공 방법을 도시한다.
도 5는 본 발명의 다른 실시예에 따른 클라우드 서버의 화면 정보 데이터의 제공 방법을 도시한다.
도 6은 본 발명의 일 실시예에 따른 클라이언트 디바이스에서 화면 정보 데이터를 수신하는 방법을 도시한다.
도 7은 본 발명의 일 실시예에 따른 클라우드 서버와 클라이언트 디바이스 간 통신을 수행하는 절차에 대해 도시한다.
도 8은 본 발명의 일 실시예에 따른 화면 정보 데이터를 보호하는 방법을 설명하기 위한 도면이다.
도 9는 본 발명의 다른 실시예에 따른 화면 정보 데이터를 보호하는 방법을 설명하기 위한 도면이다.
도 10은 본 발명의 다른 실시예에 따른 화면 정보 데이터를 보호하는 방법을 설명하기 위한 도면이다.
도 11은 본 발명의 다른 실시예에 따른 화면 정보 데이터를 보호하는 방법을 설명하기 위한 도면이다.
이하에서는 도면을 참조하여 본 발명의 실시예들을 자세히 설명한다.
도 2는 본 발명의 일 실시예에 따른 클라우드 서버의 화면 데이터 제공 방법을 도시한다.
단계 210에서, 클라우드 서버는 화면 정보 데이터를 생성한다. 화면 정보 데이터라 하면, 클라이언트 디바이스에서 표시하기 위한 화면을 나타내는 정보를 의미한다. 즉, 클라이언트 디바이스가 사용자 입력을 수신 받고, 수신 받은 클라이언트 디바이스에서 사용자 입력에 기초한 정보를 송신하면, 클라우드 서버에서 사용자의 입력 신호에 따른 동작을 수행한다. 클라우드 서버에서는 사용자의 입력 신호에 따른 동작을 수행한 결과를 클라이언트 디바이스의 디스플레이 장치에서 표시하기 위해 결과 화면을 나타내는 데이터를 클라이언트 디바이스에게 송신한다. 화면 정보 데이터는 이미지(Image), 프레임(Frame) 또는 이미지, 프레임 등과 같은 영상정보 및 이를 송신하기 위해 생성된 비트맵(Bitmap), 비트스트림(Bitstream) 등을 모두 포함할 수 있으며, 상기 예시들에 한정되는 것은 아니다.
또한 전술한 바와 같이 클라이언트 디바이스는 PC, 스마트폰 등과 같은 클라우드 서버에 접속하기 위한 단말의 역할을 하는 일반적인 클라이언트 디바이스 일 수 있으며, 연산 유닛(예를 들면, CPU)을 따로 구비하고 않거나 최소한으로 구비하고 있는 씬 클라이언트(Thin Client) 또는 제로 클라이언트(Zero Client) 일 수 있다. 또한 클라이언트 디바이스는 사용자 인터페이스(User Interface)를 구비하여 사용자 인터페이스를 통해 사용자로부터 제어 신호를 입력 받을 수 있다.
단계 220에서, 클라우드 서버는 오브젝트의 특성에 기초하여 화면 정보 데이터의 보호 여부를 결정한다. 클라우드 서버에서는 클라이언트 디바이스로 송신하기 위한 화면 정보 데이터를 생성시, 화면 정보 데이터의 전체 또는 특정 영역을 암호화하기 위해 오브젝트의 특성에 기초하여 화면 정보 데이터의 보호 여부를 결정할 수 있다.
오브젝트는 윈도우(Window)와 같이 어플리케이션의 실행에 따라 생성된 창, 아이콘(Icon), 이미지(Image), 텍스트(Text), 비디오(Video)과 같이 화면 내에 포함된 모든 객체를 의미하며, 상기 예시에 제한되지 않는다. 오브젝트를 포함한 화면을 구성하기 위해서 클라우드 서버에서는 디스플레이 커맨드(Display Command)를 사용하므로, 클라우드 서버에서는 화면을 구성하는 각 오브젝트를 인식할 수 있다. 또한 다른 방식을 통해서 화면에 표시된 또는 표시될 오브젝트를 인식할 수도 있다. 디스플레이 커맨드란 클라우드 서버가 프레임, 이미지 등과 같은 화면 정보 데이터를 생성하기 위하여 사용하는 명령어로, 화면 내의 어느 부분에 어떤 오브젝트를 표시해야 하는지를 나타낸다.
오브젝트의 특성이라 함은 오브젝트를 분류하는 기준하기 위한 기준이다. 예를 들면, 오브젝트의 종류 또는 화면 정보 데이터에 오브젝트를 표시하기 위해 클라우드 서버에서 실행되는 어플리케이션을 포함할 수 있다. 그러나 본 발명이 상기 예시에 제한되는 것은 아니다. 또한 화면 정보 데이터의 전체 뿐만 아니라 일부만을 보호할 수도 있다. 예를 들면, 화면에 특정 주소를 가진 웹페이지(Web-Page)(예를 들면, 구글(Google))와 같은 오브젝트를 표시하기 위해서는 웹 브라우저(Web Browser) 어플리케이션을 실행해야 한다. 즉, 웹페이지가 표시된 오브젝트를 보호하기를 원하는 경우 클라우드 서버에서 웹 브라우저가 실행된 결과가 표시된 윈도우를 포함하는 화면 정보 데이터를 암호화 할 수 있다. 다시 말해서, 클라우드 서버에서 실행되는 어플리케이션을 고려하여 해당 화면 정보 데이터가 보호 되어야할 필요성이 있는지를 결정할 수 있다. 또한 화면 내에 포함된 오브젝트의 종류에 따라 이미지, 텍스트 또는 비디오가 포함된 경우 화면 전체 또는 해당 부분을 보호할 수 있다.
보호 여부를 결정하는 기준은 클라우드 서버에서 제공하는 정책에 따라 결정될 수 있으며, 사용자가 직접 설정 할 수도 있다. 물론 두 가지 모두를 고려할 수 있으며, 상기의 예시에 제한되지 않는다. 특히 텍스트의 경우 파싱(Parsing)을 통해 특정 텍스트가 화면 정보 데이터에 포함되어 있는지를 확인할 수 있으며, 특정 텍스트가 포함된 경우 보호를 결정하도록 설정할 수 있다.
예를 들어, 클라우드 컴퓨팅 시스템에서 영화를 시청하는 경우, 클라이언트 디바이스를 통해 사용자는 클라우드 서버에 접속하여 클라우드 서버에 저장되어 있는 영화를 재생하기 위해 미디어 플레이어(Media Player)를 실행한다. 클라우드 서버는 미디어 플레이어를 통해 영화를 재생하고, 영화가 재생되고 있는 화면을 클라이언트 디바이스에서 표시하기 위해 화면 정보 데이터를 클라이언트 디바이스에 송신한다. 화면에 표시된 미디어 플레이어의 윈도우(Window)가 하나의 오브젝트일 수 있으며, 동영상 자체 또한 오브젝트로 인식될 수 있다. 클라우드 서버에서는 영화가 재생되는 화면을 구성하므로 화면에 표시된 오브젝트가 미디어 플레이어를 통해 재생된 오브젝트 또는 동영상인 것을 인식하고, 해당 오브젝트의 특성에 따라 보호가 필요한지 여부를 결정할 수 있다.
단계 230에서, 보호 여부를 결정한 결과에 따라 화면 정보 데이터를 암호화한다. 본 명세서에서의 암호화라 함은 단순히 암호화(Encryption) 만을 뜻하는 것이 아니라 인코딩(Encoding)을 포함할 수 있다. 즉, 암호화는 화면 정보 데이터를 인코딩하는 단계에서 수행될 수도 있다. 또한 인코딩하는 단계와 별도로 암호화 하는 단계를 포함할 수 있다. 암호화는 클라이언트 디바이스를 통해 화면 정보 데이터를 수신받아야 하는 정당한 사용자가 아닌 제 3 자가 화면 정보 데이터를 복호화 하는 것을 막기 위한 모든 방법을 포함한다. 따라서 인코딩 단계 후 추가적으로 암호화를 수행하는 방법 뿐만 아니라 인코딩만을 실행하는 경우에도 화면 정보 데이터의 보안성이 유지될 수 있는 모든 방법을 포함한다. 즉, 엔트로피 인코딩(Entropy Encoding) 및 심볼 맵핑 알고리즘(Symbol Mapping Algorithm)과 같은 인코딩 방식만을 통해서도 보안성을 유지할 수 있다. 엔트로피 인코딩(Entropy Encoding) 및 심볼 맵핑 알고리즘(Symbol Mapping Algorithm)만을 사용하는 경우라도, 정당한 사용자가 아니라면 심볼 맵핑을 디코딩(Decoding)하기 위한 정보(역맵핑을 위한 정보)를 알 수 없으므로, 인코딩된 화면 정보 데이터를 정상적으로 디코딩할 수 없어 화면 정보 데이터가 보호될 수 있다. 엔트로피 인코딩은 심볼이 나올 확률에 따라 심볼을 나타내는 코드의 길이를 달리하는 인코딩 방식이며, 심볼 맵핑 알고리즘은 필요에 따라 심볼을 대응시키는 알고리즘이다. 엔트로피 인코딩 및 심볼 맵핑 알고리즘은 당업자에게 자명한 사항이므로 자세한 설명은 생략한다.
또한 본 명세서에서의 사용되는 암호화 방법은 비밀키, 공개키 방식 등과 같은 일반적인 암호화 방식이 사용될 수 있으며, 암호화 방법에 대한 제한은 없다. 뿐만 아니라 전술한 바와 같이, 인코딩 방법 또한 엔트로피 인코딩 및 심볼 맵핑 알고리즘(Symbol Mapping Algorithm)이 사용될 수 있으며, 인코딩 방식은 상술한 예시에 의해 제한되지 않는다. 또한 일부의 영역, 특정 영역의 암호화만이 필요한 경우 해당 영역에 대응하는 데이터(예를 들면 해당 영역의 비트맵 또는 비트 스트림)만을 암호화 할 수 있다.
단계 240에서, 클라우드 서버는 암호화된 혹은 암호화가 필요하지 않은 경우에는 암호화하지 않은 화면 정보 데이터를 클라이언트 디바이스로 송신한다. 송신 과정에서는 전술한 바와 같이 네트워크 레벨에서 보안을 위한 다양한 방법들(예를 들면, SRTP)이 사용될 수 있으며 상기 예시에 제한되지 않는다. 클라이언트 디바이스는 화면 정보 데이터를 수신하고, 디스플레이 한다. 암호화된 화면 정보 데이터는 복호화하여 디스플레이 할 수 있다. 또한 복호화를 위해 클라우드 서버와 클라이언트 디바이스는 클라이언트 디바이스가 클라우드 서버로부터 화면 정보 데이터를 수신할 수 있는 정당한 사용자인지 여부를 판단하는 인증과정을 추가적으로 더 수행할 수 있다. 인증과정이란 서버와 클라이언트간 수행되는 일반적인 인증 방식으로서, 클라이언트를 통해 사용자에게 패스워드를 요구하거나, 클라이언트의 MAC 주소를 사용하여 인증을 수행하는 등의 방식을 사용할 수 있다. 본 발명은 상기 예시에 제한되지 않으며, 인증 과정은 당업자에게 자명한 과정이므로 자세한 설명은 생략한다.
뿐만 아니라 인증과정을 통해 클라이언트 디바이스가 암호화된 화면 정보 데이터를 복호화 하는데 필요한 정보(예를 들면 복호화키, 역 심볼 맵핑을 위한 정보 등)를 수신할 수 있다. 클라이언트 디바이스와 클라우드 서버간의 인증 방식은 제한되지 않는다.
도 3은 본 발명의 일 실시예에 따른 클라우드 서버(310)의 구조를 도시한다. 클라우드 서버(310)은 수신부(311), 화면 정보 데이터 생성부(312), 보호 결정부(313), 암호화부(314) 및 전송부(315)를 포함한다.
수신부(311)에서는, 클라이언트 디바이스(320)로부터 제어신호를 수신 받는다. 제어신호라 함은 클라이언트 디바이스(320)가 사용자 입력을 수신하고, 클라우드 서버(310)로 송신하기 위해 신호로 변경한 것을 의미한다.
화면 정보 데이터 생성부(312)는 클라이언트 디바이스(320)에서 표시하기 위한 화면을 나타내는 화면 정보 데이터를 생성한다. 다시 말해서, 수신부(311)에서 수신한 제어 신호에 따른 동작을 수행하고, 수행된 결과를 클라이언트 디바이스(320)의 화면에 표시하기 위해서 화면 정보 데이터를 생성하는 것이다.
보호 결정부(313)는 수행된 결과 화면에 포함된 오브젝트의 특성에 따라서 클라이언트 디바이스(320)로 송신할 화면 정보 데이터의 보호 여부를 결정한다. 오브젝트의 특성이란 도 2에서 설명한 바와 같이 오브젝트를 분류하는 기준이다. 예를 들면, 오브젝트의 종류 또는 화면 정보 데이터에 오브젝트를 표시하기 위해 클라우드 서버(310)에서 실행되는 어플리케이션을 포함할 수 있다. 그러나, 본 발명이 상기 예시에 제한되는 것은 아니다.
암호화부(314)는 화면 정보 데이터를 암호화한다. 오브젝트 특성에 따라 보호여부가 결정되면 보호가 필요한 화면 정보 데이터의 일부분만을 암호화 할 수 있다. 전술한 내용을 참조하면, 본 발명에서의 암호화란 화면 정보 데이터의 보안성이 유지될 수 있는 모든 방법을 포함하며, 인코딩 하는 단계와 함께 별도로 암호화 하는 단계를 수행하는 경우 뿐만 아니라 화면 정보 데이터를 인코딩하는 단계에서도 수행될 수 있다.
전송부(315)는 오브젝트의 보호 여부에 따라 암호화 과정이 실행되거나 실행되지 않은 화면 정보 데이터를 클라이언트 디바이스(320)로 송신한다. 화면 정보 데이터는 네트워크를 통해 클라이언트 디바이스(320)에게 전달된다.
또한 클라우드 서버(310)는 유효 단말 판단부(미도시)를 포함할 수 있다. 클라우드 서버(320)에서 암호화되어 송신된 화면 정보 데이터는 클라이언트 디바이스(320)에서 복호화하여 디스플레이된다. 암호화된 화면 정보 데이터를 복호화하기 위해서는 복호화를 위한 정보(예를 들면 복호화 키, 역 심볼 맵핑을 위한 정보 등)가 필요하다. 클라우드 서버(310)는 클라이언트 디바이스와 인증을 통해 복호화를 위한 정보를 송신할 수 있다. 유효 단말 판단부에서는 클라이언트 디바이스가 유효한 클라이언트 디바이스인지를 판단하고, 전송부(315)를 통해 복호화를 위한 정보를 송신할 수 있다.
도 4는 본 발명의 다른 실시예에 따른 클라우드 서버의 화면 데이터 제공 방법을 도시한다. 더 자세히는, 도 4는 클라우드 서버에서 실행되는 어플리케이션에 따라 화면 정보 데이터를 보호 여부를 결정하는 일 실시예이다.
단계 410에서, 클라우드 서버는 클라이언트 디바이스로부터 화면 정보 데이터 요청을 수신한다. 즉, 클라우드 서버는 어플리케이션을 실행하고, 실행 결과에 따라 클라이언트 디바이스의 화면에 출력되는 화면 정보 데이터에 대한 요청을 수신한다.
단계 420에서, 클라우드 서버는 수신된 요청에 따라 화면 정보 데이터를 생성한다. 실행 결과가 포함된 화면이라 함은 어플리케이션의 실행에 의한 결과에 따른 오브젝트가 포함된 화면을 의미한다. 화면이라 함은, 디스플레이 장치에서 표시되는 스크린(Screen)을 포함한다. 화면 정보 데이터는 전술한 바와 같이 이미지, 프레임, 비트맵, 비트스트림 등을 포함할 수 있으며 상기 예시에 국한되지 않는다.
단계 430에서, 클라우드 서버는 서버에서 실행되는 어플리케이션에 기초하여 생성된 오브젝트를 암호화를 통해서 보호할 것인지 여부를 판단한다. 예를 들어, 클라우드 서버 내에서 웹 브라우저(Web Browser)의 실행에 의해 생성되는 윈도우(Window)의 보호를 원하는 경우는 아래와 같이 보호 기준을 설정할 수 있다. 클라이언트 디바이스를 통해 사용자가 클라우드 서버 내의 웹 브라우저를 실행하면, 클라우드 서버는 웹 브라우저가 실행되었으므로, 웹 브라우저의 실행 결과로 생성되는 화면에 오브젝트(즉, 윈도우)를 표시한다. 즉, 클라우드 서버에서 실행되는 어플리케이션에 따라 화면에 포함되는 오브젝트가 생성되므로, 클라우드 서버에서 실행되는 어플리케이션에 따라서 오브젝트의 보호 여부를 판단하는 보호 기준을 설정할 수 있다. 미디어 플레이어와 같은 다른 어플리케이션 실행시에도 실행 결과에 따른 오브젝트가 화면에 포함되므로, 클라우드 서버는 실행되는 어플리케이션에 따라 오브젝트의 보호 여부를 결정할 수 있다. 어떤 어플리케이션의 실행시 오브젝트를 보호하는지에 대한 기준은 클라우드 서버에서 제공될 수 있고, 사용자가 직접 설정할 수도 있다. 추가적으로, 웹브라우저와 같은 어플리케이션에 의해 생성된 오브젝트(예를 들면, 윈도우) 내의 오브젝트들(예를 들면, 이미지, 텍스트 및 비디오)에 대한 보호 기준 또한 각각 설정될 수 있다.
또한 어플리케이션의 실행에 따른 오브젝트를 생성하고 이를 화면에 포함시키기 위해서는 디스플레이 커맨드를 사용하므로, 디스플레이 커맨드에 따라 오브젝트를 인식할 수 있다. 따라서 디스플레이 커맨드에 기초하여 오브젝트가 포함된 화면 정보 데이터를 보호할 지 여부 또한 결정할 수 있다. 예를 들면, 클라우드 서버에서 어플리케이션의 실행에 따라 클라이언트 디바이스의 화면에 출력될 오브젝트를 생성하는 때에는 디스플레이 커맨드를 사용한다. 즉, 클라우드 서버는 어떤 오브젝트가 화면의 어느 부분에 배치되고, 어떤 오브젝트 내에 다른 오브젝트가 포함되는지 파악할 수 있다. 클라우드 서버는 오브젝트의 종류, 위치 및 어플리케이션의 실행에 따라 표시되는 오브젝트를 알 수 있으므로, 오브젝트의 보호 여부를 판단하는 보호 기준에 따라 화면 정보 데이터를 암호화할지 여부를 결정할 수 있다.
보호가 필요한 경우 단계 440으로 진행되며, 보호가 필요하지 않은 오브젝트인 경우 단계 450으로 진행된다.
단계 440에서는, 보호가 필요한 경우 암호화를 수행한다. 전술한 바와 같이 화면 정보 데이터의 전체의 암호화가 가능하며, 일부만을 암호화 할 수 있다. 일부만을 암호화 하는 경우에는 화면 중 오브젝트가 출력되는 영역에 대응되는 화면 정보 데이터만을 암호화할 수 있으며, 암호화는 화면 정보 데이터의 보안을 유지하는 모든 동작을 포함할 수 있다. 추가적으로 보호가 필요한 것으로 판단되는 오브젝트가 클라이언트 디바이스의 화면에 출력되는 기 설정된 시간 동안 화면 정보 데이터를 암호화 할 수도 있다.
단계 450에서, 보호가 필요하지 않은 오브젝트의 경우 암호화를 수행하지 않는다. 본 발명에서는 보호가 필요한 오브젝트가 포함된 화면 정보 데이터만을 암호화 함으로써 전송 효율 향상 및 보안성 증대의 효과를 모두 얻을 수 있다.
단계 460에서, 단계 440 또는 단계 450에서 생성된 화면 정보 데이터를 클라이언트 디바이스로 송신한다.
도 5는 본 발명의 다른 실시예에 따른 클라우드 서버의 화면 데이터 제공 방법을 도시한다. 더 자세히는, 도 5는 화면에 포함된 오브젝트의 종류에 기초하여 화면 정보 데이터를 보호 여부를 결정하는 일 실시예이다.
단계 510, 520은 도 4의 단계 410, 420과 동일하게 클라이언트 디바이스로부터 화면 정보 데이터 요청을 수신하고, 화면 정보 데이터를 생성한다.
단계 530에서 클라우드 서버는 화면에 포함된 오브젝트가 이미지인 경우 보호가 필요하다고 판단할 수 있다. 즉, 클라이언트 디바이스에 표시하기 위한 화면을 구성하는 오브젝트의 종류에 따라 보호 여부를 결정한다. 오브젝트의 종류는 이미지, 비디오, 텍스트를 포함할 수 있으며, 그러나 본 발명에 있어서 오브젝트의 종류가 상기 예시에 제한되는 것은 아니다.
예를 들어, 클라우드 서버에서 생성된 화면 정보 데이터에 따라 출력되는화화면이 이미지를 포함하고, 이미지 또는 이미지가 포함된 화면 전체를 보호하도록 설정되어 있는 경우, 클라우드 서버는 생성된 화면 정보 데이터가 보호의 필요성이 있다고 결정할 수 있다.
또한 어플리케이션 실행시 생성된 오브젝트 내에 보호가 필요한 오브젝트가 포함되어 있는지를 판단하여 화면 정보 데이터의 보호 여부를 결정할 수 있다.예를 들어, 클라우드 서버는 웹 브라우저 어플리케이션의 실행에 따라 생성된 윈도우에 암호 입력기가 출력되는 영역에 대응되는 화면 정보 데이터를 보호하는 것으로 결정할 수 있다. 전술한 바와 같이 텍스트의 파싱(Parsing)을 통해 암호 입력기가 출력되는 영역을 판단하여 화면 정보 데이터를 보호할 수 있으며, 특정 영역을 설정하여 화면 정보 데이터를 보호하는 방식을 통해 이를 달성할 수도 있다. 전술한 바와 같이, 클라우드 서버는 디스플레이 커맨드를 통해 오브젝트의 종류를 파악할 수 있으며, 다른 방식을 통해 오브젝트의 종류를 파악할 수도 있다.
또한 텍스트의 경우, 텍스트 자체를 오브젝트로 판단해서 보호하거나, 파싱을 통해 특정 텍스트를 가진 내용을 검색하고, 보호여부를 결정할 수도 있다. 이미지에 포함된 텍스트 또한 동일한 형식으로 내용을 파악하고 보호 여부를 결정할 수 있다.
단계 540, 550, 및 560은 도 4의 440, 450, 460과 동일한 내용으로서 전술한 설명과 반복되는 설명은 생략하도록 한다.
도 6은 본 발명의 일 실시예에 따른 클라이언트 디바이스에서 화면 정보 데이터를 수신하는 방법을 도시한다.
단계 610에서 클라이언트 디바이스는 클라우드 서버로부터 화면 정보 데이터를 수신한다. 화면 정보 데이터란 클라이언트 디바이스에서 표시하기 위한 데이터이며, 서버에서 실행된 결과를 포함하는 화면 정보를 의미한다.
단계 620에서 클라이언트 디바이스는 수신된 화면 정보 데이터가 암호화되었는지 여부를 판단한다. 전술한 바와 같이 화면 내에 보호가 필요한 오브젝트가 포함되어 있지 않은 경우 화면 정보 데이터가 암호화되어 있지 않기 때문이다. 화면 정보 데이터가 암호화 된 경우 단계 630으로 진행되며, 암호화되지 않은 경우에는 단계 640으로 진행한다.
단계 630 및 단계 640에서 클라이언트 디바이스는 암호화 여부에 따라 복호화 과정을 수행할 수 있다. 암호화가 되어 있지 않은 경우에는 복호화 과정을 생략할 수 있다. 복호화는 화면 정보 데이터의 보안성이 유지될 수 있는 모든 방법을 통해 암호화된 데이터를 클라이언트 디바이스의 화면에서 표시하기 위한 모든 방법을 의미한다. 또한 단순히 네트워크를 통한 전송을 위해 인코딩한 경우에는 암호화되지 않는 화면 정보 데이터라도 인코딩된 데이터를 디코딩하는 단계를 수행할 수 있다.
단계 650에서는 클라이언트 디바이스는 화면 정보 데이터를 수신하여 복호화 및/또는 디코딩을 수행하고, 이를 디스플레이 장치에 표시한다.
따로 도시하지는 않았으나, 클라이언트 디바이스는 제어부, 복호화부, 송신부, 수신부, 입력인터페이스, 디스플레이 장치를 포함할 수 있다. 전술한 바와 같이 클라이언트 디바이스의 제어부는 연산을 수행할 프로세서를 구비하지 않을 수 있으며, 사용자 입력 인터페이스를 통해 사용자의 입력을 수신하고, 송신부를 통해 이를 클라우드 서버로 송신하고, 수신부를 통해 화면 정보 데이터를 수신하며, 복호화부에서 수신된 화면 정보 데이터를 복호화하거나 디코딩하여 디스플레이 장치에서 표시한다.
도 7은 본 발명의 일 실시예에 따른 클라우드 서버(310)와 클라이언트 디바이스(320) 간 통신을 수행하는 절차에 대해 도시한다.
단계 710 및 720에서 클라이언트 디바이스(320)는 클라우드 서버(310)에 접속하기 위해 연결 설정(Connection Setup)을 수행할 수 있다. 즉, 연결 설정이란, 디바이스의 프로토콜 정보, 디바이스의 통신 성능에 대한 정보, 데이터 변복조 방식에 대한 정보 클라우드 서버와 클라이언트 디바이스간 데이터 통신을 성립시키기 위한 여러 가지 정보를 포함할 수 있다. 연결 설정 절차는 일반적으로 서버와 단말기가 통신하기 위해 필요한 정보들(예를 들면 IP 주소, 데이터 포맷 등)을 송수신할 수 있다. 또한 전술한 바와 같이 클라우드 서버(310)에서는 연결 설정 도중 클라이언트 디바이스(320)가 적합한 디바이스인지 여부를 판단하는 인증 절차를 수행할 수 있다. 인증 절차를 수행하여 유효한 클라이언트 디바이스인 경우 클라우드 서버는 복호화를 위해 필요한 정보를 클라이언트 디바이스에게 송신할 수 있다.
단계 730 및 740에서 클라이언트 디바이스(320)는 클라우드 서버(310)에 보호 여부 기준 정보를 송신한다. 보호 여부 기준 정보라 함은, 화면 내에 포함된 어떤 오브젝트를 보호할 지 여부를 결정하는 기준에 관한 정보이다. 도 2에서 설명한 바와 같이 오브젝트의 특성에 따라 보호 여부를 결정할 수 있으며, 오브젝트의 특성 등에 대한 설명은 전술한 설명과 동일하므로 생략한다. 클라이언트 디바이스는 사용자의 입력에 따라 어떤 특성을 가진 오브젝트를 보호할 지 여부를 결정할 수 있다. 또한 클라이언트 디바이스는 보호 여부 기준 정보를 클라우드 서버로 송신함으로써, 특정 시간에 생성되는 화면 정보 데이터를 보호하도록 설정할 수 있다. 추가적으로, 클라이언트 디바이스는 화면 내의 특정 좌표에 대응하는 화면 정보 데이터를 보호하도록 설정할 수도 있다.
단계 750 및 단계 760에서는 도 2에서 설명했던 바와 같이 클라우드 서버에서 화면 정보 데이터를 생성하여 클라이언트 디바이스에게 제공한다.
도 8은 본 발명의 일 실시예에 따른 클라이언트 디바이스로 전송되는 화면의 보호 영역을 도시한다.
도 8은 화면에 하나의 오브젝트가 표시된 경우를 도시한다. 예를 들면, 클라이언트 디바이스를 통해 사용자가 미디어 플레이어를 실행하는 경우, 미디어 플레이어가 실행된 윈도우(Window)(810)가 화면에 표시된다. 미디어 플레이어를 실행시, 실행된 결과를 화면에 표시하기 위해 오브젝트가 생성되므로, 해당 오브젝트를 보호하기 위해서는 클라우드 서버에서 미디어 플레이어가 실행시 생성되는 화면 정보 데이터를 암호화할 수 있다.
또한 전술한 바와 같이 클라우드 서버에서는 클라이언트 디바이스의 화면에 표시하기 위한 화면 정보 데이터를 생성하기 위해 디스플레이 커맨드를 사용할 수 있다. 디스플레이 커맨드란 클라우드 서버가 프레임, 이미지 등과 같은 화면 정보 데이터를 생성하기 위하여 사용하는 명령어로, 화면 내의 어느 부분에 어떤 오브젝트를 표시해야 하는지를 나타낸다.
클라우드 서버에서 미디어 플레이어 실행시 생성되는 화면 정보 데이터를 보호하도록 설정되어 있는 경우 해당 오브젝트의 영역에 대응하는 화면 정보 데이터가 암호화 될 수 있고, 화면 전체에 하나의 오브젝트만이 표시되어 있으므로 화면 전체의 화면 정보 데이터를 암호화 할 수도 있다. 또한 클라이언트 디바이스가애 의해 미디어 플레이어의 실행이 중단되는 경우(예를 들면 미디어 플레이어의 종료)에는 더 이상 화면에 미디어 플레이어의 실행으로 표시되는 오브젝트가 포함되지 않으므로 클라우드 서버는 화면 정보 데이터를 암호화 하지 않는다.
도 9는 본 발명의 다른 실시예에 따른 클라이언트 디바이스로 전송되는 화면의 보호 영역을 도시한다.
도 9는 하나의 화면에 두 개의 오브젝트가 표시된 경우를 도시한다. 미디어 플레이어가 실행된 결과로 표시되는 오브젝트(910)와 웹 브라우저가 실행된 결과로 표시되는 오브젝트(920)이 각각 화면에 포함된다. 즉, 두 개 이상의 어플리케이션이 클라우드 서버에서 실행되고 있으며, 보호 여부 설정 기준에 따라 두 개의 오브젝트를 모두 보호하거나, 하나의 오브젝트만을 선택적으로 보호할 수 있다.
두 개의 오브젝트를 모두 보호하는 경우 각각의 오브젝트의 영역에 대응하는 화면 정보 데이터를 암호화하거나 화면 전체에 대응하는 화면 정보 데이터를 암호화 할 수 있다. 두 개의 오브젝트 중 하나의 오브젝트만을 보호 하는 경우 하나의 오브젝트의 영역에 대응하는 화면 정보 데이터를 암호화 할 수 있다.
도 10은 본 발명의 다른 실시예에 따른 클라이언트 디바이스로 전송되는 화면의 보호 영역을 도시한다.
도 10의 경우 다양한 오브젝트의 종류가 포함된 화면을 도시한다. 이미지(1030), 동영상(또는 플래쉬)(1020) 및 텍스트(1010)가 화면 내에 포함되어 있다. 전술한 바와 같이 오브젝트의 종류에 따라 오브젝트의 보호 여부를 결정하도록 기준을 설정할 수 있다. 따라서 이미지, 비디오, 텍스트 중 적어도 하나를 보호하도록 설정된 경우, 해당 오브젝트의 영역에 대응하는 화면 정보 데이터가 암호화된다. 또한 특정 좌표에 해당하는 화면 영역을 보호하도록 설정할 수 있으며, 이 경우 해당 좌표에 대응하는 화면 정보 데이터가 암호화 된다.
도 11은 본 발명의 다른 실시예에 따른 클라이언트 디바이스로 전송되는 화면의 보호 영역을 도시한다.
도 11은 시간의 흐름에 따른 화면 정보 데이터의 보호에 대해 도시한다. 특정 시간에 생성되는 화면 정보 데이터를 보호 하기를 원하는 경우, 기 설정된 시간에 생성되는 화면 정보 데이터가 암호화된다.
화면 정보 데이터를 암호화하면, 해킹 등의 문제로 네트워크 레벨에서 보호가 해제되어 제 3자가 화면 정보 데이터를 획득한다고 하여도 암호화된 영역을 복호화 할 수 없다. 따라서 보안성이 증대된다. 뿐만 아니라 보호가 필요한 부분만을 암호화 함으로써 전송 효율을 높이고, 사용자 입력의 실시간 처리가 보장되도록 하는 효과가 있다.
이상, 본 발명에서 개시된 블럭도들은 본 발명의 원리들을 구현하기 위한 회로를 개념적으로 표현한 형태라고 당업자에게 해석될 수 있을 것이다. 유사하게, 임의의 흐름 차트, 흐름도, 상태 전이도, 의사코드 등은 컴퓨터 판독가능 매체에서 실질적으로 표현되어, 컴퓨터 또는 프로세서가 명시적으로 도시되든지 아니든지 간에 이러한 컴퓨터 또는 프로세서에 의해 실행될 수 있는 다양한 프로세스를 나타낸다는 것이 당업자에게 인식될 것이다. 따라서, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다.
도면들에 도시된 다양한 요소들의 기능들은 적절한 소프트웨어와 관련되어 소프트웨어를 실행할 수 있는 하드웨어뿐만 아니라 전용 하드웨어의 이용을 통해 제공될 수 있다. 프로세서에 의해 제공될 때, 이런 기능은 단일 전용 프로세서, 단일 공유 프로세서, 또는 일부가 공유될 수 있는 복수의 개별 프로세서에 의해 제공될 수 있다. 또한, 용어 "프로세서" 또는 "제어부"의 명시적 이용은 소프트웨어를 실행할 수 있는 하드웨어를 배타적으로 지칭하는 것으로 해석되지 말아야 하며, 제한 없이, 디지털 신호 프로세서(DSP) 하드웨어, 소프트웨어를 저장하기 위한 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 및 비휘발성 저장장치를 묵시적으로 포함할 수 있다.
본 명세서의 청구항들에서, 특정 기능을 수행하기 위한 수단으로서 표현된 요소는 특정 기능을 수행하는 임의의 방식을 포괄하고, 이러한 요소는 특정 기능을 수행하는 회로 요소들의 조합, 또는 특정 기능을 수행하기 위한 소프트웨어를 수행하기 위해 적합한 회로와 결합된, 펌웨어, 마이크로코드 등을 포함하는 임의의 형태의 소프트웨어를 포함할 수 있다.
본 명세서에서 본 발명의 원리들의 '일 실시예'와 이런 표현의 다양한 변형들의 지칭은 이 실시예와 관련되어 특정 특징, 구조, 특성 등이 본 발명의 원리의 적어도 하나의 실시예에 포함된다는 것을 의미한다. 따라서, 표현 '일 실시예에서'와, 본 명세서 전체를 통해 개시된 임의의 다른 변형례들은 반드시 모두 동일한 실시예를 지칭하는 것은 아니다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 명세서를 통해 개시된 모든 실시예들과 조건부 예시들은, 본 발명의 기술 분야에서 통상의 지식을 가진 당업자가 독자가 본 발명의 원리와 개념을 이해하도록 돕기 위한 의도로 기술된 것으로, 당업자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (21)

  1. 클라우드 서버가 클라이언트 디바이스에서 표시하기 위한 화면을 나타내는 화면 정보 데이터를 제공하는 방법에 있어서,
    상기 화면 정보 데이터를 생성하는 단계;
    상기 화면을 구성하는 오브젝트의 특성에 기초하여 상기 화면 정보 데이터의 보호 여부를 결정하는 단계;
    상기 결정된 결과에 기초하여 상기 화면 정보 데이터를 암호화 하는 단계; 및
    상기 암호화된 화면 정보 데이터를 전송하는 단계를 포함하는 화면 정보 데이터 제공 방법.
  2. 제 1 항에 있어서,
    상기 화면 정보 데이터를 암호화 하는 단계는,
    상기 화면 정보 데이터의 일부에 대해 암호화하는 것을 특징으로 하는 화면 정보 데이터 제공 방법.
  3. 제 1 항에 있어서,
    상기 화면 정보 데이터의 보호 여부를 결정하는 단계는,
    상기 클라우드 서버에서 상기 오브젝트를 표시하기 위해 실행되는 어플리케이션에 기초하여, 화면 정보 데이터의 보호여부를 결정하는 것을 특징으로 하는 화면 정보 데이터 제공 방법.
  4. 제 1 항에 있어서,
    상기 화면 정보 데이터의 보호 여부를 결정하는 단계는,
    상기 화면에 포함된 오브젝트의 종류에 기초하여 상기 화면 정보 데이터의 보호여부를 결정하는 것을 특징으로 하는 화면 정보 데이터 제공 방법.
  5. 제 4 항에 있어서,
    상기 오브젝트의 종류는
    이미지, 텍스트 및 비디오 중 적어도 하나를 포함하는 것을 특징으로 하는 화면 정보 데이터 제공 방법.
  6. 제 1항에 있어서,
    상기 암호화 하는 단계는,
    엔트로피 인코딩 및 심볼 맵핑 알고리즘을 이용하여 암호화 하는 단계를 포함하는 것을 특징으로 하는 화면 정보 데이터 제공 방법.
  7. 제 1 항에 있어서, 상기 화면 정보 데이터 제공 방법은,
    상기 클라이언트 디바이스가 유효한 클라이언트 디바이스인지 여부를 판단하는 단계; 및
    상기 클라이언트 디바이스가 유효한 클라이언트 디바이스인 경우, 복호화를 위한 정보를 상기 클라이언트 디바이스에게 전송하는 단계를 더 포함하는 것을 특징으로 하는 화면 정보 데이터 제공 방법.
  8. 제 1 항에 있어서,
    상기 화면 정보 데이터의 보호 여부를 결정하는 단계는,
    상기 보호 여부를 결정하기 위한 오브젝트의 특성에 대한 기준 정보를 클라이언트 디바이스로부터 수신하는 단계를 포함하는 것을 특징으로 하는 화면 정보 데이터 제공 방법.
  9. 제 1항에 있어서,
    상기 보호 여부를 결정하는 단계는,
    상기 오브젝트의 특성 및 기 설정된 시간 정보를 고려하여 보호 여부를 결정하는 것을 특징으로 하는 화면 정보 데이터 제공 방법.
  10. 제 1항에 있어서,
    상기 보호 여부를 결정하는 단계는,
    상기 오브젝트의 특성 및 기 설정된 좌표 정보를 고려하여 상기 좌표에 대응되는 화면 정보 데이터의 보호 여부를 결정하는 것을 특징으로 하는 화면 정보 데이터 제공 방법.
  11. 클라이언트 디바이스에서 표시하기 위한 화면을 나타내는 화면 정보 데이터를 제공하는 클라우드 서버에 있어서,
    상기 화면 정보 데이터를 생성하는 화면 정보 데이터 생성부;
    상기 화면을 구성하는 오브젝트의 특성에 기초하여 상기 화면 정보 데이터의 보호 여부를 결정하는 보호 결정부;
    상기 결정된 결과에 기초하여 상기 화면 정보 데이터를 암호화 하는 암호화부; 및
    상기 암호화된 화면 정보 데이터를 전송하는 송신부를 포함하는 것을 특징으로 하는 클라우드 서버.
  12. 제 11 항에 있어서,
    상기 암호화부는,
    상기 화면 정보 데이터의 일부에 대해 암호화하는 것을 특징으로 하는 클라우드 서버.
  13. 제 11 항에 있어서,
    상기 보호 결정부는,
    상기 클라우드 서버에서 상기 오브젝트를 표시하기 위해 실행되는 어플리케이션에 기초하여, 화면 정보 데이터의 보호여부를 결정하는 것을 특징으로 하는 클라우드 서버.
  14. 제 11 항에 있어서,
    상기 보호 결정부는,
    상기 화면에 포함된 오브젝트의 종류에 기초하여 상기 화면 정보 데이터의 보호여부를 결정하는 것을 특징으로 하는 클라우드 서버.
  15. 제 14 항에 있어서,
    상기 객체는 이미지, 텍스트 및 비디오 중 적어도 하나를 포함하는 것을 특징으로 하는 클라우드 서버.
  16. 제 11항에 있어서,
    상기 암호화부는,
    엔트로피 인코딩 및 심볼 맵핑 알고리즘을 이용하여 암호화를 수행하는 것을 특징으로 하는 클라우드 서버.
  17. 제 11항에 있어서, 상기 클라우드 서버는,
    상기 클라이언트 디바이스가 유효한 클라이언트 디바이스인지 여부를 판단하는 유효 단말 판단부를 더 포함하고,
    상기 판단한 결과에 근거하여 상기 송신부에서 상기 클라이언트 디바이스가 유효한 클라이언트 디바이스인 경우 복호화를 위한 정보를 상기 클라이언트 디바이스에게 전송하는 것을 특징으로 하는 클라우드 서버.
  18. 제 11 항에 있어서, 상기 클라우드 서버는,
    상기 보호 여부를 결정하기 위한 오브젝트의 특성에 대한 기준 정보를 클라이언트 디바이스로부터 수신하는 수신부를 더 포함하는 것을 특징으로 하는 클라우드 서버.
  19. 제 11항에 있어서,
    상기 보호 결정부는,
    상기 오브젝트의 특성 및 기 설정된 시간 정보를 고려하여 보호 여부를 결정하는 것을 특징으로 하는 클라우드 서버.
  20. 제 11항에 있어서,
    상기 보호 결정부는,
    상기 오브젝트의 특성 및 기 설정된 좌표 정보를 고려하여 상기 좌표에 대응되는 화면 정보 데이터의 보호 여부를 결정하는 것을 특징으로 하는 클라우드 서버.
  21. 제 1 항의 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.
KR1020120110687A 2012-10-05 2012-10-05 오브젝트 특성에 따라 적응적으로 화면 정보 데이터를 보호하는 방법 및 장치 KR102038963B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020120110687A KR102038963B1 (ko) 2012-10-05 2012-10-05 오브젝트 특성에 따라 적응적으로 화면 정보 데이터를 보호하는 방법 및 장치
US14/038,057 US9807062B2 (en) 2012-10-05 2013-09-26 Method and apparatus for selectively providing protection of screen information data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120110687A KR102038963B1 (ko) 2012-10-05 2012-10-05 오브젝트 특성에 따라 적응적으로 화면 정보 데이터를 보호하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20140051483A true KR20140051483A (ko) 2014-05-02
KR102038963B1 KR102038963B1 (ko) 2019-10-31

Family

ID=50433717

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120110687A KR102038963B1 (ko) 2012-10-05 2012-10-05 오브젝트 특성에 따라 적응적으로 화면 정보 데이터를 보호하는 방법 및 장치

Country Status (2)

Country Link
US (1) US9807062B2 (ko)
KR (1) KR102038963B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9935977B1 (en) 2013-12-09 2018-04-03 Amazon Technologies, Inc. Content delivery employing multiple security levels
KR20170045703A (ko) * 2015-10-19 2017-04-27 삼성전자주식회사 전자 장치 및 그 제어 방법
CN106599712A (zh) * 2016-10-19 2017-04-26 三星电子株式会社 电子设备及其控制方法
US10985967B1 (en) 2017-03-10 2021-04-20 Loop Commerce, Inc. Cross-network differential determination
CN107920083A (zh) * 2017-12-05 2018-04-17 北京军秀咨询有限公司 一种数据加密和解密装置及其加密和解密方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000152214A (ja) * 1998-09-02 2000-05-30 Matsushita Electric Ind Co Ltd デ―タ処理方法,デ―タ処理装置及びデ―タ記憶媒体
JP2009037486A (ja) * 2007-08-02 2009-02-19 Casio Comput Co Ltd サーバベース・コンピューティング・システムのサーバ装置、及びプログラム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6813358B1 (en) * 1998-11-17 2004-11-02 Telcordia Technologies, Inc. Method and system for timed-release cryptosystems
US7428636B1 (en) 2001-04-26 2008-09-23 Vmware, Inc. Selective encryption system and method for I/O operations
US7418600B2 (en) * 2003-03-13 2008-08-26 International Business Machines Corporation Secure database access through partial encryption
US7877788B1 (en) 2006-02-27 2011-01-25 Teradici Corporation Method and apparatus for securing a peripheral data interface
US7974924B2 (en) * 2006-07-19 2011-07-05 Mvisum, Inc. Medical data encryption for communication over a vulnerable system
US8457304B2 (en) * 2007-02-23 2013-06-04 Choy Sai Foundation L.L.C. Efficient encoding processes and apparatus
US20090100529A1 (en) * 2007-10-11 2009-04-16 Noam Livnat Device, system, and method of file-utilization management
US9087211B2 (en) * 2008-11-17 2015-07-21 International Business Machines Corporation Method and system for annotation based secure caching
US8542823B1 (en) * 2009-06-18 2013-09-24 Amazon Technologies, Inc. Partial file encryption
EP2489150B1 (en) 2009-11-05 2018-12-26 VMware, Inc. Single sign on for a remote user session
WO2011061734A1 (en) * 2009-11-18 2011-05-26 Safend Ltd. System and method for selective protection of information elements
JP5814639B2 (ja) * 2011-06-09 2015-11-17 キヤノン株式会社 クラウドシステム、クラウドサービスのライセンス管理方法、およびプログラム
US9594921B2 (en) * 2012-03-02 2017-03-14 International Business Machines Corporation System and method to provide server control for access to mobile client data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000152214A (ja) * 1998-09-02 2000-05-30 Matsushita Electric Ind Co Ltd デ―タ処理方法,デ―タ処理装置及びデ―タ記憶媒体
JP2009037486A (ja) * 2007-08-02 2009-02-19 Casio Comput Co Ltd サーバベース・コンピューティング・システムのサーバ装置、及びプログラム

Also Published As

Publication number Publication date
US9807062B2 (en) 2017-10-31
KR102038963B1 (ko) 2019-10-31
US20140101443A1 (en) 2014-04-10

Similar Documents

Publication Publication Date Title
US10182255B2 (en) Method, terminal, and system for communication pairing of a digital television terminal and a mobile terminal
KR101030354B1 (ko) 그래픽 시스템에서 컴포넌트들의 인증을 위한 방법, 시스템, 컴퓨팅 디바이스, 및 컴퓨터 판독가능 매체
JP4522645B2 (ja) セキュアコンテンツを暗号的に保護する方法およびシステム
AU2009329836B2 (en) Digital video guard
US8909933B2 (en) Decoupled cryptographic schemes using a visual channel
US8868927B1 (en) Method and apparatus for secure data input and output
CN104349135B (zh) 监控服务器、监控服务器的处理数据的方法以及监控系统
KR101883816B1 (ko) 클라이언트 디바이스 상에서의 다수의 디지털 저작권 관리 프로토콜 지원 기술
WO2019134303A1 (zh) 直播间人气处理方法、装置、服务器及存储介质
US10455286B2 (en) Protected media decoding system supporting metadata
JP2019514314A (ja) 暗号化メッセージを送受信するために動的公開鍵インフラストラクチャを用いる方法、システム、及び媒体
EP3231182A1 (en) Secure media player
KR102038963B1 (ko) 오브젝트 특성에 따라 적응적으로 화면 정보 데이터를 보호하는 방법 및 장치
US9111123B2 (en) Firmware for protecting data from software threats
TW201631919A (zh) 具有廣播密鑰輪換之裝置及方法
Hussain et al. Secure password transmission for web applications over internet using cryptography and image steganography
JP2016021758A (ja) データ伝送安全性の向上
CN109120576B (zh) 数据分享方法及装置、计算机设备及存储介质
KR100931986B1 (ko) 단말기 및 메시지 송수신 방법
KR101701625B1 (ko) 암호화된 컨텐츠의 복호화 키를 안전하게 획득하여 컨텐츠를 재생하기 위한 방법 및 시스템
US20160300068A1 (en) System and Method to View Encrypted Information on a Security Enabled Display Device
WO2017035018A1 (en) Method and system for efficient encryption, transmission, and decryption of video data
CN112434327A (zh) 信息保护方法、装置及电子设备
CN111970281B (zh) 基于验证服务器的路由设备远程控制方法、系统及电子设备
US20240095314A1 (en) Distributed Digital Rights Management (DRM) Protection

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right