KR101930864B1 - 디바이스 인증을 이용한 디지털 콘텐츠 보호 방법 및 장치 - Google Patents

디바이스 인증을 이용한 디지털 콘텐츠 보호 방법 및 장치 Download PDF

Info

Publication number
KR101930864B1
KR101930864B1 KR1020120016084A KR20120016084A KR101930864B1 KR 101930864 B1 KR101930864 B1 KR 101930864B1 KR 1020120016084 A KR1020120016084 A KR 1020120016084A KR 20120016084 A KR20120016084 A KR 20120016084A KR 101930864 B1 KR101930864 B1 KR 101930864B1
Authority
KR
South Korea
Prior art keywords
secure
digital content
security
processor
user device
Prior art date
Application number
KR1020120016084A
Other languages
English (en)
Other versions
KR20130101628A (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
Priority to KR1020120016084A priority Critical patent/KR101930864B1/ko
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to PCT/KR2013/001272 priority patent/WO2013122443A1/en
Priority to CN201810520706.9A priority patent/CN108733986B/zh
Priority to EP13748650.2A priority patent/EP2815347B1/en
Priority to EP18154262.2A priority patent/EP3349134B1/en
Priority to EP19193857.0A priority patent/EP3591551A1/en
Priority to TW102105658A priority patent/TWI560571B/zh
Priority to ES18154262T priority patent/ES2753817T3/es
Priority to CN201380009948.7A priority patent/CN104115152B/zh
Priority to US13/770,378 priority patent/US9122879B2/en
Publication of KR20130101628A publication Critical patent/KR20130101628A/ko
Priority to US14/840,494 priority patent/US9977906B2/en
Priority to US15/942,855 priority patent/US10733304B2/en
Application granted granted Critical
Publication of KR101930864B1 publication Critical patent/KR101930864B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/106Enforcing content protection by specific content processing
    • G06F21/1064Restricting content processing at operating system level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/74Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information operating in dual or compartmented mode, i.e. at least one secure mode
    • 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/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • 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/2105Dual mode as a secondary aspect
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management

Abstract

본 발명에서 사용자 디바이스는 보안 모드와 일반 모드를 구분하여, 적정 동작함으로써, 디지털 콘텐츠의 보호 레벨을 강화시킬 수 있다. 그리고 디지털 콘텐츠에 대한 보호 레벨을 좀더 강화시키기 위해, 사용자 디바이스는 메인 운영 체제 대한 해킹 여부를 판단하여, 사용자 디바이스가 보안 모드로 동작하는 것을 차단하거나, 사용자 디바이스의 장치적 보안 수준을 나타내는 디바이스 인증 정보를 콘텐츠 서비스 서버에 의해 인증받아 그 결과에 따라 사용자 디바이스가 보안 모드로 동작하는 것을 차단한다.

Description

디바이스 인증을 이용한 디지털 콘텐츠 보호 방법 및 장치{METHOD AND APPARATUS FOR PROTECTING DIGITAL CONTENT USING DEVICE AUTHENTICATION}
본 발명은 데이터 처리 장치에 관한 것으로서, 특히 메인 운영체제(Operating System, OS)와는 별도의 보안 운영체제를 이용하여 보안성을 향상시킬 수 있는 데이터 처리장치 및 그 방법에 관한 것이다.
최근, 디지털 장치에게 고품질의 서비스를 처리할 것이 요구되면서, 다양한 디지털 콘텐츠가 텔레비전, 컴퓨터, 휴대형 기기와 같은 사용자 디바이스에게 제공되고 있다. 디지털 콘텐츠에는 예를 들어, 동영상, 오디오 파일, 각종 애플리케이션 등이 있다. 이러한 디지털 콘텐츠를 제공이 활발해 지면서, 디지털 콘텐츠의 지적 자산에 대한 권리를 보호하기 위한 여러 가지 방안이 제안되고 있다.
DRM(Digital Rights Management)서비스는 디지털 콘텐츠를 보호하기 위한 방안 중 하나로, 암호화 기술을 이용하여 디지털 콘텐츠의 지적 자산에 대한 권리를 지속적으로 관리 및 보호하기 위한 기술이다. 즉, 다양한 콘텐츠를 콘텐츠 제공자(Content Provider: CP)로부터 사용자에게 안전하게 전달하고, 이를 전달받은 사용자가 불법적으로 콘텐츠를 유통하는 것을 방지하기 위한 기술이다. 이러한 DRM 기술은 디지털 콘텐츠의 생성, 배포, 사용 및 폐기에 이르는 전 과정에 걸쳐 정보 보호가 가능하며, 온라인뿐만 아니라 오프라인 상에서 사용자의 권한에 따른 사용과 권리 보호할 수 있다.
DRM 기술이 적용된 콘텐츠(이하 “DRM 콘텐츠”라 함.)를 사용자 디바이스에서 이용하기 위해서는, 먼저 사용자 디바이스가 해당 DRM 콘텐츠를 제공하는 시스템에 접속하여 DRM 콘텐츠와, DRM 콘텐츠에 대한 메타데이터(Meta data) 및, 라이선스를 다운로드 받아야 한다. 여기서, 메타데이터는 DRM 콘텐츠에 대한 정보가 저장된 데이터이며, 라이센스는 암호화된 DRM 콘텐츠를 복호하는데 사용되는 암호키와 콘텐츠의 접근 권한(예컨대, 횟수 및 기간 등)을 명시하는 내용의 데이터이다. 이와 같은 과정을 통해 사용자 디바이스에 DRM 콘텐츠와 라이센스가 모두 저장되면, 해당 DRM 콘텐츠를 소비할 수 있게 된다.
한편, 사용자 디바이스는 중앙처리장치(Central Process Unit, CPU)와 운영체제(Operating System, OS)를 채용하고 있다. 모바일 장치는 개방형 어플리케이션 프로그램 인터페이스(Open Application Program Interface)를 구현하기 위해 개방형 운영체제(Open OS)를 채택하고 있다. 개방형 운영체제는 모바일 장치와 모바일 서비스의 경쟁력의 핵심이 되고 있다. 그리고 모바일 장치의 운영체제는 주요 제조사 및 주요 공급자에 의해 전략적으로 개방되어, 어플리케이션 프로그램 인터페이스(Application Program Interface), 소프트웨어 개발 키트(Software Development Kit), 및 소스파일까지 일반에 공개되고 있다.
상기와 같이 DRM 기술을 이용함에도 불구하고, 여전히 디지털 콘텐츠의 유통에는 보안상 취약한 부분이 존재한다. 예를 들어, 사용자 디바이스의 운영 체제를 해킹함으로써, 다른 사용자 디바이스가 특정 사용자 디바이스에게 배당된 라이선스를 가로채거나, 특정 사용자 디바이스에 저장된 라이선스 또는 복호된 DRM 콘텐츠를 추출하여 획득할 수 있다.
또한, 사용자 디바이스들은 인터넷으로부터 다수의 어플리케이션들을 다운로드하고있는데, 이러한 어플리케이션들은 종종 모바일 장치의 제조사에 의해 품질의 검사 및 보장이 된 이후에 이용할 수 있도록 되어있으나, 실질적으로 다양한 어플리케이션들의 모든 기능들이 검사될 수는 없다. 따라서, 이러한 모바일 장치들을 타겟으로 하는 악성 코드가 점점 증가하고 있으며, 특히 개방형 운영체제를 사용하는 모바일 장치들이 악성 코드들의 소프트웨어 공격을 받을 수 있는 문제가 있다.
다시 말해, 디지털 콘텐츠를 암호화하여 제공하더라도, 사용자 디바이스 자체가 보안에 취약한 경우, 디지털 콘텐츠의 불법적 이용 및 유통을 방지하는 것에는 한계가 있다.
본 발명은 상기한 문제점을 해결하기 위한 것으로, 보안이 강화된 디지털 콘텐츠의 보호 방법 및 장치를 제공한다.
또한 본 발명은 디지털 콘텐츠를 소비하는 사용자 디바이스의 장치적 보안 기능을 강화하여, 디지털 콘텐츠를 보호하는 방법 및 장치를 제공한다.
그리고 본 발명은 사용자 디바이스의 보안 기능을 인증하는 과정을 강화하여 디지털 콘텐츠를 보호할 수 있는 방법 및 장치를 제공한다.
본 발명은 디지털 콘텐츠를 소비하는 사용자 디바이스의 장치적 보안 기능을 강화하여, 디지털 콘텐츠를 보호하는 방법 및 장치를 제공할 수 있다. 그리고 본 발명은 사용자 디바이스의 보안 기능을 인증하는 과정이 강화된 디지털 콘텐츠를 보호 방법 및 장치를 제공할 수 있다.
도1은 본 발명의 일 실시예에 따른 디지털 콘텐츠 서비스 시스템의 구성을 나타낸 도면,
도2는 본 발명의 일 실시예에 따른 사용자 디바이스의 구성을 나타낸 도면,
도3은 본 발명의 일 실시예에 따른 제어부의 구성을 나타낸 도면,
도4는 본 발명의 일 실시예에 따른 사용자 디바이스의 부팅 과정을 나타낸 도면,
도5 및 도6은 본 발명의 실시예들에 따른 사용자 디바이스의 보안 인증 과정을 나타낸 도면,
도7은 본 발명의 일 실시예에 따른 디지털 콘텐츠 서비스 서버의 동작 과정을 나타낸 도면.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다. 도면에서 동일한 구성요소들에 대해서는 비록 다른 도면에 표시되더라도 가능한 한 동일한 참조번호 및 부호로 나타내고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명은 생략한다.
최근, 디지털 장치에게 고품질의 서비스를 처리할 것이 요구되면서, 다양한 디지털 콘텐츠가 텔레비전, 컴퓨터, 휴대형 기기와 같은 사용자 디바이스에게 제공되고 있다. 디지털 콘텐츠에는 예를 들어, 동영상, 오디오, 이미지, 애니메이션, 텍스트, 각종 애플리케이션 등이 있다. 이러한 디지털 콘텐츠를 제공이 활발해 지면서, 디지털 콘텐츠의 지적 자산에 대한 권리를 보호하기 위한 여러 가지 방안이 제안되고 있다.
그 중 DRM(Digital Rights Management)서비스와 같이, 콘텐츠 제공자는 암호화된 디지털 콘텐츠를 사용자 디바이스를 제공하고, 사용자 디바이스는 암호화된 디지털 콘텐츠를 복호하는데 사용되는 암호키와 콘텐츠의 접근 권한(예컨대, 횟수 및 기간 등)을 명시하는 라이선스를 획득하여, 해당 디지털 콘텐츠를 사용자 디바이스에서 소비할 수 있게 하는 보안 방안이 보편적으로 이용되고 있다. 디지털 콘텐츠의 소비란, 사용자 디바이스가 디지털 콘텐츠를 이용하여 실질적인 동작을 수행하는 것으로, 예를 들어, 동영상 콘텐츠의 재생, 오디오 콘텐츠의 재생, 특정 애플리케이션의 실행등을 의미한다.
그런데, 이러한 보안 방안의 경우 사용자 디바이스의 운영 체제를 해킹함으로써, 다른 사용자 디바이스가 특정 사용자 디바이스에게 배당된 라이선스를 가로채거나, 특정 사용자 디바이스에 저장된 라이선스 또는 복호된 디지털 콘텐츠를 추출하여 획득할 수 있다는 문제점이 있다. 다시 말해, 디지털 콘텐츠를 암호화하여 제공하더라도, 사용자 디바이스 자체가 보안에 취약한 경우, 디지털 콘텐츠의 불법적 이용 및 유통을 방지하는 것에는 한계가 있다.
이에 따라, 본 발명은 사용자 디바이스 내부적으로 실행 환경 자체의 보안수준을 높여 강화된 콘텐츠 보호 방법을 제공한다. 본 발명은 프로세서를 사용하는 임베디드 시스템의 안정성을 보장하기 위해서 그 프로세서와 주변장치 및 저장장치를 대상으로 하는 칩 수준의 보안 기술을 제공하는 것을 목적으로 한다.
이를 위해, 본 발명의 사용자 디바이스는 일반 실행 환경과 보안 실행 환경이라는 두 개의 분리된 실행환경을 하나의 프로세서 상에서 제공하며, 이러한 추상화는 디바이스의 보안과 직결되는 중요 프로그램의 수행과 일반 프로그램의 수행을 논리적으로 엄격히 분리시켜 준다. 사용자 디바이스는 이러한 논리적인 분할을 프로세서뿐만이 아니라 주변장치 및 저장장치를 대상으로도 적용한다. 추상화를 통한 실행 환경의 논리적인 분할은 악의적인 사용자나 프로그램의 위협으로부터 보안과 직결되는 프로그램의 수행이나 시스템의 자원을 보호하는 역할을 할 수 있다.
본 발명에 따라 사용자 디바이스는 일반 모드를 지원하는 제1운영체제(Operating System)(이하, 메인 OS(Main Operating System)라 함.)와, 보안 모드를 지원하는 제2운영체제(이하, 보안 OS(Secure Operating System)라 함.)를 구비하고, 하나의 프로세서를 이용해, 보안과 관련된 보안 프로그램의 실행은 보안 OS에 의해 관리되는 보안 영역에서 수행하고, 일반 프로그램의 실행은 메인 OS에 의해 관리되는 일반 영역에서 수행한다. 그리고 메인 OS를 통한 보안 영역의 액세스를 차단한다. 일반 영역과 보안 영역은 물리적 구분이 아닌, 논리적 구분으로, 일반 영역은 메인 OS의 환경에서 관리되는 소프트웨어 구성 및 하드웨어 구성의 동작을 의미하고, 보안 영역은 보안 OS의 환경에서 관리되는 소프트웨어 구성 및 하드웨어 구성의 동작을 의미한다. 따라서 일부 하드웨어 구성은 일반 영역과 보안 영역에 의해 공유될 수 있다.
예를 들어, 보안이 요구되는 보안 동영상 콘텐츠에 대한 소비가 요구되면, 보안 모드하의 보안 영역에서 해당 동영상 파일에 대한 디크립션, 디코딩, 랜더링을 진행하여, 재생 출력하고, 이때, 각 단계에서 생성된 데이터는 보안 영역에 저장한다. 그리고 일반 모드의 애플리케이션이나, 메인 OS를 통해서는 보안 영역에 저장된 데이터들을 직접 액세스할 수 없게 하는 것이다.
그리고 보안이 요구되지 않은 일반 동영상 콘텐츠에 대한 소비가 요구되면, 일반 모드하의 일반 영역에서 해당 동영상 파일에 대한 디크립션, 디코딩, 랜더링을 진행하여, 재생 출력하고, 이때, 각 단계에서 생성된 데이터는 일반 영역에 저장한다.
일반 동영상 콘텐츠와 보안 동영상 콘텐츠는 각각 다른 동작 모드 및 동장 영역에서 재생되지만, 일반 동영상 콘텐츠와 보안 동영상 콘텐츠를 최종적으로 출력하는 출력 장치는 공유되는 것이다.
이와 같이 본 발명에서 사용자 디바이스는 보안 모드와 일반 모드를 구분하여, 적정 동작함으로써, 디지털 콘텐츠의 보호 레벨을 강화시킬 수 있다. 그리고 디지털 콘텐츠에 대한 보호 레벨을 좀더 강화시키기 위해, 사용자 디바이스는 메인 OS에 대한 해킹 여부를 판단하여, 사용자 디바이스가 보안 모드로 동작하는 것을 차단하거나, 사용자 디바이스의 장치적 보안 수준을 나타내는 디바이스 인증 정보를 콘텐츠 서비스 서버에 의해 인증 받아 그 결과에 따라 사용자 디바이스가 보안 모드로 동작하는 것을 차단한다.
도1은 본 발명에 따른 디지털 콘텐츠 서비스 시스템의 구성을 나타낸 도면이다. 도1을 참조하면, 디지털 콘텐츠 서비스 시스템은 사용자 디바이스(100), 콘텐츠 서비스 서버(10)를 포함한다.
콘텐츠 서비스 서버(10)는 각종 디지털 콘텐츠를 디지털 콘텐츠 서비스에 가입된 사용자 디바이스에게 제공하고, 서비스에 가입된 사용자 정보 및 관련 사용자 디바이스의 정보를 관리하는 장치이다. 그리고 콘텐츠 서비스 서버(10)는 본 발명에 따라, 사용자 디바이스(100)로부터 수신되는 디바이스 인증 정보를 인증하여, 그 결과를 사용자 디바이스(100)에게 전달한다. 디바이스 인증 정보는 사용자 디바이스(100)의 장치적 보안 수준을 평가할 수 있는 정보를 포함한다.
콘텐츠 서비스 서버(10)는 제어 처리부(11), 통신부(13), 저장부(15)를 포함한다.
제어 처리부(11)는 콘텐츠 서비스 서버(10)의 전반적인 동작을 제어하며, 특히, 사용자 디바이스의 디바이스 인증 요청에 따른 콘텐츠 서비스 서버(10)의 동작을 제어한다. 통신부(13)는 제어 처리부(11)의 제어에 따라 사용자 디바이스와 통신을 수행한다.
저장부(15)는 콘텐츠 제공자에 의해 제공되는 각종 디지털 콘텐츠와, 서비스에 가입된 사용자 정보 및 관련 사용자 디바이스의 정보를 저장한다. 그리고 사용자 디바이스로부터 수신된 디바이스 인증 정보를 이용해 해당 사용자 디바이스의 장치적 보안 수준의 적정성을 평가할 기준이 되는 정책 정보를 저장한다.
사용자 디바이스(100)는 디지털 콘텐츠를 요청하고, 수신하고, 재생함으로써, 디지털 콘텐츠를 소비하는 장치로서, 예를 들어, 텔레비전, 모바일 단말기, 스마트폰, 휴대폰, PMP, 음악 파일 재생 장치 등이 될 수 있다.
도2는 사용자 디바이스(100)의 구성을 나타낸 도면으로, 사용자 디바이스(100)가 스마트폰 등과 같은 모바일 장치인 경우를 일예로 한 것이다.
도 2를 참조하면, 사용자 디바이스(100)는 이동통신 모듈(120), 서브통신 모듈(130) 및 커넥터(165)를 이용하여 외부장치(도시되지 아니함)와 연결될 수 있다. “외부장치”는 다른 장치(도시되지 아니함), 휴대폰(도시되지 아니함), 스마트폰(도시되지 아니함), 태블릿PC(도시되지 아니함) 및 서버(도시되지 아니함)를 포함한다.
도 2를 참조하면, 사용자 디바이스(100)는 터치스크린(190) 및 터치스크린 컨트롤러(195)를 포함한다. 또한, 사용자 디바이스(100)는 제어부(110), 이동통신 모듈(120), 서브통신 모듈(130), 멀티미디어 모듈(140), 카메라 모듈(150), GPS모듈(155), 입/출력 모듈(160), 센서 모듈(170), 저장부(175) 및 전원공급부(180)를 포함한다. 서브통신 모듈(130)은 무선랜 모듈(131) 및 근거리통신 모듈(132) 중 적어도 하나를 포함하고, 멀티미디어 모듈(140)은 방송통신 모듈(141), 오디오재생 모듈(142) 및 동영상재생 모듈(143) 중 적어도 하나를 포함한다. 카메라 모듈(150)은 제1 카메라(151) 및 제2 카메라(152) 중 적어도 하나를 포함하고, 입/출력 모듈(160)은 버튼(161), 마이크(162), 스피커(163), 진동모터(164), 커넥터(165), 및 키패드(166) 중 적어도 하나를 포함한다.
제어부(110)는 CPU(111), 사용자 디바이스(100)의 제어를 위한 제어프로그램이 저장된 롬(ROM,112) 및 사용자 디바이스(100)의 외부로부터 입력되는 신호 또는 데이터를 기억하거나, 사용자 디바이스(100)에서 수행되는 작업을 위한 기억영역으로 사용되는 램(RAM,113), 사용자 디바이스(100)의 전원이 온(ON)될 때, 부팅을 수행하는 부트 로더(114)를 포함한다. CPU(111)는 싱글 코어, 듀얼 코어, 트리플 코어, 또는 쿼드 코어를 포함할 수 있다. CPU(111), 롬(112) 및 램(113)은 내부버스(bus)를 통해 상호 연결될 수 있다.
제어부(110)는 이동통신 모듈(120), 서브통신 모듈(130), 멀티미디어 모듈(140), 카메라 모듈(150), GPS 모듈(155), 입/출력 모듈(160), 센서 모듈(170), 저장부(175), 전원공급부(180), 제1 터치스크린(190a), 제2 터치스크린(190b) 및 터치스크린 컨트롤러(195)를 제어할 수 있다.
이러한 제어부(110)는 하나의 CPU(111) 프로세서를 이용하여 메인 OS와 보안 OS 각각에 대응하는 멀티 OS환경을 유지하고, 필요에 따라 메인 OS와 보안 OS 각각에 대응하는 두 개의 분리된 일반 모드와 보안 모드로 동작한다. 보안 모드는 보안이 요구되는 보안 실행을 보안 영역에서 수행하는 모드이고, 일반 모드는 보안 요구되지 않은 비보안 실행을 일반 영역에서 수행하는 모드이다. 본 발명의 실시예에 따르면 제어부(110)는 메인 OS 환경에서 비보안 실행(이하 '일반 실행')을 수행하는 메인부(200)와, 보안 OS환경에서 보안 실행을 수행하는 보안부(300)를 구비하고, 메인부(200)와 보안부(300)를 통해 각각 일반 모드와 보안 모드를 구분하여 동작할 수 있다. 즉, 상기 메인부(200) 내에는 메인 OS가 실행되며, 상기 보안부(300) 내에는 보안 OS가 별도로 실행된다. 그리고, 상기 보안 OS에 의해 이용되는 메모리 영역은 상기 메인 OS에 의해 접근이 차단된다. 이에 따라, 상기 메인 OS가 공개형 OS인 경우에도 악성 코드가 상기 보안 OS 및 상기 보안 OS가 이용하는 메모리 영역에 접근을 할 수 없게 된다.
이에 따라, 메인부(200)와 보안부(300)는 각각 일반 실행과 보안 실행을 수행하는데 필요한 복수의 기능 모듈을 포함한다. 메인부(200)와 보안부(300)의 구성의 일예는 도3에 도시하였다.
제어부(110)는 일반 프로그램 또는 일반 어플리케이션 또는 보안 요구되지 않은 디지털 콘텐츠를 일반 모드에서 실행시키고, 보안이 요구되는 프로그램 또는 보안이 요구되는 어플리케이션 또는 보안이 요구된 보안 콘텐츠를 보안 모드에서 실행시킨다. 특히 본 발명의 실시 예에 따르면 보안이 요구되는 디지털 콘텐츠, 즉, 보안 콘텐츠는 DRM 등의 콘텐츠 보호 시스템에 의해 보호되는 콘텐츠일 수 있다. 또한, 보안이 필요한 모든 콘텐츠를 고도의 보안이 요구되는 콘텐츠와 상대적으로 저도의 보안이 요구되는 콘텐츠를 구분하고, 상기 고도의 보안이 요구되는 콘텐츠는 보안부(300)에서 처리하고, 상기 상대적으로 저도의 보안이 요구되는 콘텐츠는 메인부(200)에서 처리할 수도 있다. 예컨대 제어부(110)는 보안 콘텐츠에 해당하는 오디오 또는/및 비디오 스트림에 대한 디크립션(decryption) 실행, 디코딩(decoding) 실행, 렌더링(rendering) 실행을 보안 모드에서 실행할 수 있다.
구체적으로 제어부(110)는 사용자 요청에 따라 특정 디지털 콘텐츠에 대한 실행 요구가 수신되면, 특정 디지털 콘텐츠가 보안 콘텐츠인지 일반 콘텐츠인지 확인한다. . 특정 디지털 콘텐츠가 보안 콘텐츠이면, 제어부(110)는 보안 모드로 전환(Switch)하여 특정 콘텐츠를 보안 영역에서 처리한다. 예컨대 제어부(110)는 특정 디지털 콘텐츠가 DRM이 적용된 동영상 콘텐츠인 경우, 보안 모드에서 동영상 콘텐츠의 오디오 또는/및 비디오 스트림에 대한 디크립션, 디코딩, 렌더링 처리를 수행하고, 접근이 제한된 보안 저장 영역에 처리 결과를 저장한다. 그리고 제어부(110)는 보안 모드에서 보안 저장 영역에 저장된 오디오 또는/및 비디오 데이터가 멀티미디어 모듈(140)을 통해 출력되도록 제어한다. 이와 같이 제어부(110)는 보안 콘텐츠가 보안 모드에서 접근 제한된 보안 저장 영역(179)을 이용하여 처리되도록 제어함으로써, 보안 콘텐츠의 해킹을 어렵게 만든다.
상기한 제어부(110)에 있어서, 메인부(200)와 보안부(300)는 CPU(111) 프로세서에 포함된다. 이에 따른, CPU(111) 프로세서의 구성을 도3에 도시하였다. 도 3을 참조하면, CPU(111)는 일반 실행을 수행하는 메인부(200), 보안 실행을 수행하는 보안부(300), 메인부(200)와 보안부(300)간의 통신을 담당하는 보안 통신부(270)를 포함한다.메인부(200)는 메인 OS를 이용하여, 일반 모드에서 보안 요구되지 않은 일반 프로그램 또는 일반 어플리케이션 또는 일반 콘텐츠 등의 실행을 수행하며, 보안 요구되는 보안 프로그램 또는 보안 어플리케이션 또는 보안 콘텐츠 등의 실행이 필요한 경우 보안 통신부(270)를 통해 보안부(300)로 해당 실행을 명령 또는 요청한다.
메인부(200) 내에는 메인 OS(210)가 실행되며, 상기 보안부(300) 내에는 보안 OS(310)가 별도로 실행된다. 그리고, 상기 메인 OS(210)는 상기 보안부(300)에 직접 접근할 수 없고, 보안 통신부(270)를 통하여 특정 기능, 쓰레드(thread) 및 프로세스(process)의 실행을 명령 또는 요청할 수 있다. 상기 보안 통신부(270)는 본 발명에 따른 데이터 처리 장치 또는 모바일 장치가 보안모드와 비보안 모드 간에 스위칭을 가능하게 한다. 상기 보안 통신부(270)은 미리 정해진 비트(bit)를 이용하여 상기 메인부(200)가 접근할 수 있는 메모리 영역과, 상기 보안부(300)가 접근할 수 있는 메모리 영역을 하드웨어(hardware) 상에서 구분시킬 수 있다. 이로 인하여 상기 보안부(300)에 의해 이용되는 메모리 영역은 상기 메인부(200)에 의한 접근이 차단된다. 이에 따라, 상기 메인부(200)의 메인 운영체제(210)가 공개형 운영체제인 경우에도 악성 코드가 보안 운영체제(310) 및 상기 보안 운영체제(310)가 이용하는 메모리 영역에 접근을 할 수 없게 된다. 이하에서는 보안이 요구되는 콘텐츠를 보안부(300) 내에서 처리하는 과정을 예를 들어 설명한다.
보안부(300)는 메인부(200)의 요청에 따라, 보안 모드하에서 보안 요구되는 보안 프로그램 또는 보안 어플리케이션 또는 보안 콘텐츠를 실행한다.
상기한 바와 같은 메인부(200)와 보안부(300)의 구성을 좀더 구체적으로 설명하면, 메인 OS(Operating System)(210), 디크립트부(220), 디코딩부(230), 렌더링부(240), 어플리케이션부(250)를 포함한다. 보안부(300)는 보안 OS(Operating System)(310), 보안 서비스부(340), 프로비전 서비스부(320), SFS(Secure File System)(330)을 포함한다.
먼저 메인부(200)의 메인 OS(Operating System)(210), 디크립트부(220), 디코딩부(230), 렌더링부(240), 어플리케이션부(250)에 대해 설명한다.
메인 OS(210)는 사용자 디바이스(100)의 메인 운영체제로서, 일반 모드에서 사용자 디바이스(100) 전반의 운영을 담당하고, 특히 일반 모드에서 보안 요구되지 않은 일반 프로그램 또는 일반 어플리케이션 또는 일반 콘텐츠 등의 실행을 수행하며, 보안 요구되는 보안 프로그램 또는 보안 어플리케이션 또는 보안 콘텐츠 등의 실행이 필요한 경우 보안 통신부(270)를 통해 보안부(300)로 해당 실행을 명령 또는 요청한다.
디크립트부(220)는 콘텐츠 실행이 요청된 경우, 일반 저장 영역(177)에서 상기 실행 요청된 콘텐츠에 해당하는 오디오 및/또는 비디오 스트림을 읽어오고, 오디오 및/또는 비디오 스트림이 보안 요구되는 오디오 및/또는 비디오 스트림인지 여부를 판단한다. 이때 디크립트부(220)는 오디오 및/또는 비디오 스트림이 DRM 등과 같은 콘텐츠 보호 시스템이 적용되어 있는지 여부를 확인하여 보안 요구되는 오디오 및/또는 비디오 스트림인지 여부를 판단할 수 있다. 또한 디크립트부(210)는 오디오 및/또는 비디오 스트림이 보안 모드에서 실행되도록 하는 식별자가 오디오 및/또는 비디오 스트림에 포함된 경우, 보안 요구되는 오디오 및/또는 비디오 스트림인지 여부를 판단할 수 있다.
디크립트부(220)는 실행 요청된 콘텐츠가 보안 요구되지 않은 오디오 또는/및 비디오 스트림인 경우, 보안 요구되지 않은 오디오 또는/및 비디오 스트림을 페이로드 단위로 구분하여 일반 저장 영역(177)에 저장하고, 디코딩을 요청한다. 디크립트부(220)는 실행 요청된 콘텐츠가 보안 요구된 오디오 및/또는 비디오 스트림인 경우, 보안 요구된 오디오 또는/및 비디오 스트림을 페이로드(payload) 단위로 구분하고, 페이로드 단위의 보안 요구된 오디오 또는/및 비디오 스트림에 대한 보안 디크립트가 수행되도록 메인 OS(210)에 요청한다. 그리고 디크립트부(210)는 보안 디크립트 수행이 완료됨을 알리는 정보가 메인 OS(210)로부터 수신되면 디코딩부(220)에 디코딩을 요청한다.
디코딩부(230)는 비디오 디코딩 모듈(232) 및 오디오 디코딩 모듈(234)을 포함한다. 디코딩부(230)는 보안 요구되지 않은 일반 오디오 또는/및 비디오 스트림 디코딩 요청이 있는 경우 일반 모드에서 비디오 디코딩 모듈(232) 및/또는 오디오 디코딩 모듈(234)을 통해 일반 저장 영역(177)에 저장된 페이로드 단위의 오디오 또는/및 비디오 스트림을 해당 오디오 또는 및 비디오 코덱을 이용하여 프레임 단위의 오디오 또는/및 비디오 데이터로 디코딩한다. 디코딩부(230)는 디코딩된 오디오 또는/및 비디오 데이터를 일반 저장 영역(177)에 저장하고, 렌더링부(240)에 렌더링을 요청한다. 한편 디코딩부(230)는 보안 요구되는 비디오 스트림 디코딩 요청이 있는 경우, 보안 모드에서 보안 디코딩이 이루어지도록 메인 OS(210)에 요청한다. 그리고 디코딩부(230)는 메인OS(210)로부터 보안 디코딩 수행이 완료됨을 알리는 정보가 수신되면, 렌더링부(240)에 렌더링을 요청한다.
렌더링부(240)는 비디오 렌더링 모듈(242) 및 오디오 렌더링 모듈(244)을 포함한다. 렌더링부(230)는 보안 요구되지 않은 일반 오디오 또는/및 비디오 데이터에 대한 렌더링 요청이 있는 경우 일반 모드에서 비디오 렌더링 모듈(242) 또는/및 오디오 렌더링 모듈(244)을 통해 일반 저장 영역(177)에 저장된 디코딩된 비디오 데이터를 화면에 표시될 수 있는 2차원 또는 3차원 비디오 신호로 생성하는 비디오 렌더링을 수행하여 출력하고, 디코딩된 오디오 데이터를 아날로그 오디오 신호로 생성하는 렌더링을 수행하여 출력한다.
한편, 렌더링부(240)는 보안 요구되는 비디오 데이터 렌더링 요청이 있는 경우 보안 모드에서 보안 렌더링이 이루어지도록 메인 OS(210)에 요청한다. 그리고 렌더링부(240)는 메인OS(210)로부터 보안 렌더링 수행이 완료됨을 알리는 정보가 수신되면, 렌더링된 비디오 신호와 오디오 신호가 출력되도록 요청한다. 렌더링된 비디오 신호와 오디오 신호는 각각 표시장치 및 스피커를 통해 출력될 수 있다.
어플리케이션부(250)는 콘텐츠 다운로드 어플리케이션 또는 콘텐츠 재생 어플리케이션 등의 어플리케이션을 구비하고, 사용자 요청에 따라 어플리케이션이 실행되면, 해당 기능을 수행한다.
이하 보안부(300)의 보안 OS(Operating System)(310), 프로비전 서비스부(320), SFS(Secure File System)(330), 보안 서비스부(340)에 대해 설명한다.
보안 OS(310)는 사용자 디바이스(100)의 보안 운영체제로서, 보안 모드에서 보안 요구되는 보안 콘텐츠의 실행을 수행한다. 특히 보안 OS(310)는 보안 통신부(270)를 통해 메인 OS(210)로부터 보안 요구된 비디오 스트림에 대한 디크립션 요청, 디코딩 요청, 렌더링 요청 및 보안 요구된 오디오 스트림에 대한 디크립션 요청 중 어느 하나가 수신되면, 이를 보안 서비스부(340)로 전달한다.
프로비전 서비스부(320)는 DRM 서비스 제공자 등의 외부 콘텐트 보호 서비스 제공자들로부터 보안 키 및 인증 정보를 수신하여 SFS(330)에 기록한다. 또한 상기 보안키 및 인증정보는 장치 제조사에 의해 미리 SFS(330)에 저장될 수도 있다.
SFS(330)는 보안 모드에서 접근 가능한 저장 영역으로서, 보안 요구되는 보안 콘텐츠의 실행 예컨대 오디오 또는/및 비디오 신호에 대한 디크립션 실행, 디코딩 실행, 렌더링 실행을 위한 각종 프로그램 및 정보들을 포함한다. 또한 SFS(330)는 프로비전 서비스부(320)에 의해 기록된 보안 키 및 인증정보를 저장한다.
보안 서비스부(340)는 보안 디크립션을 수행하는 보안 디크립션 서비스(342), 보안 디코딩을 수행하는 보안 디코딩 서비스(344), 보안 렌더링을 수행하는 보안 렌더링 서비스(346)를 포함한다. 보안 서비스부(340)는 보안 디크립션 서비스(342)를 통해 보안 디크립션을 수행한다. 보안 서비스부(340)는 보안 디코딩 서비스(344)를 통해 보안 디코딩을 수행한다. 보안 서비스부(340)는 보안 렌더링 서비스(346)를 통해 보안 렌더링을 수행한다.
이러한 보안 서비스부(340)는 보안 OS(310)로부터 보안 요구된 비디오 스트림에 대한 디크립션 요청이 전달되면, SFS(330)에 저장된 보안 키 및 인증 정보를 이용하여 보안 요구된 비디오 스트림에 대한 보안 디크립트를 수행하고 보안 디크립트된 비디오 스트림을 보안 저장 영역(179)에 저장한다. 또한 보안 서비스부(340)는 보안 OS(310)로부터 보안 요구된 비디오 스트림에 대한 디코딩 요청이 전달되면, 해당 비디오 코덱을 이용하여 보안 요구된 비디오 스트림에 대한 보안 디코딩을 수행하고 보안 디코딩된 비디오 스트림을 보안 저장 영역(179)에 저장한다. 또한 보안 서비스부(340)는 보안 OS(310)로부터 보안 요구된 비디오 데이터에 대한 렌더링 요청이 전달되면, 디코딩된 비디오 데이터를 2차원 또는 3차원의 화면으로 표시하기 위한 비디오 신호로 생성하는 보안 렌더링을 수행하고, 비디오 신호를 출력한다.
한편, 보안 서비스부(340)는 보안 OS(310)로부터 보안 요구된 비디오 스트림에 대한 디크립션 요청이 전달되면, SFS(330)에 저장된 보안 키 및 인증 정보를 이용하여 보안 요구된 오디오 스트림에 대한 보안 디크립트를 수행하고 보안 디크립트된 오디오 스트림을 일반 저장 영역(179)에 저장한다.
도2로 돌아와서, 부트 로더(114)는 사용자 디바이스(100)의 전력이 온(ON)되면, 사용자 디바이스(100)를 부팅한다. 부트 로더(114)는 부팅이 시작되면 먼저, 보안 OS를 로딩하고, 보안 OS의 로딩이 완료되면, 메인 OS를 로딩한다.
그리고, 본 발명의 일 실예에 따라, 부트 로더(114)는 부팅 과정에서 메인 OS의 해킹 여부를 확인한다. 예를 들어, 부트 로더(114)는 사용자 디바이스(100)에 적법하게 탑재된 메인 OS의 롬 바이너리 이미지를 참조하여, 부팅시점에서 사용자 디바이스(100)의 메인 OS에 대한 롬 바이너리 이미지의 유사성을 여부를 확인하여, 유사하지 않다고 판단되면 메인 OS가 사용자에 의해 변경된 것으로 결정한다. 또는 메인 OS를 배포한 배포자의 사인 등을 확인하여, 부팅시점에서 사용자 디바이스(100)의 메인 OS에 대한 롬 바이너리 이미지에 올바른 사인이 존재하지 않으면, 메인 OS가 사용자에 의해 변경된 것으로 결정한다. 적법하게 탑재된 메인 OS의 롬 바이너리 이미지는 일반 저장 영역(177)에 저장되어 있다.
부트 로더(114)는 메인 OS가 해킹된것으로 확인되면, 메인 OS의 해킹 정보를 보안 저장 영역(179)에 저장한다. 부트 로더(114)는 보안부(300)를 통해 보안 모드하에서 보안 저장 영역(179)에 메인 OS의 해킹 정보가 저장되게 할 수 있다.
메인 OS의 해킹 정보는 추후, 보안 콘텐츠의 실행이 요구되거나, 보안 실행이 요구될 때, 제어부(110)의 보안 모드 동작 여부를 결정하는 기준으로 사용될 수 있다.
한편, 부트 로더(114)는 부팅 과정에서 보안부(300)의 각 기능 모듈의 인터그러티(integrity)를 확인한다. 즉, 부트 로더(114)는 보안 OS를 로딩하면서, 부팅 시점에 보안부(300)의 각 기능 모듈의 바이너리 이미지를 확인하여, 각 기능 모듈의 배포자 사인 등을 확인하고, 부팅시점에서 각 기능 모듈의 바이너리 이미지에 올바른 배포자의 사인이 존재하지 않으면, 해당 기능 모듈의 인터그러티가 훼손된 것으로 결정한다. 보안부(300)의 각 기능 모듈은 예를 들어, 프로비전 서비스부(320), 보안 서비스부(340), SFS(330)가 될 수 있다. 보안부(300)의 각 기능 모듈의 정상적인 바이너리 이미지는 일반 저장 영역(177)에 저장되어 있으며, 부팅 시점의 보안부(300)의 각 기능 모듈의 정상적인 바이너리 이미지는 부트 로더(114)의 요청에 따라 보안부(300)로부터 제공될 수 있다.
부트 로더(114)는 보안부(300)의 각 기능 모듈의 인터그러티(integrity)를 확인 결과를 보안부(300)를 통해 보안 모드하에서 보안 저장 영역(179)에 저장되게 한다. 보안부(300)의 각 기능 모듈의 인터그러티(integrity)를 확인 결과 역시 추후, 보안 콘텐츠의 실행이 요구되거나, 보안 실행이 요구될 때, 제어부(110)의 보안 모드 동작 여부를 결정하는 기준으로 사용될 수 있다.
저장부(175)는 제어부(110)의 제어에 따라 이동통신 모듈(120), 서브통신 모듈(130), 멀티미디어 모듈(140), 카메라 모듈(150), GPS모듈(155), 입/출력 모듈(160), 센서 모듈(170), 터치스크린(190)의 동작에 대응되게 입/출력되는 신호 또는 데이터를 저장할 수 있다. 저장부(175)는 사용자 디바이스(100) 또는 제어부(110)의 제어를 위한 제어 프로그램 및 어플리케이션들을 저장할 수 있다.
“저장부”라는 용어는 저장부(175), 제어부(110)내 롬(112), 램(113) 또는 사용자 디바이스(100)에 장착되는 메모리 카드(도시되지 아니함)(예, SD 카드, 메모리 스틱)를 포함한다. 저장부는 비휘발성메모리, 휘발성메모리, 하드 디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD)를 포함할 수 있다.
이러한 저장부(175)는 일반 저장 영역(177)과, 보안 저장 영역(179)을 포함할 수 있다. 일반 저장 영역(177)에는 일반 데이터 및 프로그램들이 저장될 수 있고, 보안 저장 영역(179)에는 보안 모드에서 접근 허여된 구성요소들만 접근할 수 있는 데이터 및 프로그램들이 저장될 수 있다. 본 발명의 실시 예에 따르면 일반 저장 영역(177)에는 이동통신 모듈(120), 무선랜 모듈(131), 및 근거리통신 모듈(132) 중 적어도 하나를 이용하여 다운로드 받은 콘텐츠에 해당하는 오디오 또는/및 비디오 스트림이 저장될 수 있다. 또한 일반 저장 영역(177)에는 일반 모드에서 일반 콘텐츠에 대한 디크립트 및 디코딩 수행 시 발생되는 디크립트된 오디오 또는/및 비디오 데이터와 디코딩된 오디오 데이터 및/도는 비디오 데이터 등이 저장될 수 있다. 보안 저장 영역(179)에는 보안 모드에서 보안 콘텐츠에 대한 디크립트 및 디코딩 수행 시 발생되는 디크립트된 오디오 또는/및 비디오 데이터 또는 디코딩된 오디오 또는/및 비디오 데이터 등이 저장될 수 있다.
“저장부”라는 용어는 저장부(175), 제어부(110)내 롬(112), 램(113) 또는 사용자 디바이스(100)에 장착되는 메모리 카드(도시되지 아니함)(예, SD 카드, 메모리 스틱)를 포함한다. 저장부는 비휘발성메모리, 휘발성메모리, 하드 디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD)를 포함할 수 있다.
이동통신 모듈(120)은 제어부(110)의 제어에 따라 적어도 하나-하나 또는 복수-의 안테나(도시되지 아니함)를 이용하여 이동 통신을 통해 사용자 디바이스(100)가 외부 장치와 연결되도록 한다. 이동통신 모듈(120)은 사용자 디바이스(100)에 입력되는 전화번호를 가지는 휴대폰(도시되지 아니함), 스마트폰(도시되지 아니함), 태블릿PC 또는 다른 장치(도시되지 아니함)와 음성 통화, 화상 통화, 문자메시지(SMS) 또는 멀티미디어 메시지(MMS)를 위한 무선 신호를 송/수신한다.
서브통신 모듈(130)은 무선랜 모듈(131)과 근거리통신 모듈(132) 중 적어도 하나를 포함할 수 있다. 예를 들어, 무선랜 모듈(131)만 포함하거나, 근거리통신 모듈(132)만 포함하거나 또는 무선랜 모듈(131)과 근거리통신 모듈(132)을 모두 포함할 수 있다.
무선랜 모듈(131)은 제어부(110)의 제어에 따라 무선 AP(access point)(도시되지 아니함)가 설치된 장소에서 인터넷에 연결될 수 있다. 무선랜 모듈(131)은 미국전기전자학회(IEEE)의 무선랜 규격(IEEE802.11x)을 지원한다. 근거리통신 모듈(132)은 제어부(110)의 제어에 따라 사용자 디바이스(100)와 화상형성장치(도시되지 아니함) 사이에 무선으로 근거리 통신을 할 수 있다. 근거리 통신방식은 블루투스(bluetooth), 적외선 통신(IrDA, infrared data association) 등이 포함될 수 있다.
사용자 디바이스(100)는 성능에 따라 이동통신 모듈(120), 무선랜 모듈(131), 및 근거리통신 모듈(132) 중 적어도 하나를 포함할 수 있다. 예를 들어, 사용자 디바이스(100)는 성능에 따라 이동통신 모듈(120), 무선랜 모듈(131), 및 근거리통신 모듈(132)들의 조합을 포함할 수 있다.
이러한 이동통신 모듈(120), 무선랜 모듈(131), 및 근거리통신 모듈(132) 중 적어도 하나는 제어부(110)의 제어 하에 외부 콘텐츠 제공자에게 보안 콘텐츠를 요청하기 위한 요청신호를 송신하거나, 보안콘텐츠 요청에 대한 응답으로 보안 콘텐츠를 수신할 수 있다. 또한 이동통신 모듈(120), 무선랜 모듈(131), 및 근거리통신 모듈(132) 중 적어도 하나는 제어부(110)의 제어 하에 DRM 등의 보호된 콘텐츠를 디크립트하거나 인증하기 위한 키 데이터 및 인증 정보를 요청 및 수신할 수 있다.
멀티미디어 모듈(140)은 방송통신 모듈(141), 오디오재생 모듈(142) 또는 동영상재생 모듈(143)을 포함할 수 있다. 방송통신 모듈(141)은 제어부(110)의 제어에 따라 방송통신 안테나(도시되지 아니함)를 통해 방송국에서부터 송출되는 방송 신호(예, TV방송 신호, 라디오방송 신호 또는 데이터방송 신호) 및 방송부가 정보(예, EPS(Electric Program Guide) 또는 ESG(Electric Service Guide))를 수신할 수 있다. 오디오재생 모듈(142)는 제어부(110)의 제어에 따라 저장되거나 또는 수신되는 디지털 오디오 파일(예, 파일 확장자가 mp3, wma, ogg 또는 wav인 파일)을 재생할 수 있다. 동영상재생 모듈(143)은 제어부(110)의 제어에 따라 저장되거나 또는 수신되는 디지털 동영상 파일(예, 파일 확장자가 mpeg, mpg, mp4, avi, mov, 또는 mkv인 파일)을 재생할 수 있다. 동영상재생 모듈(143)은 디지털 오디오 파일을 재생할 수 있다.
멀티미디어 모듈(140)은 방송통신 모듈(141)을 제외하고 오디오재생 모듈(142)과 동영상재생 모듈(143)을 포함할 수 있다. 또한, 멀티미디어 모듈(140)의 오디오재생 모듈(142) 또는 동영상재생 모듈(143)은 제어부(100)에 포함될 수 있다. 이러한 멀티미디어 모듈(140)은 제어부(110)의 제어 하에 일반 모드에서는 일반 저장 영역(177)에 저장된 오디오 또는/및 비디오 데이터를 처리하여 출력하고, 보안 모드에서는 보안 저장 영역(177)에 저장된 오디오 또는/및 비디오 데이터를 처리하여 출력할 수 있다.
카메라 모듈(150)은 제어부(110)의 제어에 따라 정지이미지 또는 동영상을 촬영하는 제1 카메라(151) 및 제2 카메라(152) 중 적어도 하나를 포함할 수 있다. 또한, 제1 카메라(151) 또는 제2 카메라(152)는 촬영에 필요한 광량을 제공하는 보조 광원(예, 플래시(도시되지 아니함))를 포함할 수 있다. 제1 카메라(151)는 상기 사용자 디바이스(100) 전면에 배치되고, 제2 카메라(152)는 상기 사용자 디바이스(100)의 후면에 배치될 수 있다. 달리 취한 방식으로, 제1 카메라(151)와 제2 카메라(152)는 인접(예, 제1 카메라(151)와 제2 카메라(152)의 간격이 1 cm 보다 크고, 8 cm 보다는 작은)하게 배치되어 3차원 정지이미지 또는 3차원 동영상을 촬영할 수 있다.
GPS 모듈(155)은 지구 궤도상에 있는 복수의 GPS위성(도시되지 아니함)에서부터 전파를 수신하고, GPS위성(도시되지 아니함)에서부터 사용자 디바이스(100)까지 전파도달시간(Time of Arrival)을 이용하여 사용자 디바이스(100)의 위치를 산출할 수 있다.
입/출력 모듈(160)은 복수의 버튼(161), 마이크(162), 스피커(163), 진동모터(164), 커넥터(165), 및 키패드(166) 중 적어도 하나를 포함할 수 있다.
버튼(161)은 상기 사용자 디바이스(100)의 하우징의 전면, 측면 또는 후면에 형성될 수 있으며, 전원/잠금 버튼(도시되지 아니함), 볼륨버튼(도시되지 아니함), 메뉴 버튼, 홈 버튼, 돌아가기 버튼(back button) 및 검색 버튼(161) 중 적어도 하나를 포함할 수 있다.
마이크(162)는 제어부(110)의 제어에 따라 음성(voice) 또는 사운드(sound)를 입력 받아 전기적인 신호를 생성한다.
스피커(163)는 제어부(110)의 제어에 따라 이동통신 모듈(120), 서브통신 모듈(130), 멀티미디어 모듈(140) 또는 카메라 모듈(150)의 다양한 신호(예, 무선신호, 방송신호, 디지털 오디오 파일, 디지털 동영상 파일 또는 사진 촬영 등)에 대응되는 사운드를 사용자 디바이스(100) 외부로 출력할 수 있다. 스피커(163)는 사용자 디바이스(100)가 수행하는 기능에 대응되는 사운드(예, 전화 통화에 대응되는 버튼 조작음, 또는 통화 연결음)를 출력할 수 있다. 스피커(163)는 상기 사용자 디바이스(100)의 하우징의 적절한 위치 또는 위치들에 하나 또는 복수로 형성될 수 있다.
진동모터(164)는 제어부(110)의 제어에 따라 전기적 신호를 기계적 진동으로 변환할 수 있다. 예를 들어, 진동 모드에 있는 사용자 디바이스(100)는 다른 장치(도시되지 아니함)로부터 음성통화가 수신되는 경우, 진동모터(164)가 동작한다. 상기 사용자 디바이스(100)의 하우징 내에 하나 또는 복수로 형성될 수 있다. 진동모터(164)는 터치스크린(190) 상을 터치하는 사용자의 터치 동작 및 터치스크린(190) 상에서의 터치의 연속적인 움직임에 응답하여 동작할 수 있다.
커넥터(165)는 사용자 디바이스(100)와 외부장치(도시되지 아니함) 또는 전원소스(도시되지 아니함)를 연결하기 위한 인터페이스로 이용될 수 있다. 제어부(110)의 제어에 따라 커넥터(165)에 연결된 유선 케이블을 통해 사용자 디바이스(100)의 저장부(175)에 저장된 데이터를 외부 장치(도시되지 아니함)로 전송하거나 또는 외부 장치(도시되지 아니함)에서부터 데이터를 수신할 수 있다. 커넥터(165)에 연결된 유선 케이블을 통해 전원소스(도시되지 아니함)에서부터 전원이 입력되거나 배터리(도시되지 아니함)를 충전할 수 있다.
키패드(166)는 사용자 디바이스(100)의 제어를 위해 사용자로부터 키 입력을 수신할 수 있다. 키패드(166)는 사용자 디바이스(100)에 형성되는 물리적인 키패드(도시되지 아니함) 또는 터치스크린(190)에 표시되는 가상의 키패드(도시되지 아니함)를 포함한다. 사용자 디바이스(100)에 형성되는 물리적인 키패드(도시되지 아니함)는 사용자 디바이스(100)의 성능 또는 구조에 따라 제외될 수 있다.
센서 모듈(170)은 사용자 디바이스(100)의 상태를 검출하는 적어도 하나의 센서를 포함한다. 예를 들어, 센서모듈(170)은 사용자의 사용자 디바이스(100)에 대한 접근여부를 검출하는 근접센서, 사용자 디바이스(100) 주변의 빛의 양을 검출하는 조도센서(도시되지 아니함), 또는 사용자 디바이스(100)의 동작(예, 사용자 디바이스(100)의 회전, 사용자 디바이스(100)에 가해지는 가속도 또는 진동)을 검출하는 모션센서(도시되지 아니함)를 포함할 수 있다. 적어도 하나의 센서는 상태를 검출하고, 검출에 대응되는 신호를 생성하여 제어부(110)로 전송할 수 있다. 센서모듈(170)의 센서는 사용자 디바이스(100)의 성능에 따라 추가되거나 삭제될 수 있다.
저장부(175)는 제어부(110)의 제어에 따라 이동통신 모듈(120), 서브통신 모듈(130), 멀티미디어 모듈(140), 카메라 모듈(150), GPS모듈(155), 입/출력 모듈(160), 센서 모듈(170), 터치스크린(190)의 동작에 대응되게 입/출력되는 신호 또는 데이터를 저장할 수 있다. 저장부(175)는 사용자 디바이스(100) 또는 제어부(110)의 제어를 위한 제어 프로그램 및 어플리케이션들을 저장할 수 있다.
전원공급부(180)는 제어부(110)의 제어에 따라 사용자 디바이스(100)의 하우징에 배치되는 하나 또는 복수의 배터리(도시되지 아니함)에 전원을 공급할 수 있다. 하나 또는 복수의 배터리(도시되지 아니함)는 사용자 디바이스(100)에 전원을 공급한다. 또한, 전원공급부(180)는 커넥터(165)와 연결된 유선 케이블을 통해 외부의 전원소스(도시되지 아니함)에서부터 입력되는 전원을 사용자 디바이스(100)로 공급할 수 있다.
터치스크린(190)은 사용자에게 다양한 서비스(예, 통화, 데이터 전송, 방송, 사진촬영)에 대응되는 유저 인터페이스를 제공할 수 있다. 특히 본 발명의 실시 예에 따라 콘텐츠 다운로드 어플리케이션 또는 콘텐츠 재생 어플리케이션 등의 어플리케이션 수행을 위한 유저 인터페이스를 제공할 수 있다.
터치스크린(190)은 유저 인터페이스에 입력되는 적어도 하나의 터치에 대응되는 아날로그 신호를 터치스크린 컨트롤러(195)로 전송할 수 있다. 터치스크린(190)은 사용자의 신체(예, 엄지를 포함하는 손가락) 또는 터치가능한 입력 수단(예, 스타일러스 펜)을 통해 적어도 하나의 터치를 입력받을 수 있다. 또한, 터치스크린(190)은 적어도 하나의 터치 중에서, 하나의 터치의 연속적인 움직임을 입력받을 수 있다. 터치스크린(190)은 입력되는 터치의 연속적인 움직임에 대응되는 아날로그 신호를 터치스크린 컨트롤러(195)로 전송할 수 있다. 예컨대 사용자에 의한 콘텐츠 다운로드 어플리케이션 실행 요청이나, 콘텐츠 다운로드 어플리케이션 실행 중 발생하는 다양한 사용자 선택에 대응된 터치 동작에 대응되는 아날로그 신호를 터치 스크린 컨트롤러(195)로 전송할 수 있다.
본 발명에서 터치는 터치스크린(190)과 사용자의 신체 또는 터치 가능한 입력 수단과의 접촉에 한정되지 않고, 비접촉(예, 터치스크린(190)과 사용자의 신체 또는 터치 가능한 입력 수단과 검출가능한 간격이 1 mm 이하)을 포함할 수 있다. 터치스크린(190)에서 검출가능한 간격은 사용자 디바이스(100)의 성능 또는 구조에 따라 변경될 수 있다.
터치스크린(190)은 예를 들어, 저항막(resistive) 방식, 정전용량(capacitive) 방식, 적외선(infrared) 방식 또는 초음파(acoustic wave) 방식으로 구현될 수 있다.
터치스크린 컨트롤러(195)는 터치스크린(190)에서부터 수신된 아날로그 신호를 디지털 신호(예, X와 Y좌표)로 변환하여 제어부(110)로 전송한다. 제어부(110)는 터치스크린 컨트롤러(195)로부터 수신된 디지털 신호를 이용하여 터치스크린(190)을 제어할 수 있다. 예를 들어, 제어부(110)는 터치에 응답하여 터치스크린(190)에 표시된 단축 아이콘(도시되지 아니함)이 선택되게 하거나 또는 단축 아이콘(도시되지 아니함)을 실행할 수 있다. 또한, 터치스크린 컨트롤러(195)는 제어부(110)에 포함될 수도 있다.
상기와 같이 구성되는 사용자 디바이스(100)에서 사용자 디바이스(100)의 장치적 보안 수준을 확인하여, 그 결과에 따라 보안 모드의 동작을 자체를 차단하여, 디지털 콘텐츠에 대한 보호레벨을 강화시키는 과정을 도4내지 도7을 참조하여 설명한다. 도4 및 도5는 본 발명의 일 실시예에 따라, 사용자 디바이스(100)는 메인 OS에 대한 해킹 여부를 판단하여, 사용자 디바이스가 보안 모드로 동작하는 것을 차단하는 예를 나타낸 것이다. 도6및 도7은 사용자 디바이스(100)의 장치적 보안 수준을 나타내는 디바이스 인증 정보를 콘텐츠 서비스 서버(10)에 의해 인증 받아 그 결과에 따라 사용자 디바이스(100)가 보안 모드로 동작하는 것을 차단하는 예를 나타낸 것이다.
도4는 본 발명의 일 실시예에 따른 사용자 디바이스의 부팅 과정을 나타낸 도면이다. 도4를 참조하면, 사용자 디바이스(100)에 전원이 온되면, 부트 로더(114)는 301단계에서 부팅을 시작한다. 그리고 303단계에서 부트 로더(114)는 보안 OS를 로딩하고, 304단계에서 보안부(300)의 각 기능 모듈에 대한 인터그러티를 확인한다. 그리고 보안부(300)에게 각 기능 모듈의 인터그러티 확인 결과를 저장할 것을 요청한다. 보안부(300)는 요청에 따라, 보안 모드하에서, 보안 저장 영역(179)에 인터그러티 확인 결과를 저장한다.
이후, 부트 로더(114)는 305단계에서 메인 OS의 해킹 여부를 확인한다. 확인 결과 메인 OS가 해킹된것으로 확인되면, 307단계에서, 보안부(300)에게 메인 OS의 해킹 정보를 저장할 것을 요청한다. 보안부(300)는 요청에 따라, 보안 모드하에서, 보안 저장 영역(179)에 메인 OS의 해킹 정보를 저장한다.
그리고 부팅 로더(114)는 309단계에서 메인 OS를 로딩하고, 부팅을 종료한다.
도5는 본 발명의 실시예에 따라 메인 OS의 해킹 정보를 이용하여, 사용자 디바이스의 장치적 보안 수준을 확인하고, 그 결과에 따라 보안 모드의 동작을 자체를 차단하는 과정을 나타낸 도면이다.
도5를 참조하면, 메인부(210)는 401단계에서 보안 서비스의 실행 요청을 입력받는다. 보안 서비스의 실행 요청이란, 보안이 요구되는 각종 서비스에 대한 요청으로서, 예를 들어, 보안 콘텐츠를 외부로부터 획득하는 요청이나, 보안 콘텐츠에 대한 실행 요청일 수 있다.
보안 서비스 요청이 입력되면 메인부(210)는 405단계에서 보안부(220)에게 보안 서비스 요청이 입력되었음을 알린다. 이에 따라, 보안부(220)는 407단계에서 메인 OS의 해킹 정보가 보안 저장 영역(179)에 존재하는지 확인한다. 보안부(220)는 일반OS의 해킹 정보가 존재하지 않으면, 정상적으로 보안 모드하에서 요청된 보안 서비스를 실행한다. 하지만, 일반OS의 해킹 정보가 존재하면, 보안부(220)는 409단계로 진행하여 보안 모드를 차단한다. 그리고 411단계에서 메인부(210)로 보안 모드가 차단되었음을 알린다.
이에 따라 메인부(210)는 413단계에서 보안 모드가 차단되었으며, 때문에 보안 서비스 요청이 수행될수 없음을 안내하는 안내 메시지를 사용자에게 제공한다.
이와 같이, 사용자 디바이스(100)는 메인 OS가 해킹 여부를 확인하고, 일반OS하 해킹된 것으로 확인되면, 사용자 디바이스(100)의 장치적 보안 수준이 기준치에 합당하지 않은 것으로 판단하여, 보안 모드의 동작 자체를 차단함으로써, 보안 콘텐츠에 대한 보안 레벨을 강화할 수 있다.
본 발명의 다른 실시예에 따라, 사용자 디바이스(100)의 장치적 보안 수준을 디지털 콘텐츠 서비스 서버(10)로부터 인증 받아 그 결과에 따라 보안 모드의 동작을 차단할 수 도 있다. 이러한 과정을 도6에 도시하였다.
메인부(210)는 501단계에서 디지털 콘텐츠 서비스 서버(10)로의 접속이 요구되면, 503단계에서 보안부(220)에게 디바이스 인증 정보를 요청한다. 디지털 콘텐츠 서비스 서버(10)로의 접속은 디지털 콘텐츠에 대한 다운로드등을 요청할 때 발생할 수 있다. 디바이스 인증 정보는 사용자 디바이스(100)의 장치적 보안 수준을 판단할 수 있는 여러가지 요인들에 대한 정보로서, 예를 들어, 메인 OS에 대한 해킹 정보, 보안부(220)의 각 기능 모듈에 대한 인터그리티 확인 결과에 대한 정보등이 될 수 있다.
보안부(220)는 503단계의 요청에 따라, 505단계로 진행하여, 보안 모드에서 디바이스 인증 정보를 수집한다. 예를 들어, 보안 모드 지원 여부를 나타내는 보안 정보, 메인 OS의 해킹 여부를 나타내는 메인 OS 해킹 정보, 보안부(220)의 각 기능 모듈의 인터그러티 확인 결과를 나타내는 인터그러티 정보를 수집한다. 그리고, 디바이스 인증 정보가 수집된 시점을 나타내는 수집 시각 정보를 디바이스 인증 정보에 포함시킨다.
이후, 보안부(220)는 507단계에서 디바이스 인증 정보를 암호화하고, 509단계에서 암호화된 디바이스 인증 정보를 메인부(210)로 전달한다.
메인부(210)는 디바이스 인증 정보가 전달되면, 511단계에서 디바이스 인증 요청과 함께 디바이스 인증 정보를 디지털 콘텐츠 서비스 서버(10)로 전송한다.
디지털 콘텐츠 서비스 서버(10)는 디바이스 인증 요청 및 디바이스 인증 정보를 수신하면, 도7과 같이 동작한다. 도7은 본 발명의 일 실시예에 따른 디지털 콘텐츠 서비스 서버(10)의 동작 과정을 나타낸 도면이다.
도7을 참조하면, 디지털 콘텐츠 서비스 서버(10)는 601단계에서 디바이스 인증 요청 및 디바이스 인증 정보를 수신하면, 수신된 디바이스 인증 정보를 복호하고, 603단계 내지 609단계에 걸쳐, 디바이스 인증 정보를 확인한다. 즉, 603단계에서 디지털 콘텐츠 서비스 서버(10)는 보안 정보를 확인하여, 사용자 디바이스(100)가 보안 모드를 지원하는지 확인하여, 미지원한다고 판단되면, 613단계로 진행하여 사용자 디바이스(100)로 인증이 실패했음을 통보하고, 인증 과정을 종료한다.
사용자 디바이스(100)가 보안 모드를 지원하면, 콘텐츠 서비스 서버(10)는 605단계로 진행하여, 메인 OS 해킹 정보를 확인하여, 사용자 디바이스(100)의 메인 OS가 해킹되었는지를 확인한다. 확인 결과, 해킹되었다고 판단되면, 613단계로 진행하여 사용자 디바이스(100)로 인증이 실패했음을 통보하고, 인증 과정을 종료한다.
사용자 디바이스(100)의 메인 OS가 해킹되지 않은 것으로 확인되면, 콘텐츠 서비스 서버(10)는 607단계로 진행하여, 인터그러티 정보를 확인하여, 사용자 디바이스(100)에 구비된 보안 모드를 지원하기 위한 각 기능 모듈의 인터그러티의 훼손 여부를 확인한다. 확인 결과, 훼손된 인터그러티가 있다고 판단되면, 613단계로 진행하여 사용자 디바이스(100)로 인증이 실패했음을 통보하고, 인증 과정을 종료한다.
사용자 디바이스(100)의 인터그러티가 모두 정상적인 것으로 확인되면, 콘텐츠 서비스 서버(10)는 609단계로 진행하여, 디바이스 인증 정보에 대한 수집 시각을 확인한다. 즉, 디바이스 인증 정보의 수신 시각과 디바이스 인증 정보에 포함된 수집 시각을 비교하여, 그 차이가 설정된 기준값보다 크다면, 디바이스 인증 정보가 유효하지 않은 것으로 판단하고, 613단계로 진행하여 사용자 디바이스(100)로 인증이 실패했음을 통보하고, 인증 과정을 종료한다.
디바이스 인증 정보의 수신 시각과 디바이스 인증 정보에 포함된 수집 시각을 비교하여, 그 차이가 설정된 기준값보다 작으면, 디바이스 인증 정보가 유효한 것으로 판단하고, 611단계로 진행하여 사용자 디바이스(100)로 인증이 성공했음 통보하고, 인증 과정을 종료한다.
상기한 콘텐츠 서비스 서버(10)의 동작에 따라, 도6의 513단계에서 사용자 디바이스(100)는 인증 결과를 수신할 수 있다. 인증 결과가 수신되면, 메인부(210)는 515단계에서 보안부(220)에게 인증 결과를 전달한다. 그리고 517단계로 진행하여 메인부(210)는 인증 결과를 사용자에게 제공할 수 있다.
한편, 인증 결과를 전달받은 보안부(220)는 519단계에서 인증 결과를 확인한다. 확인 결과, 인증이 실패되었으면, 521단계로 진행하여, 보안 모드를 차단한다. 그리고 523단계에서 메인부(210)로 보안 모드가 차단되었음을 알린다. 이에 따라 메인부(210)는 525단계에서 보안 모드가 차단되었으며, 때문에 보안 서비스 요청이 수행될 수 없음을 안내하는 안내 메시지를 사용자에게 제공한다. 보안 모드의 차단에 따라, 사용자 디바이스(100)는 일반 콘텐츠를 다운로드하거나 실행하는 동작은 정상적으로 수행할 수 있지만, 보안 콘텐츠를 다운로드하거나 실행하는 동작은 수행할 수 없게 된다.
만약, 인증 결과가 인증이 성공했음을 나타낸다면, 보안부(220)는 527단계로 진행하여 디바이스 보안 모드를 정상적으로 실행하고, 그에 따라 콘텐츠 서비스 서버(10)에 정상적으로 접속하여, 이후, 사용자의 요청이 처리될 수 있게 한다.
이와 같이, 사용자 디바이스(100)의 장치적 보안 수준이 기준치에 합당한지에 대한 인증을 디지털 콘텐츠 서비스 서버(10)와 연동하여 확인하고, 그 결과, 사용자 디바이스(100)의 장치적 보안 수준이 기준치에 합당한지 않은 것으로 판단되면, 보안 모드의 동작 자체를 차단함으로써, 보안 콘텐츠에 대한 보안 레벨을 강화할 수 있다.
상기한 실시예에서는 디바이스 인증 정보가 디지털 콘텐츠 서비스 서버(210)로의 접속 요청이 있을 때, 수집되고, 디지털 콘텐츠 서비스 서버(210)로 전달되어 인증 과정이 수행되는 것으로 가정하였으나, 본 발명의 다른 실시예에 따라, 주기적으로 디바이스 인증 정보가 수집되고, 디지털 콘텐츠 서비스 서버(210)로 전달될 수도 있다. 또는 보안 서비스 요청 입력이 발생할 때 마다 디바이스 인증 정보가 수집되고, 디지털 콘텐츠 서비스 서버(210)로 전달될 수도 있다.
본 발명의 예시적 실시예에서는 본 발명에 따른 보안 데이터 처리 장치를 모바일 장치를 예로 들어 설명하고 있으나, 디지털 TV, 셋톱 박스, 퍼스널 컴퓨터, 노트북 등과와 같이 운영체제를 사용하는 장치들에 적용될 수 있다는 것은 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 용이하게 이해할 수 있을 것이다.
또한, 본 발명의 예시적 실시예에 따른 방법들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야에서 통상의 지식을 가진 자에게 공지되어 사용 가능한 것일 수도 있다.
상술한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시할 수 있다. 따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위와 특허청구범위의 균등한 것에 의해 정해 져야 한다.

