KR101628615B1 - Method for Providing Safety Electronic Signature by using Secure Operating System - Google Patents
Method for Providing Safety Electronic Signature by using Secure Operating System Download PDFInfo
- Publication number
- KR101628615B1 KR101628615B1 KR1020150054350A KR20150054350A KR101628615B1 KR 101628615 B1 KR101628615 B1 KR 101628615B1 KR 1020150054350 A KR1020150054350 A KR 1020150054350A KR 20150054350 A KR20150054350 A KR 20150054350A KR 101628615 B1 KR101628615 B1 KR 101628615B1
- Authority
- KR
- South Korea
- Prior art keywords
- program
- secure
- signature
- memory area
- information
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/42—User authentication using separate channels for security data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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
- H04L9/3247—Cryptographic 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 involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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
- H04L9/3263—Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
본 발명은 보안운영체제를 이용한 안심서명 제공 방법에 관한 것으로, 본 발명에 따른 보안운영체제를 이용한 안심서명 제공 방법은, 보안커널(Secure Kennel)을 구비한 보안OS(Secure Operating System)와 커널구조가 공개된 일반OS(Normal Operating System)를 탑재한 무선단말을 통해 실행되는 방법에 있어서, 상기 일반OS의 프로그램(n)이 상기 보안OS의 지정된 프로그램(s)에서 접근 가능한 메모리영역을 할당하거나 또는 기 할당된 메모리영역을 확인하는 제1 단계와, 상기 프로그램(n)이 서명요청정보를 상기 메모리영역으로 제공하는 제2 단계와, 상기 보안OS의 프로그램(s)이 상기 메모리영역으로부터 서명요청정보를 확인하는 제3 단계와, 상기 프로그램(s)이 상기 서명요청정보를 근거로 서명대상정보를 확인하는 제4 단계와, 상기 프로그램(s)이 상기 보안OS에 구비된 인증서로부터 서명 키를 추출하여 상기 서명대상정보에 대한 전자서명 값을 생성하거나 또는 HSM(Hardware Security Module)을 통해 생성된 전자서명 값을 확인하는 제5 단계와, 상기 프로그램(s)이 상기 무선단말의 통신수단을 이용하여 상기 전자서명 값을 지정된 서버로 전송하는 제6 단계를 포함한다.The present invention relates to a security signature providing method using a security operating system, and a security signature providing method using a security operating system according to the present invention is characterized in that a secure operating system (OS) having a secure kernel and a kernel structure are disclosed (N) of a general OS allocates a memory area accessible from a designated program (s) of the secure OS, or allocates a memory area accessible by a designated program (s) of the secure OS, A second step of providing the signature request information to the memory area by the program (n); and a step of checking whether the program (s) of the secure OS verifies signature request information from the memory area A fourth step in which the program (s) confirms the signature subject information based on the signature request information, and a third step in which the program (s) A fifth step of extracting a signature key from the certificate and generating an electronic signature value for the signature subject information or verifying an electronic signature value generated through a HSM (Hardware Security Module) And a sixth step of transmitting the digital signature value to the designated server by using the communication means of the second embodiment.
Description
본 발명은 보안커널을 구비한 보안OS(Secure Operating System)와 커널구조가 공개된 일반OS를 탑재한 무선단말에서 일반OS와 고립된 별도의 보안OS 측에 인증서를 구비한 후 상기 보안OS의 인증서를 통해 전자서명함과 동시에 이를 지정된 서버로 전송하여 서명 처리하는 것이다.
In a wireless terminal equipped with a secure operating system (OS) having a secure kernel and a general OS having a kernel structure, a certificate is provided to a separate secure OS side isolated from a general OS and then a certificate And simultaneously transmits the digital signature to the designated server and performs signature processing.
최근 하나의 물리 프로세서 코어를 시큐어월드(Secure World)와 노멀월드(Normal World)의 두 가지 월드로 나누고, 각각의 월드를 고립시켜 운영하는 트러스트존(Trust Zone) 기술이 제안되었다. 트러스트존 기술은 노멀월드에 일반적인 운영체제를 탑재하고 시큐어월드에 보안이 강화된 운영체제를 탑재하되 시큐어월드를 노멀월드와 고립시켜 운영함으로써, 노멀월드가 해킹되거나 위변조 되더라도 노멀월드와 고립된 시큐어월드의 보안을 보장하는 기술이다.
Recently, a Trust Zone technology has been proposed in which each physical processor core is divided into two worlds, Secure World and Normal World, and each world is isolated. Trust Zone technology is equipped with a normal operating system in the normal world, and Secure World is equipped with a security-enhanced operating system. By keeping Secure World isolated from the normal world, even if the normal world is hacked or forged, security of the normal world and isolated secure world .
트러스트존 기술에서 시큐어월드와 노멀월드의 고립은 시큐어월드의 보안을 보장하는 핵심사항 중의 하나이다. 시큐어월드에서 실행된 애플리케이션은 노멀월드의 운영체제를 이용하지 않고 직접 단말기에 구비된 디스플레이장치, 통신장치, 입력장치 등의 각종 구성부에 직접 접근하여 제어할 수 있다(특허등록 제10-1259824호). 시큐어월드와 노멀월드는 물리적으로 하나의 단말기 내에서 하나의 프로세서 코어를 공유하고, 시큐어월드는 노멀월드를 통해 구동되기는 하지만, 하드웨어적인 측면과 소프트웨어적인 측면에서 시큐어월드와 노멀월드는 상호 고립된 서로 다른 시스템이다.
The isolation of Secure World and Normal World in Trust Zone technology is one of the key points to ensure the security of Secure World. An application executed in the secure world can directly access and control various components such as a display device, a communication device, and an input device provided in the terminal without using the operating system of the normal world (Patent Registration No. 10-1259824) . Although Secure World and Normal World physically share a single processor core in a single terminal and Secure World runs through Normal World, Secure and Normal Worlds, in terms of hardware and software, Other systems.
따라서 시큐어월드와 노멀월드를 탑재한 무선단말에 인증서를 구비하는 경우, 상기 노멀월드와 무관하게 시큐어월드만을 통해 인증서 기능을 구현하는 것은 트러스트존과 관련된 기술 규격을 참조하여 당업자가 비교적 용이하게 도출할 수 있을 것이나, 상기 노멀월드와 시큐어월드를 실시간 연동하여 내부적으로는 각각의 고립된 월드를 통해 각기 필요한 절차를 고립시켜 수행하되, 외부적으로는 각 월드를 구별하지 않고 수행되는 것처럼 구현하기란 기술적으로 난해한 문제점을 지니고 있다.
Therefore, when a certificate is provided to a wireless terminal equipped with a secure world and a normal world, implementing a certificate function through only the secure world regardless of the normal world is performed by referring to a technical standard related to the trust zone, In order to implement the normal world and the secure world in real time, it is necessary to internally isolate the necessary procedures from each other through the isolated world, Which is difficult to solve.
상기와 같은 문제점을 해소하기 위한 본 발명의 목적은, 무선단말에 일반OS(Normal Operating System)와 보안OS(Secure Operating System)를 포함하는 이종의 OS가 탑재된 경우, 상기 보안OS에 사용자의 인증서를 탑재한 후, 상기 일반OS의 프로그램(n)이 상기 보안OS의 지정된 프로그램(s)에서 접근 가능한 메모리영역을 할당하거나 또는 기 할당된 메모리영역을 확인하여 상기 보안OS의 프로그램(s)으로 전자서명을 요청하면, 상기 보안OS의 프로그램(s)이 서명대상정보를 확인한 후 상기 보안OS에 탑재된 인증서를 통해 상기 서명대상정보를 전자서명함과 동시에 지정된 서버로 전송하여 서명 처리하는, 보안운영체제를 이용한 안심서명 제공 방법을 제공함에 있다.
SUMMARY OF THE INVENTION An object of the present invention to overcome the above problems is to provide a secure OS in which when a heterogeneous OS including a normal operating system and a secure operating system is mounted on a wireless terminal, The program (n) of the general OS allocates a memory area accessible from the designated program (s) of the secure OS, or identifies a pre-allocated memory area, Signing request, the program (s) of the security OS verifies the signature target information, and electronically signs the signature target information through a certificate mounted on the secure OS, And provides a secure signature providing method using the secure signature.
본 발명에 따른 보안운영체제를 이용한 안심서명 제공 방법은, 보안커널(Secure Kennel)을 구비한 보안OS(Secure Operating System)와 커널구조가 공개된 일반OS(Normal Operating System)를 탑재한 무선단말을 통해 실행되는 방법에 있어서, 상기 일반OS의 프로그램(n)이 상기 보안OS의 지정된 프로그램(s)에서 접근 가능한 메모리영역을 할당하거나 또는 기 할당된 메모리영역을 확인하는 제1 단계와, 상기 프로그램(n)이 서명요청정보를 상기 메모리영역으로 제공하는 제2 단계와, 상기 보안OS의 프로그램(s)이 상기 메모리영역으로부터 서명요청정보를 확인하는 제3 단계와, 상기 프로그램(s)이 상기 서명요청정보를 근거로 서명대상정보를 확인하는 제4 단계와, 상기 프로그램(s)이 상기 보안OS에 구비된 인증서로부터 서명 키를 추출하여 상기 서명대상정보에 대한 전자서명 값을 생성하거나 또는 HSM(Hardware Security Module)을 통해 생성된 전자서명 값을 확인하는 제5 단계와, 상기 프로그램(s)이 상기 무선단말의 통신수단을 이용하여 상기 전자서명 값을 지정된 서버로 전송하는 제6 단계를 포함한다.
The secure signature providing method using the secure operating system according to the present invention is a method for providing a secure signature using a security operating system (Secure Operating System) having a secure kernel and a wireless terminal equipped with a normal operating system (N) of the general OS allocates a memory area accessible in a designated program (s) of the secure OS or identifies a pre-allocated memory area; A second step of providing the signature request information to the memory area; a third step of the program (s) of the secure OS verifying signature request information from the memory area; (S) extracts a signature key from a certificate provided in the secure OS, and transmits an electronic signature for the signature target information Or a digital signature value generated through a hardware security module (HSM); and transmitting the digital signature value to the designated server using the communication means of the wireless terminal And a sixth step.
본 발명에 따르면, 상기 보안OS는 프로세서에 탑재된 트러스트존(Trust Zone)을 포함할 수 있다.
According to the present invention, the secure OS may include a trust zone installed in the processor.
본 발명에 따르면, 상기 보안운영체제를 이용한 안심서명 제공 방법은, 상기 프로그램(n)이 상기 보안OS에 지정된 프로그램(s)이 탑재되었음을 식별하거나 상기 보안OS에 탑재된 프로그램(s)을 식별하는 식별정보를 일반OS 저장영역에 저장하는 단계를 더 포함하며, 상기 제1 단계는, 상기 보안OS에 상기 프로그램(s)이 탑재된 경우에 상기 프로그램(n)이 상기 메모리영역을 할당하거나 확인하는 단계를 포함하여 이루어지는 것을 특징으로 한다.According to the present invention, a method for providing a secure signature using the secure operating system is provided, wherein the program (n) identifies that the program (s) specified in the secure OS is mounted or identifies the program (s) Storing the information in the general OS storage area, wherein the first step includes: allocating or confirming the memory area by the program (n) when the program (s) is loaded on the secure OS And a control unit.
본 발명에 따르면, 상기 보안운영체제를 이용한 안심서명 제공 방법은, 상기 프로그램(s)이 보안OS의 인증서 저장영역 또는 HSM에 사용자의 인증서를 저장하는 단계를 더 포함하며, 상기 제1 단계는, 상기 보안OS의 인증서 저장영역 또는 HSM에 사용자의 인증서가 저장된 경우에 상기 프로그램(n)이 상기 메모리영역을 할당하거나 확인하는 단계를 포함하여 이루어지는 것을 특징으로 한다.According to the present invention, the secure signature providing method using the secure operating system may further include storing the user's certificate in the certificate storage area of the secure OS or in the HSM using the program (s) And the program (n) allocates or confirms the memory area when the user's certificate is stored in the certificate storage area of the secure OS or in the HSM.
본 발명에 따르면, 상기 보안운영체제를 이용한 안심서명 제공 방법은, 상기 프로그램(n)이 상기 보안OS로 전환되기 직전의 상기 프로그램(n)에 대한 상태정보를 저장하여 유지하는 단계를 더 포함하며, 상기 제2 단계는, 상기 상태정보가 저장된 후 상기 프로그램(n)이 서명요청정보를 상기 메모리영역으로 제공하는 단계를 포함하여 이루어지는 것을 특징으로 한다.According to the present invention, the secure signature providing method using the secure operating system further includes storing and maintaining state information on the program (n) immediately before the program (n) is switched to the secure OS, The second step is characterized in that the program (n) provides signature request information to the memory area after the state information is stored.
본 발명에 따르면, 상기 제2 단계는 상기 프로그램(n)이 SMC(Secure Monitor Call) 명령을 통해 보안OS를 구동하는 단계를 더 포함할 수 있다.
According to the present invention, the second step may further include the step of the program (n) operating a secure OS through a SMC (Secure Monitor Call) command.
본 발명에 따르면, 상기 제2 단계는 상기 프로그램(n)이 일반OS에 상기 메모리영역을 할당하거나 또는 기 할당된 메모리영역을 확인할 수 있다.
According to the present invention, in the second step, the program (n) can allocate the memory area to the general OS or the pre-allocated memory area.
본 발명에 따르면, 상기 제2 단계는 상기 프로그램(n)이 일반OS와 보안OS 간 전환 절차를 수행하는 보안 모니터에 상기 메모리영역을 할당하거나 또는 기 할당된 메모리영역을 확인할 수 있다.
According to the present invention, the second step may allocate the memory area to the security monitor that performs the switching procedure between the general OS and the secure OS, or may check the pre-allocated memory area.
본 발명에 따르면, 상기 제2 단계는 상기 프로그램(n)이 네트워크 상의 보안서버에 보안OS의 프로그램(s)에서 접근 가능한 메모리영역을 할당하거나 또는 기 할당된 메모리영역을 확인할 수 있다.
According to the present invention, in the second step, the program (n) can allocate a memory area accessible from the program (s) of the secure OS to the security server on the network or check the pre-allocated memory area.
본 발명에 따르면, 상기 제2 단계는 상기 프로그램(n)이 상기 메모리영역을 참조하는 일반OS 측의 프로세스로 상기 프로그램(n)을 설정하는 단계를 더 포함할 수 있다.
According to the present invention, the second step may further comprise setting the program (n) as a process of the general OS side in which the program (n) refers to the memory area.
본 발명에 따르면, 상기 제2 단계는 상기 일반OS의 프로그램(n)이 상기 보안OS의 프로그램(s)에서 상기 무선단말의 통신수단을 통해 지정된 서버로부터 서명대상정보를 확인하기 위한 서명요청정보를 구성하여 상기 메모리영역으로 제공할 수 있다.
According to the present invention, in the second step, the program (n) of the general OS sends signature request information for confirming the signature subject information from the server designated by the communication means of the wireless terminal in the program (s) of the secure OS And provide the data to the memory area.
본 발명에 따르면, 상기 보안운영체제를 이용한 안심서명 제공 방법은, 상기 서명요청정보를 상기 메모리영역으로 제공하기 전에, 상기 일반OS의 프로그램(n)이 상기 무선단말의 통신수단을 통해 지정된 서버로부터 서명대상정보를 수신하는 단계를 더 포함하며, 상기 제2 단계는, 상기 서명대상정보를 포함하는 서명요청정보를 구성하여 상기 메모리영역으로 제공하는 것을 특징으로 한다.According to another aspect of the present invention, there is provided a secure signature providing method using a security operating system, wherein a signature of a program (n) of the general OS is transmitted from a designated server through a communication means of the wireless terminal And receiving the object information, wherein the second step configures the signature request information including the signature object information and provides the signature request information to the memory area.
본 발명에 따르면, 상기 보안운영체제를 이용한 안심서명 제공 방법은, 상기 서명요청정보를 상기 메모리영역으로 제공하기 전에, 상기 일반OS의 프로그램(n)이 상기 서명대상정보를 생성하는 단계를 더 포함하며, 상기 제2 단계는, 상기 서명대상정보를 포함하는 서명요청정보를 구성하여 상기 메모리영역으로 제공하는 것을 특징으로 한다.According to the present invention, the secure signature providing method using the secure operating system may further include generating the signature target information by the program (n) of the general OS before providing the signature request information to the memory area And the second step configures signature request information including the signature subject information and provides the signature request information to the memory area.
본 발명에 따르면, 상기 보안운영체제를 이용한 안심서명 제공 방법은, 상기 프로그램(s)이 상기 메모리영역으로부터 서명요청정보를 확인한 후, 상기 프로그램(s)이 보안OS를 통해 무선단말의 입력수단에 접근하여 PIN(Personal Identification Number)을 입력받는 단계 및 상기 보안OS를 통해 입력된 PIN의 유효성을 인증하는 단계를 더 포함하여 이루어지는 것을 특징으로 한다.According to the present invention, a method for providing a secure signature using the secure operating system comprises: after the program s confirms signature request information from the memory area, the program s accesses the input means of the wireless terminal through the secure OS Receiving a PIN (Personal Identification Number), and authenticating the validity of the PIN input through the secure OS.
본 발명에 따르면, 상기 보안운영체제를 이용한 안심서명 제공 방법은, 상기 프로그램(s)이 상기 전자서명 값을 확인한 후, 상기 프로그램(s)이 지정된 서버를 통해 복호화 가능하게 상기 생성된 전자서명 값을 암호화하는 단계를 더 포함하며, 상기 제6 단계는, 상기 무선단말의 통신수단을 통해 상기 암호화된 전자서명 값을 지정된 서버로 전송하는 것을 특징으로 한다.According to the present invention, the secure signature providing method using the secure operating system may further include: after the program (s) checks the digital signature value, the program (s) Wherein the encrypted digital signature value is transmitted to the designated server through the communication means of the wireless terminal.
본 발명에 따르면, 상기 보안운영체제를 이용한 안심서명 제공 방법은, 상기 프로그램(s)이 상기 전자서명 값을 확인한 후, 상기 프로그램(s)이 상기 생성된 전자서명 값을 포함하는 서명데이터를 생성하는 단계를 더 포함하며, 상기 제6 단계는, 상기 무선단말의 통신수단을 통해 상기 서명데이터를 지정된 서버로 전송하는 것을 특징으로 한다.According to the present invention, a method for providing a secure signature using the secure operating system includes: after the program (s) checks the digital signature value, the program (s) generates signature data including the generated digital signature value And the sixth step is characterized in that the signature data is transmitted to a designated server through the communication means of the wireless terminal.
본 발명에 따르면, 상기 보안운영체제를 이용한 안심서명 제공 방법은, 상기 프로그램(s)이 상기 전자서명 값을 확인한 후, 상기 프로그램(s)이 상기 생성된 전자서명 값을 포함하는 서명데이터를 생성하는 단계 및 상기 프로그램(s)이 지정된 서버를 통해 복호화 가능하게 상기 생성된 서명데이터를 암호화하는 단계를 더 포함하며, 상기 제6 단계는, 상기 무선단말의 통신수단을 통해 상기 암호화된 서명데이터를 지정된 서버로 전송하는 것을 특징으로 한다.According to the present invention, a method for providing a secure signature using the secure operating system includes: after the program (s) checks the digital signature value, the program (s) generates signature data including the generated digital signature value And encrypting the generated signature data so that the program (s) can be decrypted through a designated server, wherein the step (c) further comprises the step of encrypting the encrypted signature data through communication means of the wireless terminal To the server.
본 발명에 따르면, 상기 보안운영체제를 이용한 안심서명 제공 방법은, 상기 프로그램(s)이 상기 전자서명 값을 지정된 서버로 전송한 후, 상기 프로그램(s)이 전자서명 값을 이용한 전자서명 결과를 생성하는 단계 및 상기 프로그램(s)이 상기 전자서명 결과를 상기 메모리영역으로 제공하는 단계를 더 포함하여 이루어지는 것을 특징으로 한다.According to the present invention, a secure signature providing method using the secure operating system may be configured such that after the program (s) transmits the digital signature value to a designated server, the program (s) generates an electronic signature result using the digital signature value And providing the digital signature result to the memory area by the program (s).
본 발명에 따르면, 상기 보안운영체제를 이용한 안심서명 제공 방법은, 상기 프로그램(s)이 상기 전자서명 결과를 상기 메모리영역으로 제공한 후, 상기 프로그램(n)이 상기 메모리영역으로부터 상기 전자서명 결과를 확인하는 단계 및 상기 프로그램(n)이 상기 전자서명 결과를 근거로 전자서명 기반 서비스를 제공하는 단계를 더 포함하여 이루어지는 것을 특징으로 한다.According to the present invention, a secure signature providing method using the secure operating system may further include: after the program (s) provides the digital signature result to the memory area, the program (n) And providing the digital signature-based service based on the digital signature result by the program (n).
본 발명에 따르면, 무선단말에 일반OS와 보안OS를 포함하는 이종의 OS가 탑재된 경우, 보안OS에 사용자의 인증서를 구비한 후 일반OS의 요청에 따라 보안OS에서 서명대상정보를 확인하고 상기 보안OS의 인증서를 통해 보안OS 내에서 전자서명 처리함으로써, 일반OS의 해킹이나 변조에 대하여 안전한 전자서명을 제공하는 이점이 있다.
According to the present invention, when a heterogeneous OS including a general OS and a secure OS is installed in a wireless terminal, a user's certificate is provided to the secure OS, the signature object information is checked in the secure OS according to a request of the general OS, There is an advantage of providing a secure digital signature for hacking or tampering with a general OS by processing the digital signature in the secure OS through the certificate of the secure OS.
도 1은 본 발명의 실시 방법에 따른 무선단말의 기능 구성을 도시한 도면이다.
도 2는 본 발명의 실시 방법에 따른 프로그램의 기능 구성을 도시한 도면이다.
도 3은 본 발명의 실시 방법에 따라 보안OS에 프로그램(s)을 준비하는 과정을 도시한 도면이다.
도 4는 본 발명의 실시 방법에 따라 일반OS와 보안OS 간 거래 연동 과정을 도시한 도면이다.
도 5는 본 발명의 실시 방법에 따라 보안OS를 통해 전자서명을 생성하는 과정을 도시한 도면이다.
도 6은 본 발명의 일 실시 방법에 따라 보안OS를 통해 전자서명을 처리하는 과정을 도시한 도면이다.
도 7은 본 발명의 다른 일 실시 방법에 따라 보안OS를 통해 전자서명을 처리하는 과정을 도시한 도면이다.
도 8은 본 발명의 실시 방법에 따라 보안OS를 통해 처리된 전자서명 결과를 이용하는 과정을 도시한 도면이다.1 is a diagram illustrating a functional configuration of a wireless terminal according to an embodiment of the present invention.
2 is a diagram showing a functional configuration of a program according to an embodiment of the present invention.
3 is a diagram illustrating a process of preparing a program s in a secure OS according to an embodiment of the present invention.
4 is a diagram illustrating a transaction interoperation process between a general OS and a secure OS according to an embodiment of the present invention.
5 is a diagram illustrating a process of generating an electronic signature through a secure OS according to an embodiment of the present invention.
6 is a diagram illustrating a process of processing digital signatures through a secure OS according to an embodiment of the present invention.
7 is a diagram illustrating a process of processing digital signatures through a secure OS according to another embodiment of the present invention.
FIG. 8 is a diagram illustrating a process of using an electronic signature result processed through a secure OS according to an embodiment of the present invention.
이하 첨부된 도면과 설명을 참조하여 본 발명의 바람직한 실시예에 대한 동작 원리를 상세히 설명한다. 다만, 하기에 도시되는 도면과 후술되는 설명은 본 발명의 특징을 효과적으로 설명하기 위한 여러 가지 방법 중에서 바람직한 실시 방법에 대한 것이며, 본 발명이 하기의 도면과 설명만으로 한정되는 것은 아니다.
The operation principle of the preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings and description. It should be understood, however, that the drawings and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the invention, and are not to be construed as limiting the present invention.
또한, 하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서, 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 발명에서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The terms used below are defined in consideration of the functions of the present invention, which may vary depending on the user, intention or custom of the operator. Therefore, the definition should be based on the contents throughout the present invention.
결과적으로, 본 발명의 기술적 사상은 청구범위에 의해 결정되며, 이하 실시예는 진보적인 본 발명의 기술적 사상을 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 효율적으로 설명하기 위한 일 수단일 뿐이다.
As a result, the technical idea of the present invention is determined by the claims, and the following embodiments are merely means for effectively explaining the technical idea of the present invention to a person having ordinary skill in the art to which the present invention belongs Only.
도면1은 본 발명의 실시 방법에 따른 무선단말(100)의 기능 구성을 도시한 도면이다.
1 is a functional block diagram of a wireless terminal 100 according to an embodiment of the present invention.
보다 상세하게 본 도면1은 보안커널(130)을 구비한 보안OS(120)와 커널구조가 공개된 일반OS(110)를 탑재한 무선단말(100)에서 상기 보안OS(120)에 구비된 인증서를 이용하여 전자서명 절차를 수행하게 처리하는 기능 구성을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면1을 참조 및/또는 변형하여 상기 무선단말(100) 기능에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면1에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다. 바람직하게, 본 도면1의 무선단말(100)은 보안OS(120)와 일반OS(110)를 탑재한 스마트폰, 태블릿PC, PDA 등의 각종 단말기를 포함할 수 있다.
1 is a block diagram illustrating a configuration of a secure OS 120 having a secure kernel 130 and a general OS 110 having a kernel structure disclosed therein. The present invention is not limited to the above-described embodiments, but may be modified and changed without departing from the spirit and scope of the present invention. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention as defined by the following claims. The wireless terminal 100 of FIG. 1 may include various terminals such as a smart phone, a tablet PC, and a PDA, which are equipped with the secure OS 120 and the general OS 110.
도면1을 참조하면, 상기 무선단말(100)은, 제어부(105)와 메모리부(175)와 화면출력부(140)와 사용자입력부(145)와 사운드처리부(150)와 근거리 무선 통신부(155)와 무선망 통신부(160)와 USIM 리더부(165) 및 USIM를 구비하며, 전원 공급을 위한 배터리를 구비한다.
1, the wireless terminal 100 includes a control unit 105, a memory unit 175, a screen output unit 140, a user input unit 145, a sound processing unit 150, a short range wireless communication unit 155, A wireless network communication unit 160, a USIM reader unit 165, and a USIM, and has a battery for power supply.
상기 제어부(105)는 상기 무선단말(100)의 동작을 제어하는 구성의 총칭으로서, 물리적으로 프로세서와 실행 메모리를 포함하여 구성되며, 상기 무선단말(100)에 구비된 각 구성부와 버스(BUS)를 통해 연결된다. 바람직하게, 상기 프로세서는 ARM 프로세서를 포함할 수 있다.
The control unit 105 is a general term for controlling the operation of the wireless terminal 100. The control unit 105 physically includes a processor and an execution memory, ). Preferably, the processor may comprise an ARM processor.
본 발명에 따르면, 상기 제어부(105)는 커널구조와 API 및 드라이버 등이 공개된 일반OS(110)(Normal Operating System)가 운영되는 노멀월드와, 상기 일반OS(110)와 구별되는 보안커널(130)을 구비한 보안OS(120)(Secure Operating System)가 운영되는 시큐어월드를 포함하여 이루어진다. 상기 노멀월드와 시큐어월드는 상호 고립된 구조로 이루어진다. 바람직하게, 상기 보안OS(120)는 ARM 프로세서의 트러스트존(Trust Zone)을 포함한다. 이하, 편의상 상기 일반OS(110)와 보안OS(120) 상에서 본 발명을 위한 기능적 구성을 본 제어부(105)에 도시하여 설명하기로 한다.
According to the present invention, the control unit 105 includes a normal world in which a normal OS 110 in which a kernel structure, an API and a driver are displayed, and a secure kernel And a secure world in which a secure operating system 120 (Secure Operating System) having a security function 130 is operated. The normal world and the secure world are constructed in a mutually isolated structure. Preferably, the secure OS 120 includes a Trust Zone of the ARM processor. Hereinafter, a functional configuration for the present invention on the general OS 110 and the secure OS 120 will be described with reference to the control unit 105 for convenience.
상기 메모리부(175)는 상기 무선단말(100)에 구비된 저장수단에 대응하는 비휘발성 메모리의 총칭으로서, 상기 제어부(105)를 통해 실행되는 적어도 하나의 프로그램코드와 상기 프로그램코드가 이용하는 적어도 하나의 데이터셋트를 저장하여 유지한다.
The memory unit 175 is a generic name of a nonvolatile memory corresponding to a storage unit included in the wireless terminal 100 and includes at least one program code executed through the control unit 105 and at least one And stores the data set.
본 발명에 따르면, 상기 메모리부(175)는 일반OS(110)에서 접근하는 일반OS 저장영역과 보안OS(120)에서 접근하는 보안OS 저장영역을 포함할 수 있으며, 일반OS(110)는 보안OS 저장영역에 접근할 수 없다. 상기 일반OS 저장영역에는 일반OS(110)를 통해 실행되는 애플리케이션에 대응하는 프로그램코드와 상기 일반OS(110)의 애플리케이션이 이용하는 적어도 하나의 데이터셋트를 저장할 수 있다. 한편 상기 보안OS 저장영역에는 보안OS(120)를 통해 실행되는 애플리케이션에 대응하는 프로그램코드와 상기 보안OS(120)의 애플리케이션이 이용하는 적어도 하나의 데이터셋트를 저장할 수 있다.
According to the present invention, the memory unit 175 may include a general OS storage area accessed by the general OS 110 and a secure OS storage area accessed by the secure OS 120, I can not access the OS storage area. The general OS storage area may store program codes corresponding to applications executed through the general OS 110 and at least one data set used by applications of the general OS 110. [ The secure OS storage area may store program codes corresponding to applications executed through the secure OS 120 and at least one data set used by applications of the secure OS 120. [
상기 일반OS(110)는 커널구조가 공개된 커널(이하, 보안OS(120)의 보안커널(130)과 대비하여 “일반커널(115)”이라고 함)을 구비하며, 상기 일반OS(110)의 일반커널(115)은 상기 화면출력부(140), 사용자입력부(145), 사운드처리부(150), 근거리 무선 통신부(155), 무선망 통신부(160) 등, 상기 무선단말(100)의 각종 자원에 접근할 수 있으며, 이를 위한 일반OS(110) 상의 드라이버를 구비할 수 있다. 상기 일반OS(110)의 일반커널(115)은 상기 보안OS 저장영역에는 접근할 수 없으며, 상기 일반OS(110)와 보안OS(120)는 상호 고립된다.
The general OS 110 has a kernel (hereinafter, referred to as a "general kernel 115" in contrast to the security kernel 130 of the secure OS 120) The general kernel 115 of the wireless terminal 100 may include various types of the wireless terminal 100 such as the screen output unit 140, the user input unit 145, the sound processing unit 150, the short- Resources, and may be provided with a driver on the general OS 110 for this purpose. The general kernel 115 of the general OS 110 can not access the secure OS storage area and the general OS 110 and the secure OS 120 are isolated from each other.
상기 보안OS(120)는 커널구조가 공개되지 않은 보안커널(130)을 구비하며, 상기 보안OS(120)의 보안커널(130)은 상기 화면출력부(140), 사용자입력부(145), 사운드처리부(150), 근거리 무선 통신부(155), 무선망 통신부(160) 등, 상기 무선단말(100)의 각종 자원에 접근할 수 있으며, 이를 위한 보안OS(120) 상의 드라이버를 구비할 수 있다. 바람직하게, 상기 보안OS(120)의 보안커널(130)은 상기 일반OS 저장영역에 접근할 수 없으며, 상기 보안OS(120)와 일반OS(110)는 상호 고립된다.
The secure OS 120 includes a secure kernel 130 in which a kernel structure is not disclosed and the secure kernel 130 of the secure OS 120 includes a screen output unit 140, a user input unit 145, The mobile terminal 100 may access various resources of the wireless terminal 100 such as the processor 150, the short range wireless communication unit 155 and the wireless network communication unit 160 and may include a driver on the secure OS 120 for this purpose. Preferably, the secure kernel 130 of the secure OS 120 can not access the normal OS storage area, and the secure OS 120 and the normal OS 110 are isolated from each other.
본 발명의 실시 방법에 따르면, 보안OS 저장영역은 HSM(Hardware Security Module)(135)으로 운영되는 HSM영역을 포함할 수 있다.
According to an embodiment of the present invention, the secure OS storage area may include an HSM area operated by a hardware security module (HSM)
상기 화면출력부(140)는 상기 무선단말(100)에 구비된 화면출력수단으로서, 바람직하게 LCD(Liquid Crystal Display)와 같은 디스플레이를 포함하거나, 또는 터치입력부를 포함하는 터치스크린을 포함할 수 있다.
The screen output unit 140 may include a display such as a liquid crystal display (LCD) or a touch screen including a touch input unit as a screen output unit provided in the wireless terminal 100 .
상기 일반OS(110)의 일반커널(115)은 상기 화면출력부(140)의 디스플레이 내지 터치스크린에 접근하여 제어하기 위한 드라이버를 구비하며, 상기 일반커널(115)이 상기 화면출력부(140)에 접근하여 제어하는 경우 상기 보안OS(120)는 상기 화면출력부(140)에 접근할 수 없다.
The general kernel 115 of the general OS 110 includes a driver for accessing and controlling the display or the touch screen of the screen output unit 140. The general kernel 115 is connected to the screen output unit 140, The security OS 120 can not access the screen output unit 140. In this case,
상기 보안OS(120)의 보안커널(130)은 상기 화면출력부(140)의 디스플레이 내지 터치스크린에 접근하여 제어하기 위한 별도의 보안 드라이버를 구비하며, 상기 보안커널(130)이 상기 화면출력부(140)에 접근하여 제어하는 경우 상기 일반OS(110)는 상기 화면출력부(140)에 접근할 수 없다.
The secure kernel 130 of the secure OS 120 has a separate security driver for accessing and controlling the display or the touch screen of the screen output unit 140, The general OS 110 can not access the screen output unit 140 when accessing and controlling the display unit 140. [
상기 사용자입력부(145)는 상기 무선단말(100)에 구비된 사용자 입력수단으로서, 상기 화면출력부(140)가 터치스크린을 포함하는 경우 상기 터치스크린의 터치입력부를 포함할 수 있으며, 실시 방법에 따라 키패드, 키버튼을 포함할 수 있다.
The user input unit 145 may be a user input unit provided in the wireless terminal 100 and may include a touch input unit of the touch screen when the screen output unit 140 includes a touch screen. A keypad, and a key button.
상기 일반OS(110)의 일반커널(115)은 상기 사용자입력부(145)의 터치입력부 내지 키패드나 키버튼에 접근하여 제어하기 위한 드라이버를 구비하며, 상기 일반커널(115)이 상기 사용자입력부(145)에 접근하여 제어하는 경우 상기 보안OS(120)는 상기 사용자입력부(145)에 접근할 수 없다.
The general kernel 115 of the general OS 110 includes a driver for accessing and controlling a touch input unit, a keypad or a key button of the user input unit 145. The general kernel 115 is connected to the user input unit 145 The security OS 120 can not access the user input unit 145. In this case,
상기 보안OS(120)의 보안커널(130)은 상기 사용자입력부(145)의 터치입력부 내지 키패드나 키버튼에 접근하여 제어하기 위한 별도의 보안 드라이버를 구비하며, 상기 보안커널(130)이 상기 사용자입력부(145)에 접근하여 제어하는 경우 상기 일반OS(110)는 상기 사용자입력부(145)에 접근할 수 없다.
The secure kernel 130 of the secure OS 120 has a separate security driver for accessing and controlling the touch input unit, keypad or key button of the user input unit 145, When accessing and controlling the input unit 145, the general OS 110 can not access the user input unit 145.
상기 사운드처리부(150)는 상기 무선단말(100)에 구비된 사운드출력수단과 사운드입력수단으로서, 사운드를 출력하는 스피커와 사운드를 입력받는 마이크로폰을 포함할 수 있다.
The sound processing unit 150 may include sound output means and sound input means included in the wireless terminal 100, and may include a speaker for outputting sound and a microphone for receiving sound.
상기 일반OS(110)의 일반커널(115)은 상기 사운드처리부(150)의 스피커 내지 마이크로폰에 접근하여 제어하기 위한 드라이버를 구비하며, 상기 일반커널(115)이 상기 사운드처리부(150)에 접근하여 제어하는 경우 상기 보안OS(120)는 상기 일반OS(110)가 제어하는 사운드처리부(150)에 접근할 수 없다.
The general kernel 115 of the general OS 110 includes a driver for accessing and controlling the speaker or the microphone of the sound processing unit 150. The general kernel 115 accesses the sound processing unit 150 The security OS 120 can not access the sound processing unit 150 controlled by the general OS 110. [
상기 보안OS(120)의 보안커널(130)은 상기 사운드처리부(150)의 스피커 내지 마이크로폰에 접근하여 제어하기 위한 별도의 보안 드라이버를 구비하며, 상기 보안커널(130)이 상기 사운드처리부(150)에 접근하여 제어하는 경우 상기 일반OS(110)는 상기 보안OS(120)가 제어하는 사운드처리부(150)에 접근할 수 없다.
The secure kernel 130 of the secure OS 120 has a separate security driver for accessing and controlling the speaker or microphone of the sound processing unit 150. The secure kernel 130 may be provided in the sound processing unit 150, The general OS 110 can not access the sound processing unit 150 controlled by the secure OS 120. In this case,
상기 무선망 통신부(160)와 근거리 무선 통신부(155)는 상기 무선단말(100)을 통신망에 접속시키는 통신수단으로서, 바람직하게 상기 무선단말(100)은 무선망 통신부(160)를 기본 통신수단으로 구비할 수 있으며, 하나 이상의 근거리 무선 통신부(155)를 더 구비할 수 있다.
The wireless network communication unit 160 and the short-range wireless communication unit 155 are communication means for connecting the wireless terminal 100 to a communication network. Preferably, the wireless terminal 100 is a wireless communication unit And may further include one or more short-range wireless communication units 155. FIG.
상기 무선망 통신부(160)는 상기 무선단말(100)을 기지국을 경유하는 무선 통신망에 접속시키는 통신수단의 총칭으로서, 특정 주파수 대역의 무선 주파수 신호를 송수신하는 안테나, RF모듈, 기저대역모듈, 신호처리모듈을 적어도 하나 포함한다. 상기 무선망 통신부(160)는 상기 무선단말(100)을 교환기를 경유하는 통화채널과 데이터채널을 포함하는 통화망에 연결할 수 있으며, 경우에 따라 상기 교환기를 경유하지 않고 패킷 통신 기반의 무선망 데이터 통신(예컨대, 인터넷)을 제공하는 데이터망에 연결할 수 있다.
The wireless network communication unit 160 is a collective term for communication means for connecting the wireless terminal 100 to a wireless communication network via a base station and includes an antenna for transmitting and receiving a radio frequency signal of a specific frequency band, And at least one processing module. The wireless network communication unit 160 may connect the wireless terminal 100 to a call network including a call channel and a data channel via the exchange and may transmit the packet data based wireless network data To a data network providing communication (e.g., the Internet).
본 발명의 실시 방법에 따르면, 상기 무선망 통신부(160)는 CDMA/WCDMA/LTE 규격에 따라 이동 통신망에 접속, 위치등록, 호처리, 통화연결, 데이터통신, 핸드오프를 적어도 하나 수행하는 이동 통신 구성을 포함한다. 한편 당업자의 의도에 따라 상기 무선망 통신부(160)는 IEEE 802.16 관련 규격에 따라 휴대인터넷에 접속, 위치등록, 데이터통신, 핸드오프를 적어도 하나 수행하는 휴대 인터넷 통신 구성을 더 포함할 수 있으며, 상기 무선망 통신부(160)가 제공하는 무선 통신 구성에 의해 본 발명이 한정되지 아니함을 명백히 밝혀두는 바이다. 즉, 상기 무선망 통신부(160)는 무선 구간의 주파수 대역이나 통신망의 종류 또는 프로토콜에 무관하게 셀 기반의 기지국을 통해 무선 통신망에 접속하는 구성부의 총칭이다.
According to an embodiment of the present invention, the wireless network communication unit 160 may be a mobile communication unit that performs at least one of connection to a mobile communication network, location registration, call processing, call connection, data communication, and handoff according to the CDMA / WCDMA / ≪ / RTI > Meanwhile, according to the intention of a person skilled in the art, the wireless network communication unit 160 may further include a portable Internet communication structure for performing at least one of connection to the portable Internet, location registration, data communication and handoff according to the IEEE 802.16 standard, It is evident that the present invention is not limited by the wireless communication configuration provided by the wireless network communication unit 160. [ That is, the wireless network communication unit 160 is a general term for a configuration unit that connects to a wireless communication network through a cell-based base station irrespective of a frequency band of a wireless section, a type of a communication network, or a protocol.
상기 일반OS(110)의 일반커널(115)은 상기 무선망 통신부(160)에 접근하여 제어하기 위한 드라이버를 구비하며, 상기 일반커널(115)이 상기 무선망 통신부(160)에 접근하여 제어하는 경우 상기 보안OS(120)는 상기 일반OS(110)가 제어하는 무선망 통신부(160)에 접근할 수 없다.
The general kernel 115 of the general OS 110 includes a driver for accessing and controlling the wireless network communication unit 160. The general kernel 115 accesses and controls the wireless network communication unit 160 The security OS 120 can not access the wireless network communication unit 160 controlled by the general OS 110. [
상기 보안OS(120)의 보안커널(130)은 상기 무선망 통신부(160)에 접근하여 제어하기 위한 별도의 보안 드라이버를 구비하며, 상기 보안커널(130)이 상기 무선망 통신부(160)에 접근하여 제어하는 경우 상기 일반OS(110)는 상기 보안OS(120)가 제어하는 무선망 통신부(160)에 접근할 수 없다.
The secure kernel 130 of the secure OS 120 has a separate security driver for accessing and controlling the wireless network communication unit 160. The secure kernel 130 may access the wireless network communication unit 160 The general OS 110 can not access the wireless network communication unit 160 controlled by the secure OS 120. [
상기 근거리 무선 통신부(155)는 일정 거리 이내(예컨대, 10m 내외)에서 무선 주파수 신호를 통신매체로 이용하여 통신세션을 연결하고 이를 기반으로 상기 무선단말(100)을 통신망에 접속시키는 통신수단의 총칭으로서, 바람직하게 와이파이 통신, 블루투스 통신, 공중무선 통신, UWB 중 적어도 하나를 통해 상기 무선단말(100)을 통신망에 접속시킬 수 있다. 본 발명의 실시 방법에 따르면, 상기 근거리 무선 통신부(155)는 무선AP를 통해 상기 무선단말(100)을 패킷 통신 기반의 근거리 무선 데이터 통신을 제공하는 데이터망에 연결할 수 있다.
The short-range wireless communication unit 155 is a generic term of communication means for connecting a communication session using a radio frequency signal within a predetermined distance (for example, about 10 meters) as a communication medium and connecting the wireless terminal 100 to the communication network The wireless terminal 100 can be connected to the communication network through at least one of Wi-Fi communication, Bluetooth communication, public wireless communication, and UWB. According to an embodiment of the present invention, the short-distance wireless communication unit 155 may connect the wireless terminal 100 to a data network providing packet-based short-range wireless data communication through a wireless AP.
상기 일반OS(110)의 일반커널(115)은 상기 근거리 무선 통신부(155)에 접근하여 제어하기 위한 드라이버를 구비하며, 상기 일반커널(115)이 상기 근거리 무선 통신부(155)에 접근하여 제어하는 경우 상기 보안OS(120)는 상기 일반OS(110)가 제어하는 근거리 무선 통신부(155)에 접근할 수 없다.
The general kernel 115 of the general OS 110 includes a driver for accessing and controlling the short range wireless communication unit 155. The general kernel 115 accesses and controls the short range wireless communication unit 155 The secure OS 120 can not access the short range wireless communication unit 155 controlled by the general OS 110. [
상기 보안OS(120)의 보안커널(130)은 상기 근거리 무선 통신부(155)에 접근하여 제어하기 위한 별도의 보안 드라이버를 구비하며, 상기 보안커널(130)이 상기 근거리 무선 통신부(155)에 접근하여 제어하는 경우 상기 일반OS(110)는 상기 보안OS(120)가 제어하는 근거리 무선 통신부(155)에 접근할 수 없다.
The secure kernel 130 of the secure OS 120 has a separate security driver for accessing and controlling the short range wireless communication unit 155 and the secure kernel 130 may access the short range wireless communication unit 155 The general OS 110 can not access the short range wireless communication unit 155 controlled by the secure OS 120. [
상기 NFC부(170)는 근접 거리(예컨대, 10cm 내외)에서 무선 주파수 신호를 통신매체로 이용하여 양방향 근접 무선 통신, 전이중 근접 무선 통신, 반이중 근접 무선 통신 중 하나 이상의 근접 무선 통신을 처리하는 통신 자원의 총칭으로서, 바람직하게 13.56Mz 주파수 대역의 NFC(Near Field Communication) 규격에 따라 근접 무선 통신을 처리할 수 있다.
The NFC unit 170 may be a communication resource for processing one or more proximity wireless communications, such as bi-directional proximity wireless communication, full-duplex proximity wireless communication, and half-duplex proximity wireless communication, using a radio frequency signal as a communication medium at a close distance , And is capable of processing proximity wireless communication according to the NFC (Near Field Communication) standard of the 13.56-MHz frequency band.
상기 일반OS(110)의 일반커널(115)은 상기 NFC부(170)에 접근하여 제어하기 위한 드라이버를 구비하며, 상기 일반커널(115)이 상기 NFC부(170)에 접근하여 제어하는 경우 상기 보안OS(120)는 상기 일반OS(110)가 제어하는 NFC부(170)에 접근할 수 없다.
The general kernel 115 of the general OS 110 includes a driver for accessing and controlling the NFC unit 170. When the general kernel 115 accesses and controls the NFC unit 170, The secure OS 120 can not access the NFC unit 170 controlled by the general OS 110. [
상기 보안OS(120)의 보안커널(130)은 상기 NFC부(170)에 접근하여 제어하기 위한 별도의 보안 드라이버를 구비하며, 상기 보안커널(130)이 상기 NFC부(170)에 접근하여 제어하는 경우 상기 일반OS(110)는 상기 보안OS(120)가 제어하는 NFC부(170)에 접근할 수 없다.
The secure kernel 130 of the secure OS 120 has a separate security driver for accessing and controlling the NFC unit 170. The secure kernel 130 accesses the NFC unit 170 to control The general OS 110 can not access the NFC unit 170 controlled by the secure OS 120. [
상기 USIM 리더부(165)는 ISO/IEC 7816 규격을 기반으로 상기 무선단말(100)에 탑재 또는 이탈착되는 범용가입자식별모듈(Universal Subscriber Identity Module)과 적어도 하나의 데이터셋트를 교환하는 구성의 총칭으로서, 상기 데이터셋트는 APDU(Application Protocol Data Unit)를 통해 반이중 통신 방식으로 교환된다.
The USIM reader unit 165 is a generic term of a configuration for exchanging at least one data set with a universal subscriber identity module mounted or detached from the mobile station 100 based on the ISO / IEC 7816 standard , And the data set is exchanged in a half duplex communication manner through an APDU (Application Protocol Data Unit).
상기 USIM은 상기 ISO/IEC 7816 규격에 따른 IC칩이 구비된 SIM 타입의 카드로서, 상기 USIM 리더부(165)와 연결되는 적어도 하나의 접점을 포함하는 입출력 인터페이스와, 적어도 하나의 IC칩용 프로그램코드와 데이터셋트를 저장하는 IC칩 메모리와, 상기 입출력 인터페이스와 연결되어 상기 무선단말(100)로부터 전달되는 적어도 하나의 명령에 따라 상기 IC칩용 프로그램코드를 연산하거나 상기 데이터셋트를 추출(또는 가공)하여 상기 입출력 인터페이스로 전달하는 프로세서를 포함하여 이루어진다.
The USIM is an SIM type card provided with an IC chip according to the ISO / IEC 7816 standard, and includes an input / output interface including at least one contact connected to the USIM reader unit 165, (Or processing) the program code for the IC chip or extracting (or processing) the data set in accordance with at least one command transmitted from the wireless terminal 100 in connection with the input / output interface To the input / output interface.
본 발명에 따르면, 일반OS(110)에는 일반커널(115)을 이용하여 동작하는 각종 애플리케이션이 탑재되며, 사용자는 상기 일반OS(110)에서 실행된 각종 애플리케이션이 상기 일반커널(115)을 통해 제어되는 화면출력부(140)를 통해 하나 이상의 인터페이스 화면을 표시한 상태에서 상기 일반커널(115)을 통해 제어되는 사용자입력부(145)에 의한 사용자 조작을 수행하며, 이를 기반으로 상기 일반OS(110)의 애플리케이션은 지정된 거래 동작을 수행하여 사용자에게 각종 서비스를 제공한다. 이하, 일반OS(110) 상에서 본 발명에 따라 동작하는 애플리케이션(또는 애플리케이션에 내장되거나 연동하는 프로그램모듈)을 편의상 “프로그램(n)(200)”이라고 한다. 바람직하게, 상기 프로그램(n)(200)은 일반OS(110)에서 실행되는 뱅킹 앱(Banking Application)이나 결제 앱(Payment Application) 또는 인증 앱(Certification Application)과 같이 전자서명을 이용하는 애플리케이션을 포함할 수 있다. 그러나 상기 프로그램(n)(200)이 뱅킹 앱이나 결제 앱 또는 인증 앱으로만 한정되는 것은 결코 아니며, 일반OS(110) 상에서 실행되는 애플리케이션이라면 어떠한 애플리케이션이라도 무방하며, 본 발명의 권리범위에 귀속된다.
According to the present invention, the general OS 110 is loaded with various applications operating using the general kernel 115, and the user can control various applications executed in the general OS 110 through the general kernel 115 The general OS 115 performs a user operation by a user input unit 145 controlled by the general kernel 115 while displaying one or more interface screens through a screen output unit 140. The general OS 115, The application of the present invention performs a designated transaction operation and provides various services to the user. Hereinafter, an application (or a program module embedded in or linked to an application) operating in accordance with the present invention on the general OS 110 is referred to as " program (n) 200 " Preferably, the program (n) 200 includes an application using an electronic signature such as a banking application, a payment application, or an authentication application executed in the general OS 110 . However, the program (n) 200 is not limited to a banking application, a payment application, or an authentication application. Any application can be used as long as it is an application running on the general OS 110, and belongs to the scope of the present invention .
본 발명의 실시 방법에 따르면, 상기 일반OS(110)의 프로그램(n)(200)은 OS 구조 상 일반커널(115)의 상위에 구비되며, 일반커널(115)을 이용하여 동작한다.
According to the embodiment of the present invention, the program (n) 200 of the general OS 110 is provided in the upper part of the general kernel 115 on the OS structure and operates using the general kernel 115.
본 발명에 따르면, 보안OS(120)에는 보안커널(130)을 기반으로 동작하는 적어도 하나의 보안 애플리케이션이 탑재된다. 상기 보안OS(120) 상의 보안 애플리케이션은 보안커널(130)을 이용하여 동작하며, 필요에 따라 상기 무선단말(100)의 화면출력부(140), 사용자입력부(145), 사운드처리부(150), 무선망 통신부(160), 근거리 무선 통신부(155) 등의 제어 권한을 획득하여 이를 이용할 수 있다. 이하, 일반OS(110) 상에서 본 발명에 따라 동작하는 보안 애플리케이션(또는 보안 애플리케이션에 내장되거나 연동하는 프로그램모듈)을 편의상 “프로그램(s)(235)”이라고 한다. 바람직하게, 상기 프로그램(s)(235)은 보안OS(120)에서 실행되는 인증서 앱을 포함할 수 있다.
According to the present invention, at least one security application operating on the secure kernel 130 is installed in the secure OS 120. [ The security application on the secure OS 120 operates using the secure kernel 130 and may be connected to the screen output unit 140, the user input unit 145, the sound processing unit 150, The wireless network communication unit 160, the short range wireless communication unit 155, and the like. Hereinafter, a security application (or a program module embedded in or linked to a security application) operating in accordance with the present invention on the general OS 110 is referred to as " program (s) 235 " Preferably, the program (s) 235 may include a certificate application running on the secure OS 120. [
본 발명의 실시 방법에 따르면, 상기 보안OS(120)의 프로그램(s)(235)은 OS 구조 상 보안커널(130)의 상위에 구비되며, 보안커널(130)을 이용하여 동작한다.
According to an embodiment of the present invention, the program (s) 235 of the secure OS 120 is provided in the upper part of the secure kernel 130 on the OS structure and operates using the secure kernel 130.
본 발명의 실시 방법에 따르면, 상기 프로그램(s)(235)은 보안OS(120) 상에서 HSM(135)을 운영하는 프로그램코드를 포함할 수 있다.
According to an embodiment of the present invention, the program (s) 235 may include program code for operating the
본 발명의 실시 방법에 따르면, 상기 프로그램(s)(235)은 상기 NFC부(170)를 통해 무선단말(100)의 외부에 구비된 NFC 기반의 HSM(135)과 연동할 수 있다.
According to the embodiment of the present invention, the program (s) 235 can be interworked with the NFC-based
본 발명에 따르면, 상기 보안OS(120)(또는 일반OS(110)와 보안OS(120) 사이)에는 상기 무선단말(100)의 OS를 일반OS(110)에서 보안OS(120)로 전환하기 위한 일련의 절차를 수행하거나, 또는 보안OS(120)에서 일반OS(110)로 전환하기 위한 일련의 절차를 수행하는 보안 모니터(125)(Secure Monitor)를 구비한다. 상기 보안 모니터(125)는 보안OS(120)의 명령을 사용하므로, 편의상 본 도면1은 상기 보안 모니터(125)가 보안OS(120)에 구비된 것으로 도시하여 설명하기로 한다.
The OS of the wireless terminal 100 is switched from the general OS 110 to the secure OS 120 in the secure OS 120 (or between the general OS 110 and the secure OS 120) Or a security monitor 125 (Secure Monitor) that performs a series of procedures for switching from the security OS 120 to the general OS 110. [ Since the security monitor 125 uses the command of the secure OS 120, FIG. 1 illustrates the security monitor 125 as being provided in the secure OS 120 for the sake of convenience.
상기 보안 모니터(125)는 커널을 통해 SMC(Secure Monitor Call) 명령이 발생하거나, OS전환에 대응하는 IRQ(Interrupt Request) 내지 FIQ(Fast Interrupt Request)가 발생하는 경우에 무선단말(100)의 OS를 전환하는 절차를 수행할 수 있다.
The security monitor 125 monitors whether an SMC (Secure Monitor Call) command is generated through the kernel or an IRQ (Interrupt Request) to FIQ (Fast Interrupt Request) Can be performed.
도면2는 본 발명의 실시 방법에 따른 프로그램의 기능 구성을 도시한 도면이다.
2 is a diagram showing a functional configuration of a program according to an embodiment of the present invention.
보다 상세하게 본 도면2는 일반OS(110)의 프로그램(n)(200)과 보안OS(120)의 프로그램(s)(235)의 기능 구성을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면2를 참조 및/또는 변형하여 상기 프로그램의 기능에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면2에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다.
2 shows the functional configuration of the program (n) 200 of the general OS 110 and the program (s) 235 of the secure OS 120. In the technical field of the present invention, It will be understood by those skilled in the art that various changes and modifications of the program may be made without departing from the spirit and scope of the present invention as defined by the following claims. The technical characteristics are not limited only by the method shown in FIG.
도면2를 참조하면, 상기 보안OS(120)의 프로그램(s)(235)은, 보안OS(120)의 인증서 저장영역 또는 HSM(135)에 사용자의 인증서를 저장하고 관리하는 인증서 저장부(240)를 구비한다.
Referring to FIG. 2, the program (s) 235 of the secure OS 120 includes a certificate storage area 240 of a secure OS 120 or a
상기 프로그램(s)(235)은 보안OS(120)에서 실행되어 보안OS(120)에서 이용하는 인증서를 관리하는 프로그램의 총칭으로서, 바람직하게 인증기관을 통해 발급된 사용자의 인증서를 보안OS(120) 상의 지정된 인증서 저장영역에 저장하여 관리하거나, 또는 보안OS(120)에 구현된 HSM(135)에 인증서를 발급하는 절차를 수행할 수 있다.
The program (s) 235 is a general term for a program executed in the secure OS 120 and managing a certificate used by the secure OS 120. The program (s) 235 preferably stores the certificate of the user issued through the certification authority, Or to issue a certificate to the
상기 보안OS(120)에 탑재된 프로그램(s)(235)이 최초 1회 이상 실행되면, 상기 인증서 저장부(240)는 보안OS(120)의 인증서 저장영역 또는 HSM(135)에 사용자의 인증서가 구비되어 있는지 확인한다. 만약 상기 인증서 저장영역 또는 HSM(135)에 사용자의 인증서가 저장되지 않은 경우, 상기 인증서 저장부(240)는 지정된 절차에 따라 사용자의 인증서를 발급받거나 또는 복사하여 상기 인증서 저장영역 또는 HSM(135)에 저장할 수 있다.
When the program (s) 235 loaded in the secure OS 120 is executed at least once, the certificate storage unit 240 stores the certificate of the user in the certificate storage area of the secure OS 120 or the
본 발명의 일 실시 방법에 따르면, 인증서 발급 절차의 지정된 단말/서버에서 키 쌍(예컨대, 공개키, 개인키 등)을 생성하여 인증기관으로 제출하면, 인증기관은 상기 키 쌍을 통해 인증서를 생성하여 인증기관에 등록한 후 상기 인증서를 발급하며, 상기 인증서 저장부(240)는 상기 무선단말(100)의 무선망 통신부(160) 또는 근거리 무선 통신부(155)를 통해 상기 인증서를 제공받아 보안OS(120)의 인증서 저장영역에 저장할 수 있다.
According to an embodiment of the present invention, when a key pair (e.g., a public key, a private key, etc.) is generated and submitted to a certification authority in a designated terminal / server in a certificate issuing procedure, the certification authority generates a certificate And the certificate storage unit 240 receives the certificate through the wireless network communication unit 160 or the short-range wireless communication unit 155 of the wireless terminal 100, 120) certificate storage area.
한편 보안OS(120)에 소프트웨어적으로 구현 HSM(135)이 구현된 경우, 상기 보안OS(120)의 HSM(135)에서 키 쌍을 생성하면, 상기 인증서 저장부(240)는 상기 무선단말(100)의 무선망 통신부(160) 또는 근거리 무선 통신부(155)를 통해 상기 HSM(135)에서 생성한 공개키를 인증기관으로 제출한다. 한편 상기 인증기관은 HSM(135)에 저장된 키를 활용하여 해당 HSM(135)이 특정한 사용자에게 배부된 것임을 확인할 수 있으며, 이를 위해 상기 인증서 저장부(240)는 상기 HSM(135)에 저장된 키를 상기 인증서버로 제공할 수 있다. 상기 HSM(135)에 저장된 키를 이용하여 상기 HSM(135)이 특정 사용자에게 배부된 것임이 확인되면, 상기 인증기관은 인증서를 생성하여 인증기관에 등록한 후 상기 인증서를 발급하며, 상기 인증서 저장부(240)는 상기 무선단말(100)의 무선망 통신부(160) 또는 근거리 무선 통신부(155)를 통해 상기 인증서를 제공받아 보안OS(120)의 HSM(135)에 저장할 수 있다.
Meanwhile, when the
또는 보안OS(120)에서 무선단말(100)의 NFC부(170)를 통해 외부의 HSM(135)과 연동하는 경우, 상기 NFC부(170)를 통해 연동된 HSM(135)에서 키 쌍을 생성하면, 상기 인증서 저장부(240)는 상기 무선단말(100)의 무선망 통신부(160) 또는 근거리 무선 통신부(155)를 통해 상기 HSM(135)에서 생성한 공개키를 인증기관으로 제출한다. 한편 상기 인증기관은 HSM(135)에 저장된 키를 활용하여 해당 HSM(135)이 특정한 사용자에게 배부된 것임을 확인할 수 있으며, 이를 위해 상기 인증서 저장부(240)는 상기 HSM(135)에 저장된 키를 상기 인증서버로 제공할 수 있다. 상기 HSM(135)에 저장된 키를 이용하여 상기 HSM(135)이 특정 사용자에게 배부된 것임이 확인되면, 상기 인증기관은 인증서를 생성하여 인증기관에 등록한 후 상기 인증서를 발급하며, 상기 인증서 저장부(240)는 상기 무선단말(100)의 무선망 통신부(160) 또는 근거리 무선 통신부(155)를 통해 상기 인증서를 제공받아 상기 NFC부(170)를 통해 상기 HSM(135)에 저장할 수 있다.
Or if the security OS 120 is interworking with the
한편 인증기관을 통해 사용자의 인증서가 기 발급된 경우, 상기 인증서 저장부(240)는 지정된 인증서 복사 절차를 수행하여 사용자에게 기 발급된 인증서를 상기 보안OS(120)의 인증서 저장영역 또는 보안OS(120)에 구현된 HSM(135) 또는 NFC부(170)를 통해 연동하는 HSM(135)으로 복사하여 저장하는 절차를 수행할 수 있다. 이 때 상기 인증서 저장부(240)는 상기 HSM(135)에 저장된 키를 상기 인증서버로 제공할 수 있다. 상기 인증기관에서 상기 HSM(135)에 저장된 키를 이용하여 상기 HSM(135)이 특정 사용자에게 배부된 것임을 확인한 경우, 상기 인증서 저장부(240)는 상기 인증된 HSM(135)으로 사용자에게 기 발급된 인증서를 복사하여 저장할 수 있다. 이하, 편의상 상기 보안OS(120)에 구현된 HSM(135) 또는 NFC부(170)를 통해 연동하는 HSM(135)을 통칭하여 “HSM(135)”이라고 한다.
Meanwhile, when the user's certificate is issued through the certification authority, the certificate storage unit 240 performs the specified certificate copying procedure to transmit the certificate, which has been issued to the user, to the certificate storage area of the secure OS 120 or the secure OS 120 to the
도면2를 참조하면, 상기 보안OS(120)의 프로그램(s)(235)은, 보안OS(120) 상에서 인증서를 이용한 전자서명을 위한 PIN(Personal Identification Number) 인증을 수행하기 위한 PIN 정보를 등록하는 PIN 등록부(245)를 구비한다.
Referring to FIG. 2, the program (s) 235 of the secure OS 120 registers PIN information for performing PIN (Personal Identification Number) authentication for digital signature using a certificate on the secure OS 120 And a PIN registration unit 245 for registering the PIN.
상기 보안OS(120)에 탑재된 프로그램(s)(235)이 최초 1회 이상 실행되면, 상기 PIN 등록부(245)는 보안OS 저장영역 상의 지정된 PIN 저장영역에 전자서명을 위한 PIN 정보가 저장되어 있는지 확인한다. 만약 상기 PIN 저장영역에 PIN 정보가 저장되지 않은 경우, 상기 PIN 등록부(245)는 지정된 절차에 따라 상기 화면출력부(140)와 사용자입력부(145)의 접근 권한을 획득하여 상기 화면출력부(140)에 PIN 등록을 위한 인터페이스를 표시하고, 상기 사용자입력부(145)를 통해 PIN 정보를 입력받아 상기 PIN 저장영역에 저장한다. 바람직하게, 상기 PIN 등록부(245)는 상기 PIN 정보를 지정된 암호화 방식에 따라 암호화하여 상기 PIN 저장영역에 저장할 수 있다. 일반OS(110)는 상기 PIN 저장영역에 접근할 수 없다.
When the program (s) 235 loaded on the secure OS 120 is executed at least once, the PIN registration unit 245 stores PIN information for digital signature in a designated PIN storage area on the secure OS storage area . If the PIN information is not stored in the PIN storage area, the PIN registration unit 245 obtains the access right of the screen output unit 140 and the user input unit 145 according to the designated procedure, And receives the PIN information through the user input unit 145 and stores the PIN information in the PIN storage area. The PIN registration unit 245 may encrypt the PIN information according to a designated encryption scheme and store the encrypted PIN information in the PIN storage area. The general OS 110 can not access the PIN storage area.
도면2를 참조하면, 상기 일반OS(110)의 프로그램(n)(200)은, 지정된 동작을 수행하는 중에 사용자의 인증서를 이용한 전자서명 처리를 판단하는 전자서명 판단부(205)와, 상기 전자서명 처리 시 보안OS(120)로 제공할 서명요청정보를 구성하는 정보 구성부(215)와, 일반커널(115)을 통해 보안OS(120)로 전환하는 일련의 절차를 수행하며, 상기 보안OS(120)의 지정된 프로그램(s)(235)에서 접근 가능한 메모리영역을 할당하거나 또는 기 할당된 메모리영역을 확인하고, 상기 확인된 서명요청정보를 상기 메모리영역으로 제공하는 연동 절차부(220)를 구비하며, 상기 서명요청정보를 통해 서명대상정보를 보안OS(120)로 제공하는 경우 상기 서명대상정보를 확인하는 정보 확인부(210)를 구비할 수 있다.
2, the program (n) 200 of the general OS 110 includes an electronic signature determination unit 205 for determining a digital signature process using a user's certificate while performing a specified operation, The information configuration unit 215 configuring the signature request information to be provided to the security OS 120 in the signing process and a series of procedures for switching to the secure OS 120 through the general kernel 115, (220) for allocating a memory area accessible by the designated program (s) (235) of the memory unit (120) or checking a pre-allocated memory area and providing the confirmed signature request information to the memory area And an information verifying unit 210 for verifying the signature subject information when the signature subject information is provided to the security OS 120 through the signature request information.
상기 프로그램(n)(200)은 일반OS(110)에서 실행되어 뱅킹, 결제, 인증 중 적어도 하나의 지정된 동작을 수행하며, 상기 전자서명 판단부(205)는 상기 지정된 동작을 수행하는 중에 보안OS(120)에 구비된 사용자의 인증서를 이용한 전자서명 처리를 수행할 지 판단한다.
The program (n) 200 is executed in the general OS 110 to perform at least one designated operation among banking, settlement, and authentication, and the digital signature determination unit 205 determines whether the security OS It is determined whether to perform the digital signature processing using the user's certificate provided in the server 120.
만약 상기 보안OS(120)에 구비된 사용자의 인증서를 이용한 전자서명 처리 시, 상기 정보 구성부(215)는 상기 보안OS(120)에 구비된 사용자의 인증서를 이용한 전자서명 처리를 위해 상기 보안OS(120)의 프로그램(s)(235)로 제공할 서명요청정보를 구성한다.
When the electronic signature processing using the user's certificate provided in the secure OS 120 is performed, the information construction unit 215 transmits the digital signature to the secure OS 120 for digital signature processing using the user's certificate provided in the secure OS 120. [ (S) 235 of the signature server 120. The signature request information is provided to the program (s)
본 발명의 제1 서명요청 방식에 따르면, 상기 정보 구성부(215)는 상기 보안OS(120)의 프로그램(s)(235)에서 상기 무선단말(100)의 통신수단을 통해 지정된 서버(180)로부터 서명대상정보를 제공받기 위한 정보를 포함하는 서명요청정보를 구성할 수 있다. 바람직하게, 상기 서명요청정보는 상기 프로그램(n)(200)의 지정된 동작 중에 전자서명 처리해야 할 서명대상정보를 제공하는 서버정보, 상기 서명대상정보를 저장한 저장매체의 주소정보, 지정된 서버(180)에 구비된 서명대상정보를 식별하는 식별 값 중 적어도 하나 또는 둘 이상의 조합을 포함할 수 있다. 바람직하게, 상기 서명대상정보는 인증서 로그인을 위한 인증정보, 사용자 인증을 위한 인증정보, 상기 일반OS(110)의 프로그램(n)(200)을 통해 수행되는 거래 동작에 대응하는 거래의 부인을 방지하기 위한 거래정보 중 적어도 하나를 포함할 수 있다.
According to the first signature requesting method of the present invention, the information constructing unit 215 may be configured to allow the server 180 specified in the program (s) 235 of the secure OS 120 through the communication means of the wireless terminal 100, The signature request information including information for receiving signature object information from the signature request information. Preferably, the signature request information includes at least one of server information providing signature target information to be subjected to electronic signature processing during a specified operation of the program (n) 200, address information of a storage medium storing the signature target information, 180, and the identification value for identifying the signature subject information included in the signature information. Preferably, the signature subject information may include authentication information for certificate login, authentication information for user authentication, and a denial of a transaction corresponding to a transaction operation performed through the program (n) 200 of the general OS 110 And < RTI ID = 0.0 > a < / RTI >
본 발명의 제2 서명요청 방식에 따르면, 상기 정보 확인부(210)는 상기 프로그램(n)(200)의 지정된 동작과 연계하여 전자서명할 서명대상정보를 확인하고, 상기 정보 구성부(215)는 상기 서명대상정보를 포함하는 서명요청정보를 구성할 수 있다. 바람직하게, 상기 서명대상정보는 인증서 로그인을 위한 인증정보, 사용자 인증을 위한 인증정보, 상기 일반OS(110)의 프로그램(n)(200)을 통해 수행되는 거래 동작에 대응하는 거래의 부인을 방지하기 위한 거래정보 중 적어도 하나를 포함할 수 있다.
According to the second signature requesting method of the present invention, the information verifying unit 210 checks the signature subject information to be digitally signed in association with the designated operation of the program (n) 200, May configure signature request information including the signature subject information. Preferably, the signature subject information may include authentication information for certificate login, authentication information for user authentication, and a denial of a transaction corresponding to a transaction operation performed through the program (n) 200 of the general OS 110 And < RTI ID = 0.0 > a < / RTI >
상기 정보 확인부(210)의 제1 서명대상 확인 방식에 따르면, 상기 정보 확인부(210)는 상기 무선단말(100)의 통신수단을 통해 지정된 서버(180)로부터 서명대상정보를 수신할 수 있다. 예를들어, 상기 프로그램(n)(200)이 뱅킹 앱인 경우, 상기 정보 확인부(210)는 지정된 뱅킹서버(180)로부터 상기 뱅킹 앱을 통한 뱅킹거래에 대응하는 거래정보를 포함하는 서명대상정보를 수신할 수 있다. 또는 상기 프로그램(n)(200)이 결제 앱인 경우, 상기 정보 확인부(210)는 지정된 결제서버(180)로부터 상기 결제 앱을 통한 지불결제할 결제정보를 포함하는 서명대상정보를 수신할 수 있다. 또는 상기 프로그램(n)(200)이 인증 앱인 경우, 상기 정보 확인부(210)는 지정된 인증서버(180)로부터 상기 인증 앱을 통한 인증을 위한 인증정보를 포함하는 서명대상정보를 수신할 수 있다.
According to the first signature verification method of the information verification unit 210, the information verification unit 210 can receive signature subject information from the designated server 180 through the communication means of the wireless terminal 100 . For example, when the program (n) 200 is a banking app, the information checking unit 210 receives from the designated banking server 180 signature target information including transaction information corresponding to a banking transaction through the banking app Lt; / RTI > Alternatively, when the program (n) 200 is a payment application, the information verification unit 210 may receive signature target information including payment information for payment through the payment application from the designated payment server 180 . Alternatively, when the program (n) 200 is an authentication application, the information verification unit 210 may receive signature target information including authentication information for authentication through the authentication application from the designated authentication server 180 .
상기 정보 확인부(210)의 제2 서명대상 확인 방식에 따르면, 상기 정보 확인부(210)는 상기 프로그램(n)(200)의 지정된 동작 중에 서명대상정보를 생성할 수 있다. 예를들어, 상기 프로그램(n)(200)이 뱅킹 앱인 경우, 상기 정보 확인부(210)는 상기 뱅킹 앱을 통해 입력된 거래정보를 포함하는 서명대상정보를 생성할 수 있다. 또는 상기 프로그램(n)(200)이 결제 앱인 경우, 상기 정보 확인부(210)는 결제 앱을 통해 입력된 결제정보를 포함하는 서명대상정보를 생성할 수 있다. 또는 상기 프로그램(n)(200)이 인증 앱인 경우, 상기 정보 확인부(210)는 인증 절차에 이용될 인증정보(예컨대, 무선단말(100)의 MIN, IMSI, IMEI 등)를 포함하는 서명대상정보를 생성할 수 있다.
According to the second signature verification method of the information verification unit 210, the information verification unit 210 can generate signature subject information during the designated operation of the program (n) 200. [ For example, when the program (n) 200 is a banking app, the information checking unit 210 may generate signature information including transaction information input through the banking app. Alternatively, when the program (n) 200 is a payment application, the information verification unit 210 can generate signature target information including payment information inputted through the payment application. Or the program (n) 200 is an authenticated app, the information verifying unit 210 verifies whether or not the program (n) 200 is a signature object including authentication information (e.g. MIN, IMSI, IMEI, etc. of the wireless terminal 100) Information can be generated.
상기 정보 확인부(210)의 제3 서명대상 확인 방식에 따르면, 상기 정보 확인부(210)는 상기 제1 내지 제2 서명대상 확인 방식을 조합하여 서명대상정보를 확인할 수 있다. 예를들어, 상기 서명대상정보 중 일부는 지정된 서버(180)로부터 수신되고 다른 일부는 프로그램(n)(200)의 지정된 동작 중에 생성될 수 있다.
According to the third signature verification method of the information verification unit 210, the information verification unit 210 can verify the signature subject information by combining the first and second signature verification methods. For example, some of the signature subject information may be received from a designated server 180 and some of the signature subject information may be generated during a specified operation of the program (n)
본 발명의 제3 서명요청 방식에 따르면, 상기 정보 구성부(215)는 상기 제1 내지 제2 서명요청 방식을 조합하여 서명요청정보를 구성할 수 있다. 예를들어, 상기 정보 구성부(215)는 상기 정보 확인부(210)를 통해 확인된 서명대상정보의 적어도 일부를 포함하고, 상기 보안OS(120)의 프로그램(s)(235)가 무선단말(100)의 통신수단을 이용하여 다른 일부의 서명대상정보를 획득하기 위한 정보를 포함하는 서명요청정보를 구성할 수 있다.
According to the third signature requesting method of the present invention, the information constructing unit 215 may construct the signature request information by combining the first and second signature requesting methods. For example, the information constructing unit 215 may include at least a part of the signature target information confirmed through the information verifying unit 210, and the program (s) 235 of the secure OS 120 may be included in the wireless terminal It is possible to configure signature request information including information for acquiring another part of signature subject information using the communication means of the mobile terminal 100. [
상기 연동 절차부(220)는 상기 일반OS(110)에 상기 프로그램(n)(200)이 탑재되어 적어도 최초 1회 실행 시, 상기 무선단말(100)에 보안OS(120)가 탑재되어 있는지 확인하며, 상기 무선단말(100)에 보안OS(120)가 탑재된 경우 상기 보안OS(120)에 사용자의 인증서를 관리하고 전자서명을 처리하는 프로그램(s)(235)을 탑재하기 위한 일련의 절차를 수행할 수 있다. 만약 상기 보안OS(120)에 사용자의 인증서를 관리하고 전자서명을 처리하는 프로그램(s)(235)이 탑재된 경우, 상기 연동 절차부(220)는 상기 보안OS(120)에 상기 프로그램(s)(235)이 탑재되었음을 식별하는 정보 및/또는 상기 보안OS(120)에 탑재된 프로그램(s)(235)을 식별하는 정보 중 적어도 하나의 식별정보를 일반OS 저장영역에 저장하여 유지할 수 있다.
The interworking procedure unit 220 checks whether the secure OS 120 is loaded in the wireless terminal 100 when the program (n) 200 is loaded into the general OS 110 at least for the first time, And a program (s) 235 for managing the user's certificate and processing the digital signature to the secure OS 120 when the secure OS 120 is installed in the wireless terminal 100 Can be performed. If the secure OS 120 manages the user's certificate and processes a digital signature, the interworking procedure unit 220 sends the program s (s) 235 to the secure OS 120, (S) 235 mounted on the secure OS 120 and information identifying the program (s) 235 mounted on the secure OS 120 may be stored and held in the general OS storage area .
상기 정보 구성부(215)를 통해 서명요청정보를 구성한 경우, 상기 연동 절차부(220)는 상기 식별정보를 근거로 상기 보안OS(120)에 상기 프로그램(s)(235)이 탑재되어 있음을 확인하거나 및/또는 상기 보안OS(120)에 탑재된 프로그램(s)(235)을 확인한다.
When the signature request information is configured through the information configuration unit 215, the linkage procedure unit 220 determines that the program (s) 235 is loaded on the secure OS 120 based on the identification information (S) 235 loaded on the secure OS 120. The program (s)
상기 서명요청정보를 구성하거나 및/또는 상기 식별정보를 통해 상기 보안OS(120)의 프로그램(s)(235)을 확인한 경우, 상기 연동 절차부(220)는 일반커널(115)을 통해 상기 보안OS(120)로 전환하기 직전의 프로그램(n)(200)에 대한 상태정보를 유지시킨다. 바람직하게, 상기 연동 절차부(220)는 무선단말(100)의 OS를 일반OS(110)에서 보안OS(120)로 전환하는 시점에 일반커널(115)을 통해 상기 사용자의 인증서를 관리하고 전자서명을 처리하는 프로그램(s)(235)의 상태정보를 일반OS 저장영역에 저장함으로써, 상기 무선단말(100)의 OS가 일반OS(110)에서 보안OS(120)로 전환된 후 다시 보안OS(120)에서 일반OS(110)로 전환되는 경우에 상기 프로그램(n)(200)의 상태(예컨대, 프로그램(n)(200)의 인터페이스 화면 상태, 프로그램(n)(200)의 통신세션 상태 등)를 유지하도록 할 수 있다.
(S) 235 of the secure OS 120 through the signature request information and / or the identification information, the interworking procedure unit 220 transmits the secure () (N) 200 immediately before switching to the OS 120. The program (n) The interworking procedure unit 220 manages the certificate of the user through the general kernel 115 at the time of switching the OS of the wireless terminal 100 from the general OS 110 to the secure OS 120, The OS of the wireless terminal 100 is switched from the general OS 110 to the secure OS 120 by storing the state information of the program (s) 235 for processing the signature in the general OS storage area, (N) 200, the interface state of the program (n) 200, and the state of the communication session state of the program (n) 200 when switching from the general OS 120 to the general OS 110 Etc.) can be maintained.
본 발명의 실시 방법에 따르면, 상기 연동 절차부(220)는 일반커널(115)을 통해 상기 보안OS(120)로 전환 직전(예컨대, SMC 명령을 통해 보안OS(120)를 구동하기 직전)의 프로그램(n)(200)의 상태정보를 유지시킴으로써, 상기 일반OS(110)를 보안OS(120)로 전환하는 과정에서 상기 프로그램(n)(200)이 초기화되거나 및/또는 상기 일반OS(110)를 보안OS(120)로 전환 절차 중에 페이지폴트가 발생하는 등의 예외상황이 발생하더라도, 상기 무선단말(100)의 OS를 보안OS(120)에서 일반OS(110)로 전환하는 시점에 상기 상태정보를 이용하여 상기 프로그램(n)(200)의 상태를 상기 보안OS(120)로 전환 직전의 상태로 복원할 수 있다.
According to an embodiment of the present invention, the interworking procedure unit 220 may be configured to execute the security OS 120 immediately before switching to the secure OS 120 through the general kernel 115 (for example, immediately before the security OS 120 is driven through the SMC command) The program (n) 200 may be initialized and / or the general OS 110 (n) may be initialized in the process of switching the general OS 110 to the secure OS 120 by maintaining the state information of the program When the OS of the wireless terminal 100 is switched from the secure OS 120 to the normal OS 110 even if an exceptional situation occurs such as a page fault occurs during the procedure of switching from the secure OS 120 to the secure OS 120, The state of the program (n) 200 can be restored to the state immediately before switching to the secure OS 120 using the state information.
상기 서명요청정보를 구성하거나 및/또는 상기 보안OS(120)의 프로그램(s)(235)을 확인하거나 및/또는 상기 프로그램(n)(200)의 상태정보를 저장한 경우, 상기 연동 절차부(220)는 일반커널(115)을 통해 보안OS(120)를 구동하는 SMC 명령을 발생시킨다. 상기 보안 모니터(125)는 상기 SMC 명령의 유효성을 검증하고, 검증 성공한 경우에 SMC 명령에 따라 보안OS(120)를 구동하는 절차를 수행한다.
(S) 235 of the secure OS 120 and / or the state information of the program (n) 200 is stored in the signature request information and / or the signature request information, (220) generates an SMC command for driving the secure OS (120) through the general kernel (115). The security monitor 125 verifies the validity of the SMC command and performs a procedure for driving the secure OS 120 according to the SMC command when the verification is successful.
한편 상기 보안OS(120)의 구동을 개시하기 전, 중, 직후의 어느 지정된 일 시점에, 상기 연동 절차부(220)는 상기 프로그램(n)(200)에서 접근 가능하면서 상기 보안OS(120)의 지정된 프로그램(s)(235)에서 접근 가능한 메모리영역을 할당하거나, 또는 기 할당된 메모리영역을 확인한다. 예를들어, 상기 할당되는 메모리영역은 일반OS(110)의 프로그램(n)(200)과 보안OS(120)의 프로그램(s)(235) 사이의 프로세스 간 통신을 위한 공유메모리를 포함할 수 있다. 통상의 공유메모리가 동일한 OS 내의 프로세스 간 통신을 위해 해당 OS 내에 할당되는 반면, 본원의 메모리영역은 일반OS(110)와 보안OS(120)를 포함하는 이종의 OS에서 실행된 이종의 프로세스 간 통신을 제공하기 위한 공유메모리라는 점에서 기술적 특징을 지닌다.
Meanwhile, at a predetermined point in time before, during, or after the start of the operation of the secure OS 120, the linkage procedure unit 220 accesses the secure OS 120 while being accessible from the program (n) (S) 235 of the memory area 233 or identifies the pre-allocated memory area. For example, the allocated memory area may include a shared memory for inter-process communication between the program (n) 200 of the general OS 110 and the program (s) 235 of the secure OS 120 have. While the normal shared memory is allocated in the OS for inter-process communication within the same OS, the memory region of the present invention is used for inter-process communication of heterogeneous processes executed in heterogeneous OS including general OS 110 and secure OS 120 Which is a shared memory for providing the data.
본 발명의 제1 메모리영역 할당 실시 방식에 따르면, 상기 연동 절차부(220)는 일반OS(110) 상에 상기 메모리영역을 할당하거나, 또는 상기 일반OS(110) 상에 할당된 메모리영역을 확인할 수 있다. 이 경우 상기 보안 모니터(125)는 상기 일반OS(110)의 메모리영역에 접근하거나 모니터링할 수 있으며, 상기 보안OS(120)의 프로그램(s)(235)은 보안 모니터(125)를 통해 상기 일반OS(110)의 메모리영역에 간접적으로 접근(또는 참조 접근)할 수 있다.
According to the first memory area allocation method of the present invention, the linking procedure unit 220 allocates the memory area on the general OS 110 or confirms the memory area allocated on the general OS 110 . In this case, the security monitor 125 may access or monitor the memory area of the general OS 110, and the program (s) 235 of the secure OS 120 may be accessed through the security monitor 125 (Or access to) the memory area of the OS 110 indirectly.
본 발명의 제2 메모리영역 할당 실시 방식에 따르면, 상기 연동 절차부(220)는 보안 모니터(125) 상에 상기 메모리영역을 할당하거나, 또는 상기 보안 모니터(125)에 할당된 메모리영역을 확인할 수 있다. 이 경우 상기 연동 절차부(220)는 SMC 명령을 통해 상기 보안 모니터(125)에 상기 메모리영역을 할당하거나 또는 상기 보안 모니터(125)에 할당된 메모리영역을 확인할 수 있다.
According to the second memory area allocation method of the present invention, the linking procedure unit 220 allocates the memory area on the security monitor 125 or the memory area allocated to the security monitor 125 have. In this case, the interworking procedure unit 220 can allocate the memory area to the security monitor 125 or check the memory area allocated to the security monitor 125 through the SMC command.
본 발명의 제3 메모리영역 할당 실시 방식에 따르면, 상기 연동 절차부(220)는 상기 프로그램(n)(200)에서 접근(또는 접속) 가능하며 또한 보안OS(120)의 프로그램(s)(235)에서 접근(또는 접속) 가능한 네트워크 상의 보안서버(180)에 상기 메모리영역을 할당하거나, 또는 상기 보안서버(180)에 할당된 메모리영역을 확인할 수 있다. 상기 메모리영역이 네트워크 상의 보안서버(180)에 할당되는 경우, 상기 일반OS(110)의 프로그램(n)(200)과 보안OS(120)의 프로그램(s)(235)은 각기 상기 보안서버(180)와 통신하여 상기 메모리영역에 주고받을 데이터를 읽거나 쓸 수 있다.
According to the third memory area allocation method of the present invention, the interworking procedure unit 220 can access (or access) the program (n) 200 and can also access the program (s) 235 (Or connect) to a security server 180 on a network capable of accessing (or connecting to) the security server 180, or can identify a memory area allocated to the security server 180. When the memory area is allocated to the security server 180 on the network, the program (n) 200 of the general OS 110 and the program (s) 235 of the secure OS 120 are connected to the security server 180 180) to read or write data to / from the memory area.
상기 연동 절차부(220)는 상기 할당된 메모리영역을 참조하는 일반OS(110) 측의 프로세스로 상기 프로그램(n)(200)을 설정할 수 있다. 바람직하게, 상기 연동 절차부(220)는 상기 메모리영역에 상기 프로그램(n)(200)의 PID(Process ID)를 제공함으로써, 상기 보안OS(120)의 프로그램(s)(235)이 동작한 후 상기 프로그램(s)(235)이 상기 할당된 메모리영역에 기록한 데이터를 읽어올 일반OS(110) 측의 프로세스로서 상기 프로그램(n)(200)을 설정할 수 있다.
The interworking procedure unit 220 can set the program (n) 200 as a process of the general OS 110 that refers to the allocated memory area. Preferably, the interworking procedure unit 220 provides a PID (Process ID) of the program (n) 200 to the memory area so that the program (s) 235 of the secure OS 120 operates The program (s) 235 can set the program (n) 200 as a process of the general OS 110 side to read data recorded in the allocated memory area.
상기 제1 내지 3 메모리영역 할당 실시 방식 중 적어도 하나를 통해 상기 보안OS(120)의 프로그램(s)(235)에서 접근 가능한 메모리영역이 할당되거나 또는 기 할당된 메모리영역이 확인된 경우, 상기 연동 절차부(220)는 상기 보안OS(120)에서 상기 할당된 메모리영역에 접근 가능한 프로세스로서 지정된 프로그램(s)(235)을 설정할 수 있다. 예를들어, 상기 연동 절차부(220)는 상기 할당된 메모리영역의 주소 정보(예컨대, RAM 상의 메모리주소, 또는 프로세서에 구비된 RAM의 메모리주소, 또는 상기 메모리영역이 네트워크 상에 할당된 경우 상기 메모리영역을 식별하는 네트워크 주소(및/또는 식별 값) 등)를 확인하고, 상기 보안 모니터(125)를 통해 상기 보안OS(120)의 프로그램(s)(235)이 사용하는 가상의 메모리 주소 공간으로 매핑할 수 있다.
If a memory area accessible by the program (s) 235 of the secure OS 120 is allocated through at least one of the first to third memory area allocation schemes, or if a pre-allocated memory area is identified, The procedure unit 220 may set a program (s) 235 designated as a process accessible to the allocated memory area in the secure OS 120. [ For example, the interworking procedure unit 220 may store the address information of the allocated memory area (e.g., a memory address on a RAM or a memory address of a RAM provided in the processor, (S) 235 of the secure OS 120 via the security monitor 125 and a network address (and / or identification value) identifying the memory area, . ≪ / RTI >
상기 보안OS(120)의 프로그램(s)(235)에서 접근 가능한 메모리영역이 할당/확인되거나 및/또는 상기 메모리영역을 상기 보안OS(120)의 프로그램(s)(235)에서 접근 가능하게 설정한 경우, 상기 연동 절차부(220)는 상기 보안 모니터(125)와 연동하여 상기 일반OS(110)의 프로세스 중 상기 프로그램(n)(200)을 제외한 다른 프로세스에서 상기 메모리영역에 접근하지 못하도록 설정할 수 있다. 바람직하게, 상기 연동 절차부(220)는 상기 보안 모니터(125)의 메모리 접근 제어 기능을 이용하여 상기 일반OS(110)의 프로세스 중 상기 프로그램(n)(200)을 제외한 다른 프로세스에서 상기 메모리영역에 접근하지 못하도록 설정할 수 있다.
(S) 235 of the secure OS 120 are allocated / identified and / or the memory area is made accessible (s) 235 of the secure OS 120 In this case, the interworking procedure unit 220 interlocks with the security monitor 125 to prevent access to the memory area from other processes except for the program (n) 200 of the processes of the general OS 110 . Preferably, the interworking procedure unit 220 uses the memory access control function of the security monitor 125 to control the process of the general OS 110 in a process other than the program (n) Can not be accessed.
한편 상기 제1 내지 3 메모리영역 할당 실시 방식 중 적어도 하나를 통해 상기 보안OS(120)의 프로그램(s)(235)에서 접근 가능한 메모리영역이 할당되거나 또는 기 할당된 메모리영역이 확인되거나, 및/또는 상기 메모리영역의 접근 제어 절차가 수행된 경우, 상기 연동 절차부(220)는 상기 정보 구성부(215)를 통해 구성된 서명요청정보를 상기 메모리영역으로 제공함으로써, 상기 보안OS(120)의 프로그램(s)(235)이 상기 서명요청정보를 서명대상정보를 확인하여 사용자의 인증서를 ㅌ오해 전자서명하게 처리한다.
Meanwhile, a memory area accessible by the program (s) 235 of the secure OS 120 may be allocated, or a pre-allocated memory area may be identified through at least one of the first to third memory area allocation schemes, and / Or the access control procedure of the memory area is performed, the linkage procedure unit 220 provides the signature request information configured through the information configuration unit 215 to the memory area, (s) 235 checks the signing request information for signing information and processes the user's certificate as a misidentified electronic signature.
상기 SMC 명령에 의해 보안OS(120)가 구동되고 상기 보안OS(120)의 프로그램(s)(235)이 실행되면, 상기 할당/확인된 메모리영역의 접근 권한은 상기 보안 모니터(125)에 의해 상기 보안OS(120)의 지정된 프로그램(s)(235)에게 부여된다.
When the secure OS 120 is activated by the SMC command and the program (s) 235 of the secure OS 120 is executed, the access right of the allocated / confirmed memory area is managed by the security monitor 125 Is assigned to the designated program (s) 235 of the secure OS 120.
도면2를 참조하면, 상기 보안OS(120)의 프로그램(s)(235)은, 상기 제1 내지 3 메모리영역 할당 실시 방식 중 적어도 하나를 통해 할당된 메모리영역을 확인하고 상기 메모리영역을 참조하기 위한 절차를 수행하는 연동 처리부(250)를 구비한다.
Referring to FIG. 2, the program (s) 235 of the secure OS 120 may identify a memory area allocated through at least one of the first to third memory area allocation methods and refer to the memory area And an interlock processing unit 250 for performing a procedure for interlocking.
상기 보안OS(120)가 구동되고 상기 보안OS(120)의 프로그램(s)(235)이 실행되면, 상기 연동 처리부(250)는 상기 보안 모니터(125)를 통해 수행되는 동작 절차와 연동하여 상기 제1 내지 3 메모리영역 할당 실시 방식 중 적어도 하나를 통해 할당된 메모리영역을 확인하고, 상기 프로그램(s)(235)에서 상기 메모리영역에 접근하기 위한 일련의 절차를 수행한다. 바람직하게, 상기 연동 처리부(250)는 상기 메모리영역에 대한 접근 권한을 획득하는 절차를 수행할 수 있다.
When the secure OS 120 is activated and the program (s) 235 of the secure OS 120 is executed, the interworking processor 250 interlocks with the operation procedure performed through the security monitor 125, (S) 235 to access the memory area through at least one of the first to third memory area allocation methods. Preferably, the interworking processor 250 may perform a procedure of obtaining an access right to the memory area.
한편 상기 연동 처리부(250)는 프로그램(s)(235)에서 상기 메모리영역을 참조하기 전에 언제라도 상기 메모리영역을 확인할 수 있으며, 상기 연동 처리부(250)가 상기 메모리영역을 확인하는 특정한 시점에 의해 본 발명이 한정되지 아니한다.
Meanwhile, the interworking processor 250 may check the memory area at any time before referring to the memory area in the program (s) 235, and the interworking processor 250 may check the memory area at a specific time The present invention is not limited thereto.
도면2를 참조하면, 상기 보안OS(120)의 프로그램(s)(235)은, 상기 PIN 등록부(245)를 통해 보안OS(120)의 지정된 PIN 저장영역에 사용자의 PIN 정보가 저장된 경우, 상기 무선단말(100)의 입력수단을 통해 PIN 정보를 입력받아 유효성을 인증하는 PIN 인증부(255)를 구비할 수 있다.
2, when the user's PIN information is stored in the designated PIN storage area of the secure OS 120 through the PIN registration unit 245, the program (s) 235 of the secure OS 120 stores the PIN And a PIN authentication unit 255 for receiving the PIN information through the input unit of the wireless terminal 100 and authenticating the validity.
상기 보안OS(120)가 구동되고 상기 보안OS(120)의 프로그램(s)(235)이 실행되면, 상기 PIN 인증부(255)는 지정된 절차에 따라 상기 화면출력부(140)와 사용자입력부(145)의 접근 권한을 획득하여 상기 화면출력부(140)에 PIN 인증을 위한 인터페이스를 표시하고, 상기 사용자입력부(145)를 통해 PIN 정보를 입력받은 후, 상기 PIN 저장영역에 저장된 PIN 정보와 비교(또는 검증 연산)을 수행하여 상기 입력된 PIN 정보의 유효성을 인증할 수 있다.
When the secure OS 120 is activated and the program (s) 235 of the secure OS 120 is executed, the PIN authenticator 255 accesses the screen output unit 140 and the user input unit 145, displays an interface for PIN authentication on the screen output unit 140, inputs PIN information through the user input unit 145, and compares the PIN information with PIN information stored in the PIN storage area (Or verification operation) to verify the validity of the input PIN information.
도면2를 참조하면, 상기 보안OS(120)의 프로그램(s)(235)은, 상기 프로그램(n)(200)과 공유된 메모리영역으로부터 서명요청정보를 확인하는 서명 연동부(260)와, 상기 서명요청정보를 근거로 서명대상정보를 확인하는 서명대상 확인부(265)를 구비한다.
Referring to FIG. 2, the program (s) 235 of the secure OS 120 includes a signature interworking unit 260 for checking signature request information from a memory area shared with the program (n) 200, And a signature verification unit 265 for verifying signature subject information based on the signature request information.
상기 보안OS(120)가 구동되고 상기 보안OS(120)의 프로그램(s)(235)이 실행되거나 및/또는 상기 PIN 인증이 성공한 경우, 상기 서명 연동부(260)는 상기 연동 처리부(250)와 연계하여 상기 일반OS(110)의 프로그램(n)(200)과 공유된 메모리영역으로부터 상기 일반OS(110)의 거래 동작에 대응하는 서명요청정보를 확인한다. 바람직하게, 상기 서명요청정보는 상기 프로그램(s)(235)이 통신수단을 이용하여 지정된 서버(180)로부터 직접 서명대상정보(또는 서명대상정보의 일부)를 제공받기 위한 정보를 포함하거나, 또는 상기 프로그램(n)(200)에서 확인하여 제공한 서명대상정보(또는 서명대상정보의 일부)를 포함할 수 있다.
When the secure OS 120 is activated and the program (s) 235 of the secure OS 120 is executed and / or the PIN authentication is successful, the signature interworking unit 260 transmits the signature to the interworking processing unit 250, And checks the signature request information corresponding to the transaction operation of the general OS 110 from the memory area shared with the program (n) 200 of the general OS 110 in association with the general OS 110. Preferably, the signature request information includes information for the program (s) 235 to receive signature target information (or part of the signature target information) directly from the specified server 180 using the communication means, or And may include signature subject information (or a part of signature subject information) provided by the program (n) 200.
상기 서명요청정보가 확인되면, 상기 서명대상 확인부(265)는 상기 서명요청정보를 이용하여 사용자의 인증서를 통해 전자서명할 서명대상정보를 확인한다. 상기 서명대상정보는 지정된 서버(180)로부터 제공받거나 및/또는 상기 서명요청정보에 포함될 수 있다.
When the signature request information is confirmed, the signature verification unit 265 checks the signature subject information to be digitally signed using the signature of the user using the signature request information. The signature subject information may be provided from the designated server 180 and / or included in the signature request information.
상기 서명요청정보에 지정된 서버(180)로부터 직접 서명대상정보(또는 서명대상정보의 일부)를 제공받기 위한 정보가 포함된 경우, 상기 서명대상 확인부(265)는 상기 서명요청정보를 참조하여 무선단말(100)의 통신수단을 통해 지정된 서버(180)로부터 직접 서명대상정보(또는 서명대상정보의 일부)를 제공받을 수 있다.
When information for directly receiving signature subject information (or part of signature subject information) is included from the server 180 specified in the signature request information, the signature subject confirmation unit 265 refers to the signature request information, The signature target information (or a part of the signature target information) can be provided directly from the designated server 180 through the communication means of the terminal 100. [
한편 상기 서명요청정보에 상기 프로그램(n)(200)에서 제공한 서명대상정보가 포함된 경우, 상기 서명대상 확인부(265)는 상기 서명요청정보에 포함된 서명대상정보(또는 서명대상정보의 일부)를 확인할 수 있다.
Meanwhile, when the signature request information includes signature subject information provided by the program (n) 200, the signature subject verification unit 265 determines whether the signature subject information included in the signature request information Some) can be confirmed.
도면2를 참조하면, 상기 보안OS(120)의 프로그램(s)(235)은, 상기 보안OS(120)의 인증서 저장영역 또는 HSM(135)에 구비된 사용자의 인증서를 확인하는 인증서 확인부(270)와, 상기 인증서로부터 서명키를 추출하는 서명키 추출부(275)와, 상기 서명키를 이용하여 상기 서명대상정보의 전자서명 값을 생성하는 전자서명부(280)와, 상기 무선단말(100)의 통신수단을 이용하여 상기 생성된 전자서명 값(또는 전자서명 값을 포함하는 서명데이터)을 지정된 서버(180)로 전송하는 전자서명 처리부(290)를 구비하며, 상기 전자서명 값(또는 전자서명 값을 포함하는 서명데이터)을 암호화하는 암호 처리부(285)를 구비할 수 있다.
Referring to FIG. 2, the program (s) 235 of the secure OS 120 includes a certificate validation unit for verifying a certificate of a user provided in the certificate storage area of the secure OS 120 or the HSM 135 A signature key extraction unit 275 for extracting a signature key from the certificate, an electronic signature unit 280 for generating an electronic signature value of the signature subject information using the signature key, And an electronic signature processing unit (290) for transmitting the generated digital signature value (or signature data including the digital signature value) to the designated server (180) by using the communication means of the digital signature value And signature data including a signature value).
상기 보안OS(120)가 구동되고 상기 보안OS(120)의 프로그램(s)(235)이 실행되거나 및/또는 상기 PIN 인증이 성공한 경우, 상기 인증서 확인부(270)는 상기 인증서 저장부(240)를 통해 상기 보안OS(120)의 지정된 인증서 저장영역 또는 HSM(135)에 저장된 사용자의 인증서를 확인한다.
When the secure OS 120 is activated and the program (s) 235 of the secure OS 120 is executed and / or the PIN authentication is successful, the certificate validation unit 270 checks the certificate storage unit 240 ) Of the secure OS 120 or the user certificate stored in the
상기 인증서 확인부(270)를 통해 상기 보안OS(120)의 인증서 저장영역 또는 HSM(135)에 구비된 사용자의 인증서가 확인되고, 실시 방법에 따라 상기 PIN 인증이 성공한 경우, 보안OS(120) 상에서 상기 사용자의 인증서를 이용한 서명 절차가 수행된다. 만약 HSM(135)에 사용자의 인증서가 구비되고 상기 인증서를 이용한 서명 절차가 HSM(135)을 통해 수행되는 경우, 상기 인증서 확인부(270)는 상기 HSM(135)으로 상기 서명대상정보를 제공할 수 있다.
If the certificate of the user stored in the certificate storage area of the secure OS 120 or the
상기 서명키 추출부(275) 또는 HSM(135)은 상기 PIN 인증 결과를 근거로 상기 사용자의 인증서로부터 서명키(예컨대, 사용자 개인키 등)를 추출하고, 상기 전자서명부(280) 또는 HSM(135)은 상기 서명키를 통해 상기 서명대상정보를 전자서명하여 전자서명 값을 생성한다.
The signature key extractor 275 or the
본 발명의 제1 전자서명 처리 방식에 따르면, 상기 전자서명 처리부(290)는 상기 무선단말(100)의 통신수단을 통해 상기 서명대상정보의 전자서명 값을 지정된 서버(180)로 전송할 수 있다. 상기 암호 처리부(285)는 지정된 암호방식에 따라 지정된 서버(180)를 통해 복호화되게 상기 전자서명 값을 암호화(예컨대, 사용자 공개키를 통해 암호화)하며, 상기 전자서명 처리부(290)는 상기 무선단말(100)의 통신수단을 통해 상기 암호화된 전자서명 값을 지정된 서버(180)로 전송할 수 있다.
According to the first digital signature processing method of the present invention, the digital signature processing unit 290 can transmit the digital signature value of the signature subject information to the designated server 180 through the communication means of the wireless terminal 100. The encryption processing unit 285 encrypts the digital signature value (for example, encrypts the digital signature value through a user public key) so that the digital signature value is decrypted through the designated server 180 according to the designated encryption method, The encrypted digital signature value may be transmitted to the designated server 180 through the communication means of the terminal 100.
본 발명의 제2 전자서명 처리 방식에 따르면, 상기 전자서명 처리부(290)는 상기 전자서명 값을 포함하는 서명데이터(예컨대, 전자서명 값과 서명대상정보의 조합)를 생성하고, 상기 무선단말(100)의 통신수단을 통해 상기 서명데이터를 지정된 서버(180)로 전송할 수 있다. 상기 암호 처리부(285)는 지정된 암호방식에 따라 지정된 서버(180)를 통해 복호화되게 상기 서명데이터를 암호화(예컨대, 사용자 공개키를 통해 암호화)하며, 상기 전자서명 처리부(290)는 상기 무선단말(100)의 통신수단을 통해 상기 암호화된 서명데이터를 지정된 서버(180)로 전송할 수 있다.
According to the second digital signature processing method of the present invention, the digital signature processing unit 290 generates signature data (for example, a combination of digital signature value and signature subject information) including the digital signature value, 100 to the designated server 180 through the communication means. The encryption processing unit 285 encrypts the signature data (for example, encrypts the signature data through a user public key) so that the encryption processing unit 285 decrypts the signature data through the designated server 180 according to the designated encryption method. 100 to the designated server 180 through the communication means.
도면2를 참조하면, 상기 보안OS(120)의 프로그램(s)(235)은, 상기 프로그램(s)(235)를 통해 보안OS(120) 내에서 처리된 전자서명 결과를 생성하고, 상기 생성된 전자서명 결과를 상기 메모리영역으로 제공하는 결과 제공부(295)를 구비할 수 있다.
Referring to FIG. 2, the program (s) 235 of the secure OS 120 generates an electronic signature result processed in the secure OS 120 through the program (s) 235, And a result providing unit 295 for providing the digital signature result to the memory area.
상기 결과 제공부(295)는 상기 전자서명 처리부(290)를 통해 보안OS(120) 내에서 처리된 전자서명 절차의 전자서명 결과를 생성하고, 상기 연동 처리부(250)를 통해 확인된 메모리영역으로 상기 전자서명 결과를 제공하며, 상기 보안 모니터(125)는 지정된 절차에 따라 상기 무선단말(100)의 OS를 상기 보안OS(120)에서 일반OS(110)로 전환시킨다. 바람직하게, 상기 결과 제공부(295)는 상기 일반OS(110)의 프로그램(n)(200)을 통해 상기 전자서명 결과를 읽어가거나 또는 참조할 수 있도록 상기 메모리영역에 상기 전자서명 결과를 기록할 수 있다.
The result provider 295 generates the digital signature result of the digital signature procedure processed in the secure OS 120 through the digital signature processor 290 and outputs the digital signature result to the memory area confirmed through the interlock processor 250 And provides the digital signature result, and the security monitor 125 converts the OS of the wireless terminal 100 from the secure OS 120 to the normal OS 110 according to a designated procedure. Preferably, the result providing unit 295 reads the digital signature result through the program (n) 200 of the general OS 110 or records the digital signature result in the memory area so that the result can be referred to .
본 발명의 실시 방법에 따라 상기 무선단말(100)의 OS가 상기 일반OS(110)로 전환되면, 상기 프로그램(n)(200)의 연동 절차부(220)는 상기 메모리영역의 접근 권한을 획득하고(또는 기 획득된 권한을 근거로) 상기 메모리영역에 접근한다. 한편 상기 프로그램(n)(200)의 연동 절차부(220)는 상기 상태정보를 이용하여 상기 보안OS(120)로 전환되기 직전의 프로그램(n)(200)의 상태를 복원할 수 있다.
When the OS of the wireless terminal 100 is switched to the general OS 110 according to an embodiment of the present invention, the linkage procedure unit 220 of the program (n) 200 acquires the access right of the memory area (Or based on the acquired rights) to access the memory area. Meanwhile, the interworking procedure unit 220 of the program (n) 200 can restore the status of the program (n) 200 immediately before switching to the secure OS 120 using the status information.
도면2를 참조하면, 상기 일반OS(110)의 프로그램(n)(200)은, 상기 메모리영역을 참조하여 보안OS(120)의 프로그램(s)(235)에서 제공한 전자서명 결과를 확인하는 결과 확인부(225)와, 상기 전자서명 결과를 근거로 전자서명을 이용하는 동작을 수행하게 처리하는 전자서명 이용부(230)를 구비한다.
Referring to FIG. 2, the program (n) 200 of the general OS 110 refers to the memory area and confirms the digital signature result provided by the program (s) 235 of the secure OS 120 A result confirming unit 225, and an electronic signature using unit 230 for performing an operation of using an electronic signature based on the electronic signature result.
상기 무선단말(100)의 OS가 일반OS(110)로 전환되면, 상기 결과 확인부(225)는 상기 연동 절차부(220)와 연동하여 상기 메모리영역을 참조함으로써, 상기 보안OS(120)의 프로그램(s)(235)이 상기 메모리영역으로 제공한 전자서명 결과를 확인한다.
When the OS of the wireless terminal 100 is switched to the general OS 110, the result confirmation unit 225 refers to the memory area in cooperation with the linkage procedure unit 220, The program (s) 235 confirms the digital signature result provided to the memory area.
상기 전자서명 이용부(230)는 상기 전자서명 결과를 판독하여 상기 보안OS(120)를 통해 전자서명 절차가 완료(또는 성공)하였는지 확인하고, 전자서명 절차가 완료(또는 성공)한 경우에 전자서명 기반의 지정된 서비스(예컨대, 뱅킹 서비스, 결제 서비스, 인증 서비스 등)를 제공하기 위한 동작을 수행하게 처리한다.
The digital signature using unit 230 reads the digital signature result and checks whether the digital signature procedure is completed (or succeeded) through the secure OS 120. If the digital signature procedure is completed (or succeeded) And performs an operation for providing a signature-based designated service (for example, a banking service, a payment service, an authentication service, and the like).
도면3은 본 발명의 실시 방법에 따라 보안OS(120)에 프로그램(s)(235)을 준비하는 과정을 도시한 도면이다.
FIG. 3 is a diagram illustrating a process of preparing a program (s) 235 in the secure OS 120 according to an embodiment of the present invention.
보다 상세하게 본 도면3은 보안OS(120)에 프로그램(s)(235)을 탑재하고 사용자의 인증서를 저장하는 과정을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면3을 참조 및/또는 변형하여 상기 프로그램(s)(235)을 준비하는 과정에 대한 다양한 실시 방법(예컨대, 일부 단계가 생략되거나, 또는 순서가 변경된 실시 방법)을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면3에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다.
More specifically, FIG. 3 illustrates a process of loading a program (s) 235 in the secure OS 120 and storing the user's certificate. If the program (s) 235 is stored in the secure OS 120, It will be appreciated that various implementations of the process of preparing the program (s) 235 (e.g., omitting some steps or changing the order) may be inferred by referring to and / or modifying Figure 3, The present invention includes all of the above-described embodiments, and the technical features of the present invention are not limited only by the method shown in FIG.
도면3을 참조하면, 일반OS(110)의 프로그램(n)(200)은 자신이 탑재된 무선단말(100)의 기종(또는 프로세서의 종류)을 기반으로 무선단말(100)에 보안OS(120)(트러스트존)이 탑재되어 있는지 확인한다(300). 만약 상기 무선단말(100)에 보안OS(120)가 탑재되어 있다면, 상기 프로그램(n)(200)은 상기 보안OS(120)에 지정된 프로그램(s)(235)을 탑재하기 위한 절차를 수행한다(305).
Referring to FIG. 3, a program (n) 200 of a general OS 110 is connected to a security OS 120 (or a wireless terminal 100) based on a model (or a type of a processor) ) (Trust zone) is mounted (300). If the security OS 120 is installed in the wireless terminal 100, the program (n) 200 performs a procedure for loading the program (s) 235 specified in the secure OS 120 (305).
지정된 절차에 따라 상기 보안OS(120)에 프로그램(s)(235)이 탑재되고 실행되며(310), 상기 프로그램(s)(235)은 보안OS(120)의 인증서 저장영역 또는 HSM(135)에 사용자의 인증서가 구비되어 있는지 확인한다(315). 만약 상기 보안OS(120)의 인증서 저장영역 또는 HSM(135)에 구비된 사용자의 인증서가 확인되지 않으면, 상기 프로그램(s)(235)은 상기 보안OS(120)의 인증서 저장영역 또는 HSM(135)에 사용자의 인증서를 발급하거나 또는 기 발급된 사용자의 인증서를 상기 보안OS(120)의 인증서 저장영역 또는 HSM(135)으로 복사하는 절차를 수행한다(320).
(S) 235 is loaded (310) in the secure OS 120 according to a designated procedure and the program (s) 235 is loaded into the certificate storage area of the secure OS 120 or the HSM 135 (315) whether the user's certificate is provided. If the certificate storage area of the secure OS 120 or the certificate of the user provided in the
만약 상기 인증서의 발급/복사 절차가 완료되면, 상기 프로그램(s)(235)은 상기 보안OS(120)의 인증서 저장영역 또는 HSM(135)에 사용자의 인증서를 저장하고(325), 상기 보안OS(120)의 PIN 저장영역 또는 HSM(135)에 PIN 정보를 등록하는 절차를 수행하며, 그 결과로서 기 보안OS(120)의 PIN 저장영역 또는 HSM(135)에 PIN 정보를 저장할 수 있다(330).
If the issuance / copying of the certificate is completed, the program (s) 235 stores (325) the user's certificate in the certificate storage area of the secure OS 120 or the HSM 135 (325) The PIN storage area of
상기 보안OS(120)에 상기 프로그램(s)(235)이 탑재되면, 상기 일반OS(110)의 프로그램(n)(200)은 상기 보안OS(120)에 상기 프로그램(s)(235)이 탑재되었음을 식별하는 정보 및/또는 상기 보안OS(120)에 탑재된 프로그램(s)(235)을 식별하는 정보 중 적어도 하나의 식별정보를 저장한다(335).
When the program (s) 235 is loaded on the secure OS 120, the program 200 of the normal OS 110 transmits the program s 235 to the secure OS 120 (S) (235) mounted on the secure OS (120), and / or information identifying the presence of the program (s) (235) mounted on the secure OS (120).
도면4는 본 발명의 실시 방법에 따라 일반OS(110)와 보안OS(120) 간 거래 연동 과정을 도시한 도면이다.
4 is a diagram illustrating a transaction interlocking process between the general OS 110 and the security OS 120 according to an embodiment of the present invention.
보다 상세하게 본 도면4는 일반OS(110)의 프로그램(n)(200)이 지정된 동작을 수행하는 중에 전자서명 처리 판단 시 보안OS(120)의 프로그램(s)(235)으로 전자서명 처리를 요청하는 과정을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면4를 참조 및/또는 변형하여 상기 일반OS(110)와 보안OS(120) 간 연동 과정에 대한 다양한 실시 방법(예컨대, 일부 단계가 생략되거나, 또는 순서가 변경된 실시 방법)을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면4에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다.
More specifically, FIG. 4 shows an electronic signature process in the program (s) 235 of the secure OS 120 when the program (n) 200 of the general OS 110 performs the specified operation while determining the electronic signature process Referring to FIG. 4 and / or modified by those skilled in the art, it will be understood by those skilled in the art that various changes and modifications may be made in the process of interlocking between the general OS 110 and the secure OS 120 It is to be understood that the invention may be practiced otherwise than as specifically described herein, but it is to be understood and appreciated that the invention may be practiced otherwise than as specifically described herein, Its technical characteristics are not limited.
도면4를 참조하면, 일반OS(110)의 프로그램(n)(200)은 내부에 구현된 지정된 동작을 수행하며(400), 상기 지정된 동작 중에 사용자의 인증서를 이용한 전자서명 처리가 필요한지 판단한다(405). 바람직하게, 상기 프로그램(n)(200)은 상기 지정된 동작 중에 서명대상정보가 확인되는 경우에 전자서명 처리가 필요한 것으로 판단할 수 있다.
4, a program (n) 200 of the general OS 110 performs a designated operation (400) and determines whether a digital signature process using a user's certificate is necessary during the designated operation 405). Preferably, the program (n) 200 may determine that digital signature processing is necessary when the signature subject information is confirmed during the designated operation.
만약 상기 전자서명 처리가 필요한 것으로 판단되면, 상기 프로그램(n)(200)은 식별정보를 이용하여 상기 무선단말(100)의 보안OS(120) 측에 사용자의 인증서를 관리하고 전자서명을 처리하는 프로그램(s)(235)이 탑재되어 있는지 확인한다(410). 상기 보안OS(120)에 상기 프로그램(s)(235)이 탑재되지 않은 경우, 상기 프로그램(n)(200)은 상기 보안OS(120)에 프로그램(s)(235)을 탑재하기 위한 절차를 수행할 수 있다.
If it is determined that the digital signature process is necessary, the program (n) 200 manages the user's certificate on the security OS 120 side of the wireless terminal 100 using the identification information and processes the digital signature It is checked whether the program (s) 235 is mounted (410). If the program (s) 235 is not loaded in the secure OS 120, the program 200 may execute a procedure for loading the program s 235 in the secure OS 120 Can be performed.
한편 상기 보안OS(120)에 상기 프로그램(s)(235)이 탑재된 경우, 상기 프로그램(n)(200)은 보안OS(120)로 전환 전에 상기 프로그램(n)(200)의 상태정보를 저장하여 유지시키며(415), 상기 무선단말(100)의 OS를 보안OS(120)로 전환 개시하여 상기 보안OS(120)의 프로그램(s)(235)에서 접근 가능한 메모리영역을 할당하거나 또는 기 할당된 메모리영역을 확인한다(420). 만약 상기 메모리영역이 할당/확인되면, 상기 프로그램(n)(200)은 상기 할당/확인된 메모리영역에 대한 프로그램(n)(200)의 접근 권한을 설정함과 동시에 상기 보안OS(120)에서 상기 프로그램(s)(235)이 상기 메모리영역에 접근하도록 설정하는 과정을 수행하면서(425), 보안OS(120)의 프로그램(s)(235)를 통해 전자서명 처리를 요청하는 서명요청정보를 구성한다(435). 상기 서명요청정보는 상기 프로그램(s)(235)이 통신수단을 이용하여 지정된 서버(180)로부터 직접 서명대상정보(또는 서명대상정보의 일부)를 제공받기 위한 정보를 포함하거나, 또는 상기 프로그램(n)(200)에서 확인하여 제공한 서명대상정보(또는 서명대상정보의 일부)를 포함할 수 있다. 상기 서명요청정보에 서명대상정보(또는 서명대상정보의 일부)가 포함된 경우, 상기 프로그램(n)(200)은 상기 지정된 동작과 연계된 서명대상정보를 확인하고(430), 상기 확인된 서명대상정보(또는 서명대상정보의 일부)를 포함하는 서명요청정보를 구성할 수 있다(435). 상기 프로그램(n)(200)은 상기 메모리영역으로 상기 구성된 서명요청정보를 제공하고(440), 보안 모니터(125)를 통해 상기 무선단말(100)의 OS가 상기 보안OS(120)로 전환되도록 처리한다(445).
Meanwhile, when the program (s) 235 is loaded on the secure OS 120, the program (n) 200 may transmit status information of the program (n) 200 before switching to the secure OS 120 (S) 235 of the secure OS 120 and allocates a memory area accessible by the program (s) 235 of the secure OS 120 by switching the OS of the wireless terminal 100 to the secure OS 120, The allocated memory area is checked (420). If the memory area is allocated / confirmed, the program (n) 200 sets the access right of the program (n) 200 to the allocated / confirmed memory area, and at the same time, (S) 235 of the secure OS 120 to access the memory area (step 425), the signature request information requesting the digital signature processing through the program (s) 235 of the secure OS 120 (435). The signature request information includes information for receiving the signature subject information (or part of the signature subject information) directly from the specified server 180 using the communication means, or the program (s) n) 200 (or a part of the signature target information) provided by the user. If the signature request information includes the signature subject information (or a part of the signature subject information), the program (n) 200 confirms (430) the signature subject information associated with the designated action, The signature request information including the subject information (or a part of the subject information to be signed) may be configured (435). The program (n) 200 provides the configured signature request information to the memory area 440 so that the OS of the wireless terminal 100 is switched to the secure OS 120 through the security monitor 125 (445).
상기 무선단말(100)의 OS가 보안OS(120)로 전환되어 상기 프로그램(s)(235)이 실행되면(450), 상기 프로그램(s)(235)은 상기 도면3에 도시된 과정을 통해 보안OS(120)의 PIN 저장영역에 PIN 정보가 등록되어 있는지 확인하여 등록된 경우에 무선단말(100)의 화면출력부(140)와 사용자입력부(145)에 대한 접근 권한을 획득하여 PIN 정보를 입력하는 인터페이스를 출력하고 상기 인터페이스를 통해 입력된 PIN 정보를 확인한다(455). 만약 상기 PIN 정보가 입력되면, 상기 프로그램(s)(235)은 상기 PIN 저장영역에 저장된 PIN 정보를 통해 상기 입력된 PIN 정보의 유효성을 인증하며(450), 상기 PIN 정보의 유효성이 인증되지 않는 경우에 상기 프로그램(s)(235)은 상기 무선단말(100)의 OS를 일반OS(110)로 전환하도록 처리하며(465), 상기 무선단말(100)의 OS가 일반OS(110)로 전환된 경우에 상기 일반OS(110)의 프로그램(n)(200)은 상기 보안OS(120)로 전환 전 상기 프로그램(n)(200)의 상태를 복원한다(470).
When the OS of the wireless terminal 100 is switched to the secure OS 120 and the program s 235 is executed 450, the program s 235 is executed through the process shown in FIG. If the PIN information is registered in the PIN storage area of the secure OS 120 and acquires the access right to the screen output unit 140 and the user input unit 145 of the wireless terminal 100 in case of registration, And outputs the input interface and confirms the PIN information input through the interface (455). If the PIN information is inputted, the program (s) 235 authenticates the validity of the inputted PIN information through the PIN information stored in the PIN storage area (450). If the validity of the PIN information is not authenticated The program (s) 235 processes the OS of the wireless terminal 100 to switch to the general OS 110 (step 465), and the OS of the wireless terminal 100 switches to the general OS 110 (N) 200 of the general OS 110 restores the state of the program (n) 200 before switching to the secure OS 120 (step 470).
한편 상기 PIN 정보의 유효성이 인증된 경우, 상기 프로그램(s)(235)은 상기 프로그램(n)(200)을 통해 할당되어 상기 프로그램(n)(200)과 공유 접근 가능한 메모리영역을 확인한다(475). 실시 방법에 따라 상기 메모리영역은 상기 프로그램(s)(235)을 통해 할당 가능하며, 본 발명이 상기 프로그램(s)(235)이 상기 메모리영역을 할당하는 실시예도 포함할 수 있다. 만약 상기 프로그램(s)(235)에서 접근 가능한 메모리영역이 확인되지 않으면, 상기 프로그램(s)(235)은 상기 무선단말(100)의 OS를 일반OS(110)로 전환하도록 처리하며(465), 상기 무선단말(100)의 OS가 일반OS(110)로 전환된 경우에 상기 일반OS(110)의 프로그램(n)(200)은 상기 보안OS(120)로 전환 전 상기 프로그램(n)(200)의 상태를 복원한다(470).
Meanwhile, when the validity of the PIN information is authenticated, the program (s) 235 identifies a memory area that is allocated through the program (n) 200 and can be shared with the program (n) 200 475). The memory area may be allocated through the program (s) 235 according to an implementation method, and the present invention may include an embodiment in which the program (s) 235 allocates the memory area. If the memory area accessible by the program (s) 235 is not confirmed, the program (s) 235 processes the OS of the wireless terminal 100 to switch to the general OS 110 (step 465) , When the OS of the wireless terminal 100 is switched to the general OS 110, the program n of the general OS 110 transmits the program n (n) before the switch to the secure OS 120 200 are restored (470).
한편 상기 프로그램(s)(235)에서 접근 가능한 메모리영역이 확인되면, 상기 프로그램(s)(235)은 상기 메모리영역에 대한 접근 권한을 확인한다(480). 만약 상기 메모리영역에 대한 접근 권한이 확인되지 않으면, 상기 프로그램(s)(235)은 상기 무선단말(100)의 OS를 일반OS(110)로 전환하도록 처리하며(465), 상기 무선단말(100)의 OS가 일반OS(110)로 전환된 경우에 상기 일반OS(110)의 프로그램(n)(200)은 상기 보안OS(120)로 전환 전 상기 프로그램(n)(200)의 상태를 복원한다(470).
Meanwhile, if a memory area accessible by the program (s) 235 is confirmed, the program (s) 235 confirms the access right to the memory area (480). If the access right to the memory area is not confirmed, the program (s) 235 processes the OS of the wireless terminal 100 to switch to the general OS 110 (465), and the wireless terminal 100 (N) 200 of the general OS 110 restores the state of the program (n) 200 before switching to the secure OS 120 when the OS of the general OS 110 is switched to the general OS 110 (470).
도면5는 본 발명의 실시 방법에 따라 보안OS(120)를 통해 전자서명을 생성하는 과정을 도시한 도면이다.
FIG. 5 is a diagram illustrating a process of generating an electronic signature through the secure OS 120 according to an embodiment of the present invention.
보다 상세하게 본 도면5는 보안OS(120)의 프로그램(s)(235)에서 서명요청정보에 대응하는 서명대상정보를 확인하고 사용자의 인증서를 통해 전자서명하는 과정을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면5를 참조 및/또는 변형하여 상기 보안OS(120)를 통해 전자서명을 생성하는 과정에 대한 다양한 실시 방법(예컨대, 일부 단계가 생략되거나, 또는 순서가 변경된 실시 방법)을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면5에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다.
More specifically, FIG. 5 illustrates a process of confirming signature target information corresponding to signature request information in the program (s) 235 of the secure OS 120 and digitally signing the signature target information through the user's certificate. Those skilled in the art will appreciate that various implementations of the process for generating an electronic signature via the secure OS 120 (e.g., some steps may be omitted, However, the present invention is not limited to the above-described embodiments, and it is to be understood that the invention is not limited to the disclosed embodiments.
도면5를 참조하면, 상기 도면4에 도시된 과정을 통해 보안OS(120)의 프로그램(s)(235)이 일반OS(110)의 프로그램(n)(200)과 공유하는 메모리영역을 확인하여 접근 권한을 확인한 경우, 상기 프로그램(s)(235)은 상기 메모리영역으로부터 상기 일반OS(110)의 프로그램(n)(200)이 제공한 서명요청정보를 확인한다(500). 만약 상기 메모리영역으로부터 상기 서명요청정보가 확인되지 않으면, 상기 프로그램(s)(235)은 도면8에 도시된 과정을 통해 상기 무선단말(100)의 OS를 일반OS(110)로 전환하도록 처리할 수 있다.
Referring to FIG. 5, a memory area shared by the program (s) 235 of the secure OS 120 and the program (n) 200 of the general OS 110 is checked through the process shown in FIG. 4 When the access right is confirmed, the program (s) 235 confirms the signature request information provided by the program (n) 200 of the general OS 110 (500) from the memory area. If the signature request information is not confirmed from the memory area, the program (s) 235 processes the OS of the wireless terminal 100 to switch to the normal OS 110 through the process shown in FIG. 8 .
한편 상기 메모리영역으로부터 상기 서명요청정보가 확인되면, 상기 프로그램(s)(235)은 상기 서명요청정보를 근거로 사용자의 인증서를 통해 전자서명할 서명대상정보를 확인한다(505). 바람직하게, 상기 프로그램(s)(235)는 지정된 서버(180)로부터 상기 서명요청정보에 대응하는 서명대상정보(또는 서명대상정보의 일부)를 제공받거나(505), 상기 서명요청정보에 포함된 서명대상정보(또는 서명대상정보의 일부)를 확인할 수 있다(505).
Meanwhile, if the signature request information is confirmed from the memory area, the program (s) 235 checks signature subject information to be digitally signed through the user's certificate based on the signature request information (505). Preferably, the program (s) 235 receives (505) the signature target information (or a part of the signature target information) corresponding to the signature request information from the designated server 180 (505) The signature target information (or a part of the signature target information) can be confirmed (505).
상기 서명대상정보가 확인되면, 상기 프로그램(s)(235)은 상기 도면3에 도시된 과정을 통해 보안OS(120)의 인증서 저장영역 또는 HSM(135)에 구비된 사용자의 인증서를 확인한다(510). 상기 HSM(135)에 사용자의 인증서가 구비된 경우, 상기 프로그램(s)(235)은 상기 HSM(135)으로 상기 서명대상정보를 제공할 수 있다.
When the signature object information is confirmed, the program (s) 235 confirms the certificate of the user provided in the
만약 상기 사용자의 인증서가 확인되면, 상기 프로그램(s)(235) 또는 HSM(135)은 상기 사용자의 인증서로부터 서명키를 추출한다(515). 만약 상기 서명키가 확인되면, 상기 프로그램(s)(235) 또는 HSM(135)은 상기 서명키를 이용하여 상기 확인된 서명대상정보에 대한 전자서명 값을 생성한다(520).
If the user's certificate is confirmed, the program (s) 235 or the
도면6은 본 발명의 일 실시 방법에 따라 보안OS(120)를 통해 전자서명을 처리하는 과정을 도시한 도면이다.
FIG. 6 is a diagram illustrating a process of processing an electronic signature through the secure OS 120 according to an embodiment of the present invention.
보다 상세하게 본 도면6은 보안OS(120)의 프로그램(s)(235)에서 상기 도면5에 도시된 과정을 통해 생성된 전자서명 값을 지정된 서버(180)로 전송하여 전자서명을 처리하는 과정을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면6을 참조 및/또는 변형하여 상기 보안OS(120)를 통해 전자서명을 처리하는 과정에 대한 다양한 실시 방법(예컨대, 일부 단계가 생략되거나, 또는 순서가 변경된 실시 방법)을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면6에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다.
6 illustrates a process of transmitting an electronic signature value generated through the process shown in FIG. 5 in the program (s) 235 of the secure OS 120 to a designated server 180 and processing an electronic signature Those skilled in the art will appreciate that various implementations of the process of processing digital signatures through the secure OS 120 with reference to and / For example, some of the steps may be omitted or the order may be changed. However, the present invention includes all of the above-mentioned methods of practicing the invention. It is not limited.
도면6을 참조하면, 상기 도면5에 도시된 과정을 통해 서명대상정보에 대한 전자서명 값이 생성되면, 상기 프로그램(s)(235)은 지정된 서버(180)를 통해 복호화 가능하게 상기 전자서명 값을 암호화 처리하고(600), 무선단말(100)의 통신수단을 통해 상기 암호화된 전자서명 값을 지정된 서버(180)로 전송하며(605), 상기 서버(180)는 통신망을 통해 상기 암호화된 전자서명 값을 수신한다(610). 이 경우 상기 서버(180)는 상기 전자서명 값에 대응하는 서명대상정보를 기 유지하고 있는 것이 바람직하다.
Referring to FIG. 6, when an electronic signature value for signature target information is generated through the process shown in FIG. 5, the program (s) 235 transmits the digital signature value The encrypted electronic signature value is transmitted to the designated server 180 through the communication means of the wireless terminal 100 in operation 605. The server 180 transmits the encrypted electronic signature value to the designated server 180 through the communication network, The signature value is received (610). In this case, it is preferable that the server 180 keeps signature target information corresponding to the digital signature value.
상기 서버(180)는 상기 암호화된 전자서명 값을 복호화하고(615), 상기 복호화된 전자서명 값을 인증하는 일련의 절차를 수행하며(620), 통신망을 통해 상기 프로그램(s)(235)로 전자서명 처리 결과를 제공한다(625). 상기 프로그램(s)(235)는 무선단말(100)의 통신수단을 통해 상기 전자서명 처리 결과를 수신하고(630), 이를 기반으로 상기 보안OS(120)를 통해 처리된 전자서명에 대한 전자서명 결과를 생성한다(635).
The server 180 decrypts the encrypted digital signature value (615) and performs a series of procedures for authenticating the decrypted digital signature value (620) and transmits the encrypted digital signature value to the program (s) 235 And provides a digital signature processing result (625). The program (s) 235 receives the digital signature processing result through the communication means of the wireless terminal 100 (630), and based on the digital signature processing result, generates an electronic signature A result is generated (635).
도면7은 본 발명의 다른 일 실시 방법에 따라 보안OS(120)를 통해 전자서명을 처리하는 과정을 도시한 도면이다.
FIG. 7 is a diagram illustrating a process of processing a digital signature through the secure OS 120 according to another embodiment of the present invention.
보다 상세하게 본 도면7은 보안OS(120)의 프로그램(s)(235)에서 상기 도면5에 도시된 과정을 통해 생성된 전자서명 값을 포함하는 서명데이터를 생성해 지정된 서버(180)로 전송하여 전자서명을 처리하는 과정을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면7을 참조 및/또는 변형하여 상기 보안OS(120)를 통해 전자서명을 처리하는 과정에 대한 다양한 실시 방법(예컨대, 일부 단계가 생략되거나, 또는 순서가 변경된 실시 방법)을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면7에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다.
More specifically, FIG. 7 generates signature data including the digital signature value generated through the process shown in FIG. 5 in the program (s) 235 of the secure OS 120 and transmits the generated signature data to the designated server 180 If the person skilled in the art is familiar with the process of referring to and / or modifying FIG. 7 to process the digital signature through the secure OS 120 It will be appreciated that various implementations of the process may be inferred (e.g., some steps omitted, or alternate implementations), but the present invention encompasses all such contemplated implementations, The technical features thereof are not limited by the implementation method alone.
도면7을 참조하면, 상기 도면5에 도시된 과정을 통해 서명대상정보에 대한 전자서명 값이 생성되면, 상기 프로그램(s)(235)은 상기 전자서명 값을 포함하는 서명데이터를 생성하고(700), 지정된 서버(180)를 통해 복호화 가능하게 상기 서명데이터를 암호화 처리하고(705), 무선단말(100)의 통신수단을 통해 상기 암호화된 서명데이터를 지정된 서버(180)로 전송하며(710), 상기 서버(180)는 통신망을 통해 상기 암호화된 서명데이터를 수신한다(715).
Referring to FIG. 7, when an electronic signature value for signature target information is generated through the process shown in FIG. 5, the program (s) 235 generates signature data including the digital signature value 700 Encrypts the signature data so as to be decryptable through the designated server 180 and transmits the encrypted signature data to the designated server 180 through the communication means of the wireless terminal 100 in operation 710, , The server 180 receives the encrypted signature data through a communication network (715).
상기 서버(180)는 상기 암호화된 서명데이터를 복호화하고(720), 상기 복호화된 서명데이터로부터 전자서명 값을 확인하고(725), 상기 확인된 전자서명 값을 인증하는 일련의 절차를 수행하며(730), 통신망을 통해 상기 프로그램(s)(235)로 전자서명 처리 결과를 제공한다(735). 상기 프로그램(s)(235)는 무선단말(100)의 통신수단을 통해 상기 전자서명 처리 결과를 수신하고(740), 이를 기반으로 상기 보안OS(120)를 통해 처리된 전자서명에 대한 전자서명 결과를 생성한다(745).
The server 180 decrypts the encrypted signature data (720), verifies the digital signature value from the decrypted signature data (725), and performs a series of procedures for authenticating the verified digital signature value 730) and provides the electronic signature processing result to the program (s) 235 through the communication network (735). The program (s) 235 receives the electronic signature processing result through the communication means of the wireless terminal 100 (740), and based on the electronic signature processing result, generates an electronic signature A result is generated (745).
도면8은 본 발명의 실시 방법에 따라 보안OS(120)를 통해 처리된 전자서명 결과를 이용하는 과정을 도시한 도면이다.
FIG. 8 is a diagram illustrating a process of using an electronic signature result processed through the secure OS 120 according to an embodiment of the present invention.
보다 상세하게 본 도면8은 보안OS(120)의 프로그램(s)(235)에서 상기 도면6 또는 도면7에 도시된 과정을 통해 수행된 전자서명 처리에 대응하는 전자서명 결과를 일반OS(110)의 프로그램(n)(200)으로 제공하여 상기 프로그램(n)(200)에서 상기 전자서명 결과를 이용하여 지정된 서비스를 제공하는 과정을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면8을 참조 및/또는 변형하여 상기 전자서명 결과를 이용하는 과정에 대한 다양한 실시 방법(예컨대, 일부 단계가 생략되거나, 또는 순서가 변경된 실시 방법)을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면8에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다.
8 shows an electronic signature result corresponding to the digital signature process performed through the process shown in FIG. 6 or FIG. 7 in the program (s) 235 of the secure OS 120, (N) 200 of the program (n) 200 and providing the designated service using the digital signature result in the program (n) 200. The program If so, it will be possible to refer to and / or modify the FIG. 8 to derive various implementations of the process of using the digital signature results (e.g., omitting some steps or changing the order) The present invention is not limited to the above-described embodiment.
도면8을 참조하면, 상기 도면6 또는 도면7에 도시된 과정을 통해 수행된 전자서명 처리에 대한 전자서명 결과가 생성되면, 상기 프로그램(s)(235)은 상기 전자서명 결과를 일반OS(110)의 프로그램(n)(200)과 공유된 메모리영역으로 제공하고(800), 상기 무선단말(100)의 OS를 일반OS(110)로 전환하도록 처리하며(805), 상기 무선단말(100)의 OS가 일반OS(110)로 전환된 경우에 상기 일반OS(110)의 프로그램(n)(200)은 상기 보안OS(120)로 전환 전 상기 프로그램(n)(200)의 상태를 복원한다(810).
Referring to FIG. 8, when an electronic signature result for the digital signature process performed through the process shown in FIG. 6 or 7 is generated, the program (s) 235 transmits the digital signature result to the general OS 110 (800), processing the OS of the wireless terminal (100) to switch to the general OS (805), and providing the wireless terminal (100) with the program (n) (N) 200 of the general OS 110 restores the state of the program (n) 200 before switching to the secure OS 120 when the OS of the general OS 110 is switched to the general OS 110 (810).
상기 일반OS(110)의 프로그램(n)(200)은 상기 보안OS(120)의 프로그램(s)(235)와 공유된 메모리영역을 확인하여 접근하고(815), 상기 메모리영역으로부터 상기 보안OS(120)의 프로그램(s)(235)에서 제공한 전자서명 결과를 확인한다(820).
The program 200 of the general OS 110 identifies and accesses a memory area shared with the program s 235 of the secure OS 120 in step 815, (S) 235 of the user terminal 120 (820).
상기 전자서명 결과가 확인되면, 상기 프로그램(n)(200)은 상기 전자서명 결과를 판독하여 보안OS(120)를 통한 전자서명 처리가 완료(또는 성공)하였는지 확인한다(825). 만약 상기 보안OS(120)를 통한 전자서명 처리가 실패하였다면, 상기 프로그램(n)(200)은 오류를 출력하고 상기 프로그램(n)(200)의 동작을 초기화할 수 있다(830). 한편 상기 보안OS(120)를 통한 전자서명 처리가 완료(또는 성공)하였다면, 상기 프로그램(n)(200)은 상기 전자서명 완료(또는 성공)에 대응하는 전자서명 기반 서비스 동작 절차를 수행한다(835).
When the result of the digital signature is confirmed, the program (n) 200 reads the digital signature result and checks 825 whether the digital signature process through the secure OS 120 is completed (or succeeded). If the digital signature processing through the secure OS 120 fails, the program (n) 200 may output an error and initialize the operation of the program (n) 200 (830). Meanwhile, if the digital signature process through the secure OS 120 is completed (or succeeded), the program (n) 200 performs an electronic signature-based service operation procedure corresponding to the digital signature completion (or success) 835).
100 : 무선단말 110 : 일반OS
115 : 일반커널 120 : 보안OS
125 : 보안 모니터 130 : 보안커널
200 : 프로그램(n) 205 : 전자서명 판단부
210 : 정보 확인부 215 : 정보 구성부
220 : 연동 절차부 225 : 결과 확인부
230 : 전자서명 이용부 235 : 프로그램(s)
240 : 인증서 저장부 245 : PIN 등록부
250 : 연동 처리부 255 : PIN 인증부
260 : 서명 연동부 265 : 서명대상 확인부
270 : 인증서 확인부 275 : 서명키 추출부
280 : 전자서명부 285 : 암호 처리부
290 : 전자서명 처리부 295 : 결과 제공부100: wireless terminal 110: general OS
115: Generic kernel 120: Security OS
125: Security Monitor 130: Security Kernel
200: program (n) 205: digital signature judgment unit
210: information confirmation unit 215: information configuration unit
220: Interworking procedure unit 225: Result confirmation unit
230: Digital signature use part 235: Program (s)
240: certificate storage unit 245: PIN registration unit
250: interworking processor 255: PIN authenticator
260: signature interworking unit 265: signature verification unit
270: Certificate verification unit 275: Signature key extraction unit
280: digital signature unit 285:
290: digital signature processing unit 295:
Claims (19)
상기 일반OS의 프로그램(n)이 상기 보안OS의 지정된 프로그램(s)에서 접근 가능한 메모리영역을 할당하거나 또는 기 할당된 메모리영역을 확인하는 제1 단계;
상기 프로그램(n)이 서명요청정보를 상기 메모리영역으로 제공하는 제2 단계;
상기 보안OS의 프로그램(s)이 상기 메모리영역으로부터 서명요청정보를 확인하는 제3 단계;
상기 프로그램(s)이 상기 서명요청정보를 근거로 서명대상정보를 확인하는 제4 단계;
상기 프로그램(s)이 상기 보안OS에 구비된 인증서로부터 서명 키를 추출하여 상기 서명대상정보에 대한 전자서명 값을 생성하거나 또는 HSM(Hardware Security Module)을 통해 생성된 전자서명 값을 확인하는 제5 단계; 및
상기 프로그램(s)이 상기 무선단말의 통신수단을 이용하여 상기 전자서명 값을 지정된 서버로 전송하는 제6 단계;를 포함하는 보안운영체제를 이용한 안심서명 제공 방법.
A method for executing a secure operating system (OS) having a secure kernel and a normal operating system (OS) having a kernel structure,
A first step in which the program (n) of the general OS allocates a memory area accessible by the designated program (s) of the secure OS or identifies an allocated memory area;
The program (n) providing signature request information to the memory area;
A third step of the program (s) of the secure OS verifying signature request information from the memory area;
A fourth step of the program (s) confirming signature subject information based on the signature request information;
The program (s) extracts a signature key from a certificate provided in the secure OS and generates an electronic signature value for the signature subject information or verifies an electronic signature value generated through an HSM (Hardware Security Module) step; And
And a sixth step of the program (s) transmitting the digital signature value to a designated server using a communication means of the wireless terminal.
프로세서에 탑재된 트러스트존(Trust Zone)을 포함하여 이루어지는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
The method of claim 1,
And a trust zone installed in the processor. The method for providing a secure signature using the secure operating system.
상기 프로그램(n)이 상기 보안OS에 지정된 프로그램(s)이 탑재되었음을 식별하거나 상기 보안OS에 탑재된 프로그램(s)을 식별하는 식별정보를 일반OS 저장영역에 저장하는 단계를 더 포함하며,
상기 제1 단계는, 상기 보안OS에 상기 프로그램(s)이 탑재된 경우에 상기 프로그램(n)이 상기 메모리영역을 할당하거나 확인하는 단계를 포함하여 이루어지는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
The method according to claim 1,
Further comprising the step of identifying whether the program (n) has the program (s) assigned to the secure OS mounted or the identification information identifying the program (s) mounted on the secure OS in the general OS storage area,
Wherein the first step comprises the step of allocating or confirming the memory area by the program (n) when the program (s) is loaded in the secure OS. Way.
상기 프로그램(s)이 보안OS의 인증서 저장영역 또는 HSM에 사용자의 인증서를 저장하는 단계를 더 포함하며,
상기 제1 단계는, 상기 보안OS의 인증서 저장영역 또는 HSM에 사용자의 인증서가 저장된 경우에 상기 프로그램(n)이 상기 메모리영역을 할당하거나 확인하는 단계를 포함하여 이루어지는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
The method according to claim 1,
Further comprising the step of the program (s) storing the user's certificate in the certificate storage area of the secure OS or the HSM,
Wherein the first step comprises the step of allocating or confirming the memory area by the program (n) when the user's certificate is stored in the certificate storage area of the secure OS or in the HSM. How to provide a secure signature.
상기 프로그램(n)이 상기 보안OS로 전환되기 직전의 상기 프로그램(n)에 대한 상태정보를 저장하여 유지하는 단계를 더 포함하며,
상기 제2 단계는, 상기 상태정보가 저장된 후 상기 프로그램(n)이 서명요청정보를 상기 메모리영역으로 제공하는 단계를 포함하여 이루어지는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
The method according to claim 1,
Further comprising the step of storing and holding status information on the program (n) immediately before the program (n) is switched to the secure OS,
Wherein the second step comprises the step of providing the signature request information to the memory area after the state information is stored.
상기 프로그램(n)이 SMC(Secure Monitor Call) 명령을 통해 보안OS를 구동하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
2. The method according to claim 1,
Further comprising the step of the program (n) operating a secure OS through a SMC (Secure Monitor Call) command.
상기 프로그램(n)이 일반OS에 상기 메모리영역을 할당하거나 또는 기 할당된 메모리영역을 확인하는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
2. The method according to claim 1,
Wherein the program (n) allocates the memory area to a general OS or identifies a pre-allocated memory area.
상기 프로그램(n)이 일반OS와 보안OS 간 전환 절차를 수행하는 보안 모니터에 상기 메모리영역을 할당하거나 또는 기 할당된 메모리영역을 확인하는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
2. The method according to claim 1,
Wherein the program (n) allocates the memory area to the security monitor performing the switching procedure between the general OS and the secure OS, or identifies the pre-allocated memory area.
상기 프로그램(n)이 네트워크 상의 보안서버에 보안OS의 프로그램(s)에서 접근 가능한 메모리영역을 할당하거나 또는 기 할당된 메모리영역을 확인하는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
2. The method according to claim 1,
Wherein the program (n) allocates a memory area accessible from the program (s) of the secure OS to the security server on the network or identifies a pre-allocated memory area.
상기 프로그램(n)이 상기 메모리영역을 참조하는 일반OS 측의 프로세스로 상기 프로그램(n)을 설정하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
2. The method according to claim 1,
Further comprising setting the program (n) as a process of a general OS side in which the program (n) refers to the memory area.
상기 일반OS의 프로그램(n)이 상기 보안OS의 프로그램(s)에서 상기 무선단말의 통신수단을 통해 지정된 서버로부터 서명대상정보를 확인하기 위한 서명요청정보를 구성하여 상기 메모리영역으로 제공하는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
2. The method according to claim 1,
Characterized in that the program (n) of the general OS constructs signature request information for confirming signature subject information from a server specified by the communication means of the wireless terminal in the program (s) of the secure OS and provides the signature request information to the memory area A method for providing a secure signature using a secure operating system.
상기 서명요청정보를 상기 메모리영역으로 제공하기 전에,
상기 일반OS의 프로그램(n)이 상기 무선단말의 통신수단을 통해 지정된 서버로부터 서명대상정보를 수신하는 단계를 더 포함하며,
상기 제2 단계는, 상기 서명대상정보를 포함하는 서명요청정보를 구성하여 상기 메모리영역으로 제공하는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
The method according to claim 1,
Before providing the signature request information to the memory area,
Further comprising a step in which the program (n) of the general OS receives signing object information from a designated server via communication means of the wireless terminal,
Wherein the second step comprises constructing signature request information including the signature subject information and providing the signature request information to the memory area.
상기 서명요청정보를 상기 메모리영역으로 제공하기 전에,
상기 일반OS의 프로그램(n)이 상기 서명대상정보를 생성하는 단계를 더 포함하며,
상기 제2 단계는, 상기 서명대상정보를 포함하는 서명요청정보를 구성하여 상기 메모리영역으로 제공하는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
The method according to claim 1,
Before providing the signature request information to the memory area,
Further comprising the step of the program (n) of the general OS generating the signature subject information,
Wherein the second step comprises constructing signature request information including the signature subject information and providing the signature request information to the memory area.
상기 프로그램(s)이 상기 메모리영역으로부터 서명요청정보를 확인한 후,
상기 프로그램(s)이 보안OS를 통해 무선단말의 입력수단에 접근하여 PIN(Personal Identification Number)을 입력받는 단계; 및
상기 보안OS를 통해 입력된 PIN의 유효성을 인증하는 단계;를 더 포함하여 이루어지는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
The method according to claim 1,
After the program (s) checks signature request information from the memory area,
Receiving the PIN (Personal Identification Number) by accessing the input means of the wireless terminal through the security OS; And
And authenticating the validity of the PIN entered through the secure OS. The method of claim 1, further comprising:
상기 프로그램(s)이 상기 전자서명 값을 확인한 후,
상기 프로그램(s)이 지정된 서버를 통해 복호화 가능하게 상기 생성된 전자서명 값을 암호화하는 단계를 더 포함하며,
상기 제6 단계는, 상기 무선단말의 통신수단을 통해 상기 암호화된 전자서명 값을 지정된 서버로 전송하는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
The method according to claim 1,
After the program (s) checks the digital signature value,
Further comprising encrypting the generated digital signature value so that the program (s) can be decrypted via a designated server,
And the sixth step transmits the encrypted digital signature value to the designated server through the communication means of the wireless terminal.
상기 프로그램(s)이 상기 전자서명 값을 확인한 후,
상기 프로그램(s)이 상기 생성된 전자서명 값을 포함하는 서명데이터를 생성하는 단계를 더 포함하며,
상기 제6 단계는, 상기 무선단말의 통신수단을 통해 상기 서명데이터를 지정된 서버로 전송하는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
The method according to claim 1,
After the program (s) checks the digital signature value,
The program (s) generating signature data including the generated digital signature value,
And the sixth step transmits the signature data to a designated server through the communication means of the wireless terminal.
상기 프로그램(s)이 상기 전자서명 값을 확인한 후,
상기 프로그램(s)이 상기 생성된 전자서명 값을 포함하는 서명데이터를 생성하는 단계; 및
상기 프로그램(s)이 지정된 서버를 통해 복호화 가능하게 상기 생성된 서명데이터를 암호화하는 단계를 더 포함하며,
상기 제6 단계는, 상기 무선단말의 통신수단을 통해 상기 암호화된 서명데이터를 지정된 서버로 전송하는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
The method according to claim 1,
After the program (s) checks the digital signature value,
The program (s) generating signature data including the generated digital signature value; And
Further comprising encrypting the generated signature data so that the program (s) can be decrypted via a designated server,
And the sixth step transmits the encrypted signature data to the designated server through the communication means of the wireless terminal.
상기 프로그램(s)이 상기 전자서명 값을 지정된 서버로 전송한 후,
상기 프로그램(s)이 전자서명 값을 이용한 전자서명 결과를 생성하는 단계; 및
상기 프로그램(s)이 상기 전자서명 결과를 상기 메모리영역으로 제공하는 단계;를 더 포함하여 이루어지는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
The method according to claim 1,
After the program (s) sends the digital signature value to the designated server,
Generating an electronic signature result using the electronic signature value; And
And providing the program (s) with the digital signature result to the memory area.
상기 프로그램(s)이 상기 전자서명 결과를 상기 메모리영역으로 제공한 후,
상기 프로그램(n)이 상기 메모리영역으로부터 상기 전자서명 결과를 확인하는 단계; 및
상기 프로그램(n)이 상기 전자서명 결과를 근거로 전자서명 기반 서비스를 제공하는 단계;를 더 포함하여 이루어지는 것을 특징으로 하는 보안운영체제를 이용한 안심서명 제공 방법.
19. The method of claim 18,
After the program (s) provides the digital signature result to the memory area,
The program (n) verifying the digital signature result from the memory area; And
And providing the digital signature based service on the basis of the digital signature result by the program (n).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150054350A KR101628615B1 (en) | 2015-04-17 | 2015-04-17 | Method for Providing Safety Electronic Signature by using Secure Operating System |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150054350A KR101628615B1 (en) | 2015-04-17 | 2015-04-17 | Method for Providing Safety Electronic Signature by using Secure Operating System |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101628615B1 true KR101628615B1 (en) | 2016-06-08 |
Family
ID=56194088
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150054350A Active KR101628615B1 (en) | 2015-04-17 | 2015-04-17 | Method for Providing Safety Electronic Signature by using Secure Operating System |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101628615B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180003089A (en) * | 2016-06-30 | 2018-01-09 | (주)에이티솔루션즈 | Method for Providing Server type One Time Password by using Secure Operating System |
WO2020171538A1 (en) * | 2019-02-19 | 2020-08-27 | Samsung Electronics Co., Ltd. | Electronic device and method for providing digital signature service of block chain using the same |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101260934B1 (en) * | 2011-12-07 | 2013-05-06 | 한국과학기술연구원 | Method and system for application synchronization |
KR20130101632A (en) * | 2012-02-16 | 2013-09-16 | 삼성전자주식회사 | Contents security system and method thereof |
KR101364996B1 (en) * | 2012-02-24 | 2014-02-20 | 사단법인 금융보안연구원 | Electronic Financial System Using Hardware at Smart Terminal and Operating Method Thereof |
JP2015037298A (en) * | 2013-08-16 | 2015-02-23 | Kddi株式会社 | Terminal, ID type signature encryption method and program |
-
2015
- 2015-04-17 KR KR1020150054350A patent/KR101628615B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101260934B1 (en) * | 2011-12-07 | 2013-05-06 | 한국과학기술연구원 | Method and system for application synchronization |
KR20130101632A (en) * | 2012-02-16 | 2013-09-16 | 삼성전자주식회사 | Contents security system and method thereof |
KR101364996B1 (en) * | 2012-02-24 | 2014-02-20 | 사단법인 금융보안연구원 | Electronic Financial System Using Hardware at Smart Terminal and Operating Method Thereof |
JP2015037298A (en) * | 2013-08-16 | 2015-02-23 | Kddi株式会社 | Terminal, ID type signature encryption method and program |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180003089A (en) * | 2016-06-30 | 2018-01-09 | (주)에이티솔루션즈 | Method for Providing Server type One Time Password by using Secure Operating System |
KR101866031B1 (en) * | 2016-06-30 | 2018-06-08 | (주)에이티솔루션즈 | Method for Providing Server type One Time Password by using Secure Operating System |
WO2020171538A1 (en) * | 2019-02-19 | 2020-08-27 | Samsung Electronics Co., Ltd. | Electronic device and method for providing digital signature service of block chain using the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105325021B (en) | Method and apparatus for remote portable wireless device authentication | |
KR101628615B1 (en) | Method for Providing Safety Electronic Signature by using Secure Operating System | |
KR20150101016A (en) | Method for Controlling Transaction Means by using End-To-End Mutual Authentication based on Near Field Communication | |
KR101662947B1 (en) | Method for Providing Session Security by using Secure Operating System | |
KR101853970B1 (en) | Method for Relaying Authentication Number | |
KR20160124336A (en) | Method for Providing Electronic Signature by using Secure Operating System | |
KR101628614B1 (en) | Method for Processing Electronic Signature by using Secure Operating System | |
KR101628610B1 (en) | Method for Providing One Time Password by using Secure Operating System | |
KR102193696B1 (en) | Method for Providing Safety Login based on One Time Code by using User’s Card | |
KR20170010341A (en) | Method for Processing Certification by using Secure Operating System | |
KR101866031B1 (en) | Method for Providing Server type One Time Password by using Secure Operating System | |
KR101702770B1 (en) | Method for Providing Security Keypad by using Secure Operating System | |
KR101505735B1 (en) | Method for Authenticating Near Field Communication Card by using Time Verification | |
KR102358598B1 (en) | Method for Processing Two Channel Authentication by using Contactless Media | |
KR101972492B1 (en) | Method for Operating Multiple One Time Password based on SD Memory | |
KR101445001B1 (en) | Method and System for Providing End-To-End Security Payment by using Near Field Communication | |
KR101678793B1 (en) | Method for Verifying Integrity of Application by using Secure Operating System | |
KR20170095797A (en) | Method for Processing Certification by using Secure Operating System | |
KR20160114966A (en) | Method for Processing Certification by using Secure Operating System | |
KR101704249B1 (en) | Method for Controlling Integrated Circuit Chip by using Distributed Processing | |
KR20160114961A (en) | Method for Providing One Time Password Linked Transaction by using Secure Operating System | |
KR101777043B1 (en) | Method for Generating Electronic Signature based on Asynchronous Local Area Radio Communication | |
KR101777041B1 (en) | Method for Generating One Time Password based on Asynchronous Local Area Radio Communication | |
KR101777042B1 (en) | Card for Generating Electronic Signature based on Asynchronous Local Area Radio Communication | |
KR101846646B1 (en) | Method for Providing Security Communication based on Asynchronous Local Area Radio Communication |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20150417 |
|
PA0201 | Request for examination | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20160115 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20160530 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20160601 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20160601 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
FPAY | Annual fee payment |
Payment date: 20190603 Year of fee payment: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20190603 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20200525 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20210518 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20230515 Start annual number: 8 End annual number: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20240527 Start annual number: 9 End annual number: 9 |
|
PR1001 | Payment of annual fee |
Payment date: 20250529 Start annual number: 10 End annual number: 10 |