KR20050113204A - System and method of protecting data on a communication device - Google Patents

System and method of protecting data on a communication device Download PDF

Info

Publication number
KR20050113204A
KR20050113204A KR1020057015955A KR20057015955A KR20050113204A KR 20050113204 A KR20050113204 A KR 20050113204A KR 1020057015955 A KR1020057015955 A KR 1020057015955A KR 20057015955 A KR20057015955 A KR 20057015955A KR 20050113204 A KR20050113204 A KR 20050113204A
Authority
KR
South Korea
Prior art keywords
data
encrypted
key
communication device
cryptographic key
Prior art date
Application number
KR1020057015955A
Other languages
Korean (ko)
Other versions
KR100716529B1 (en
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 KR1020057015955A priority Critical patent/KR100716529B1/en
Publication of KR20050113204A publication Critical patent/KR20050113204A/en
Application granted granted Critical
Publication of KR100716529B1 publication Critical patent/KR100716529B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Abstract

A system and method of protecting data on a communication device are provided. Data received when the communication device is in a first operational state is encrypted using a first cryptographic key and algorithm. When the communication device is in a second operational state, received data is encrypted using a second cryptographic key and algorithm. Received data is stored on the communication device in encrypted form.

Description

통신 장치 상의 데이터를 보호하는 시스템 및 방법{SYSTEM AND METHOD OF PROTECTING DATA ON A COMMUNICATION DEVICE}[0001] SYSTEM AND METHOD FOR PROTECTING DATA ON A COMMUNICATION DEVICE [0002]

본 발명은 일반적으로 데이터 보호에 관한 것으로, 특히 통신 장치 상의 데이터 보호에 관한 것이다.The present invention relates generally to data protection, and more particularly to data protection on a communication device.

회사 환경에서, 사원들에게는 흔히, 전형적으로 최소한 퍼스널 컴퓨터(PC)를 포함하여, 직무를 수행하는데 사용될 사무용품 및 기기로의 액세스가 제공되고, 또한 무선 이동 통신 장치 및 그외 다른 유형의 전자 장치가 포함된다. 기밀의 또는 그 밖의 민감한 사용자 정보, 고용주 정보, 또는 이 둘다는 이러한 장치들 중의 어느 것인가에 저장될 수 있다. 고용주의 건물에 있는 PC와 같은 사용자 장치는 고용주에 의해 물리적으로 안전하게 지켜지지만, 휴대용 또는 이동 장치는 그들의 특성상 잘못 두거나 도둑맞게 될 가능성이 더 크므로, 덜 안전하다. 그러므로, 흔히, 분실 또는 도둑맞은 사용자 장치 상의 정보를 권한이 없는 당사자가 액세스하지 못하도록 이동 장치 상의 민감한 정보를 보호하는 것이 바람직하다.In a corporate environment, employees are typically provided with access to office supplies and devices typically used to perform their jobs, including at least a personal computer (PC), and also include wireless mobile communication devices and other types of electronic devices do. Confidential or other sensitive user information, employer information, or both can be stored on any of these devices. User devices, such as PCs in an employer's building, are kept physically secure by employers, but portable or mobile devices are less secure because they are more likely to be misled or stolen by their nature. Therefore, it is often desirable to protect sensitive information on the mobile device from unauthorized parties from accessing the information on the lost or stolen user device.

무선 이동 통신 장치와 같이 통신이 가능한 이동 장치의 한가지 일반적인 보안 조치 유형은 예를 들어, 민감한 정보가 확실하게 그러한 이동 장치에 안전하게 전송될 수 있게 하는 것이다. 정보 전송이 안전하긴 하지만, 이들 조치는 전송 중에만 정보를 보호할 뿐이고, 이동 장치에 의해 정보가 수신된 후에는 그렇지 않다.One common type of security measure for a mobile device that is capable of communicating, such as a wireless mobile communication device, is, for example, to ensure that sensitive information is securely transmitted to such mobile device. Although information transmission is secure, these measures only protect information during transmission, and not after information is received by the mobile device.

다른 공지된 보안 방식에 따르면, 수신된 정보는 메모리 내에 저장될 때 또는 저장되기 전에 암호화된다. 저장된 암호화 정보의 복호화는 암호화 키로의 액세스를 필요로 한다. 단일 키가 암호화 및 복호화 둘다에 사용되는 대칭 키 암호기법은 일반적으로 제한된 프로세싱 자원을 갖는 이동 장치에 바람직한데, 그것은 대칭 키 암호화 동작이 다른 암호화 방식과 관련된 것보다 더 빠르고 보다 덜 프로세서-집약적이기 때문이다. 이러한 단일 키로의 액세스는 권한이 없는 사용자가 분실 또는 도둑맞은 이동장치 상의 메모리로부터 키를 쉽게 판독하여 이동 장치 상에 저장된 모든 암호화 내용을 복호화할 수 없도록, 예를 들어 암호 보호를 사용하여 제어되어야 한다. 그러나, 이것은 정보가 이동 장치에서 수신될 때 키가 액세스불가능한 상황을 초래할 수 있다.According to another known security scheme, the received information is encrypted before it is stored in memory or before it is stored. Decryption of the stored encrypted information requires access to the encryption key. Symmetric key cryptography, where a single key is used for both encryption and decryption, is generally desirable for mobile devices with limited processing resources because symmetric key cryptographic operations are faster and less processor-intensive than those associated with other cryptographic schemes to be. Access to this single key should be controlled using, for example, password protection, such that an unauthorized user can not easily read the key from the memory on the lost or stolen mobile device and decrypt all encrypted content stored on the mobile device . However, this may result in a situation where the key is inaccessible when information is received at the mobile device.

도 1은 이동 장치가 사용될 수 있는 통신 시스템을 도시한 블록도.1 is a block diagram illustrating a communication system in which a mobile device may be used;

도 2는 데이터 보호 시스템 및 방법이 구현되는 이동 장치의 블록도.2 is a block diagram of a mobile device in which a data protection system and method are implemented;

도 3은 데이터 보호를 인에이블하는 방법을 도시한 흐름도.3 is a flow chart illustrating a method for enabling data protection.

도 4는 이동 장치에서 수신된 데이터를 보호하는 방법을 도시한 흐름도.4 is a flow diagram illustrating a method for protecting data received at a mobile device.

도 5A는 데이터 포맷의 블록도.5A is a block diagram of a data format;

도 5B는 대안적인 데이터 포맷의 블록도.5B is a block diagram of an alternative data format.

도 6은 보호된 데이터를 액세스하는 방법을 도시한 흐름도.6 is a flow diagram illustrating a method for accessing protected data;

도 7-11은 데이터 보호 시스템 및 방법이 구현되는 이동 장치 상의 디스플레이의 스크린 샷.7-11 are screen shots of a display on a mobile device on which a data protection system and method are implemented.

도 12는 무선 이동 통신 장치의 블록도.12 is a block diagram of a wireless mobile communication device;

제1 조작 상태 및 제2 조작 상태를 갖는 통신 장치 상의 데이터를 보호하는 시스템은 복수의 암호 키를 저장하도록 구성된 키 저장부; 데이터를 저장하도록 구성된 메모리; 데이터를 수신하고, 통신 장치가 제1 조작 상태에 있는지 제2 조작상태에 있는 지의 여부를 결정하며, 통신 장치가 제1 조작 상태에 있는 경우에 복수의 암호 키들 중의 제1 암호 키를 사용하거나, 또는 통신 장치가 제2 조작 상태에 있는 경우에 복수의 암호 키들 중의 제2 암호 키를 사용하여, 수신된 데이터를 암호화하고, 암호화된 수신 데이터를 메모리 내에 저장하도록 구성된 데이터 보호 시스템을 포함한다.A system for protecting data on a communication device having a first operating state and a second operating state includes a key storage configured to store a plurality of cryptographic keys; A memory configured to store data; Data is used to determine whether the communication device is in the first operating state or in the second operating state and the first cipher key of the plurality of cipher keys is used when the communication device is in the first operating state, Or a data protection system configured to encrypt the received data using the second encryption key of the plurality of encryption keys when the communication device is in the second operation state, and to store the encrypted received data in the memory.

통신 장치 상의 데이터를 보호하는 방법은 제1의 보호된 암호 키 및 제2 암호 키를 통신 장치 상에 저장하는 단계, 통신 장치에서 데이터를 수신하는 단계, 제1의 보호된 암호 키가 액세스가능한 지의 여부를 판정하는 단계, 제1의 보호된 암호 키가 액세스가능한 경우에 제1의 보호된 암호 키를 사용하여 수신된 데이터를 암호화하는 단계, 제1의 보호된 암호 키가 액세스 불가능한 경우에 제2 암호 키를 사용하여 수신된 데이터를 암호화하는 단계, 및 암호화된 수신 데이터를 통신 장치 상의 메모리 내에 저장하는 단계를 포함한다.A method of protecting data on a communication device includes storing a first protected cryptographic key and a second cryptographic key on a communication device, receiving data at the communication device, determining whether the first protected cryptographic key is accessible Encrypting the received data using a first protected cryptographic key if the first protected cryptographic key is accessible, encrypting the received data using the first protected cryptographic key if the first protected cryptographic key is inaccessible, Encrypting the received data using the encryption key, and storing the encrypted received data in a memory on the communication device.

데이터 보호 시스템 및 방법의 또 다른 특징은 다음의 상세한 설명 부분에 설명되거나 그 설명 과정에서 더욱 명백해질 것이다.Further features of the data protection system and method will be described or become more apparent in the following detailed description.

도 1은 이동 장치가 사용될 수 있는 통신 시스템을 도시한 블록도이다. 통신 시스템(10)은 광역통신망(WAN)을 포함하는데, 이 광역통신망(WAN)은 컴퓨터 시스템(14), 무선 네트워크 게이트웨이(16) 및 회사 구내통신망(LAN)(18)에 연결된다. 무선 네트워크 게이트웨이(16)는 또한 무선 통신 네트워크(20)에 접속되고, 무선 이동 통신 장치인 이동 장치(22)가 이 무선 통신 네트워크(20) 내에서 동작하도록 구성된다.1 is a block diagram illustrating a communication system in which a mobile device may be used. The communication system 10 includes a wide area network (WAN) which is connected to the computer system 14, the wireless network gateway 16 and the corporate premises network (LAN) The wireless network gateway 16 is also connected to the wireless communication network 20 and the mobile device 22, which is a wireless mobile communication device, is configured to operate within the wireless communication network 20. [

컴퓨터 시스템(14)은 예를 들어 인터넷인 WAN(12)에 통신하도록 구성되는 데스크탑 또는 랩탑 PC일 수 있다. 컴퓨터 시스템(14)과 같은 PC는 보통, 인터넷 서비스 제공자(ISP), 애플리케이션 서비스 제공자(ASP) 등을 통해 인터넷을 액세스한다.The computer system 14 may be, for example, a desktop or laptop PC configured to communicate to the WAN 12, which is the Internet. A PC, such as computer system 14, typically accesses the Internet through an Internet Service Provider (ISP), an Application Service Provider (ASP), and the like.

사내 LAN(18)은 복수의 컴퓨터가 네트워크 내에서 접속되는 전형적인 근무 환경의 한 예이다. 그러한 네트워크는 흔히 보안 방화벽(24) 뒤에 위치한다. 사내 LAN(18) 내에서, 방화벽(24) 뒤의 컴퓨터 상에서 동작하는 데이터 서버(26)는 회사가 LAN(18) 내에서 데이터를 교환하고 WAN(12)을 통해 다른 외부 시스템 및 장치와 데이터를 교환하기 위한 1차 인터페이스로서 작용한다. 데이터 서버(26)는 예를 들어, MicrosoftTM Exchange Server 또는 Lotus DominoTM Server와 같은 메시징 서버일 수 있다. 이들 서버는 또한 캘린더, 투두 리스트(todo lists), 태스크 리스트, 이메일 및 문서화와 같은 데이터의 동적 데이터베이스 저장과 같은 부가 기능을 제공한다. 데이터 서버(26)만이 LAN(18) 내에 도시되었지만, 본 분야에 숙련된 기술자들은 하나의 LAN이, 네트워크화 컴퓨터 시스템(28)들 사이에서 공유되는 자원을 지원하는 기타 유형의 서버를 포함하는 두개 이상의 서버를 포함할 수 있다는 것을 알 수 있을 것이다.The in-house LAN 18 is an example of a typical working environment in which a plurality of computers are connected in a network. Such networks are often located behind security firewalls 24. Within the on-premises LAN 18, the data server 26 running on the computer behind the firewall 24 exchanges data within the LAN 18 and communicates data with other external systems and devices via the WAN 12. [ And serves as a primary interface for exchange. The data server 26 may be, for example, a messaging server such as a Microsoft TM Exchange Server or a Lotus Domino TM Server. These servers also provide additional functions such as calendar, todo lists, task lists, dynamic database storage of data such as email and documentation. Although only the data server 26 is shown in the LAN 18, those skilled in the art will appreciate that a single LAN may be used by more than one of the networked computer systems 28, including other types of servers supporting resources shared among the networked computer systems 28 Server. ≪ / RTI >

데이터 서버(26)는 LAN(18)에 연결된 네트워크화 컴퓨터 시스템(28)에 데이터 통신 능력을 제공한다. 전형적인 LAN(18)은 복수의 컴퓨터 시스템(28)을 포함하는데, 이들 컴퓨터 시스템(28)의 각각은 데이터 서버(26)와 통신하기 위한 적절한 클라이언트를 구현한다. 전자 메시징의 상기 예에 있어서, LAN(18) 내에서, 메시지는 데이터 서버(26)에 의해 수신되고, 수신된 메시지 내에 어드레스된 사용자 계정에 적절한 메일박스로 분산된 다음에, 컴퓨터 시스템(28) 상에서 동작하는 메시징 클라이언트를 통해 사용자에 의해 액세스된다. 전자 메시지와 다른 유형의 데이터의 교환은 이와 유사하게, 데이터 서버(26)와 호환가능한 클라이언트를 사용하여 가능하게 된다. 예를 들어, Lotus Notes와 같은 다용도 클라이언트는 전자 메시지뿐만 아니라 다른 유형의 파일 및 데이터를 처리한다.The data server 26 provides data communication capabilities to the networked computer system 28 coupled to the LAN 18. A typical LAN 18 includes a plurality of computer systems 28 each of which implements an appropriate client for communicating with the data server 26. In the above example of electronic messaging, within the LAN 18, the messages are received by the data server 26, distributed to appropriate mailboxes in the user account addressed in the received messages, Lt; RTI ID = 0.0 > messaging < / RTI > The exchange of electronic messages with other types of data is likewise enabled using a client compatible with the data server 26. For example, a multipurpose client such as Lotus Notes processes electronic messages as well as other types of files and data.

무선 게이트웨이(16)는 무선 네트워크(20)에 인터페이스를 제공하고, 이 무선 네트워크(20)를 통해, 보호되어야 하는 데이터를 포함한 데이터가 이동 장치(22)와 교환될 수 있다. 이동 장치(22)는, 예를 들어, 데이터 통신 장치, 데이터 및 음성 통신 기능을 갖는 복수의 모뎀 이동 전화와 같은 이중-모드 통신 장치, 음성, 데이터 및 기타 유형의 통신을 할 수 있는 다중-모드 장치, 무선 통신이 가능한 퍼스널 디지털 어시스턴트(PDA), 또는 랩탑 또는 데스크탑 컴퓨터 시스템 또는 소정의 다른 장치와 함께 동작하는 무선 모뎀일 수 있다. 예시적인 이동 장치는 아래에 더욱 상세하게 설명된다.The wireless gateway 16 provides an interface to the wireless network 20 through which data including data to be protected may be exchanged with the mobile device 22. [ The mobile device 22 may be, for example, a data communication device, a dual-mode communication device such as a plurality of modem mobile phones having data and voice communication capabilities, a multi-mode communication device capable of voice, A personal digital assistant (PDA) capable of wireless communication, or a wireless modem operating in conjunction with a laptop or desktop computer system or some other device. An exemplary mobile device is described in further detail below.

이동 장치(22)의 어드레싱, 무선 송신을 위한 메시지의 인코딩 또는 그외 다른 변환과 같은 기능, 또는 기타 필요한 인터페이스 기능은 무선 네트워크 게이트웨이(16)에 의해 실행된다. 무선 네트워크 게이트웨이(16)가 하나보다 많은 무선 네트워크(20)와 동작하도록 구성되는 경우, 그것은 또한 소정의 한 이동 장치(22)의 위치를 가장 잘 찾아낼 수 있는 네트워크를 결정하고, 사용자들이 지역들 또는 네트워크들 사이를 돌아다닐 때 이동 장치를 가능한한 추적한다. 도 1에는 단일 무선 네트워크 게이트웨이(16)만이 도시되었지만, 이동 장치(22)는, 예를 들어 회사 네트워크 게이트웨이 또는 WAP 게이트웨이와 같은 하나보다 많은 게이트웨이와 통신하도록 구성될 수 있다.A function such as addressing of the mobile device 22, encoding of a message for wireless transmission or other conversion, or other necessary interface functionality is performed by the wireless network gateway 16. When the wireless network gateway 16 is configured to operate with more than one wireless network 20 it also determines a network that can best locate the location of a given mobile device 22, Or traverses the mobile device as far as possible when traveling between networks. Although only a single wireless network gateway 16 is shown in FIG. 1, the mobile device 22 may be configured to communicate with more than one gateway, for example, a corporate network gateway or a WAP gateway.

WAN(12)으로의 액세스를 갖는 소정의 컴퓨터 시스템은 이동 장치(22)에 그러한 통신이 허용되면, 무선 네트워크 게이트웨이(16)를 통해 이동 장치(22)와 데이터를 교환할 가능성이 있을 수 있다. 대안적으로, 무선 가상 사설 통신망(VPN) 라우터와 같은 사설 무선 네트워크 게이트웨이는 또한 무선 네트워크에 사설 인터페이스를 제공하도록 구현될 수 있다. 예를 들어, LAN(18) 내에 구현된 무선 VPN은 무선 네트워크 게이트웨이(16)를 요구하지 않고 무선 네트워크(20)를 통해 LAN(18)으로부터 하나 이상의 이동 장치(22)로의 사설 인터페이스를 제공할 수 있다. 무선 네트워크 게이트웨이(16) 및/또는 무선 네트워크(20)를 통한 이동 장치(22)로의 그러한 사설 인터페이스는 또한, 데이터 서버(26)와 함께 동작하는 데이터 순방향 또는 방향변경 시스템을 제공함으로써 LAN(18) 외부의 엔티티로 효과적으로 확장될 수 있다.Certain computer systems having access to the WAN 12 may be able to exchange data with the mobile device 22 via the wireless network gateway 16 if such communication is allowed to the mobile device 22. Alternatively, a private wireless network gateway, such as a wireless virtual private network (VPN) router, may also be implemented to provide a private interface to the wireless network. For example, a wireless VPN implemented in the LAN 18 can provide a private interface from the LAN 18 to one or more mobile devices 22 over the wireless network 20 without requiring the wireless network gateway 16 have. Such private interface to wireless network gateway 16 and / or mobile device 22 via wireless network 20 may also be provided to LAN 18 by providing a data forward or redirection system operating in conjunction with data server 26. [ It can be effectively expanded to an external entity.

무선 네트워크(20)는 통상적으로, 기지국들과 장치들 사이의 RF 전송을 통해 이동 장치(22)와 같은 통신 장치로 및 통신장치로부터 데이터를 전달한다. 무선 네트워크(20)는, 예를 들어 데이터 중심의 무선 네트워크, 음성 중심의 무선 네트워크, 또는 동일한 기반구조를 통해 음성 및 데이터 통신을 지원할 수 있는 이중-모드 네트워크일 수 있다. 최근 개발된 음성 및 데이터 네트워크는 CDMA(Code Division Multiple Access) 네트워크, GSM(Groupe Special Mobile 또는 Global Syatem for Mobile Communications) 및 GPRS(General Packet Radio Service) 네트워크, 및 현재 개발 중에 있는 EDGE(Enhanced Data rates for Global Evolution) 및 UMTS(Universal Mobile Telecommunications Syatems)와 같은 제3세대(3G) 네트워크를 포함한다. 기존의 데이터 중심의 네트워크는 MobitexTM Radio Network("Mobitex") 및 DataTACTM Radio Network("DataTAC")를 포함하는데, 이것에 제한되는 것은 아니며, 공지된 음성 중심의 데이터 네트워크는 수년동안 북아메리카 및 세계적으로 이용되어 온 TDMA(Time Division Multiple Access) 시스템 및 GSM과 같은 PCS(Personal Communication Systems) 네트워크를 포함한다.The wireless network 20 typically communicates data to and from communication devices, such as the mobile device 22, via RF transmissions between base stations and devices. The wireless network 20 may be, for example, a data-centric wireless network, a voice-centric wireless network, or a dual-mode network capable of supporting voice and data communications over the same infrastructure. The recently developed voice and data networks include a CDMA (Code Division Multiple Access) network, a GSM (Groupe Special Mobile or Global Syatem for Mobile Communications) and a GPRS (General Packet Radio Service) network, Global Evolution) and UMTS (Universal Mobile Telecommunications Syatems). An existing network of the data center is Mobitex TM Radio Network ( "Mobitex" ) and the DataTAC TM Radio Network ( "DataTAC" ), not limited to this, the known data network in the voice-centric North America and around the world for many years, comprises a (TDMA) system and Personal Communication Systems (PCS) networks such as GSM.

시스템(10)에서, 사내 LAN(18)을 소유하는 회사는 사원에게 이동 장치(22)를 제공하고 사내 LAN(18)으로의 액세스를 제공할 수 있다. 그러면, 회사 데이터는 이동 장치(22)에 액세스되고 저장될 수 있다. 이동 장치(22)의 사용자가 이동 장치(22)가 또한 통신할 수 있는 컴퓨터 시스템(28)을 통해 LAN(18)으로 액세스하는 경우, 이동 장치(22) 상에서 회사 데이터를 액세스하고 저장하기 위한 다른 경로가 이용가능하다. 그러한 데이터는 일반적으로 안전한 통신 기술을 사용함으로써 이동 장치(22)로 전달되는 동안에는 보호되지만, 이들 기술은 일단 데이터가 이동 장치(22)에서 수신되어 저장되면 데이터를 보호하지 않는다.In the system 10, the company that owns the in-house LAN 18 can provide the mobile device 22 to the employee and provide access to the on-premises LAN 18. The company data may then be accessed and stored in the mobile device 22. [ When a user of the mobile device 22 accesses the LAN 18 via the computer system 28 on which the mobile device 22 is also capable of communicating, Paths are available. Such data is generally protected during transmission to the mobile device 22 by using secure communication techniques, but these techniques do not protect the data once the data is received and stored at the mobile device 22.

상술된 바와 같이, 데이터가 이동 장치(22) 상의 메모리 내에 저장될 때나 저장되기 전의 데이터 암호화는 소정의 보안 조치를 제공한다. 데이터 복호화와 관련된 데이터 액세스 시간 지연 및 프로세서 로드를 감소시키기 위해서는, 대칭 키 암호기법이 바람직하다. 그러나, 대칭 키를 보호하기 위해 구현된 보안 조치는 또한 데이터가 수신될 때 키를 액세스하기 어렵게 할 수 있다. 예를 들어, 이동 장치(22)가 암호 보호를 구현하는 경우, 데이터 암호화를 위해 사용된 대칭 키는 보안 암호(password 또는 passphrase)의 정확한 엔트리에 의해 언로크되어 있는 경우에만 액세스가능할 수 있다. 이 예에서, 이동 장치(22)가 로크될 때에 데이터를 수신하면, 즉 데이터가 요청된 적없이 이동 장치(22)로 넣어지면, 대칭 키는 액세스 불가능하고, 데이터는 저장을 위해 암호화될 수 없다.As described above, data encryption prior to or during storage of data on the mobile device 22 provides some security measures. In order to reduce data access time delays and processor load associated with data decryption, symmetric key cryptography is preferred. However, the security measures implemented to protect the symmetric key may also make it difficult to access the key when the data is received. For example, if the mobile device 22 implements cryptographic protection, the symmetric key used for data encryption may only be accessible if it is unlocked by the correct entry of the secure password (password or passphrase). In this example, if the mobile device 22 receives the data when it is locked, i. E. The data is entered into the mobile device 22 without ever being requested, the symmetric key is inaccessible and the data can not be encrypted for storage .

본 발명의 실시양상에 따른 시스템 및 방법은 이동 장치가 복수의 상태 중의 임의의 상태에 있을 때 수신 데이터의 보호를 제공한다.A system and method in accordance with an embodiment of the present invention provides protection of received data when the mobile device is in any of a plurality of states.

도 2는 데이터 보호 시스템 및 방법이 구현되는 이동 장치의 블록도이다. 본 분야에 숙련된 기술자들은 데이터 보호 시스템에 관련된 컴포넌트들만이 도 2에 도시되었다는 것을 알 수 있을 것이다. 이동 장치는 전형적으로 도 2에 도시된 것들 이외의 컴포넌트들을 더 포함한다.2 is a block diagram of a mobile device in which a data protection system and method are implemented. It will be appreciated by those skilled in the art that only the components associated with the data protection system are shown in FIG. The mobile device typically further includes components other than those shown in Fig.

이동 장치(30)는 메모리(32), 데이터 보호 시스템(49), 프로세서(50), 사용자 인터페이스(UI)(52), 무선 송수신기(54) 및 인터페이스 또는 커넥터(56)를 포함한다. 메모리(32)는 양호하게 소프트웨어 애플리케이션용 저장 영역(34), 키 저장부(42) 및 복수의 데이터 저장부(36-40 및 44-48)를 포함한다.The mobile device 30 includes a memory 32, a data protection system 49, a processor 50, a user interface (UI) 52, a wireless transceiver 54 and an interface or connector 56. The memory 32 preferably includes a storage area 34 for software applications, a key storage 42 and a plurality of data stores 36-40 and 44-48.

메모리(32)는 기타 장치 컴포넌트들이 데이터를 기입할 수 있는 RAM과 같은 기입가능 저장부이거나, 또는 최소한 그러한 기입가능 저장부를 포함한다. 소프트웨어 애플리케이션 저장부(34)는 이동 장치(30) 상에 설치되어 있는 소프트웨어 애플리케이션을 포함하고, 예를 들어 전자 메시징 애플리케이션, 개인 정보 관리(PIM) 애플리케이션, 게임뿐만 아니라 기타 애플리케이션을 포함할 수 있다. 애플리케이션 데이터 저장부(38)는 브라우저 애플리케이션을 위한 캐시된 웹 페이지, 또는 소프트웨어 애플리케이션에 의해 사용된 파일과 같은 데이터뿐만 아니라, 소프트웨어 애플리케이션을 위한 구성 데이터를 포함하여, 이동 장치(30) 상의 소프트웨어 애플리케이션과 관련된 정보를 저장한다. 수신 및/또는 송신된 이메일 메시지와 같은 전자 메시지는 메시지 저장부(38) 내에 저장된다. 스케쥴 정보, 예약 및 리마인더(reminder)들과 같은 데이터는 캘린더 저장부(40) 내에 저장된다. 태스크 저장부(44)는 사용자가 추적하고 싶은 태스크를 저장하기 위해 사용된다. 사용자에 의해 입력된 노트 및 메모는 메모 저장부(46) 내에 저장된다. 텍스트 엔트리 저장부(48)는, 예를 들어 텍스트가 이동 장치(30) 상에 입력될 때 예측 텍스트 엔트리 및 자동 에러 정정을 지원하는 단어 목록이나 사전을 저장한다. 분리된 데이터 저장부들로 도시되었지만, 본 분야에 숙련된 기술자들은 저장부의 일부 또는 전부가 메모리(32) 내의 단일 데이터 저장부 내로 통합될 수 있다는 것을 알 수 있을 것이다. 또한, 이동 장치는 도 2에 도시된 것보다 더 많거나 더 적은 또는 상이한 데이터 저장부를 포함할 수 있다는 것을 알 수 있을 것이다.The memory 32 is, or at least includes, a writable storage such as RAM in which other device components can write data. The software application storage 34 includes a software application installed on the mobile device 30 and may include, for example, an electronic messaging application, a personal information management (PIM) application, a game, as well as other applications. The application data store 38 may store data, such as cached web pages for browser applications, or files used by the software application, as well as configuration data for the software applications, And stores relevant information. Electronic messages, such as received and / or transmitted e-mail messages, are stored in the message store 38. Data such as schedule information, reservations and reminders are stored in the calendar storage unit 40. The task storage unit 44 is used to store a task that the user wants to track. The notes and notes entered by the user are stored in the note storage unit 46. [ The text entry storage 48 stores a predicted text entry and a word list or dictionary that supports automatic error correction when, for example, text is entered on the mobile device 30. [ Although shown as separate data stores, those skilled in the art will appreciate that some or all of the stores may be incorporated into a single data store within memory 32. [ It will also be appreciated that the mobile device may include more, fewer, or different data stores than those shown in FIG.

키 저장부(42)는 이동 장치(30) 상의 데이터 보호를 지원하기 위해 사용된 암호화 키를 저장하고, 액세스가 제어되는 메모리(32)의 안전한 부분 또는 안전한 메모리 컴포넌트 내에 상주하는 것이 바람직하다. 예를 들어, 사용자 또는 소프트웨어 애플리케이션은 키 저장부(42) 내의 데이터 보호 키를 삭제하거나 변경할 수 없어야 된다. 한 실시예에서, 키 저장부(42)로의 액세스는 데이터 보호 시스템(49)으로 제한된다. 데이터 보호 시스템(49)은 더욱 상세하게 후술되는 바와 같이, 수신된 데이터를 암호화하고, 메모리(32) 내에 저장된 암호화된 데이터를 복호화한다.The key store 42 preferably stores the encryption key used to support data protection on the mobile device 30 and resides within the secure portion of the memory 32 where access is controlled or within secure memory components. For example, the user or software application should not be able to delete or change the data protection key in the key store 42. In one embodiment, access to the key store 42 is limited to the data protection system 49. The data protection system 49 encrypts the received data and decrypts the encrypted data stored in the memory 32, as described in more detail below.

프로세서(50)는 무선 송수신기(54)에 접속되므로, 이동 장치(30)가 무선 네트워크를 통해 통신할 수 있게 한다. 인터페이스/커넥터(56)는 협동 인터페이스 또는 커넥터를 갖는 PC 또는 다른 장치에 대안적인 통신 경로를 제공한다. 인터페이스/커넥터(56)는, 예를 들어 적외선 통신 규격(Infrared Data Association: IrDA) 포트와 같은 광학 데이터 전송 인터페이스, 소정의 기타 단거리 무선 통신 인터페이스, 또는 시리얼 포트, 유니버셜 시리얼 버스(USB) 포트 또는 안전 디지털(SD) 슬롯과 같은 유선 인터페이스를 포함하는 복수의 데이터 전송 컴포넌트들 중의 임의의 컴포넌트일 수 있다. 공지된 단거리 무선 통신 인터페이스는, 예를 들어 BluetoothTM 모듈 및 802.11 모듈을 포함한다. 본 분야에 숙련된 기술자들은 "블루투스(Bluetooth)" 및 "802.11"이 각각 무선 LAN 및 무선 개인 영역 네트워크에 관해 IEEE(Institute of Electrical and Electronics Engineers)로부터 이용가능한 스펙 세트를 나타낸다는 것을 알 수 있을 것이다. 그러므로, 인터페이스/커넥터(56)를 통해 설정된 통신 링크는 무선 접속 또는 물리적 유선 접속일 수 있다.The processor 50 is connected to the wireless transceiver 54, thereby allowing the mobile device 30 to communicate over the wireless network. The interface / connector 56 provides an alternative communication path to a PC or other device having a cooperative interface or connector. The interface / connector 56 may be an optical data transmission interface such as, for example, an Infrared Data Association (IrDA) port, some other short range wireless communication interface, or a serial port, a universal serial bus And may be any of a plurality of data transfer components including a wired interface, such as a digital (SD) slot. Known short range wireless communication interfaces include, for example, a Bluetooth TM module and an 802.11 module. Those skilled in the art will recognize that "Bluetooth" and "802.11" represent a set of specifications available from the Institute of Electrical and Electronics Engineers (IEEE) for wireless LAN and wireless personal area networks, respectively . Thus, the communication link established through the interface / connector 56 may be a wireless connection or a physical wired connection.

UI(52)는 키보드 또는 키패드, 디스플레이, 또는 이동 장치(30)의 사용자로부터 입력을 받아들이거나 그 사용자에게 출력을 제공하는 기타 컴포넌트들과 같은 UI 컴포넌트들을 포함한다. 도 2에는 단일 블록으로 도시되었지만, 이동 장치는 전형적으로 하나보다 많은 UI를 포함하고, UI(52)는 따라서 하나 이상의 인터페이스를 나타내도록 되어 있다는 것을 알 수 있을 것이다.The UI 52 includes UI components such as a keyboard or keypad, a display, or other components that accept input from or provide output to a user of the mobile device 30. Although shown in FIG. 2 as a single block, it will be appreciated that the mobile device typically includes more than one UI, and the UI 52 is thus intended to represent more than one interface.

이동 장치 상의 임의의 또는 모든 데이터 저장부 내의 데이터는 여기에서 설명된 바와 같이 보호될 수 있다. 대부분의 구현예에서, 기타 데이터 저장부(36-38 및 44-48)는 통상적으로 사용자 또는 고용인이 개인 데이터 또는 회사 데이터에 대해 보호하고 싶어할 수 있는 데이터를 저장하지만, 이동 장치 상에 설치된 소프트웨어 애플리케이션은 보호될 수 있을 것 같지 않다.Data in any or all of the data stores on the mobile device may be protected as described herein. In most implementations, other data stores 36-38 and 44-48 typically store data that a user or employee may want to protect against personal or company data, The application is unlikely to be protected.

이동 장치(30)에서, 메모리(32)로의 액세스는 데이터 보호 시스템(49)에 의해 제어되는데, 이 데이터 보호 시스템(49)은 수신된 데이터를 암호화하여 암호화된 데이터를 메모리(32)에 저장하고, 저장된 데이터를 다른 이동 장치 컴포넌트를 위해 복호화한다. 이동 장치(30)의 기타 모든 컴포넌트는 데이터 보호 시스템(49)에 접속되고, 이들 기타 컴포넌트에 의한 메모리 판독 및 기입 동작은 데이터 보호 시스템(49)을 통해 실행된다. 프로세서(50)를 통한 무선 송수신(54) 또는 UI(52)로부터, 프로세서(50)에 의해 실행되는 소프트웨어 애플리케이션으로부터, 또는 인터페이스/커넥터(56)로부터, 데이터 보호 시스템(49)에 의해 수신된 데이터는 키 저장부(42) 내에 저장된 키를 사용하여 암호화된다. 이와 마찬가지로, 보호된 데이터의 요청이 이동 장치(30) 상의 컴포넌트 또는 소프트웨어 애플리케이션으로부터 데이터 보호 시스템(49)에 의해 수신될 때, 데이터 보호 시스템(49)은 암호화된 데이터를 복호화하고, 복호화된 데이터를 요청 컴포넌트로 보낸다. 데이터 보호 시스템(49)은 상세하게 후술되는 바와 같이 인에이블 또는 디스에이블될 수 있는 소프트웨어 모듈 또는 유틸리티; 또는 메모리(32), 메모리(32)의 특정 부분, 또는 특정 데이터 저장부 또는 데이터 유형을 관리하도록 구성된 하드웨어 모듈로 구현된다.In the mobile device 30, access to the memory 32 is controlled by a data protection system 49 which encrypts the received data and stores the encrypted data in the memory 32 , And decodes the stored data for other mobile device components. All other components of the mobile device 30 are connected to the data protection system 49 and the memory read and write operations by these other components are executed via the data protection system 49. [ Data received by the data protection system 49 from the wireless transmit / receive 54 or UI 52 via the processor 50, from a software application executed by the processor 50, or from the interface / Is encrypted using the key stored in the key storage unit (42). Likewise, when a request for protected data is received by the data protection system 49 from a component or software application on the mobile device 30, the data protection system 49 decrypts the encrypted data and decrypts the decrypted data To the request component. The data protection system 49 comprises software modules or utilities that can be enabled or disabled as described in detail below; Or a memory 32, a specific portion of the memory 32, or a hardware module configured to manage a particular data store or data type.

도 2에 도시된 장치 배열은 단지 예시적으로 나타내고자 하는 것으로서, 본 발명은 결코 그것에 제한되지 않는다는 것을 알기 바란다. 예를 들어, 대안적인 실시예에서, 프로세서(50), 인터페이스/커넥터(56) 및 기타 장치 시스템은 메모리(32)로 액세스하고, 메모리(32)로부터 검색된 암호화된 데이터가 복호화될 때 및 수신된 데이터가 메모리(32)에 저장되기 전에 암호화될 때 데이터 보호 시스템과 상호작용한다. 이 경우에, 이동 장치 시스템 및 컴포넌트는 필요할 때 암호화 및 복호화를 위해 데이터 보호 시스템에 데이터를 보내지만, 메모리(32)를 직접 액세스한다. 도 2에 도시된 장치 배열은 메모리(32)로의 액세스가 데이터 보호 시스템(49)에 의해 제어된다는 점에서 더욱 엄격한 데이터 보호 제어를 제공하지만, 이 대안적인 실시예는 비보호 데이터가 데이터 보호 시스템에 의한 어떠한 관련도 없이 메모리(32)로부터 직접 검색되기 때문에 비보호 데이터 저장부에 대한 지원을 단순화한다.It is to be understood that the arrangement of the apparatus shown in FIG. 2 is intended to be illustrative only, and that the present invention is by no means limited thereto. For example, in an alternative embodiment, processor 50, interface / connector 56, and other device systems access memory 32, and when encrypted data retrieved from memory 32 is decrypted and received And interacts with the data protection system when data is encrypted before being stored in the memory 32. [ In this case, the mobile device system and components send data to the data protection system for encryption and decryption when needed, but access memory 32 directly. 2 provides for more stringent data protection control in that access to the memory 32 is controlled by the data protection system 49, but this alternate embodiment provides that the non- Simplifies support for the unprotected data store because it is retrieved directly from the memory 32 without any association.

동작시, 데이터 보호 시스템(49)은 키 저장부(42) 내의 암호 키를 액세스한다. 본 발명의 한 실시양상에 따르면, 키 저장부(42)는 몇몇 키를 저장한다. 상술된 바와 같이, 대칭 암호기법은, 데이터 보호가 인에이블될 때 보호 데이터의 암호화 및 복호화에 사용된 대칭 키가 키 저장부(42) 내에 저장되도록 하기 위해, 일반적으로 프로세서-제약 이동 장치에 바람직하다. 보안 암호가 이동 장치(30)를 권한없는 사용에 대해 안전하게 보호하긴 하지만, 대칭 키, 따라서 암호화 데이터를 소위 하드웨어 공격에 대해 보호하기 위해서는 일반적으로 그 이상의 조치가 바람직하다. 예를 들어, 암호 보호는 저장된 데이터를 직접 판독하기 위해 메모리(32)를 포함하는 물리적 컴포넌트들이 이동 장치(30)로부터 제거되는 경우에 메모리 내용을 보호하지 않는다. 그러므로, 대칭 키는 암호화 형태로 키 저장부(42) 내에 저장되는 것이 바람직하다. 대칭 키의 복호화는 사용자 암호의 정확한 엔트리를 필요로 한다.In operation, the data protection system 49 accesses the cryptographic key in the key storage unit 42. According to one embodiment of the present invention, the key storage unit 42 stores some keys. As described above, the symmetric encryption scheme is generally preferred for processor-constrained mobile devices, so that symmetric keys used for encryption and decryption of protected data are stored in key store 42 when data protection is enabled Do. Although the secure password securely protects the mobile device 30 from unauthorized use, further action is generally desirable to protect the symmetric key, and thus the encrypted data, against so-called hardware attacks. For example, password protection does not protect memory contents when physical components, including memory 32, are removed from mobile device 30 to directly read the stored data. Therefore, the symmetric key is preferably stored in the key storage unit 42 in an encrypted form. Decryption of the symmetric key requires an accurate entry of the user's password.

일단 복호화되면, 대칭 키는 필요시마다 복호화될 필요가 없게 전형적으로 키 저장부(42) 또는 다른 메모리 영역 또는 캐시 내에 저장된다. 그러나, 복호화된 대칭 키는 이동 장치(30)가 로크될 때, 미리 설정된 보안 만료기간 후에 사용자 커맨드에 응답하거나 자동적으로, 또는 이동 장치(30)가 예를 들어 휴대용 케이스 또는 가죽 케이스에 보관될 때, 삭제되는 것이 바람직하다. 다음에 이동 장치(30)가 정확한 암호로 언로크되면, 암호화 대칭 키는 다시 복호화된다.Once decrypted, the symmetric key is typically stored in the key store 42 or other memory area or cache so that it does not need to be decrypted as needed. However, the decrypted symmetric key may be used in response to or automatically in response to a user command after a predetermined security expiration period when the mobile device 30 is locked, or when the mobile device 30 is, for example, stored in a carrying case or leather case . Next, when the mobile device 30 is unlocked with the correct password, the encrypted symmetric key is decrypted again.

상기 키 암호 방식은 대칭 키 및 따라서 이 대칭 키를 사용하여 암호화된 데이터에 높은 보호 레벨을 제공하지만, 이동 장치(30)가 로크되면 대칭 키의 어떠한 복호화 버전도 이용할 수 없다. 그것만으로, 이동 장치(30)가 로크될 때 수신된 어떠한 데이터도 대칭 키를 사용하여 암호화될 수 없다. 이동 장치(30)가 로크될 때 데이터가 암호화될 수 있도록, 이동 장치(30)가 로크된 후에 메모리 내에 복호화 대칭 키를 유지하는 것은 메모리(32) 내에 저장된 데이터가 하드웨어 공격을 받기 쉬운 상태로 되게 한다. 대안적으로, 사용자는 데이터가 수신될 때마다 암호를 입력하라고 재촉받을 수 있다. 그러나, 사용자가 즉시 암호를 입력하지 않으면, 수신된 데이터는 최소한 다음에 사용자가 이동 장치(30)를 언로크할 때까지는 암호가 아닌 보통 문자로 저장되어야 하거나, 또는 단순히 이동 장치(30) 상에 저장되지 않아야 된다. 후자의 경우에, 수신된 데이터는 이동 장치(30)에서 없어지므로, 장치에 재전송되어야 한다.The key cryptosystem provides a high level of protection to the symmetric key and thus the data encrypted using this symmetric key, but when the mobile device 30 is locked no decrypted version of the symmetric key is available. By itself, any data received when the mobile device 30 is locked can not be encrypted using the symmetric key. Maintaining the decryption symmetric key in the memory after the mobile device 30 is locked such that the data can be encrypted when the mobile device 30 is locked means that the data stored in the memory 32 is in a state susceptible to hardware attacks do. Alternatively, the user may be prompted to enter a password each time data is received. However, if the user does not immediately enter the password, then the received data must be stored as ordinary characters, at least not until the next time the user unlocks the mobile device 30, or simply on the mobile device 30 It should not be stored. In the latter case, the received data is lost in the mobile device 30 and must be retransmitted to the device.

본 발명의 한 실시양상에 따르면, 키 저장부(42)는 또한 공개/개인 키 쌍을 저장한다. 공개 키는 기밀이 아니므로, 이동 장치(30)가 로크될 때라도 보통 문자로 저장된다. 공개 키를 사용하여 암호화된 데이터는 대칭키와 유사한 방식으로 보호될 수 있는 개인 키를 사용하여 복호될 수 있을 뿐이다. 그러므로, 공개 키는 이동 장치(30)가 로크될 때 수신된 데이터를 암호화하기 위해 사용된다.According to one embodiment of the present invention, the key store 42 also stores a public / private key pair. Since the public key is not confidential, it is usually stored as a character even when the mobile device 30 is locked. The data encrypted using the public key can only be decrypted using a private key that can be protected in a manner similar to a symmetric key. The public key is therefore used to encrypt the data received when the mobile device 30 is locked.

그러므로, 제1 암호 키인 대칭 키는 이동 장치(30)가 제1의 언로크된 조작 상태에 있을 때 수신된 데이터를 암호화하기 위해 사용되고, 제2 암호 키인 공개 키는 이동 장치(30)가 제2의 로크된 조작 상태에 있을 때 수신된 데이터를 암호화하기 위해 사용된다. 이로 인해, 대칭 키 암호기법의 이점은 이동 장치(30)가 언로크될 때 수신된 어떤 데이터를 위해 실현된다는 것이다. 그러한 데이터의 복호화는 그외 다른 암호 방식에 비해 보다 더 빠르고 보다 덜 프로세서 집약적이다. 한편, 보호된 대칭 키를 사용하는 것의 상기 부족한 점은 이동 장치(30)가 로크될 때 데이터 암호화를 위한 공개 키를 저장함으로써 방지된다. 공개 키를 사용하여 암호화된 데이터는 대응하는 개인 키를 사용하여 복호화된다. 공개 키 암호기법이 일반적으로 대칭 키 암호기법보다 느리지만, 데이터 복호화와 관련된 데이터 액세스 지연은 빠른 복호화 동작을 하는 공개 키 암호 방식을 선택함으로써 바람직하게 감소된다. 예를 들어, 타원 곡선 암호기법(ECC)은 RSA(Rivest-Shamir-Adleman) 기술보다 상당히 빠른 복호화를 제공한다.Therefore, the symmetric key, which is the first cryptographic key, is used to encrypt the data received when the mobile device 30 is in the first unlocked operating state, and the public key, which is the second cryptographic key, Lt; RTI ID = 0.0 > locked < / RTI > For this reason, the advantage of the symmetric key cryptography is that it is realized for some data received when the mobile device 30 is unlocked. The decryption of such data is faster and less processor intensive than any other cryptography. On the other hand, the shortcoming of using the protected symmetric key is prevented by storing the public key for data encryption when the mobile device 30 is locked. The data encrypted using the public key is decrypted using the corresponding private key. Public key cryptography is generally slower than symmetric key cryptography, but data access delays associated with data decryption are preferably reduced by selecting a public key cryptosystem with fast decryption operations. For example, elliptic curve cryptography (ECC) provides significantly faster decoding than Rivest-Shamir-Adleman (RSA) techniques.

간단히 상술된 바와 같이, 데이터 보호 시스템(49)은 데이터가 보호될 때 인에이블되는 소프트웨어 모듈 또는 유틸리티로 구현될 수 있다. 도 3은 데이터 보호를 인에이블하는 방법을 도시한 흐름도이다. 단계(60)에서, 데이터 보호를 인에이블하는 동작이 이동 장치에 의해 실행된다. 이 동작은 커맨드를 입력하거나, 예를 들어 키보드, 키패드, 마우스, 썸휠(thumbwheel) 또는 기타 입력 장치를 사용하여 메뉴 아이템을 선택함으로써, 이동 장치의 사용자에 의해 바람직하게 호출된다. 그러나, 또한, 이동 장치는 바람직하게, 사용자가 데이터 보호를 인에이블할 것을 요구하도록 구성할 수 있다는 것을 알기 바란다. 예를 들어, 고용주가 사원 사용자에게 이동 장치를 제공하면서 이동 장치 상의 소정의 회사 데이터가 확실하게 보호되기를 바라는 경우에, 구성 제어 소프트웨어 모듈 또는 유틸리티, 및 데이터 보호가 인에이블되어야 한다는 것을 지정하는 구성 제어 정보는 이동 장치가 사용자에게 제공되기 전에 또는 이동 장치가 사용자에 의한 동작을 위해 처음 구성될 때 이동 장치 상으로 삽입된다. 그러면, 구성 제어 모듈은 단계(60)에서 자동으로 그 동작을 호출하거나, 또는 데이터 보호가 인에이블된 때까지 일부 또는 전부의 기타 이동 장치 동작을 제한한다.As briefly discussed above, the data protection system 49 may be implemented with software modules or utilities that are enabled when the data is protected. Figure 3 is a flow chart illustrating a method for enabling data protection. At step 60, an operation to enable data protection is performed by the mobile device. This operation is preferably invoked by the user of the mobile device by entering a command or selecting a menu item using, for example, a keyboard, keypad, mouse, thumbwheel or other input device. However, it should also be appreciated that the mobile device preferably can be configured to require the user to enable data protection. For example, if an employer wishes to provide mobile devices to an employee user and wants certain company data on the mobile device to be securely protected, a configuration control software module or utility, and a configuration control that specifies that data protection should be enabled The information is inserted onto the mobile device either before the mobile device is presented to the user or when the mobile device is initially configured for operation by the user. The configuration control module then automatically invokes its operation in step 60, or restrict some or all other mobile device operations until data protection is enabled.

데이터 암호화를 위해 사용된 대칭 키 및 데이터 복호화를 위해 사용된 개인 키를 보호하기 위해, 암호 보호는 또한 데이터 보호가 인에이블될 때 또는 인에이블되기 전에 인에이블되어야 한다. 단계(62)에서, 암호 보호가 이미 인에이블되었는 지의 여부에 관해 판정이 이루어진다. 암호 보호가 인에이블되어 있지 않은 경우에, 단계(64)에서, 암호 보호를 인에이블하고 암호를 설정하라고 사용자에게 프롬프팅한다. 그 다음, 암호 보호가 이미 인에이블되어 있는 경우나, 단계(64)에서 사용자가 암호 보호를 인에이블한 후에, 단계(66)에서, 데이터 보호 키가 생성되어 키 저장부에 저장된다.In order to protect the symmetric key used for data encryption and the private key used for data decryption, password protection must also be enabled when data protection is enabled or before it is enabled. At step 62, a determination is made as to whether the password protection has already been enabled. If password protection is not enabled, at step 64, the user is prompted to enable password protection and set a password. Then, if password protection is already enabled, or after the user has enabled password protection in step 64, then in step 66, a data protection key is generated and stored in the key store.

단계(66)에서 생성된 데이터 보호 키는 데이터가 이동 장치 상의 메모리 내에 저장되기 전에 이동 장치가 언로크된 상태에 있을 때 수신된 데이터를 암호화하고, 이 암호화 데이터를 메모리로부터 검색되었을 때 복호화하기 위해 사용된 대칭 키를 포함한다. 상술된 바와 같이, 이 대칭 키 자체는 사용자에 의해 설정된 암호를 사용하여 암호화된다. 공개/개인 키 쌍은 또한 단계(66)에서 생성된다. 공개 키는 비밀이 유지될 필요가 없기 때문에 보통 문자로 저장되고, 이동 장치가 로크된 상태에 있을 때 수신된 데이터를 암호화하기 위해 사용된다. 공개 키를 사용하여 암호화된 데이터는 공개 키의 절충이 보안 사항이 되지 않도록, 개인 키를 사용하여 복호화될 수 있을 뿐이다. 그러나, 개인 키는 대칭 키처럼, 예를 들어 암호를 사용하여 개인 키를 암호화함으로써, 암호화 형태로 키 저장부 내에 저장되는 것이 바람직하다.The data protection key generated in step 66 encrypts the received data when the mobile device is in the unlocked state before the data is stored in the memory on the mobile device and decrypts the encrypted data when retrieved from the memory It contains the symmetric key used. As described above, this symmetric key itself is encrypted using the password set by the user. A public / private key pair is also generated in step 66. The public key is usually stored as a character because it does not need to be kept secret and is used to encrypt the data received when the mobile device is in the locked state. The data encrypted using the public key can only be decrypted using the private key, so that the compromise of the public key is not a security concern. However, it is preferable that the private key is stored in the key storage unit in an encrypted form, such as a symmetric key, for example, by encrypting the private key using a password.

데이터 보호가 인에이블된 후에 이동 장치에서 수신된 소정의 데이터는 메모리 내에 저장되기 전에 암호화된다. 도 4는 이동 장치에서 수신된 데이터를 보호하는 방법을 도시한 흐름도이다.Certain data received at the mobile device after data protection is enabled is encrypted before being stored in memory. 4 is a flow chart illustrating a method for protecting data received at a mobile device.

단계(72)에서, 데이터는 이동 장치에 수신된다. 도 2를 참조하면, 이동 장치(30)는 UI(52)를 통한 사용자 입력뿐만 아니라, 무선 송수신기(54) 또는 인터페이스/커넥터(56)를 통해 데이터를 수신하도록 구성된다. 소프트웨어 애플리케이션은 또한 전형적으로 메모리(32) 내에 저장하기 위한 데이터를 발생시킨다. 예를 들어, 디스크 드라이브 또는 메모리 스틱 판독기와 같은 기타 인터페이스가 제공되는 경우에, 단계(72)는 또한 이들 인터페이스로부터 데이터를 수신하는 동작을 포함한다.In step 72, the data is received at the mobile device. 2, mobile device 30 is configured to receive data via a wireless transceiver 54 or interface / connector 56, as well as user input via UI 52. [ The software application also typically generates data for storage in the memory 32. For example, in the case where other interfaces, such as a disk drive or a memory stick reader, are provided, step 72 also includes an operation of receiving data from these interfaces.

이동 장치의 현재의 조작 상태는 그 다음 단계(74)에서 판정된다. 장치가 로크되는 경우, 공개 키가 검색되고, 수신된 데이터는 공개 키를 사용하여 암호화된다(단계(78)). 이동 장치가 언로크되면, 대칭 키가 이용가능하다. 복호화된 대칭 키는 암호를 정확하게 입력함으로써 이동 장치가 언로크된 때에 복호화되었으면 키 저장부 또는 캐시로부터 검색된다. 그렇지 않으면, 암호화된 대칭 키는 키 저장부로부터 검색되어, 복호화된 다음에, 검색된 데이터를 암호화하기 위해 사용된다(단계(76)).The current operating state of the mobile device is then determined in step 74. [ If the device is locked, the public key is retrieved and the received data is encrypted using the public key (step 78). If the mobile device is unlocked, a symmetric key is available. The decrypted symmetric key is retrieved from the key store or cache if it is decrypted when the mobile device is unlocked by correctly entering the password. Otherwise, the encrypted symmetric key is retrieved from the key store, decrypted and then used to encrypt the retrieved data (step 76).

본 발명의 또 다른 실시양상에 따르면, 단계(80)에서, 수신된 데이터가 이동 장치 상에 이미 저장되어 있는 현존하는 데이터에 관련되는 지의 여부에 관해 판정이 이루어진다. 단계(82)에서, 암호화된 수신 데이터는 현존하는 데이터에 관련되지 않는 경우에 메모리에 저장된다. 수신된 데이터가 현존하는 데이터에 관련되면, 암호화된 수신 데이터는 현존하는 데이터에 추가된다(단계(84)). 예를 들어, 수신된 데이터의 송신기, 또는 도 1의 데이터 서버(26) 또는 무선 네트워크 게이트웨이(16)와 같은 중간 시스템이 데이터를 선정된 크기까지의 블록으로 이동 장치에 송신하도록 구성되면, 큰 데이터 아이템은 이동 장치로 송신되는 분리된 블록으로 분할된다. 이 경우에, 동일한 데이터 아이템에 대한 제1 데이터 블록 후에 수신된 특정 데이터 아이템과 관련된 각 데이터 블록은 데이터 아이템에 대한 소정의 이전에 수신된 데이터에 관련된다.According to another embodiment of the present invention, at step 80, a determination is made as to whether the received data relates to existing data already stored on the mobile device. In step 82, the encrypted received data is stored in memory if not related to the existing data. If the received data is related to the existing data, the encrypted received data is added to the existing data (step 84). For example, if a transmitter of received data, or an intermediate system such as data server 26 or wireless network gateway 16 of FIG. 1, is configured to transmit data to the mobile device in blocks up to a predetermined size, The item is divided into separate blocks that are sent to the mobile device. In this case, each data block associated with a particular data item received after the first data block for the same data item is associated with some previously received data for the data item.

본 분야에 숙련된 기술자들은 데이터 아이템이 데이터 블록으로 분리되는 경우에, 각 블록은 수신기가 데이터 아이템을 재구성할 수 있게 하는 정보를 포함한다는 것을 알 수 있을 것이다. 이 정보는 전형적으로 세션 식별자, 데이터 아이템 식별자, 파일 이름, 순서 번호, 또는 데이터 아이템에 대한 다른 데이터 블록을 식별하기 위해 수신기에서 사용되는 그외 다른 소정의 식별자의 형태로 이루어진다. 각 데이터 블록이 이동 장치에서 수신될 때 암호화되지만, 데이터 아이템 식별자, 또는 식별자의 해시와 같은 그것의 변형된 버전은 바람직하게 이동 장치에서 저장되고, 단계(80)에서, 수신된 데이터가 현존하는 데이터에 관련된 것인 지의 여부를 판정하기 위해 사용된다.It will be appreciated by those skilled in the art that if a data item is separated into data blocks, each block includes information that allows the receiver to reconstruct the data item. This information is typically in the form of a session identifier, a data item identifier, a file name, a sequence number, or some other identifier used in the receiver to identify other data blocks for the data item. Although each data block is encrypted when it is received at the mobile device, its modified version, such as a data item identifier, or a hash of the identifier, is preferably stored at the mobile device and, at step 80, Is used to determine whether or not it is related to < / RTI >

데이터 아이템이 복수의 데이터 블록을 포함하면, 각 데이터 블록은 수신될 때 암호화되어 저장된다. 각 데이터 블록이 동일한 데이터 아이템의 일부를 포함하지만, 데이터 블록은 그 데이터 블록이 수신될 때의 이동 장치의 조작 상태 여하에 따른 알고리즘 및 키를 사용하여 따로 암호화된다. 그러므로, 수신된 다수-블록 데이터 아이템은 일련의 독립적으로 암호화된 데이터 블록으로서 저장된다. 도 5A는 그러한 데이터 아이템을 지원하는 데이터 포맷의 블록도이다.If the data item contains a plurality of data blocks, each data block is encrypted and stored when received. Each data block contains a portion of the same data item, but the data block is separately encrypted using an algorithm and key according to the operational state of the mobile device when the data block is received. Thus, the received multi-block data items are stored as a series of independently encrypted data blocks. 5A is a block diagram of a data format supporting such a data item.

데이터 아이템(85)은 데이터 아이템 레퍼런스(86) 및 3개의 데이터 아이템 부분(87, 88 및 89)을 포함한다. 데이터 아이템 부분(87, 88 및 89)은 데이터 아이템 레퍼런스(86)에 의해 조회된 바이트 어레이 내에 양호하게 저장된다. 데이터 아이템 레퍼런스(86)는, 예를 들어 이메일 메시지 식별자 또는 세션 식별자와 같은 데이터 아이템 식별자, 및 데이터 아이템 부분(87, 88 및 89)이 저장되는 바이트 어레이의 위치 또는 그 어레이에 대한 포인터를 포함한다. 데이터 아이템 식별자는 도 4의 단계(80)에서의 판정을 지원하고, 위치와 함께, 데이터 아이템 부분(87, 88 및 89)이 검색될 수 있게 한다. 각각의 데이터 아이템 부분(87, 88 및 89)은 데이터 블록 헤더(87A, 88A 또는 89A) 및 데이터 블록(87B, 88B 또는 89B)을 포함한다. 데이터 블록 헤더(87A, 88A 및 89A)는 데이터 아이템(85) 내의 각 데이터 블록(87B, 88B 및 89B)에 대응하는 길이 및 키 식별자를 포함한다. 데이터 블록 헤더 내의 데이터 블록 길이는 길이를 나타내거나, 또는 대안적으로 각 데이터 블록이 적절하게 검색될 수 있도록, 대응하는 데이터 블록의 끝의 위치 또는 그 데이터 블록 끝에 대한 포인터를 나타낸다. 키 식별자는 데이터 블록을 암호화하기 위해 사용되었거나 데이터 블록을 복호화하기 위해 요구되는 키, 암호 알고리즘 또는 이 둘다를 포함한다. 데이터 블록(87B, 88B 및 89B)은 암호화되어 있는, 단일 데이터 아이템을 포함하는 수신된 데이터 블록을 나타낸다.The data item 85 includes a data item reference 86 and three data item portions 87, 88 and 89. The data item portions 87, 88, and 89 are preferably stored in the byte array referenced by the data item reference 86. The data item reference 86 includes a data item identifier such as, for example, an email message identifier or session identifier, and a pointer to the array or the location of the byte array in which the data item portions 87,88 and 89 are stored . The data item identifier supports the determination in step 80 of FIG. 4 and allows the data item portions 87, 88 and 89 to be retrieved, along with the location. Each data item portion 87,88 and 89 includes a data block header 87A, 88A or 89A and a data block 87B, 88B or 89B. The data block header 87A, 88A and 89A includes a length and a key identifier corresponding to each data block 87B, 88B and 89B in the data item 85. [ The data block length in the data block header indicates the length or alternatively indicates the position of the end of the corresponding data block or a pointer to the end of the data block so that each data block can be properly retrieved. The key identifier includes a key, a cryptographic algorithm, or both, which are used to encrypt the data block or are required to decrypt the data block. Data blocks 87B, 88B, and 89B represent received data blocks that contain a single data item that is encrypted.

도 5A에 도시된 예에서, 데이터 블록1은 이동 장치가 언로크되었을 때 수신되었고, 그것만으로, 암호화된 데이터 블록(87B)을 생성하기 위해 대칭 키를 사용하여 암호화되었다. 암호화된 데이터 블록(87B)의 길이가 판정되고, 이 길이 및 "대칭" 키 식별자가 블록 헤더(87A)처럼 암호화된 데이터 블록(87B)에 추가된다. 블록 헤더(87A) 및 암호화된 데이터 블록(87B)은 그 다음 메모리에 저장된다.In the example shown in FIG. 5A, data block 1 was received when the mobile device was unlocked and, by itself, it was encrypted using a symmetric key to generate an encrypted data block 87B. The length of the encrypted data block 87B is determined and this length and the "symmetric" key identifier are added to the encrypted data block 87B as in the block header 87A. The block header 87A and the encrypted data block 87B are then stored in memory.

데이터 아이템 레퍼런스는, 데이터 아이템이 검색될 수 있고, 후속적으로 수신된 관련된 데이터 블록이 식별되어, 데이터 아이템 레퍼런스에 의해 조회된 대응하는 바이트 어레이에 추가될 수 있도록, 하나의 데이터 아이템, 또는 다수-블록 데이터 아이템의 제1 데이터 블록이 이동 장치 상에 수신될 때 양호하게 작성되어 저장된다. 그러므로, 데이터 아이템 레퍼런스(86)는 데이터 블록1이 수신되었을 때, 또는 어쩌면 데이터 블록1이 암호화되어 이동 장치 상에 저장된 후에, 작성되었고, 데이터 아이템의 식별자, 및 데이터 아이템 부분(87)이 저장되어 있거나 저장될 곳을 나타내는 위치를 포함한다.A data item reference may be a data item, or a multiple-data item, so that a data item can be retrieved and a subsequently received related data block is identified and added to the corresponding byte array referenced by the data item reference. The first data block of the block data item is preferably created and stored when it is received on the mobile device. Thus, the data item reference 86 was created when data block 1 was received, or perhaps after data block 1 was encrypted and stored on the mobile device, and the identifier of the data item and the data item portion 87 were stored And a location indicating where it will be stored or stored.

데이터 아이템 내의 제2 데이터 블록인 데이터 블록2는 이동 장치가 로크되었을 때 수신되었으므로, 공개 키를 사용하여 암호화되었다. 블록2 헤더(88A)는 상술된 바와 같이, 발생되어, 암호화된 데이터 블록(88B)에 추가되고, 블록 헤더(88A) 및 암호화된 데이터 블록(88B)을 포함하는 최종적인 데이터 아이템 부분(88)은 데이터 아이템 레퍼런스(86)에 의해 조회된 어레이 내에서 데이터 아이템 부분(87)에 부가된다. 제3 데이터 블록인 데이터 블록3은 데이터 블록1처럼, 이동 장치가 언로크되어 있는 동안에 수신되었고, 대칭 키를 사용하여 암호화되었다. 블록 헤더(89A) 및 암호화된 데이터 블록(89B)을 포함하는 데이터 부분(89)은 마찬가지로, 데이터 아이템 레퍼런스(86)에 의해 조회된 어레이 내에서 데이터 아이템 부분(88)에 부가된다.Data block 2, which is the second data block in the data item, was encrypted using the public key since it was received when the mobile device was locked. The block 2 header 88A is generated and added to the encrypted data block 88B and the final data item portion 88 including the block header 88A and the encrypted data block 88B, Is added to the data item portion 87 in the array referenced by the data item reference 86. Data block 3, which is the third data block, was received while the mobile device was unlocked, like data block 1, and was encrypted using a symmetric key. A data portion 89 comprising a block header 89A and an encrypted data block 89B is likewise appended to the data item portion 88 in the array referenced by the data item reference 86. [

이러한 방식으로, 한 데이터 아이템의 후속 데이터 블록은 암호화되고, 데이터 헤더가 생성되어, 암호화된 데이터 블록에 추가되며, 블록 헤더 및 암호화된 데이터 블록은 이전의 암호화된 데이터 블록에 부가된다. 현존하는 바이트 어레이에 새로운 데이터를 효과적으로 추가하는 한가지 공지된 방식에서는, 새로운 어레이가 정해지고, 현존하는 어레이의 내용이 새로운 어레이에 복사되며, 새로운 데이터가 새로운 어레이 내로 기입된다. 현존하는 어레이에 의해 점유된 메모리 공간은 레퍼런스-해제되거나(de-referenced), 그렇지 않으면 다른 데이터의 저장을 위해 재이용된다. 이러한 기술의 복사 처리는 느려지는 경향이 있고, 현존하는 데이터 어레이의 2개의 복사본을 위한 충분히 이용가능한 메모리 공간을 필요로 한다는 점에서 메모리 집약적이다. 상술된 부가 방식은 이 공지된 기술보다 보다 더 빠르고, 메모리 공간을 덜 필요로 한다.In this manner, subsequent data blocks of one data item are encrypted, a data header is generated and added to the encrypted data block, and the block header and encrypted data block are appended to the previous encrypted data block. In one known way of effectively adding new data to an existing byte array, a new array is determined, the contents of the existing array are copied to the new array, and the new data is written into the new array. The memory space occupied by the existing array is de-referenced or otherwise reused for storage of other data. The copying of this technique tends to be slow and is memory intensive in that it requires enough available memory space for two copies of the existing data array. The above-described supplementary scheme is faster than the known technique and requires less memory space.

사용자가 표시를 위한 데이터 아이템을 선택할 때와 같이, 데이터 아이템(85)이 액세스될 때, 데이터 아이템 부분(87, 88 및 89)이 발견되는 바이트 어레이는 데이터 아이템 레퍼런스(86)에서의 위치를 사용하여 메모리 내에 위치하게 된다. 각각의 암호화된 데이터 블록(87B, 88B 및 89B)에 대해, 적절한 복호화 방식 및 암호화 데이터 블록의 길이가 대응 블록 헤더(87A, 88A 및 89A) 내의 키 식별자 및 길이로부터 결정된다. 각각의 암호화된 데이터 블록(87B, 88B 및 89B)은 바이트 어레이로부터 판독되어 복호화되고, 복호화된 데이터 블록은 이동 장치에 전송된 데이터 아이템에 대응하는 단일 복호화 데이터 아이템으로 결합된다.When a data item 85 is accessed, such as when a user selects a data item for display, the byte array in which the data item portions 87, 88, and 89 are found uses the location in the data item reference 86 And is located in the memory. For each encrypted data block 87B, 88B, and 89B, the appropriate decryption scheme and the length of the encrypted data block are determined from the key identifiers and lengths in the corresponding block headers 87A, 88A, and 89A. Each encrypted data block 87B, 88B, and 89B is read from the byte array and decoded, and the decoded data block is combined into a single decoded data item corresponding to the data item transmitted to the mobile device.

본 분야에 숙련된 기술자들은 데이터 아이템 부분(87, 88 및 89)이 바이트 어레이 내에 저장되는 것으로 도 5에 도시되고 설명되었지만, 데이터 아이템 부분은 반드시 연속된 메모리 위치에 저장될 필요는 없다는 것을 알 수 있을 것이다. 메모리 포인터 또는 다른 식별자는 전형적으로 블록을 논리적으로 링크하기 위해 사용된다.It will be appreciated by those skilled in the art that although the data item portions 87, 88, and 89 are shown and described in Figure 5 as being stored in a byte array, the data item portions need not necessarily be stored in contiguous memory locations There will be. A memory pointer or other identifier is typically used to logically link the block.

도 5B는 대안적인 데이터 포맷의 블록도이다. 데이터 아이템(90)은 한 데이터 아이템의 논리적 구조를 나타내고, 하나의 데이터 아이템 헤더(92) 및 세개의 암호화된 데이터 블록(94, 96 및 98)을 포함한다. 헤더(92)는 데이터 아이템 식별자, 및 데이터 아이템(90) 내의 각 데이터 블록(94, 96 및 98)에 대한 길이, 위치 및 키 식별자와 같은 정보를 포함한다. 헤더(92) 및 데이터 블록(94, 96 및 98)은 바람직하게 논리적으로 링크되지만, 반드시 연속된 메모리 위치에 저장될 필요는 없다.5B is a block diagram of an alternative data format. The data item 90 represents the logical structure of one data item and includes one data item header 92 and three encrypted data blocks 94, 96 and 98. The header 92 contains information such as a data item identifier and a length, location and key identifier for each data block 94, 96 and 98 in the data item 90. The header 92 and data blocks 94, 96 and 98 are preferably logically linked, but need not necessarily be stored in contiguous memory locations.

도 5A를 참조하여 상술된 예에서와 같이, 데이터 블록1, 2 및 3은 각각 이동 장치가 언로크, 로크 및 언로크되었을 때 수신되었다. 데이터 블록1 및 3은 대칭 키를 사용하여 암호화되었고, 데이터 블록2는 공개 키를 사용하여 암호화되었다. 제1 데이터 블록(94)이 적절하게 검색되어 복호화될 수 있고, 그후 수신된 관련된 데이터 블록이 식별될 수 있도록, 제1 데이터 블록(94)이 이동 장치 상에서 수신되고 암호화되어 저장되었을 때, 헤더(92)는 양호하게 작성되어 저장되었다. 제2 및 제3 암호화된 데이터 블록(96 및 98)을 위한 정보는 이들 데이터 블록이 수신되었을 때 헤더(92)에 추가되었다. 이동 장치가 언로크되고 데이터 아이템(90)이 이동 장치 상에서 액세스될 때, 각각의 블록은 헤더(92) 내의 위치 및 길이를 사용하여 위치하게 되고, 적절한 복호화 방식이 헤더(92) 내의 키 식별자로부터 결정되며, 그 다음에, 각각의 데이터 블록이 검색되고 복호화되며 결합되어, 데이터 아이템을 재구성한다.As in the example described above with reference to FIG. 5A, data blocks 1, 2, and 3 were received when the mobile device was unlocked, locked, and unlocked, respectively. Data blocks 1 and 3 were encrypted using a symmetric key, and data block 2 was encrypted using a public key. When the first data block 94 is received and encrypted and stored on the mobile device so that the first data block 94 can be properly retrieved and decoded and then the associated related data block can be identified, 92) was well prepared and stored. The information for the second and third encrypted data blocks 96 and 98 was added to the header 92 when these data blocks were received. When the mobile device is unlocked and the data item 90 is accessed on the mobile device, each block is positioned using the location and length in the header 92 and a suitable decryption scheme is determined from the key identifier in the header 92 And then each data block is retrieved, decoded and combined to reconstruct the data item.

도 5A 및 5B에 도시되고 상술된 바와 같이, 단일 데이터 아이템은 상이한 암호화 방식을 사용하여 암호화된 데이터 블록들을 포함할 수 있는데, 이 데이터 블록들은 이동 장치가 상이한 조작 상태에 있을 때 이동 장치에서 수신되었다. 또한, 동일한 데이터 아이템용 데이터 블록들이 수신될 때 이동 장치가 동일한 조작 상태에 있는 것도 가능하다. 예를 들어, 이동 장치가 언로크된 상태에 있을 때 데이터 블록2가 수신되었으면, 그 데이터 블록2는 또한 대칭 키를 사용하여 암호화될 수 있었다. 본 발명의 또 다른 실시양상에 따르면, 수신된 데이터 블록이 암호화되기 전에, 이동 장치의 현재의 조작 상태가, 동일한 데이터 아이템의 이전의 데이터 블록이 수신되었을 때의 이동 장치의 조작 상태와 동일한 지의 여부가 판정된다. 조작 상태, 따라서 데이터 보호 키가 수신된 데이터, 및 한 데이터 아이템의 이전의 데이터 블록에 대해 동일한 경우, 이전의 블록 및 수신된 데이터는 동일한 방식으로 암호화된다. 이 경우에, 이전의 데이터 블록은 가능하면 복호화되는 것이 바람직하고, 수신된 데이터 블록은 결합된 데이터 블록을 형성하기 위해 복호화된 이전의 데이터 블록에 부가되며, 결합된 데이터 블록은 암호화되어 메모리에 저장된다. 이전의 데이터 블록이 암호화된 결합된 데이터 블록의 부분이기 때문에, 이전의 데이터 블록에 의해 점유된 메모리 공간은 암호화된 결합된 데이터 블록으로 중복기입되거나, 또는 다른 데이터를 저장하도록 이용가능해진다.As shown in FIGS. 5A and 5B and described above, a single data item may contain data blocks encrypted using different encryption schemes, which are received at the mobile device when the mobile device is in a different operational state . It is also possible that the mobile device is in the same operating state when data blocks for the same data item are received. For example, if data block 2 was received when the mobile device was in the unlocked state, that data block 2 could also be encrypted using the symmetric key. According to another embodiment of the present invention, before the received data block is encrypted, whether the current operational state of the mobile device is the same as the operational state of the mobile device when the previous data block of the same data item was received Is determined. If the operational state, and therefore the data protection key, is the same for the received data and the previous data block of one data item, the previous block and the received data are encrypted in the same manner. In this case, the previous data block is preferably decoded if possible, and the received data block is appended to the previous data block decoded to form the combined data block, the combined data block is encrypted and stored in memory do. Since the previous data block is part of the encrypted combined data block, the memory space occupied by the previous data block is overwritten with the encrypted combined data block or becomes available to store other data.

이러한 유형의 동작은, 예를 들어 대칭 키가 액세스가능한 동안에 이전의 블록 및 수신된 데이터가 수신될 때 가능하다. 장치가 로크되어 공개 키를 사용하여 암호화될 때 이전의 블록 및 수신된 데이터가 수신되는 경우에, 개인 키는 액세스 불가능하고, 이전의 블록은 복호화될 수 없다. 그러나, 더욱 상세하게 후술되는 바와 같이, 이전의 블록 및 수신된 데이터가 액세스될 때와 같이, 개인 키가 액세스 가능하게 될 때, 유사한 복호화 및 재암호화 프로세스가 가능하다.This type of operation is possible, for example, when the previous block and received data are received while the symmetric key is accessible. When the device is locked and encrypted using the public key, the previous block and the received data are received, the private key is inaccessible and the previous block can not be decrypted. However, as described in more detail below, a similar decryption and re-encryption process is possible when the private key becomes accessible, such as when the previous block and the received data are accessed.

이 복호화/재암호화가 하나보다 많은 데이터 블록을 단일의 암호화된 데이터 블록으로의 결합을 제공하지만, 상술된 바와 같은 암호화된 데이터 블록의 부가는 보다 적은 시간, 메모리 및 데이터 프로세싱을 필요로 하므로, 일반적으로 제한된 전력, 메모리 및 프로세싱 자원을 갖는 제한된 이동 장치에서 바람직하다.Although this decryption / re-encryption provides for coupling of more than one data block into a single encrypted data block, the addition of an encrypted data block as described above requires less time, memory and data processing, Memory, and processing resources.

도 6은 보호된 데이터를 액세스하는 방법을 도시한 흐름도이다. 단계(102)에서, 데이터 보호 시스템 또는 이동 장치 시스템 또는 컴포넌트는 데이터 보호 시스템 및 메모리 액세스 방식이 구현되는 방법 여하에 따라, 암호화된 데이터를 검색한다. 데이터 보호 시스템은 그 다음, 키 식별자에 기초하여, 암호화된 데이터가 대칭 키를 사용하여 암호화되었는지 공개 키를 사용하여 암호화되었는지 판정한다. 단계(106)에서, 대응하는 개인 키는 암호화된 데이터를 복호화하기 위해 사용되는데, 이 암호화된 데이터는 공개 키를 사용하여 암호화된 것이다. 단계(108)에서, 대칭 키는 암호화된 데이터를 복호화하기 위해 사용되는데, 이 암호화된 데이터는 대칭 키를 사용하여 암호화된 것이다. 그 다음, 복호화된 데이터는 데이터를 검색하거나 요청한 이동 장치 시스템 또는 컴포넌트로 출력된다. 수신된 데이터가 복수의 데이터 블록을 포함하면, 단계(104 내지 110)는 각 데이터 블록마다 실행된다.6 is a flow chart illustrating a method for accessing protected data. In step 102, the data protection system or mobile device system or component retrieves the encrypted data depending on how the data protection system and memory access scheme are implemented. The data protection system then determines, based on the key identifier, whether the encrypted data has been encrypted using the symmetric key or has been encrypted using the public key. In step 106, the corresponding private key is used to decrypt the encrypted data, which is encrypted using the public key. In step 108, the symmetric key is used to decrypt the encrypted data, which is encrypted using a symmetric key. The decrypted data is then retrieved or output to the requesting mobile device system or component. If the received data includes a plurality of data blocks, steps 104 to 110 are executed for each data block.

복호화 단계(106 및 108)는 공개 키 또는 대칭 키가 액세스가능하다고 가정한 것이다. 보호된 데이터가 액세스될 때 이동 장치가 언로크되지 않는 한, 이들 키는 메모리로부터 이용가능하거나, 복호화될 수 있다. 키가 액세스 불가능하면, 보호된 데이터는 복호화될 수 없다.Decryption steps 106 and 108 assume that the public key or symmetric key is accessible. Unless the mobile device is unlocked when the protected data is accessed, these keys may be available from the memory or may be decrypted. If the key is inaccessible, the protected data can not be decrypted.

상술된 바와 같이, 공개 키 암호기법은 전형적으로 대칭 키 암호기법보다 느리다. 이동 장치가 로크되는 동안에 수신된 데이터, 또는 그러한 데이터를 포함하는 데이터 아이템이 복호화될 때마다, 공개 키 복호화 동작은 이동 장치 상에서 실행되어야 한다. 그러한 데이터가 단계(106)에서 복호화되면, 복호화된 데이터는 이동 장치 상에서 이용가능하다. 복호화 동작 동안에, 대칭 키가 또한 액세스 가능하도록, 이동 장치는 언로크된 상태로 있는다. 본 발명의 다른 실시양상에 따르면, 공개 키를 사용하여 사전에 암호화된 복호화된 데이터는 대칭 키를 사용하여 재암호화된다. 필요하다면, 데이터 아이템 헤더가 또한 이에 따라 갱신된다. 대안적으로, 한 데이터 아이템의 소정의 데이터 블록이 공개 키를 사용하여 암호화된 경우, 복호화된 데이터 블록은 단일의 결합된 데이터 블록을 형성하기 위해 연결되는데, 그 다음에, 이 단일의 결합된 데이터 블록은 대칭 키를 사용하여 재암호화된다. 그 다음, 오리지널 데이터 아이템은 재암호화된 데이터 아이템으로 메모리 내에서 대체된다. 이러한 방식으로, 데이터 아이템이 후속적으로 액세스될 때 또 다른 공개 키 복호화 동작이 방지된다.As discussed above, public key cryptography is typically slower than symmetric key cryptography. Each time the mobile device is locked, or the data item containing the data is decrypted, the public key decryption operation must be performed on the mobile device. If such data is decrypted in step 106, the decrypted data is available on the mobile device. During the decryption operation, the mobile device remains unlocked so that the symmetric key is also accessible. According to another embodiment of the present invention, the decrypted data previously encrypted using the public key is re-encrypted using the symmetric key. If necessary, the data item header is also updated accordingly. Alternatively, if a given data block of a data item is encrypted using a public key, the decrypted data block is concatenated to form a single combined data block, and then this single combined data The block is re-encrypted using the symmetric key. The original data item is then replaced in memory with the re-encrypted data item. In this way, another public key decryption operation is prevented when the data item is subsequently accessed.

또한, 그 대신에, 다수-블록 데이터 아이템용의 분리된 암호화된 데이터 블록의 유지가 더 바람직할 수 있다는 것을 알기 바란다. 예를 들어, 다수-블록 데이터 아이템이 이메일 메시지인 경우에, "인박스(Inbox)" 또는 메시지 리스트 내의 메시지 표시는 제1 데이터 블록으로부터의 데이터만을 필요로 한다. 이 경우에, 각각의 전체 메시지 대신에 각 메시지의 제1 데이터 블록만이 복호화되면, 메시지 리스트를 구성하는 것이 훨씬 더 빠르다.It should also be appreciated that, instead, it may be more desirable to maintain separate encrypted data blocks for multi-block data items. For example, if the multi-block data item is an email message, the message display in the "Inbox" or message list requires only data from the first data block. In this case, it is much faster to construct a message list if only the first data block of each message is decoded instead of each full message.

데이터 보호 시스템 및 방법의 특정 구현 및 구성은 데이터 보호가 제공되는 장치의 유형에 따라 다르다. 사용자와 데이터 보호 시스템 사이의 상호작용은 상이한 장치 유형에 대해 서로 다를 수 있다. 도 7-11은 예시적인 한가지 가능한 구현예로서, 데이터 보호 시스템 및 방법이 구현되는 이동 장치 상의 디스플레이의 스크린 샷이다. 도 7-11의 스크린 샷은 보안 특징의 구성 동안의 여러 단계에서 이동 장치 디스플레이 상에서 사용자에게 표시된 스크린을 나타낸다. 도 7-11에서, 데이터 보호는 내용 보호라 칭해진다.The specific implementation and configuration of the data protection system and method depends on the type of device on which the data protection is provided. The interaction between the user and the data protection system may be different for different device types. Figures 7-11 are screen shots of a display on a mobile device on which a data protection system and method are implemented, as one illustrative possible implementation. The screenshots in FIGS. 7-11 show the screens displayed to the user on the mobile device display at various stages during the construction of the security feature. In Figures 7-11, data protection is referred to as content protection.

도 7에서, 사용자는 이동 장치 상에서 내용 보호를 인에이블하도록 동작을 선택했다. 그러나, 도 7의 상부에 도시된 바와 같이, 암호 보호는 아직 인에이블되지 않았으며, 사용자에게는 암호 보호를 인에이블하도록 프롬프팅된다. 사용자가 커서를 아니오("No")에서 예("Yes")로 이동하여 예를 선택함으로써 암호 보호를 인에이블하고 나면, 사용자는 이 예에서(도 8) 암호 및 보안 만료 기간인 2분을 설정하고, 암호 보호가 인에이블된다. 암호 보호가 인에이블되지 않고, 데이터 보호 키를 안전하게 보호하는 이용가능한 대안적인 수단이 없으면, 내용 보호는 인에이블될 수 없다. 이들 상기 동작은 도 3의 단계(60, 62 및 64)에 도시된 것과 거의 같다.In Figure 7, the user has selected the operation to enable content protection on the mobile device. However, as shown at the top of FIG. 7, the password protection has not yet been enabled, and the user is prompted to enable password protection. Once the user has enabled password protection by moving the cursor from No ("No") to Yes ("Yes ") and selecting Yes, the user will see a password and security expiration period of 2 minutes in this example And password protection is enabled. If password protection is not enabled and there is no available alternative means of safeguarding the data protection key, content protection can not be enabled. These operations are almost the same as those shown in steps 60, 62, and 64 of FIG.

일단 암호 보호가 인에이블되었으면, 내용 보호 키가 발생된다. 도 8에서, 내용 보호 키 쌍은 공개/개인 키 쌍이다. 의사-랜덤 데이터는 키패드 또는 키보드 상의 사용자 키 압압 및 이동 장치 상의 썸휠 입력 장치의 이동으로부터 키 생성 동작 동안에 모아진다. PC 상에서, 그러한 데이터는 전형적으로 마우스 이동을 사용하여 모아진다. 그러나, 대부분의 이동 장치는 작은 디스플레이를 갖고있고 마우스가 없으므로, 키보드 키는 키 압압 또는 썸휠 입력을 단독으로 사용하여 모아질 수 있는 것보다 더욱 랜덤화된 데이터를 제공하기 위해 썸휠 입력 장치와 함께 사용된다. 도 9는 의사-랜덤 정보 수집 경과를 나타내는 사용자에게로의 피드백을 제공한 스크린을 도시한 것이다. 양호한 실시예에서, 160 비트 데이터가 수집되어 개인 키로서 사용되고, 이로부터 공개 키가 생성된다. 대칭 키는, 동일한 의사-랜덤 정보 또는 유사한 방식으로 수집된 그 이상의 의사-랜덤 정보를 사용하여, 내용 보호가 인에이블될 때 유사하게 생성된다. 키 압압 및 썸휠 이동의 횟수는 두개의 키 생성 동작동안에 동일한 의사-랜덤 정보를 사용함으로써 양호하게 감소된다. 예를 들어, 데이터 보호 시스템이 160비트 개인 키 및 128비트 대칭 키를 사용하도록 구성되는 경우, 160비트 랜덤 정보가 수집되어 개인 키로서 사용되고, 160비트 중의 128비트가 대칭 키로서 사용된다.Once password protection is enabled, a content protection key is generated. In Figure 8, the content protection key pair is a public / private key pair. The pseudo-random data is gathered during the key generation operation from the pushing of the user key on the keypad or keyboard and the movement of the thumbwheel input device on the mobile device. On a PC, such data is typically collected using mouse movement. However, since most mobile devices have small displays and no mice, the keyboard keys are used with thumb wheel input devices to provide more randomized data than can be collected using key press or thumb wheel input alone . Figure 9 shows a screen providing feedback to the user indicating pseudo-random information collection progress. In the preferred embodiment, 160 bit data is collected and used as a private key from which a public key is generated. The symmetric key is similarly generated when content protection is enabled, using the same pseudo-random information or further pseudo-random information collected in a similar manner. The number of key presses and thumbwheel movements is preferably reduced by using the same pseudo-random information during the two key generation operations. For example, if the data protection system is configured to use a 160-bit private key and a 128-bit symmetric key, 160-bit random information is collected and used as a private key, and 128 of the 160 bits are used as the symmetric key.

데이터 보호 키가 생성되어 저장되어 있으면, 데이터 보호가 인에이블되고, 보안 옵션 스크린이 도 10에 도시된 바와 같이 나타난다. 이동 장치가 다른 보안 특징을 구현하는 경우, 보안 옵션 스크린은 액세스를 제공하여, 내용 보호뿐만 아니라 이들 특징을 인에이블하거나 디스에이블하거나 구성한다. 도 10에서, 이동 장치가 휴대용 가죽 케이스 내에 놓일 때 이동 장치를 로크하는 보안 특징은 보안 옵션 스크린을 통해 액세스 가능하다.If a data protection key is generated and stored, data protection is enabled and a security options screen appears as shown in FIG. If the mobile device implements other security features, the security options screen provides access to enable, disable, or configure these features as well as content protection. In Fig. 10, the security feature that locks the mobile device when the mobile device is placed in the portable leather case is accessible via the security options screen.

그 이상의 보안 조치로서, 내용 보호를 위한 소정의 구성 요구사항은 양호하게, 내용 보호가 인에이블되는 동안에 디스에이블될 수 없다. 예를 들어, 암호 보호를 디스에이블하는 것은 개인 키 및 대칭 키의 보안을 포기하는 것이다. 내용 보호가 인에이블되는 동안에 사용자가 암호 보호를 디스에이블하려고 하면, 도 11에 도시된 경보 메시지가 표시된다. 암호 보호는 내용 보호가 디스에이블되지 않으면 디스에이블되지 않는다. 몇가지 이동 장치 유형은 또한, 사용자에 의해 어떤 특징이 인에이블되고 디스에이블될 수 있는지 더욱 제어하기 위해 구성 제어 정보를 지원한다.As a further security measure, certain configuration requirements for content protection preferably can not be disabled while content protection is enabled. For example, disabling password protection relinquishes security of the private key and the symmetric key. When the user tries to disable password protection while content protection is enabled, the alert message shown in Fig. 11 is displayed. Password protection is not disabled unless content protection is disabled. Some mobile device types also support configuration control information to further control which features can be enabled and disabled by the user.

내용 보호가 디스에이블될 때, 몇가지 동작이 가능하다. 한 실시예에서, 저장된 암호화 데이터는 암호화 형태로 유지된다. 데이터 보호 키는 복호된 다음에, 데이터 보호 시스템에 공지되거나 그 시스템에 의해 액세스가능한 선정된 암호로 재암호화된다. 저장된 암호화 데이터가 유지되지만, 데이터 보호 키의 복호화, 따라서 액세스될 때의 암호화 데이터의 복호화는 사용자 암호의 엔트리를 필요로 하지 않는다. 이러한 방식에서, 동일한 데이터 보호 키는 내용 보호가 다시 인에이블되면 사용될 수 있다. 대안적인 실시예에서, 모든 저장된 암호화 데이터는 내용 보호가 디스에이블될 때 복호화되어 메모리 내에 다시 놓인다. 그러면, 저장된 데이터로의 후속적인 액세스를 위해 요구되는 복호화 동작은 하나도 없다. 내용 보호가 다시 인에이블되면, 새로운 데이터 보호 키가 생성되거나 얻어지고, 저장된 데이터는 가능한 경우에 암호화될 수 있으며, 후속적으로 수신된 데이터는 상술된 바와 같이 암호화된다.When content protection is disabled, several operations are possible. In one embodiment, the stored encrypted data is maintained in an encrypted form. The data protection key is decrypted and then re-encrypted with a pre-determined password that is known to or accessible by the data protection system. The stored encrypted data is retained, but the decryption of the data protection key, and therefore the decryption of the encrypted data when accessed, does not require entry of the user's password. In this way, the same data protection key can be used once content protection is re-enabled. In an alternative embodiment, all stored encrypted data is decrypted and restored in memory when content protection is disabled. Then, there is no decryption operation required for subsequent access to the stored data. If content protection is enabled again, a new data protection key is generated or obtained, the stored data may be encrypted if possible, and subsequently received data is encrypted as described above.

도 12는 무선 이동 통신 장치의 블록도이다. 이동 장치(500)는 양호하게, 최소한 음성 및 데이터 통신 능력을 갖고있는 쌍방향 통신 장치이다. 이동 장치(500)는 양호하게, 인터넷 상의 다른 컴퓨터 시스템과 통신할 수 있는 능력을 갖고있다. 이동 장치(500)에 의해 제공된 기능에 따라, 데이터 메시징 장치, 쌍방향 페이저, 데이터 메시징 능력이 있는 이동 전화, 무선 인터넷 기기, 또는 데이터 통신 장치(전화 능력이 있거나 없음)로 칭해질 수 있다. 상술된 바와 같이, 그러한 장치는 일반적으로 여기에서 단순히 이동 장치로 칭해진다.12 is a block diagram of a wireless mobile communication device. Mobile device 500 is preferably a two-way communication device having at least voice and data communication capabilities. Mobile device 500 preferably has the ability to communicate with other computer systems on the Internet. Depending on the functionality provided by mobile device 500, it may be referred to as a data messaging device, an interactive pager, a mobile phone with data messaging capabilities, a wireless Internet appliance, or a data communication device (with or without telephone capability). As discussed above, such an apparatus is generally referred to herein simply as a mobile apparatus.

이동 장치(500)는 송수신기(511), 마이크로프로세서(538), 디스플레이(522), 비휘발성 메모리(524), 랜덤 액세스 메모리(RAM)(526), 보조 입/출력(I/O) 장치(528), 시리얼 포트(530), 키보드(532), 스피커(534), 마이크로폰(536), 단거리 무선 통신 서브시스템(540) 및 기타 장치 서브시스템(542)을 포함한다. 송수신기(511)는 양호하게 송신 및 수신 안테나(516, 518), 수신기(Rx)(512), 송신기(Tx)(514), 하나 이상의 국부 발진기(LOs)(513) 및 디지털 신호 처리기(DSP)(520)를 포함한다. 비휘발성 메모리(524) 내에서, 이동 장치(500)는 마이크로프로세서(538)(및/또는 DSP(520))에 의해 실행될 수 있는 복수의 소프트웨어 모듈(524A-524N): 즉, 음성 통신 모듈(524A), 데이터 통신 모듈(524B), 및 복수의 기타 기능을 실행하는 복수의 기타 동작 모듈(524N)을 포함한다.The mobile device 500 includes a transceiver 511, a microprocessor 538, a display 522, a non-volatile memory 524, a random access memory (RAM) 526, an auxiliary input / 528, a serial port 530, a keyboard 532, a speaker 534, a microphone 536, a short range wireless communication subsystem 540, and other device subsystems 542. The transceiver 511 preferably includes a transmitter and receiver antenna 516 and 518, a receiver Rx 512, a transmitter Tx 514, one or more local oscillators 513 and a digital signal processor (DSP) (520). Within non-volatile memory 524, mobile device 500 includes a plurality of software modules 524A-524N that may be executed by microprocessor 538 (and / or DSP 520): a voice communication module 524A, a data communication module 524B, and a plurality of other operational modules 524N that perform a plurality of other functions.

이동 장치(500)는 양호하게, 음성 및 데이터 통신 능력을 갖고있는 쌍방향 통신 장치이다. 그러므로, 예를 들어, 이동 장치(500)는 아나롤그 또는 디지털 셀룰러 네트워크들 중의 임의의 것과 같은 음성 네트워크를 통해 통신할 수 있고, 또한 데이터 네트워크를 통해 통신할 수 있다. 음성 및 데이터 네트워크는 도 12에서 통신 타워(519)로 표시된다. 이들 음성 데이터 네트워크는 기지국, 네트워크 제어기 등과 같은 분리된 기반구조를 사용하는 분리된 통신 네트워크일 수 있거나, 또는 단일의 무선 네트워크로 통합될 수 있다. 그러므로, 네트워크(519)에 대한 참조는 단일의 음성 및 데이터 네트워크와 분리된 네트워크들 둘다를 포함하는 것으로 해석되어야 한다.Mobile device 500 is preferably a two-way communication device having voice and data communication capabilities. Thus, for example, the mobile device 500 can communicate over a voice network, such as any of the analogue or digital cellular networks, and can also communicate over a data network. The voice and data network is represented by communication tower 519 in FIG. These voice data networks may be separate communication networks using separate infrastructure such as base stations, network controllers, or the like, or may be integrated into a single wireless network. Therefore, references to the network 519 should be interpreted to include both a single voice and data network and separate networks.

통신 서브시스템(511)은 네트워크(519)와 통신하기 위해 사용된다. DSP(520)는 송신기(514) 및 수신기(512)로/로부터 통신 신호를 송/수신하기 위해 사용되고, 또한 송신기(514) 및 수신기(512)와 제어 정보를 교환한다. 음성 및 데이터 통신이 단일 주파수, 또는 근접한 간격의 주파수 세트에서 발생하면, 단일 LO(513)는 송신기(514) 및 수신기(512)와 함께 사용될 수 있다. 대안적으로, 상이한 주파수들이 음성 통신 대 데이터 통신을 위해 사용되거나, 이동 장치(500)가 하나보다 많은 네트워크(519) 상의 통신을 위해 인에이블되면, 복수의 LO(513)는 네트워크(519) 내에서 사용된 주파수에 대응하는 주파수를 생성하기 위해 사용될 수 있다. 2개의 안테나(516, 518)가 도 12에 도시되었지만, 이동 장치(500)는 단일 안테나 구조로 사용될 수 있다. 음성 및 데이터 정보를 포함하는 정보는 DSP(520)와 마이크로프로세서(538) 사이의 링크를 통해 통신 모듈(511)로/로부터 통신된다.The communication subsystem 511 is used to communicate with the network 519. The DSP 520 is used to send and receive communication signals to and from the transmitter 514 and the receiver 512 and also exchanges control information with the transmitter 514 and the receiver 512. A single LO 513 may be used with transmitter 514 and receiver 512 if voice and data communications occur at a single frequency, or a set of frequencies at closely spaced intervals. Alternatively, if different frequencies are used for voice communication to data communication, or if the mobile device 500 is enabled for communication on more than one network 519, then a plurality of LOs 513 may be communicated within the network 519 Lt; RTI ID = 0.0 > frequency < / RTI > Although two antennas 516 and 518 are shown in FIG. 12, the mobile device 500 can be used with a single antenna structure. Information, including voice and data information, is communicated to / from the communication module 511 via a link between the DSP 520 and the microprocessor 538.

주파수 대역, 컴포넌트 선택, 전력 레벨 등과 같은 통신 서브시스템(511)의 상세한 설계는 이동 장치(500)가 동작하기로 되어 있는 통신 네트워크(519)에 의존한다. 예를 들어, 북미 시장에서 동작될 예정인 이동 장치(500)는 Mobitex 또는 DataTAC 이동 데이터 통신 네트워크로 동작하도록 설계되고, 또한 AMPS, TDMA, CDMA, PCS 등과 같은 여러가지 음성 통신 네트워크들 중의 임의의 네트워크로 동작하도록 설계된 통신 서브시스템(500)을 포함할 수 있는 반면에, 유럽에서 사용하고자 하는 이동 장치(500)는 GPRS 데이터 통신 네트워크 및 GSM 음성 통신 네트워크로 동작하도록 구성될 수 있다. 분리형 및 통합형인 기타 유형의 데이터 및 음성 네트워크가 또한 이동 장치(500)와 사용될 수 있다.The detailed design of the communications subsystem 511, such as frequency band, component selection, power level, etc., depends on the communications network 519 on which the mobile device 500 is intended to operate. For example, the mobile device 500, which is intended to be operated in the North American market, is designed to operate as a Mobitex or DataTAC mobile data communication network and also operates on any of several voice communication networks such as AMPS, TDMA, CDMA, PCS, Mobile device 500 intended for use in Europe may be configured to operate with a GPRS data communication network and a GSM voice communication network. Other types of data and voice networks, which are separate and integrated, may also be used with the mobile device 500.

이동 장치(500)에 대한 통신 네트워크 액세스 요구사항은 또한 네트워크(519)의 유형에 따라 다르다. 예를 들어, Mobitex 및 DataTAC 데이터 네트워크에서, 이동 장치는 각 장치와 관련된 유일한 식별 번호를 사용하여 네트워크 상에 등록된다. 그러나, GPRS 데이터 네트워크에서, 네트워크 액세스는 이동 장치(500)의 가입자 또는 사용자와 관련된다. GPRS 장치는 전형적으로 이동 장치(500)를 GPRS 네트워크 상에서 동작시키기 위해 요구되는 가입자 식별 모듈("SIM")을 필요로 한다. 로컬 또는 비네트워크 통신 기능(만약 있다면)은 SIM없이 동작될 수 있지만, 이동 장치(500)는 '911' 비상 호출과 같은 소정의 법적으로 요구된 동작 이외의, 네트워크(519)를 통한 통신을 수반하는 기능을 실행할 수 없다.The communication network access requirements for mobile device 500 also depend on the type of network 519. [ For example, in the Mobitex and DataTAC data networks, the mobile device is registered on the network using a unique identification number associated with each device. However, in a GPRS data network, the network access is associated with a subscriber or user of the mobile device 500. GPRS devices typically require a subscriber identity module ("SIM") that is required to operate the mobile device 500 over a GPRS network. Although the local or non-network communication functions (if any) may be operated without a SIM, the mobile device 500 may also be capable of communicating via the network 519 other than some legally required operations, such as the '911' Can not be performed.

소정의 요구된 네트워크 등록 또는 활성화 절차가 완료된 후, 이동 장치(500)는 네트워크(519)를 통해 양호하게 음성 및 데이터 신호 둘다를 포함하는 통신 신호를 송수신할 수 있다. 통신 네트워크(519)로부터 안테나에 의해 수신된 신호는 수신기(512)로 보내지고, 수신기(512)는 신호 증폭, 주파수 다운 변환, 필터링, 채널 선택 등 및 아날로그-디지털 변환을 제공한다. 수신된 신호의 아날로그-디지털 변환은 디지털 복조 및 디코딩과 같은 더욱 복잡한 통신 기능이 DSP(520)를 사용하여 실행될 수 있게 한다. 이와 유사한 방식으로, 네트워크(519)로 송신될 신호는 예를 들어 DSP(520)에 의한 변조 및 인코딩을 포함하여 프로세스된 다음에, 디지털-아날로그 변환, 주파수 업 변환, 필터링, 증폭, 및 안테나(518)를 통한 통신 네트워크(519)로의 전송을 위해 송신기(514)에 제공된다. 단일 송신기(511)가 음성 및 데이터 통신 둘다를 위해 도시되었지만, 대안적인 실시예에서, 이동 장치(500)는 음성 신호를 송수신하는 제1 송수신기, 및 데이터 신호를 송수신하는 제2 송수신기, 또는 제1 주파수 대역 내에서 동작하도록 구성된 제1 송수신기, 및 제2 주파수 대역 내에서 동작하도록 구성된 제2 송수신기와 같은 복수의 별개의 송수신기를 포함할 수 있다.After a predetermined required network registration or activation procedure is completed, the mobile device 500 can send and receive communication signals, including both voice and data signals, over the network 519 preferably. The signal received by the antenna from communication network 519 is sent to receiver 512 which provides signal amplification, frequency down conversion, filtering, channel selection, and analog-to-digital conversion. The analog-to-digital conversion of the received signal allows more complex communication functions such as digital demodulation and decoding to be performed using DSP 520. [ In a similar manner, the signal to be transmitted to the network 519 may be processed, including, for example, modulation and encoding by the DSP 520, and then processed in a digital to analog conversion, frequency up conversion, filtering, 518 for transmission to the communication network 519. The transmitter 514 may be any of a variety of communication networks. Although a single transmitter 511 is shown for both voice and data communications, in an alternate embodiment, the mobile device 500 includes a first transceiver for transmitting and receiving voice signals and a second transceiver for transmitting and receiving data signals, A first transceiver configured to operate within a frequency band, and a second transceiver configured to operate within a second frequency band.

통신 신호를 프로세스하는 것 이외에, DSP(520)는 또한 수신기 및 송신기 제어를 제공한다. 예를 들어, 수신기(512) 및 송신기(514) 내의 통신 신호에 적용된 이득 레벨은 DSP(520) 내에 구현된 자동 이득 제어 알고리즘을 통해 적응가능하게 제어될 수 있다. 그외 다른 송수신기 제어 알고리즘은 또한 송수신기(511)의 더욱 정교한 제어를 제공하도록 DSP(520) 내에 구현될 수 있다.In addition to processing the communication signals, the DSP 520 also provides receiver and transmitter control. For example, the gain levels applied to the communication signals within receiver 512 and transmitter 514 may be adaptively controlled via an automatic gain control algorithm implemented within DSP 520. [ Other transceiver control algorithms may also be implemented within the DSP 520 to provide more sophisticated control of the transceiver 511.

마이크로프로세서(538)는 양호하게 이동 장치(500)의 전체 동작을 관리하고 제어한다. 많은 유형의 마이크로프로세서 또는 마이크로제어기가 여기에서 사용될 수 있고, 또는 대안적으로, 단일 DSP(520)가 마이크로프로세서(538)의 기능을 실행하기 위해 사용될 수 있다. 최소한 데이터 및 음성 통신을 포함하는 로우-레벨 통신 기능은 송수신기(511) 내의 DSP(520)를 통해 실행된다. 음성 통신 애플리케이션(524A) 및 데이터 통신 애플리케이션(524B)을 포함하는 하이-레벨 통신 애플리케이션은 마이크로프로세서(538)에 의해 실행하기 위해 비휘발성 메모리(524) 내에 저장된다. 예를 들어, 음성 통신 모듈(524A)은 이동 장치(500)와 복수의 기타 음성 장치 사이에서 네트워크(519)를 통해 음성 호를 송수신하도록 동작할 수 있는 하이-레벨 사용자 인터페이스를 제공한다. 이와 유사하게, 데이터 통신 모듈(524B)은 이동 장치(500)와 복수의 기타 데이터 장치 사이에서 네트워크(519)를 통해 이메일 메시지, 파일, 조직자 정보, 짧은 텍스트 메시지 등과 같은 데이터를 송수신하는 동작을 할 수 있는 하이-레벨 사용자 인터페이스를 제공한다.The microprocessor 538 preferably manages and controls the overall operation of the mobile device 500. Many types of microprocessors or microcontrollers may be used herein, or alternatively, a single DSP 520 may be used to implement the functions of the microprocessor 538. Low-level communication functions, including at least data and voice communications, are performed via the DSP 520 in the transceiver 511. A high-level communication application, including voice communication application 524A and data communication application 524B, is stored in non-volatile memory 524 for execution by microprocessor 538. [ For example, the voice communication module 524A provides a high-level user interface that can operate to send and receive voice calls over the network 519 between the mobile device 500 and a plurality of other voice devices. Similarly, the data communication module 524B is operable to send and receive data, such as an email message, a file, organizer information, a short text message, etc., over the network 519 between the mobile device 500 and a plurality of other data devices It provides a high-level user interface.

마이크로프로세서(538)는 또한 디스플레이(522), RAM(526), 보조 I/O 장치(528), 시리얼 포트(530), 키보드(532), 스피커(534), 마이크로폰(536), 단거리 통신 서브시스템(540) 및 임의의 기타 장치 서브시스템(542)과 같은 그외 다른 장치 서브시스템과 상호작용한다. 예를 들어, 모듈(524A-N)은 마이크로프로세서(538)에 의해 실행되고, 이동 장치의 사용자와 이동 장치 사이에 하이-레벨 인터페이스를 제공할 수 있다. 이 인터페이스는 전형적으로, 디스플레이(522)를 통해 제공된 그래픽 컴포넌트, 및 보조 I/O 장치(528), 키보드(532), 스피커(534) 또는 마이크로폰(536)을 통해 제공된 입/출력 컴포넌트를 포함한다.The microprocessor 538 also includes a display 522, a RAM 526, an auxiliary I / O device 528, a serial port 530, a keyboard 532, a speaker 534, a microphone 536, System 540, and any other device subsystem 542, as will be described in greater detail below. For example, modules 524A-N may be executed by microprocessor 538 to provide a high-level interface between a user of the mobile device and the mobile device. The interface typically includes an input / output component provided through a display component 522 and a graphical component provided via the auxiliary I / O device 528, the keyboard 532, the speaker 534 or the microphone 536 .

도 12의 도시된 서브시스템들 중의 일부는 통신 관련 기능을 수행하는 반면에, 그외 다른 서브시스템은 "상주" 또는 온-디바이스 기능을 제공할 수 있다. 그중에서도 특히, 키보드(532) 및 디스플레이(522)와 같은 일부 서브시스템은 데이터 통신 네트워크를 통해 전송하기 위한 텍스트 메시지의 입력과 같은 통신 관련 기능, 및 계산기 또는 태스크 리스트 또는 기타 PDA형 기능과 같은 장치-상주 기능을 위해 사용될 수 있다.Some of the illustrated subsystems of FIG. 12 perform communication-related functions, while other subsystems may provide "resident" or on-device functionality. Particularly, some subsystems, such as the keyboard 532 and the display 522, may be used for communication-related functions, such as input of text messages for transmission over a data communication network, and for devices such as a calculator or task list or other PDA- Can be used for resident function.

마이크로프로세서(538)에 의해 사용된 운영 체계 소프트웨어는 양호하게, 비휘발성 메모리(524)와 같은 영구적인 저장부 내에 저장된다. 운영 체계 및 통신 모듈(524A-N) 이외에, 비휘발성 메모리(524)는 데이터를 저장하기 위한 파일 시스템을 포함할 수 있다. 비휘발성 메모리(524)는 또한 상술된 보호된 데이터뿐만 아니라, 최소한 키 저장부를 포함한다. 운영 체계, 특정 장치 애플리케이션 또는 모듈, 또는 그 일부는 전형적으로, 더 빠른 동작을 위해 RAM(526)과 같은 휘발성 저장부 내로 일시적으로 로드된다. 게다가, 수신된 통신 신호는 또한 비휘발성 메모리(524) 내에 위치한 파일 시스템 내로 영구적으로 기입하기 전에, RAM(526)에 일시적으로 저장될 수 있다. 비휘발성 메모리(524)는, 예를 들어 플래시 메모리, 비휘발성 RAM, 또는 배터리 백업 RAM으로 구현될 수 있다.The operating system software used by the microprocessor 538 is preferably stored in a persistent store, such as non-volatile memory 524. In addition to operating system and communication modules 524A-N, non-volatile memory 524 may include a file system for storing data. The non-volatile memory 524 also includes at least a key store as well as the protected data described above. The operating system, specific device application or module, or portion thereof, is typically temporarily loaded into a volatile store such as RAM 526 for faster operation. In addition, the received communication signals may also be temporarily stored in the RAM 526, before being permanently written into the file system located in the non-volatile memory 524. Non-volatile memory 524 may be implemented as, for example, flash memory, non-volatile RAM, or battery backup RAM.

이동 장치(500) 상으로 로드될 수 있는 예시적인 애플리케이션 모듈(524N)은 캘린더 이벤트, 예약 및 태스크 아이템과 같은 PDA 기능을 제공하는 PIM 애플리케이션이다. 이 모듈(524N)은 또한 전화 통화, 음성 메일 등을 관리하는 음성 통신 모듈(524A)과 상호작용할 수 있고, 또한 이메일 통신 및 기타 데이터 전송을 관리하는 데이터 통신 모듈(524B)과 상호작용할 수 있다. 대안적으로, 음성 통신 모듈(524A) 및 데이터 통신 모듈(524B)의 모든 기능은 PIM 모듈 내에 통합될 수 있다.An exemplary application module 524N that may be loaded onto the mobile device 500 is a PIM application that provides PDA functionality such as calendar events, reservations, and task items. The module 524N may also interact with a voice communication module 524A that manages telephone calls, voicemail, etc., and may also interact with a data communication module 524B that manages email communications and other data transmissions. Alternatively, all functions of the voice communication module 524A and the data communication module 524B may be integrated within the PIM module.

비휘발성 메모리(524)는 양호하게 장치 상의 PIM 데이터 아이템의 저장을 용이하게 하기 위해 파일 시스템을 제공한다. PIM 애플리케이션은 양호하게, 혼자, 또는 음성 및 데이터 통신 모듈(524A, 524B)과 함께, 무선 네트워크(519)를 통해 데이터 아이템을 송수신할 수 있는 능력을 포함한다. PIM 데이터 아이템은 양호하게, 무선 네트워크(519)를 통해, 호스트 컴퓨터와 관련되거나 저장된 대응하는 데이터 아이템 세트와, 끊어짐없이 통합되고 동기화되며 갱신됨으로써, 특정 사용자와 관련된 데이터 아이템용의 미러형 시스템을 만든다.Nonvolatile memory 524 preferably provides a file system to facilitate storage of PIM data items on the device. The PIM application preferably includes the ability to send and receive data items over the wireless network 519, either alone, or with voice and data communication modules 524A, 524B. The PIM data items are seamlessly integrated, synchronized and updated seamlessly with the corresponding set of data items associated with or stored on the host computer via the wireless network 519 to create a mirrored system for data items associated with a particular user .

이동 장치(500)는 이동 장치(500)의 시리얼 포트(530)를 호스트 시스템의 시리얼 포트에 연결하는 인터페이스 받침대 내에 이동 장치(500)를 둠으로써 수동으로 호스트 시스템과 동기화된다. 시리얼 포트(530)는 또한 이동 장치(500) 상에 설치하기 위한 기타 애플리케이션 모듈(524N)을 다운로드하기 위해 사용될 수 있다. 이 유선 다운로드 경로는 안전한 통신에서의 사용을 위해 이동 장치(500) 상으로 암호화 키를 로드하는데 더욱 사용될 수 있는데, 이것은 무선 네트워크(519)를 통해 암호화 정보를 교환하는 것보다 더욱 안전한 방법이다. 상술된 온-디바이스 데이터 보호 키 생성의 대안으로서, 데이터 보호 키는 이러한 방식으로, 다른 시스템에 의해 생성되어, 이동 장치(500)에 전달될 수 있다.The mobile device 500 is manually synchronized with the host system by placing the mobile device 500 in an interface pedestal that connects the serial port 530 of the mobile device 500 to the serial port of the host system. The serial port 530 may also be used to download other application modules 524N for installation on the mobile device 500. [ This wired download path can be further used to load the encryption key onto the mobile device 500 for use in secure communications, which is a safer method than exchanging encryption information over the wireless network 519. [ As an alternative to the on-device data protection key generation described above, the data protection key may be generated by another system and communicated to the mobile device 500 in this manner.

소프트웨어 애플리케이션 모듈(524N)은 네트워크(519)를 통하거나, 보조 I/O 서브시스템(528)을 통하거나, 단거리 통신 서브시스템(540)을 통하거나, 또는 임의의 기타 적합한 서브시스템(542)을 통해 이동 장치(500) 상으로 로드되어, 비휘발성 메모리(524) 또는 RAM(526) 내에 사용자에 의해 설치될 수 있다. 애플리케이션 설치에 있어서의 그러한 융통성은 이동 장치(500)의 기능을 증가시키고, 향상된 온-디바이스 기능, 통신 관련 기능, 또는 이 둘다를 제공할 수 있다. 예를 들어, 안전한 통신 애플리케이션은 전자 상거래 기능 및 기타 그러한 금융 거래가 이동 장치(500)를 사용하여 실행될 수 있게 한다.The software application module 524N may be coupled to the network 514 via the network 519, the auxiliary I / O subsystem 528, the short-range communication subsystem 540, or any other suitable subsystem 542 Loaded on the mobile device 500 and may be installed by the user in the non-volatile memory 524 or the RAM 526. [ Such flexibility in application installation can increase the functionality of the mobile device 500 and provide improved on-device functionality, communication-related functionality, or both. For example, a secure communication application enables e-commerce functions and other such financial transactions to be performed using the mobile device 500.

이동 장치(500)가 데이터 통신 모드로 동작하고 있을 때, 텍스트 메시지 또는 웹 페이지 다운로드와 같은 수신된 신호는 송수신기(511)에 의해 프로세스되고, 마이크로프로세서(538)에 제공되며, 이 마이크로프로세서(538)는 양호하게, 디스플레이(522), 또는 보조 I/O 서브시스템(528)으로 출력하기 위해 수신된 신호를 더욱 프로세싱한다. 데이터 보호가 인에이블될 때, 수신된 데이터는 이동 장치(500) 상에 저장되기 전에 상술된 바와 같이 암호화된다. 이동 장치(500)의 사용자는 또한, 양호하게 QWERTY 배열 방식으로 배치된 완전 문자숫자식 키보드인 키보드(532)를 사용하여 이메일 메시지와 같은 데이터 아이템을 구성할 수 있는데, 공지된 DVORAK 배열 방식과 같은 다른 배열 방식의 완전 문자숫자식 키보드가 또한 사용될 수 있다. 이동 장치(500)로의 사용자 입력은 썸휠 입력 장치, 터치패드, 다양한 스위치, 로커(rocker) 입력 스위치 등을 포함할 수 있는 복수의 보조 I/O 장치(528)로 더욱 향상된다. 사용자에 의해 입력된 구성된 데이터 아이템은 그 다음 송수신기(511)를 경유하여 통신 네트워크(519)를 통해 전송되고, 또한 이동 장치(500) 상에 암호화 형태로 저장될 수 있다.When the mobile device 500 is operating in a data communication mode, a received signal, such as a text message or web page download, is processed by the transceiver 511 and provided to the microprocessor 538, Preferably further processes the received signal for output to the display 522, or to the auxiliary I / O subsystem 528. When data protection is enabled, the received data is encrypted as described above before being stored on the mobile device 500. The user of mobile device 500 may also configure data items such as email messages using keyboard 532, which is a fully alphanumeric keyboard, preferably arranged in a QWERTY arrangement, such as the well-known DVORAK arrangement scheme Other alphanumeric keyboards of other arrangements may also be used. User input to the mobile device 500 is further enhanced by a plurality of auxiliary I / O devices 528, which may include thumb wheel input devices, touch pads, various switches, rocker input switches, and the like. The configured data items entered by the user may then be transmitted via the communication network 519 via the transceiver 511 and stored in encrypted form on the mobile device 500 as well.

이동 장치(500)가 음성 통신 모드로 동작하고 있을 때, 이동 장치(500)의 전체 동작은 수신된 신호가 스피커(534)로 출력되고, 전송하기 위한 음성 신호가 마이크로폰(536)으로 생성된다는 점을 제외하고는 데이터 모드와 거의 유사하다. 음성 메시지 레코딩 서브시스템과 같은 대안적인 음성 또는 오디오 I/O 장치는 또한 이동 장치(500) 상에서 구현될 수 있다. 디스플레이(522)는 또한 호출자의 신원 표시, 음성 호의 지속시간, 또는 기타 음성 호 관련 정보를 제공하기 위해 사용될 수 있다. 예를 들어, 마이크로프로세서(538)는 음성 통신 모듈(524A) 및 운영 체계 소프트웨어와 함께, 착신 음성 호의 호출자 식별 정보를 검출하여, 디스플레이(522) 상에 표시할 수 있다. 상술된 데이터 보호 기술은 반드시 음성 통신에 적용될 필요는 없지만, 음성 통신 신호는 전형적으로 저장되지 않기 때문에, 접촉 정보와 같은 소정의 음성 통신 관련 정보가 보호될 수 있다.When the mobile device 500 is operating in a voice communication mode, the overall operation of the mobile device 500 is that the received signal is output to the speaker 534 and a voice signal for transmission is generated in the microphone 536 Is almost similar to the data mode. An alternative voice or audio I / O device, such as a voice message recording subsystem, may also be implemented on the mobile device 500. Display 522 may also be used to provide caller identification, duration of a voice call, or other voice call related information. For example, the microprocessor 538, along with the voice communication module 524A and the operating system software, may detect and display the caller identification information of the incoming voice call on the display 522. [ Although the above-described data protection technology does not necessarily have to be applied to voice communication, since the voice communication signal is not typically stored, certain voice communication related information such as contact information can be protected.

단거리 통신 서브시스템(540)이 또한 이동 장치(500) 내에 포함될 수 있다. 예를 들어, 서브시스템(540)은 유사하게 인에이블된 시스템 및 장치와의 통신을 제공하기 위해 적외선 장치 및 관련된 회로 및 컴포넌트, 또는 블르투스 또는 802.11 단거리 무선 통신 모듈을 포함할 수 있다.The short-range communications subsystem 540 may also be included within the mobile device 500. For example, the subsystem 540 may include an infrared device and associated circuitry and components, or a Bluetooth or 802.11 short-range wireless communication module, to provide communications with similarly enabled systems and devices.

상기 설명은 단지 예로서 양호한 실시예에 관련된 것이라는 것을 알 수 있을 것이다. 상술된 시스템 방법에 관한 다양한 변형은 본 분야에 식견이 있는 자들에게 명백할 것이고, 그러한 명백한 변형은 명시적으로 설명되었든 되지 않았든, 설명되고 청구된 바와 같은 본 발명의 범위 내에 속한다.It will be appreciated that the above description is by way of example only and relates to the preferred embodiment. Various modifications to the system methods described above will be apparent to those skilled in the art, and such obvious changes, whether expressly stated or not, are within the scope of the invention as described and claimed.

예를 들어, 상술된 시스템 및 방법이 구현될 수 있는 장치는 도면에 도시된 것보다 더 적거나 많거나 상이한 컴포넌트들을 포함할 수 있다. 데이터 보호는 이동 장치의 특성상 물리적으로 안전하게 보호하기 어려운 이동 장치에 아마도 가장 적절하겠지만, 여기에서 설명된 기술은 전형적으로 고정된 다른 시스템뿐만 아니라 PC에도 적용가능하다.For example, an apparatus in which the systems and methods described above may be implemented may include fewer, more, or different components than those shown in the figures. While data protection is probably the most appropriate for mobile devices that are physically difficult to secure due to the nature of the mobile device, the techniques described herein are typically applicable to PCs as well as other systems that are fixed.

본 발명은 또한 결코 임의의 특정 통신 특징에 의존하지 않는다. 여기에서 설명된 것과 같은 데이터 보호는 쌍방향 또는 단방향(수신전용) 통신 장치에서 구현될 수 있다.The present invention also never relies on any particular communication feature. Data protection as described herein may be implemented in a bidirectional or unidirectional (receive-only) communications device.

또한, 데이터 보호는 주로 데이터 보호가 인에이블된 후에 수신된 데이터와 관련하여 상술되었지만, 데이터 보호가 인에이블되기 전에 이동 장치 상에 이미 저장되어 있는 현존하는 데이터도 또한, 저장된 데이터 포맷이 허용하는 경우에 데이터 보호가 인에이블될 때 양호하게 암호화된다.Also, although data protection has been described above with respect to data received primarily after data protection has been enabled, existing data that is already stored on the mobile device before data protection is enabled may also be used When data protection is enabled.

Claims (42)

제1 조작 상태 및 제2 조작 상태를 갖는 통신 장치 상의 데이터를 보호하는 시스템에 있어서,A system for protecting data on a communication device having a first operating state and a second operating state, 복수의 암호 키들을 저장하도록 구성된 키 저장부;A key storage unit configured to store a plurality of cipher keys; 데이터를 저장하도록 구성된 메모리; 및A memory configured to store data; And 데이터를 수신하고, 통신 장치가 제1 조작 상태에 있는지 제2 조작 상태에 있는 지의 여부를 판정하며, 통신 장치가 제1 조작 상태에 있는 경우에 복수의 암호 키들 중 제1 암호 키를 사용하거나 또는 통신 장치가 제2 조작 상태에 있는 경우에 복수의 암호 키들 중 제2 암호 키를 사용하여 수신된 데이터를 암호화하고, 암호화된 수신 데이터를 메모리 내에 저장하도록 구성된 데이터 보호 시스템을 포함하는 시스템.Data is received, the communication device is in a first operating state or in a second operating state, and the first cryptographic key of the plurality of cryptographic keys is used when the communication device is in the first operating state, or And a data protection system configured to encrypt the received data using the second one of the plurality of cipher keys when the communication device is in the second operation state, and to store the encrypted received data in the memory. 제1항에 있어서, 상기 제2 암호 키는 통신 장치가 제1 조작 상태에 있을 때 액세스할 수 없는 것인 시스템.2. The system of claim 1, wherein the second cryptographic key is inaccessible when the communication device is in a first operational state. 제2항에 있어서, 상기 제1 조작 상태는 로크된(locked) 상태이고, 상기 제2 조작 상태는 언로크된(unlocked) 상태인 것인 시스템.3. The system of claim 2, wherein the first operating state is a locked state and the second operating state is an unlocked state. 제2항에 있어서, 상기 제1 암호 키는 공개 키이고, 상기 제2 암호 키는 대칭 키인 것인 시스템.3. The system of claim 2, wherein the first cryptographic key is a public key and the second cryptographic key is a symmetric key. 제1항에 있어서, 상기 통신 장치는 무선 송수신기를 포함하고, 상기 데이터 보호 시스템은 무선 송수신기로부터 데이터를 수신하도록 구성되는 것인 시스템.2. The system of claim 1, wherein the communication device comprises a wireless transceiver and the data protection system is configured to receive data from a wireless transceiver. 제5항에 있어서, 상기 수신된 데이터는 무선 통신 네트워크를 통해 원격 컴퓨터 네트워크로부터 수신된 기밀 데이터를 포함하는 것인 시스템.6. The system of claim 5, wherein the received data comprises confidential data received from a remote computer network over a wireless communication network. 제5항에 있어서, 상기 통신 장치는 커넥터를 더 포함하고, 상기 데이터 보호 시스템은 또한 커넥터로부터 데이터를 수신하도록 구성되는 것인 시스템.6. The system of claim 5, wherein the communication device further comprises a connector, and wherein the data protection system is also configured to receive data from the connector. 제7항에 있어서, 상기 커넥터는 시리얼 포트(serial port), 유니버셜 시리얼 버스(Universal Serial Bus: USB) 포트, 안전 디지털(Secure Digital: SD) 슬롯, 및 단거리 무선 통신 모듈로 구성된 그룹에서 선택되는 것인 시스템.The system of claim 7, wherein the connector is selected from the group consisting of a serial port, a universal serial bus (USB) port, a secure digital (SD) slot, and a short- In system. 제4항에 있어서, 상기 데이터 보호 시스템은 또한 데이터에 대한 요청을 수신하고, 통신 장치가 제2 조작 상태에 있는 지의 여부를 판정하며, 통신 장치가 제2 조작 상태에 있는 경우에 요청된 데이터를 복호화하도록 구성되는 것인 시스템.5. The system of claim 4, wherein the data protection system also receives a request for data, determines whether the communication device is in a second operating state, and transmits the requested data if the communication device is in a second operating state And decrypting the encrypted data. 제9항에 있어서, 상기 요청은 데이터 보호 시스템에 의해 복호화될 암호화된 데이터를 포함하는 것인 시스템.10. The system of claim 9, wherein the request comprises encrypted data to be decrypted by a data protection system. 제9항에 있어서, 상기 요청은 요청된 데이터를 식별하고, 상기 데이터 보호 시스템은 요청된 데이터를 검색하고 복호화하는 것인 시스템.10. The system of claim 9, wherein the request identifies the requested data and the data protection system retrieves and decrypts the requested data. 제10항에 있어서, 상기 공개 키는 개인 키와 관련되고, 상기 데이터 보호 시스템은 또한, 암호화된 데이터가 공개 키를 사용하여 암호화되었는지 대칭 키를 사용하여 암호화되었는지 판정하여, 암호화된 데이터가 공개 키를 사용하여 암호화된 경우에 암호화된 데이터를 개인 키를 사용하여 복호화하고, 암호화된 데이터가 대칭 키를 사용하여 암호화된 경우에 암호화된 데이터를 대칭 키를 사용하여 복호화하도록 구성되는 것인 시스템.11. The method of claim 10 wherein the public key is associated with a private key and the data protection system further determines whether the encrypted data is encrypted using a public key or a symmetric key, And decrypt the encrypted data using a symmetric key if the encrypted data is encrypted using the symmetric key. ≪ Desc / Clms Page number 12 > 제12항에 있어서, 상기 데이터 보호 시스템은 또한 통신 장치 상에 복호화된 데이터를 저장하고, 통신 장치가 제1 조작 상태에 들어갈 때 복호화된 데이터를 삭제하도록 구성되는 것인 시스템.13. The system of claim 12, wherein the data protection system is further configured to store decrypted data on a communications device and to delete decrypted data when the communications device enters a first operational state. 제13항에 있어서, 상기 대칭 키 및 상기 개인 키는 통신 장치 상에 암호화된 형태로 저장되고, 상기 데이터 보호 시스템은 또한, 요청된 데이터가 공개 키를 사용하여 암호화된 경우에 개인 키를 복호화하여 복호화된 개인 키를 통신 장치 상에 저장하고, 요청된 데이터가 대칭 키를 사용하여 암호화된 경우에 대칭 키를 복호화하여 복호화된 대칭 키를 통신 장치 상에 저장하며, 통신 장치가 제1 조작 상태에 들어갈 때 복호화된 개인 키 및 복호화된 대칭 키를 삭제하도록 구성되는 것인 시스템.14. The method of claim 13, wherein the symmetric key and the private key are stored in an encrypted form on a communication device, and wherein the data protection system further decrypts the private key when the requested data is encrypted using the public key Storing the decrypted private key on the communication device, decrypting the symmetric key when the requested data is encrypted using the symmetric key, and storing the decrypted symmetric key on the communication device, And delete the decrypted private key and the decrypted symmetric key when entering. 제1항에 있어서, 상기 데이터 보호 시스템은 또한, 수신된 데이터가 메모리 내에 저장된 현존하는 데이터에 관련되는 지의 여부를 판정하고, 수신된 데이터가 현존하는 데이터에 관련되는 경우에 암호화된 수신 데이터를 메모리 내의 현존하는 관련 데이터에 부가하도록 구성되는 것인 시스템.2. The system of claim 1, wherein the data protection system further comprises: a determination unit operable to determine whether the received data relates to existing data stored in the memory, To the existing associated data in the system. 제15항에 있어서, 상기 암호화된 수신 데이터 및 상기 현존하는 데이터는 한 데이터 아이템의 데이터 블록들을 포함하고, 데이터 아이템은 각 데이터 블록이 제1 암호 키를 사용하여 암호화되었는지 제2 암호 키를 사용하여 암호화되었는지를 나타내는 식별자를 더 포함하는 것인 시스템.16. The method of claim 15, wherein the encrypted received data and the existing data comprise data blocks of one data item, wherein the data items are encrypted using a second encryption key to determine whether each data block is encrypted using the first encryption key And further comprising an identifier indicating whether the data has been encrypted. 제1항에 있어서, 상기 통신 장치는 데이터 통신 장치, 데이터 및 음성 통신 기능을 갖는 이동 전화, 음성, 데이터 및 그외 다른 형태의 통신을 할 수 있는 다중-모드 장치, 메시징 장치, 무선 통신이 가능한 퍼스널 디지털 어시스턴트(PDA), 무선 모뎀, 단방향 통신 장치 및 쌍방향 통신 장치로 구성된 그룹에서 선택된 무선 이동 통신 장치를 포함하는 것인 시스템.The method of claim 1, wherein the communication device is a data communication device, a mobile phone having data and voice communication capabilities, a multi-mode device capable of voice, data and other forms of communication, a messaging device, A wireless mobile communication device selected from the group consisting of a digital assistant (PDA), a wireless modem, a one-way communication device and a two-way communication device. 통신 장치 상의 데이터를 보호하는 방법에 있어서,A method for protecting data on a communication device, 제1의 보호된 암호 키 및 제2 암호 키를 통신 장치 상에 저장하는 단계;Storing a first protected cryptographic key and a second cryptographic key on a communication device; 통신 장치에서 데이터를 수신하는 단계;Receiving data from a communication device; 제1의 보호된 암호 키가 액세스 가능한 지의 여부를 판정하는 단계;Determining whether a first protected cryptographic key is accessible; 제1의 보호된 암호 키가 액세스 가능한 경우에 제1의 보호된 암호 키를 사용하여 수신된 데이터를 암호화하는 단계;Encrypting the received data using a first protected cryptographic key if the first protected cryptographic key is accessible; 제1의 보호된 암호 키가 액세스 불가능한 경우에 제2 암호 키를 사용하여 수신된 데이터를 암호화하는 단계; 및Encrypting the received data using a second cryptographic key if the first protected cryptographic key is inaccessible; And 암호화된 수신 데이터를 통신 장치 상의 메모리 내에 저장하는 단계를 포함하는 방법.And storing the encrypted received data in a memory on the communication device. 제18항에 있어서, 상기 통신 장치는 제1의 보호된 암호 키가 액세스 불가능한 로크된 조작 상태, 및 제1의 보호된 암호 키가 액세스 가능한 언로크된 조작 상태를 갖고 있으며, 상기 판정 단계는 통신 장치가 로크된 조작 상태에 있는지 언로크된 조작 상태에 있는지 판정하는 단계를 포함하는 것인 방법.19. The method of claim 18, wherein the communication device has a locked operating state in which the first protected cryptographic key is inaccessible and an unlocked operating state in which the first protected cryptographic key is accessible, Determining whether the device is in a locked operating state or in an unlocked operating state. 제19항에 있어서, 상기 제1의 보호된 암호 키는 대칭 키이고, 상기 제2 암호 키는 개인 키와 관련된 공개 키이며, 상기 방법은 통신 장치 상에 개인 키를 저장하는 단계를 더 포함하는 방법.20. The method of claim 19, wherein the first protected cryptographic key is a symmetric key and the second cryptographic key is a public key associated with the private key, the method further comprising storing the private key on the communication device Way. 제18항에 있어서, 상기 통신 장치는 무선 이동 통신 장치이고, 상기 수신 단계는 무선 통신 네트워크를 통해 원격 컴퓨터 네트워크로부터 기밀 데이터를 수신하는 단계를 포함하는 것인 방법.19. The method of claim 18, wherein the communication device is a wireless mobile communication device, and wherein the receiving comprises receiving confidential data from a remote computer network via the wireless communication network. 제20항에 있어서, 통신 장치 상의 시스템으로부터 데이터에 대한 요청을 수신하는 단계;21. The method of claim 20, further comprising: receiving a request for data from a system on the communication device; 상기 요청된 데이터가 대칭 키를 사용하여 암호화되었는지 공개 키를 사용하여 암호화되었는지 판정하는 단계;Determining whether the requested data is encrypted using a symmetric key or a public key; 상기 요청된 데이터가 대칭 키를 사용하여 암호화된 경우에 요청된 데이터를 대칭 키를 사용하여 복호화하는 단계; 및Decrypting the requested data using a symmetric key if the requested data is encrypted using a symmetric key; And 상기 요청된 데이터가 개인 키를 사용하여 암호화된 경우에 요청된 데이터를 개인 키를 사용하여 복호화하는 단계를 더 포함하는 방법.And decrypting the requested data using the private key if the requested data is encrypted using the private key. 제22항에 있어서, 상기 요청은 복호화될 암호화된 데이터를 포함하는 방법.23. The method of claim 22, wherein the request comprises encrypted data to be decrypted. 제22항에 있어서, 상기 요청은 요청된 데이터를 식별하고, 상기 방법은 요청된 데이터를 검색하는 단계를 더 포함하는 방법.24. The method of claim 22, wherein the request identifies the requested data, and the method further comprises retrieving the requested data. 제22항에 있어서, 복호화된 데이터를 통신 장치 상에 저장하는 단계; 및23. The method of claim 22, further comprising: storing the decrypted data on a communication device; And 상기 통신 장치가 로크된 조작 상태에 들어갈 때 복호화된 데이터를 삭제하는 단계를 더 포함하는 방법.Further comprising deleting decrypted data when the communication device enters a locked operating state. 제25항에 있어서, 상기 제1의 보호된 암호 키 및 제2 암호 키를 통신 장치 상에 저장하는 단계는 대칭 키를 암호화하고 암호화된 대칭 키를 통신 장치 상에 저장하는 단계를 포함하고;26. The method of claim 25, wherein storing the first protected cryptographic key and the second cryptographic key on a communication device comprises: encrypting the symmetric key and storing the encrypted symmetric key on the communication device; 상기 개인 키를 통신 장치 상에 저장하는 단계는 개인 키를 암호화하여 암호화된 개인 키를 통신 장치 상에 저장하는 단계를 포함하며;Wherein storing the private key on the communication device comprises encrypting the private key and storing the encrypted private key on the communication device; 상기 대칭 키를 사용하여 요청된 데이터를 복호화하는 단계는 암호화된 대칭 키를 복호화하는 단계를 포함하고;Wherein decrypting the requested data using the symmetric key comprises: decrypting the encrypted symmetric key; 상기 개인 키를 사용하여 요청된 데이터를 복호화하는 단계는 암호화된 개인 키를 복호화하는 단계를 포함하는 방법.Wherein decrypting the requested data using the private key comprises decrypting the encrypted private key. 제26항에 있어서, 상기 대칭 키를 사용하여 요청된 데이터를 복호화하는 단계는 복호화된 대칭 키를 통신 장치 상에 저장하는 단계를 더 포함하고, 상기 개인 키를 사용하여 요청된 데이터를 복호화하는 단계는 복호화된 개인 키를 통신 장치 상에 저장하는 단계를 더 포함하는 것인 방법.27. The method of claim 26, wherein decrypting the requested data using the symmetric key further comprises storing the decrypted symmetric key on a communication device, wherein decrypting the requested data using the private key RTI ID = 0.0 > 1, < / RTI > further comprising storing the decrypted private key on a communication device. 제27항에 있어서, 상기 대칭 키를 사용하여 요청된 데이터를 복호화하는 단계는 복호화된 대칭 키가 통신 장치 상에 저장되는 지의 여부를 판정하고, 복호화된 대칭 키가 통신 장치에 저장되는 경우에 복호화된 대칭 키를 검색하는 단계를 더 포함하고;28. The method of claim 27, wherein the step of decrypting the requested data using the symmetric key comprises: determining whether a decrypted symmetric key is stored on the communication device; decrypting the decrypted symmetric key if the decrypted symmetric key is stored in the communication device; Retrieving the symmetric key; 상기 개인 키를 사용하여 요청된 데이터를 복호화하는 단계는 복호화된 개인 키가 통신 장치 상에 저장되는 지의 여부를 판정하고, 복호화된 개인 키가 통신 장치에 저장되는 경우에 복호화된 개인 키를 검색하는 단계를 더 포함하는 것인 방법.The step of decrypting the requested data using the private key may include determining whether the decrypted private key is stored on the communication device, and retrieving the decrypted private key when the decrypted private key is stored in the communication device Further comprising the steps of: 제27항에 있어서, 상기 통신 장치가 로크된 조작 상태에 들어갈 때 복호화된 대칭 키 및 복호화된 개인 키를 삭제하는 단계를 더 포함하는 방법.28. The method of claim 27, further comprising deleting a decrypted symmetric key and a decrypted private key when the communication device enters a locked operating state. 제18항에 있어서, 상기 수신된 데이터는 데이터 아이템 식별자를 갖는 데이터 아이템을 포함하고, 상기 방법은,19. The method of claim 18, wherein the received data comprises a data item having a data item identifier, 데이터 아이템 식별자 및 메모리 내의 암호화된 수신 데이터의 위치를 포함하는 데이터 아이템 레퍼런스를 작성하는 단계; 및Creating a data item reference that includes a data item identifier and a location of encrypted received data in the memory; And 데이터 아이템 레퍼런스를 메모리 내에 저장하는 단계를 더 포함하는 방법.Further comprising storing the data item reference in a memory. 제18항에 있어서, 상기 암호화된 수신 데이터를 저장하는 단계는,19. The method of claim 18, wherein storing the encrypted received data comprises: 수신된 데이터가 메모리 내에 저장된 현존하는 데이터에 관련되는 지의 여부를 판정하는 단계; 및Determining whether the received data relates to existing data stored in the memory; And 수신된 데이터가 현존하는 데이터에 관련되는 경우에 암호화된 수신 데이터를 메모리 내의 현존하는 관련 데이터에 부가하는 단계를 포함하는 방법.And adding the encrypted received data to the existing associated data in the memory when the received data relates to the existing data. 제31항에 있어서, 상기 수신된 데이터 및 상기 현존하는 관련 데이터는 한 데이터 아이템의 데이터 블록들을 포함하고, 데이터 아이템은 데이터 아이템 식별자 및 메모리 내의 현존하는 관련 데이터의 위치를 포함하는 데이터 아이템 레퍼런스와 관련되며, 상기 암호화된 수신 데이터를 부가하는 단계는,32. The method of claim 31, wherein the received data and the existing associated data comprise data blocks of a data item, the data item is associated with a data item reference that includes a data item identifier and a location of existing related data in memory. Wherein the step of adding the encrypted received data comprises: 암호화된 수신 데이터의 길이를 판정하는 단계;Determining the length of the encrypted received data; 암호화된 수신 데이터가 제1의 보호된 암호 키를 사용하여 암호화되었는지 제2 암호 키를 사용하여 사용하여 암호화되었는지를 나타내는 식별자를 생성하는 단계;Generating an identifier indicating whether the encrypted received data has been encrypted using the first protected cryptographic key or using the second cryptographic key; 길이 및 식별자를 암호화된 수신 데이터에 추가하는 단계; 및Adding a length and an identifier to the encrypted received data; And 길이, 식별자 및 암호화된 수신 데이터를 현존하는 관련 데이터에 부가하는 단계를 포함하는 것인 방법.Length, an identifier, and encrypted received data to existing associated data. 제18항에 있어서, 상기 수신된 데이터는 데이터 아이템 식별자를 갖는 데이터 아이템을 포함하고, 상기 방법은,19. The method of claim 18, wherein the received data comprises a data item having a data item identifier, 데이터 아이템 식별자, 암호화된 수신 데이터의 블록 길이, 메모리 내의 암호화된 수신 데이터의 위치, 및 암호화된 수신 데이터가 제1의 보호된 암호 키를 사용하여 암호화되었는지 제2 암호 키를 사용하여 암호화되었는지를 나타내는 키 식별자를 포함하는 데이터 아이템 헤더를 작성하는 단계; 및The data item identifier, the block length of the encrypted received data, the location of the encrypted received data in the memory, and whether the encrypted received data has been encrypted using the first protected encryption key or the second encrypted key Creating a data item header including a key identifier; And 데이터 아이템 헤더를 메모리 내에 저장하는 단계를 더 포함하는 것인 방법.Storing the data item header in a memory. 제33항에 있어서, 상기 암호화된 수신 데이터를 저장하는 단계는,34. The method of claim 33, wherein the storing the encrypted received data comprises: 수신된 데이터가 메모리 내에 저장된 현존하는 데이터 및 현존하는 데이터 헤더에 관련되는 지의 여부를 판정하는 단계; 및Determining whether the received data relates to existing data stored in the memory and an existing data header; And 수신된 데이터가 현존하는 데이터 및 현존하는 데이터 헤더에 관련되는 경우에,If the received data is related to existing data and an existing data header, 암호화된 수신 데이터의 길이를 판정하는 단계;Determining the length of the encrypted received data; 암호화된 수신 데이터가 제1의 보호된 암호 키를 사용하여 암호화되었는지 제2 암호 키를 사용하여 암호화되었는지를 나타내는 식별자를 생성하는 단계;Generating an identifier indicating whether the encrypted received data is encrypted using a first protected encryption key or encrypted using a second encrypted key; 판정된 길이 및 생성된 식별자를 데이터 아이템 헤더에 추가하는 단계; 및Adding the determined length and the generated identifier to a data item header; And 암호화된 수신 데이터를 현존하는 관련 데이터에 부가하는 단계를 포함하는 것인 방법.And adding the encrypted received data to existing associated data. 제18항에 있어서, 상기 제1의 보호된 암호 키를 사용하여 수신된 데이터를 암호화하는 단계는,19. The method of claim 18, wherein encrypting the received data using the first protected encryption key comprises: 수신된 데이터가 메모리 내에 저장된 현존하는 암호화된 데이터에 관련되는 지의 여부를 판정하는 단계;Determining whether the received data relates to existing encrypted data stored in the memory; 수신된 데이터가 메모리 내에 저장된 현존하는 암호화된 데이터에 관련되는 경우에 현존하는 암호화된 데이터가 제1의 보호된 암호 키를 사용하여 암호화되었는 지의 여부를 판정하는 단계; 및Determining whether existing encrypted data has been encrypted using a first protected cryptographic key if the received data relates to existing encrypted data stored in the memory; And 현존하는 암호화된 데이터가 제1의 보호된 암호 키를 사용하여 암호화된 경우에,If the existing encrypted data is encrypted using the first protected encryption key, 제1의 보호된 암호 키를 사용하여 현존하는 암호화된 데이터를 복호화Decrypts the existing encrypted data using the first protected cryptographic key 하는 단계;; 수신된 데이터를 복호화된 현존하는 데이터에 부가하여 결합된 데이터 Adds the received data to the decoded existing data, 블록을 형성하는 단계; 및Forming a block; And 결합된 데이터 블록을 제1의 보호된 암호 키를 사용하여 암호화하는 단계를 포함하는 것인 방법.And encrypting the combined data block using a first protected cryptographic key. 제32항에 있어서, 상기 제2 암호 키는 개인 복호화 키와 관련되고, 상기 제1의 보호된 암호 키 및 제2 암호 키를 통신 장치 상에 저장하는 단계는 개인 복호화 키를 통신 장치 상에 저장하는 단계를 포함하고, 상기 방법은,33. The method of claim 32, wherein the second cryptographic key is associated with a private decryption key, wherein storing the first protected cryptographic key and the second cryptographic key on a communication device includes storing the private decryption key on a communication device Said method comprising the steps of: 통신 장치 상의 시스템으로부터 데이터 아이템에 대한 요청을 수신하는 단계;Receiving a request for a data item from a system on the communication device; 데이터 아이템 내의 각 블록에 대해, For each block in the data item, 데이터 블록이 제1의 보호된 암호 키를 사용하여 암호화되었는지 제2 If the data block is encrypted using the first protected cryptographic key, 암호 키를 사용하여 암호화되었는지 판정하는 단계;Determining if it is encrypted using a cryptographic key; 데이터 블록이 제1의 보호된 암호 키를 사용하여 암호화된 경우에 제1If the data block is encrypted using the first protected cryptographic key, 의 보호된 암호 키를 사용하여 데이터 블록을 복호화하는 단계; 및Decrypting the data block using the protected cryptographic key; And 데이터 블록이 개인 키를 사용하여 암호화된 경우에 개인 복호화 키를 사용하여 데이터 블록을 복호화하는 단계; 및Decrypting the data block using the private decryption key when the data block is encrypted using the private key; And 각각의 복호화된 데이터 블록을 포함하는 복호화된 데이터 아이템을 통신 장치 상의 시스템에 제공하는 단계를 더 포함하는 것인 방법.And providing a decrypted data item comprising each decrypted data block to a system on the communication device. 제36항에 있어서, 제2 암호 키를 사용하여 암호화된 데이터 아이템 내의 각 데이터 블록에 대해,37. The method of claim 36, wherein for each data block in the data item encrypted using the second cryptographic key, 재암호화된 데이터 블록을 생성하기 위해 제1의 보호된 암호 키를 사용하여 복호화된 데이터 블록을 암호화하는 단계; 및Encrypting a decrypted data block using a first protected cryptographic key to generate a re-encrypted data block; And 데이터 블록을 재암호화된 데이터 블록으로 메모리 내에서 대체하는 단계를 더 포함하는 것인 방법.Replacing the data block with a re-encrypted data block in memory. 제36항에 있어서, 재암호화된 데이터 아이템을 생성하기 위해 제1의 보호된 암호 키를 사용하여 복호화된 데이터 아이템을 암호화하는 단계; 및38. The method of claim 36, further comprising: encrypting a decrypted data item using a first protected cryptographic key to generate a re-encrypted data item; And 메모리 내의 데이터 아이템을 재암호화된 데이터 아이템으로 대체하는 단계를 더 포함하는 방법.Replacing the data item in the memory with the re-encrypted data item. 제18항에 있어서, 통신 장치 상에서 데이터 보호를 인에이블하는 단계;19. The method of claim 18, further comprising: enabling data protection on a communication device; 제1의 보호된 암호 키가 액세스 불가능한 로크된 조작 상태가 통신 장치 상에서 인에이블되는 지의 여부를 판정하는 단계;Determining whether a locked operating state in which the first protected cryptographic key is inaccessible is enabled on the communication device; 로크된 조작 상태가 통신 장치 상에서 인에이블되어 있지 않은 경우에 로크된 조작 상태를 인에이블시키도록 통신 장치의 사용자에게 프롬프팅하는 단계; 및Prompting the user of the communication device to enable the locked operating state if the locked operating state is not enabled on the communication device; And 로크된 조작 상태가 통신 장치 상에서 인에이블되는 경우에, 제1의 보호된 암호 키, 제2 암호 키, 및 제2 암호 키와 관련된 복호화 키를 생성하는 단계를 더 포함하는 방법.Further comprising generating a decryption key associated with the first protected cryptographic key, the second cryptographic key, and the second cryptographic key when the locked operating state is enabled on the communication device. 제39항에 있어서, 상기 생성 단계는 통신 장치로의 사용자 입력들로부터 의사-랜덤(pseudo-random) 정보를 수집하는 단계를 포함하는 것인 방법.40. The method of claim 39, wherein said generating comprises collecting pseudo-random information from user inputs to a communication device. 제18항에 있어서, 상기 통신 장치는 데이터 통신 장치, 데이터 및 음성 통신 기능을 갖는 이동 전화, 음성, 데이터 및 그외 다른 형태의 통신을 할 수 있는 다중-모드 장치, 메시징 장치, 무선 통신이 가능한 퍼스널 디지털 어시스턴트(PDA), 무선 모뎀, 단방향 통신 장치 및 쌍방향 통신 장치로 구성된 그룹에서 선택된 무선 이동 통신 장치를 포함하는 것인 방법.19. The method of claim 18, wherein the communication device is a data communication device, a mobile phone having data and voice communication capabilities, a multi-mode device capable of voice, data and other types of communication, a messaging device, A wireless communication device selected from the group consisting of a digital assistant (PDA), a wireless modem, a unidirectional communication device, and a bidirectional communication device. 통신 장치 상의 데이터를 보호하는 시스템에 있어서,A system for protecting data on a communication device, 제1의 보호된 암호 키 및 제2 암호 키를 통신 장치 상에 저장하는 수단;Means for storing a first protected cryptographic key and a second cryptographic key on a communication device; 통신 장치에서 데이터를 수신하는 수단;Means for receiving data at a communication device; 제1의 보호된 암호 키가 액세스 가능한 지의 여부를 판정하는 수단;Means for determining whether a first protected cryptographic key is accessible; 제1의 보호된 암호 키가 액세스 가능한 경우에 제1의 보호된 암호 키를 사용하여 수신된 데이터를 암호화하는 수단;Means for encrypting data received using a first protected cryptographic key if the first protected cryptographic key is accessible; 제1의 보호된 암호 키가 액세스 불가능한 경우에 제2 암호 키를 사용하여 수신된 데이터를 암호화하는 수단; 및Means for encrypting the received data using a second cryptographic key if the first protected cryptographic key is inaccessible; And 암호화된 수신 데이터를 통신 장치 상의 메모리 내에 저장하는 수단을 포함하는 것인 시스템.And means for storing the encrypted received data in a memory on the communication device.
KR1020057015955A 2005-08-26 2003-02-28 System and method of protecting data on a communication device KR100716529B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020057015955A KR100716529B1 (en) 2005-08-26 2003-02-28 System and method of protecting data on a communication device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020057015955A KR100716529B1 (en) 2005-08-26 2003-02-28 System and method of protecting data on a communication device

Publications (2)

Publication Number Publication Date
KR20050113204A true KR20050113204A (en) 2005-12-01
KR100716529B1 KR100716529B1 (en) 2007-05-10

Family

ID=37287920

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057015955A KR100716529B1 (en) 2005-08-26 2003-02-28 System and method of protecting data on a communication device

Country Status (1)

Country Link
KR (1) KR100716529B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070061276A (en) * 2005-12-08 2007-06-13 한국전자통신연구원 Authentication token for mobile terminal with sdio interface, a system for security using this authentication token
US8700920B2 (en) 2004-04-30 2014-04-15 Blackberry Limited System and method for content protection on a computing device

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1595381B1 (en) 2003-02-28 2006-11-22 Research In Motion Limited System and method of protecting data on a communication device
US9178699B2 (en) 2013-11-06 2015-11-03 Blackberry Limited Public key encryption algorithms for hard lock file encryption
US10341102B2 (en) 2016-09-02 2019-07-02 Blackberry Limited Decrypting encrypted data on an electronic device
US10348502B2 (en) 2016-09-02 2019-07-09 Blackberry Limited Encrypting and decrypting data on an electronic device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100284482B1 (en) 1998-10-10 2001-03-15 구자홍 Data encryption method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8700920B2 (en) 2004-04-30 2014-04-15 Blackberry Limited System and method for content protection on a computing device
KR20070061276A (en) * 2005-12-08 2007-06-13 한국전자통신연구원 Authentication token for mobile terminal with sdio interface, a system for security using this authentication token

Also Published As

Publication number Publication date
KR100716529B1 (en) 2007-05-10

Similar Documents

Publication Publication Date Title
AU2003208208B2 (en) System and method of protecting data on a communication device
EP1545084B1 (en) System and method for digital rights management
EP2003842B1 (en) A method and devices for providing secure data backup from a mobile communication device to an external computing device
EP2234028A1 (en) System and method of handling encrypted backup data
US8621189B2 (en) System and method for hardware strengthened passwords
US20090240958A1 (en) System and method for generating a secure state indicator on a display
JP2009284505A (en) System and method of owner control of electronic device
US20130036310A1 (en) Low-level code signing mechanism
US8639941B2 (en) Data security in mobile devices
AU2007216818B2 (en) System and method of protecting data on a communication device
KR100716529B1 (en) System and method of protecting data on a communication device
JP2010104018A (en) System and method for protecting data on communication apparatus
US7437573B2 (en) Secure unsent message storage pending server connection
EP2469441A1 (en) System and method for hardware strenghtened passwords
JP2009151391A (en) Method for concealing email title, database, communication device and program
CN100447703C (en) Data secrecy method of storage apparatus and storage media and electronic apparatus thereof
Kakalik et al. Privacy and security in wireless computing

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
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130419

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140423

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150424

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160422

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170424

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180424

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190423

Year of fee payment: 13