Claims (22)

  1. 사용자 디바이스에서 디지털 콘텐트를 보호하는 방법에 있어서,
    보안 디지털 콘텐트에 대한 사용자 실행 요청을 수신하는 과정;
    상기 사용자 디바이스의 프로세서의 제1 부분에 의해 구동되는 노멀OS(operating system)를 통해, 상기 프로세서의 보안 부분에 의해 구동되는 보안OS로 상기 보안 디지털 콘텐트의 실행을 요청하는 과정;
    상기 보안OS에 의해, 상기 노멀OS가 해킹되었는지 여부를 나타내는 해킹 정보를 확인하는 과정; 및
    상기 보안OS에 의해, 상기 해킹 정보에 기반하여 상기 보안 디지털 콘텐트의 실행 여부를 결정하는 과정을 포함함을 특징으로 하는 디지털 콘텐트 보호 방법.
  2. 제1항에 있어서,
    상기 제1 부분과 상기 보안 부분은 상기 프로세서에서 논리적으로 구분되는 것을 특징으로 하는 디지털 콘텐트 보호 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 보안 디지털 콘텐트의 실행 여부를 결정하는 과정은,
    상기 사용자 디바이스의 보안 레벨을 나타내는 인증 정보를 확인하는 과정, -상기 인증 정보는 상기 프로세서의 보안 부분에 의해 저장되거나 생성된 정보에 포함됨-; 및
    상기 인증 정보에 기반하여 상기 보안 디지털 콘텐트의 실행 여부를 결정하는 과정
    을 포함함을 특징으로 하는 디지털 콘텐트 보호 방법.
  5. 제4항에 있어서,
    상기 인증 정보는,
    상기 프로세서의 제1 부분에서 동작되는 상기 노멀 OS가 해킹되었는지 여부에 대한 해킹 정보, 상기 프로세서의 보안 부분에 대한 인터그리티 확인 정보 및 상기 인증 정보를 확인한 시간에 대한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 디지털 콘텐트 보호 방법.
  6. 제4항에 있어서,
    상기 보안 디지털 콘텐트가 실행되는 것으로 결정되면, 상기 보안 디지털 콘텐트를 실행하는 과정
    을 더 포함하는 것을 특징으로 하는 디지털 콘텐트 보호 방법.
  7. 제4항에 있어서,
    상기 보안 디지털 콘텐트가 실행되는 것으로 결정되지 않으면, 상기 프로세서의 보안 부분에 의해 상기 보안 디지털 콘텐트가 실행될 수 없음을 나타내는 메시지를 상기 프로세서의 제1 부분으로 전달하는 과정; 및
    상기 프로세서의 제1 부분에 의해 상기 보안 디지털 콘텐트가 실행될 수 없음을 나타내는 정보 메시지를 표시하는 과정
    을 더 포함함을 특징으로 하는 디지털 콘텐트 보호 방법.
  8. 사용자 디바이스에서 디지털 콘텐트를 보호하는 방법에 있어서,
    상기 사용자 디바이스의 프로세서의 보안 부분에 의해 구동되는 보안 OS(operating system)가, 상기 프로세서의 제 1부분에 의해 구동되는 노멀 OS로부터 적어도 하나의 보안 디지털 콘텐트를 실행하기 위한 인증 요청을 수신하는 과정;
    상기 노멀 OS에 의해, 상기 사용자 디바이스에 상기 적어도 하나의 보안 디지털 콘텐트를 제공하는 서버로, 상기 보안 OS에 의해 저장되거나 생성된 인증 정보를 전송하는 과정;
    상기 노멀 OS에 의해, 상기 서버로부터 상기 인증 정보에 대한 인증 결과를 수신하는 과정; 및
    상기 보안 OS에 의해, 상기 인증 결과에 기초하여 상기 적어도 하나의 보안 디지털 콘텐트의 실행 여부를 결정하는 과정을 포함하는 디지털 콘텐트 보호 방법.
  9. 제 8항에 있어서,
    상기 제1 부분과 상기 보안 부분은 상기 프로세서에서 논리적으로 구분되는 것을 특징으로 하는 디지털 콘텐트 보호 방법.
  10. 삭제
  11. 제8항에 있어서,
    상기 인증 결과가 상기 사용자 디바이스가 상기 서버에 의해 인증되었음을 나타내면, 상기 서버로부터 상기 적어도 하나의 보안 디지털 콘텐트를 다운로딩하는 과정
    을 더 포함함을 특징으로 하는 디지털 콘텐트 보호 방법.
  12. 디지털 콘텐트를 보호하기 위한 사용자 디바이스에 있어서,
    제1 부분 및 보안 부분을 포함하는 프로세서를 포함하고,
    상기 프로세서의 상기 제1 부분에 의해 구동되는 노멀 OS(operating system)는, 보안 디지털 콘텐트에 대한 사용자 실행 요청을 수신하고, 상기 보안 부분에 의해 구동되는 보안 OS로 상기 보안 디지털 콘텐트의 실행을 요청하고,
    상기 프로세서의 상기 보안 부분에 의해 구동되는 보안 OS는,
    상기 노멀 OS가 해킹되었는지 여부를 나타내는 해킹 정보를 확인하고, 상기 해킹 정보에 기반하여 상기 보안 디지털 콘텐트의 실행 여부를 결정하는 것을 특징으로 하는 사용자 디바이스.
  13. 제12항에 있어서,
    상기 제1 부분과 상기 보안 부분은 상기 프로세서에서 논리적으로 구분되는 것을 특징으로 하는 사용자 디바이스.
  14. 삭제
  15. 제12항에 있어서,
    상기 프로세서의 보안 부분은,
    상기 사용자 디바이스의 보안 레벨을 나타내는 인증 정보를 확인하고, 상기 인증 정보에 기반하여 상기 보안 디지털 콘텐트의 실행 여부를 결정하고,
    상기 인증 정보는 상기 프로세서의 보안 부분에 의해 저장되거나 생성된 정보에 포함되는 것을 특징으로 하는 사용자 디바이스.
  16. 제15항에 있어서,
    상기 인증 정보는,
    상기 프로세서의 제1 부분에서 동작되는 상기 노멀 OS가 해킹되었는지 여부에 대한 해킹 정보, 상기 프로세서의 보안 부분에 대한 인터그리티 확인 정보 및 상기 인증 정보를 확인한 시간에 대한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 사용자 디바이스.
  17. 제15항에 있어서,
    상기 프로세서의 보안 부분은,
    상기 보안 디지털 콘텐트가 실행되는 것으로 결정되면, 상기 보안 디지털 콘텐트를 실행하는 것을 특징으로 하는 사용자 디바이스.
  18. 제15항에 있어서,
    상기 프로세서의 보안 부분은,
    상기 보안 디지털 콘텐트가 실행되는 것으로 결정되지 않으면, 상기 보안 디지털 콘텐트가 실행될 수 없음을 나타내는 메시지를 상기 프로세서의 제1 부분으로 전달하고,
    상기 프로세서의 제1 부분은,
    상기 보안 디지털 콘텐트가 실행될 수 없음을 나타내는 정보 메시지를 표시하는 것을 특징으로 하는 사용자 디바이스.
  19. 디지털 콘텐트를 보호하기 위한 사용자 디바이스에 있어서,
    통신부; 및
    제1 부분 및 보안 부분을 포함하는 프로세서를 포함하고,
    상기 제 1 부분에 의해 구동되는 노멀 OS(operating system)는 적어도 하나의 보안 디지털 콘텐트를 실행하기 위한 인증을 요청하고,
    상기 보안 부분에 의해 구동되는 보안 OS는, 상기 노멀 OS로부터 상기 적어도 하나의 보안 디지털 콘텐트를 실행하기 위한 인증 요청을 수신하고,
    상기 노멀 OS는, 상기 적어도 하나의 디지털 콘텐트를 제공하는 서버로, 상기 보안 OS에 의해 저장되거나 생성된 인증 정보를 전송하고,
    상기 노멀 OS는, 상기 통신부를 통해, 상기 서버로부터 상기 인증 정보에 대한 인증 결과를 수신하고,
    상기 보안 OS는, 상기 인증 결과에 기초하여 상기 적어도 하나의 보안 디지털 콘텐트의 실행 여부를 결정하는 것을 특징으로 하는 사용자 디바이스.
    .
  20. 제19항에 있어서,
    상기 제1 부분과 상기 보안 부분은 상기 프로세서에서 논리적으로 구분되는 것을 특징으로 하는 사용자 디바이스.
  21. 삭제
  22. 제19항에 있어서,
    상기 프로세서의 제1 부분은,
    상기 인증 결과가 상기 사용자 디바이스가 상기 서버에 의해 인증되었음을 나타내면, 상기 서버로부터 상기 적어도 하나의 보안 디지털 콘텐트를 다운로딩하는 것을 특징으로 하는 사용자 디바이스.
KR1020120016084A 2012-02-16 2012-02-16 디바이스 인증을 이용한 디지털 콘텐츠 보호 방법 및 장치 KR101930864B1 (ko)

Priority Applications (12)

Application Number Priority Date Filing Date Title
KR1020120016084A KR101930864B1 (ko) 2012-02-16 2012-02-16 디바이스 인증을 이용한 디지털 콘텐츠 보호 방법 및 장치
CN201380009948.7A CN104115152B (zh) 2012-02-16 2013-02-18 用于使用装置认证来保护数字内容的方法和设备
EP13748650.2A EP2815347B1 (en) 2012-02-16 2013-02-18 Method and apparatus for protecting digital content using device authentication
EP18154262.2A EP3349134B1 (en) 2012-02-16 2013-02-18 Method and apparatus for protecting digital content using device authentication
EP19193857.0A EP3591551A1 (en) 2012-02-16 2013-02-18 Method and apparatus for protecting digital content using device authentication
TW102105658A TWI560571B (en) 2012-02-16 2013-02-18 Method and apparatus for protecting digital content using device authentication
PCT/KR2013/001272 WO2013122443A1 (en) 2012-02-16 2013-02-18 Method and apparatus for protecting digital content using device authentication
CN201810520706.9A CN108733986B (zh) 2012-02-16 2013-02-18 用于使用装置认证来保护数字内容的方法和设备
ES18154262T ES2753817T3 (es) 2012-02-16 2013-02-18 Procedimiento y aparato de protección decontenido digital utilizando autenticación del dispositivo
US13/770,378 US9122879B2 (en) 2012-02-16 2013-02-19 Method and apparatus for protecting digital content using device authentication
US14/840,494 US9977906B2 (en) 2012-02-16 2015-08-31 Method and apparatus for protecting digital content using device authentication
US15/942,855 US10733304B2 (en) 2012-02-16 2018-04-02 Method and apparatus for protecting digital content using device authentication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120016084A KR101930864B1 (ko) 2012-02-16 2012-02-16 디바이스 인증을 이용한 디지털 콘텐츠 보호 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20130101628A KR20130101628A (ko) 2013-09-16
KR101930864B1 true KR101930864B1 (ko) 2019-03-11

Family

ID=48983425

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120016084A KR101930864B1 (ko) 2012-02-16 2012-02-16 디바이스 인증을 이용한 디지털 콘텐츠 보호 방법 및 장치

Country Status (7)

Country Link
US (3) US9122879B2 (ko)
EP (3) EP2815347B1 (ko)
KR (1) KR101930864B1 (ko)
CN (2) CN104115152B (ko)
ES (1) ES2753817T3 (ko)
TW (1) TWI560571B (ko)
WO (1) WO2013122443A1 (ko)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130219177A1 (en) * 2012-02-16 2013-08-22 Samsung Electronics Co. Ltd. Secure data processing device and method
US20140281539A1 (en) * 2012-03-30 2014-09-18 Goldman, Sachs & Co. Secure Mobile Framework With Operating System Integrity Checking
US9524380B2 (en) * 2013-12-30 2016-12-20 Cellco Partnership Secure element-centric digital rights management
US9372996B2 (en) 2014-05-15 2016-06-21 International Business Machines Corporation Protecting data owned by an operating system in a multi-operating system mobile environment
JP6305284B2 (ja) * 2014-09-10 2018-04-04 株式会社東芝 携帯可能電子装置
US10198586B1 (en) * 2014-09-17 2019-02-05 Securus Technologies, Inc. Provisioning of digital media files to resident media devices in controlled-environment facilities
CN105631344B (zh) * 2015-04-30 2018-11-06 南京酷派软件技术有限公司 安全数据的访问控制方法及系统、终端
US10803437B2 (en) * 2015-08-28 2020-10-13 Ncr Corporation Self-service terminal technical state monitoring and alerting
WO2017053992A1 (en) * 2015-09-25 2017-03-30 T-Mobile Usa, Inc. Distributed big data security architecture
US10278074B1 (en) * 2015-10-22 2019-04-30 Symantec Corporation Systems and methods for categorizing mobile devices as rooted
CN105335664A (zh) * 2015-10-27 2016-02-17 成都贝发信息技术有限公司 基于b/s模式的权限管理系统
CN105404799A (zh) * 2015-10-27 2016-03-16 成都贝发信息技术有限公司 信息系统中的权限管理装置
CN106656457A (zh) * 2015-10-30 2017-05-10 深圳市中兴微电子技术有限公司 一种基于vpn的安全访问数据的方法、设备和系统
CN105471848B (zh) * 2015-11-17 2018-07-03 无锡江南计算技术研究所 一种以太网控制器安全增强设计方法
TWI607333B (zh) * 2016-02-18 2017-12-01 Chunghwa Telecom Co Ltd Authorized control method and system for digital copyright management
CN105825128B (zh) 2016-03-15 2020-05-19 华为技术有限公司 一种数据输入方法、装置及用户设备
EP3333748A1 (de) 2016-12-08 2018-06-13 Siemens Aktiengesellschaft Geräteeinheit geeignet für den betrieb im geschützten und/oder offenen betriebszustand sowie zugehöriges verfahren
KR20180066722A (ko) 2016-12-09 2018-06-19 한국전자통신연구원 모바일 기반 개인 콘텐츠 보호장치 및 그 방법
US10691837B1 (en) * 2017-06-02 2020-06-23 Apple Inc. Multi-user storage volume encryption via secure enclave
KR102436485B1 (ko) * 2017-11-20 2022-08-26 삼성전자주식회사 전자 장치 및 전자 장치에서 보안 운영체제 기반 데이터 송수신 방법
US10951403B2 (en) * 2018-12-03 2021-03-16 Winbond Electronics Corporation Updating cryptographic keys stored in non-volatile memory
TWI704574B (zh) * 2019-09-23 2020-09-11 英柏得科技股份有限公司 用於資料存儲裝置的安全控制方法
TWI801856B (zh) * 2021-04-30 2023-05-11 精品科技股份有限公司 依於子程式執行之應用程式控管方法
TWI801855B (zh) * 2021-04-30 2023-05-11 精品科技股份有限公司 基於根節點之應用程式控管系統及方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100823892B1 (ko) * 2006-11-23 2008-04-21 삼성전자주식회사 디지털 컨텐츠의 저작권을 보호하기 위한 시스템 및 그방법

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5634012A (en) * 1994-11-23 1997-05-27 Xerox Corporation System for controlling the distribution and use of digital works having a fee reporting mechanism
US6083353A (en) * 1996-09-06 2000-07-04 University Of Florida Handheld portable digital geographic data manager
US7770016B2 (en) * 1999-07-29 2010-08-03 Intertrust Technologies Corporation Systems and methods for watermarking software and other media
WO2001029775A1 (en) * 1999-10-18 2001-04-26 Stamps.Com Cryptographic module for secure processing of value-bearing items
CN101479752A (zh) * 2006-04-24 2009-07-08 加密密钥有限公司 用于执行安全事务的便携式设备和方法
US8572400B2 (en) * 2007-03-26 2013-10-29 Intel Corporation Enhanced digital right management framework
US8181038B2 (en) * 2007-04-11 2012-05-15 Cyberlink Corp. Systems and methods for executing encrypted programs
US8225394B2 (en) * 2007-04-13 2012-07-17 Ca, Inc. Method and system for detecting malware using a secure operating system mode
US8037528B2 (en) * 2007-09-17 2011-10-11 Cisco Technology, Inc. Enhanced server to client session inspection
KR101448122B1 (ko) * 2007-11-07 2014-10-07 삼성전자 주식회사 시간 기반 drm 권한 관리 장치 및 방법
KR101081719B1 (ko) * 2008-08-26 2011-11-08 한국통신인터넷기술 주식회사 단말기의 운영 체제 제어 방법 및 시스템
US20100199345A1 (en) * 2009-02-04 2010-08-05 Breach Security, Inc. Method and System for Providing Remote Protection of Web Servers
KR101598409B1 (ko) * 2009-06-17 2016-03-02 삼성전자주식회사 컨텐츠 암호화 방법, 컨텐츠 복호화 방법 및 이를 적용한 전자기기
CN101930522A (zh) * 2009-06-25 2010-12-29 佳默有限公司 数字数据的保护方法及其装置
WO2011075076A1 (en) * 2009-12-16 2011-06-23 T-Data Systems (S) Pte Ltd Method of converting digital data
CN102332070A (zh) * 2011-09-30 2012-01-25 中国人民解放军海军计算技术研究所 一种可信计算平台的信任链传递方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100823892B1 (ko) * 2006-11-23 2008-04-21 삼성전자주식회사 디지털 컨텐츠의 저작권을 보호하기 위한 시스템 및 그방법

Also Published As

Publication number Publication date
ES2753817T3 (es) 2020-04-14
US20150371051A1 (en) 2015-12-24
EP2815347B1 (en) 2018-01-31
EP3349134B1 (en) 2019-08-28
CN108733986B (zh) 2022-07-26
US9122879B2 (en) 2015-09-01
TWI560571B (en) 2016-12-01
US20130219507A1 (en) 2013-08-22
EP2815347A1 (en) 2014-12-24
WO2013122443A1 (en) 2013-08-22
CN104115152B (zh) 2018-06-22
KR20130101628A (ko) 2013-09-16
EP3591551A1 (en) 2020-01-08
US9977906B2 (en) 2018-05-22
US20180225462A1 (en) 2018-08-09
US10733304B2 (en) 2020-08-04
EP3349134A1 (en) 2018-07-18
CN104115152A (zh) 2014-10-22
TW201349008A (zh) 2013-12-01
EP2815347A4 (en) 2016-02-24
CN108733986A (zh) 2018-11-02

Similar Documents

Publication Publication Date Title
KR101930864B1 (ko) 디바이스 인증을 이용한 디지털 콘텐츠 보호 방법 및 장치
US11651113B2 (en) Program execution device
CN111444528B (zh) 数据安全保护方法、装置及存储介质
EP3103051B1 (en) System and process for monitoring malicious access of protected content
US20140173761A1 (en) Method and apparatus for protecting an application program
CN108011879B (zh) 文件加密、解密的方法、装置、设备和存储介质
US9911009B2 (en) Device and method for providing safety of data by using multiple modes in device
US20130219177A1 (en) Secure data processing device and method
KR20140105681A (ko) 보안 모드에서 데이터 암호화 장치 및 방법
KR20130101626A (ko) 보안 데이터 처리 장치 및 방법
KR20130101627A (ko) 보안 데이터 처리 장치 및 방법

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