KR20140036512A - Method of migrating certificate to mobile terminal using certificate transmission server based on one-time public information and apparatus using the same - Google Patents

Method of migrating certificate to mobile terminal using certificate transmission server based on one-time public information and apparatus using the same Download PDF

Info

Publication number
KR20140036512A
KR20140036512A KR1020120102682A KR20120102682A KR20140036512A KR 20140036512 A KR20140036512 A KR 20140036512A KR 1020120102682 A KR1020120102682 A KR 1020120102682A KR 20120102682 A KR20120102682 A KR 20120102682A KR 20140036512 A KR20140036512 A KR 20140036512A
Authority
KR
South Korea
Prior art keywords
certificate
key
authentication code
mobile terminal
public information
Prior art date
Application number
KR1020120102682A
Other languages
Korean (ko)
Other versions
KR101388452B1 (en
Inventor
김대식
조현호
Original Assignee
주식회사 드림시큐리티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 드림시큐리티 filed Critical 주식회사 드림시큐리티
Priority to KR1020120102682A priority Critical patent/KR101388452B1/en
Publication of KR20140036512A publication Critical patent/KR20140036512A/en
Application granted granted Critical
Publication of KR101388452B1 publication Critical patent/KR101388452B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic 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 using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3242Cryptographic 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 using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC

Abstract

The present invention relates to a method for transferring a certificate from a stationary terminal to a movable terminal. The stationary terminal receives an identifier of the mobile terminal and an authentication code which is randomly generated by the mobile terminal. The stationary terminal generates a one-time base key and one-time public information. The stationary terminal generates an intermediate secret key and an initial vector. The stationary terminal generates an encryption key and a message authentication code key. The stationary terminal encodes the certificate. The stationary terminal generates a message authentication code. The stationary terminal transmits the identifier, the encoded certificate, the message authentication code, and the one-time public information to a certificate transmission server. [Reference numerals] (110) Mobile terminal; (111) Authentication code generating unit; (113) Certificate request unit; (115) Certificate receiving unit; (117) Encryption key generating unit; (118) Certificate decoding unit; (119) Certificate storage unit; (120) Certificate transmission server(proxy); (121) Certificate transceiving unit; (122) Certificate processing unit; (123) Certificate storage unit; (130) Fixed terminal; (131) User authentication unit; (132) Encryption key generating unit; (133) Certificate password unit; (134) Certificate transmission unit

Description

인증서 전송 서버를 이용하는 일회용 공개 정보 기반 이동 단말기로의 인증서 이동 방법 및 이를 이용한 장치 {METHOD OF MIGRATING CERTIFICATE TO MOBILE TERMINAL USING CERTIFICATE TRANSMISSION SERVER BASED ON ONE-TIME PUBLIC INFORMATION AND APPARATUS USING THE SAME}METHODS OF MIGRATING CERTIFICATE TO MOBILE TERMINAL USING CERTIFICATE TRANSMISSION SERVER BASED ON ONE-TIME PUBLIC INFORMATION AND APPARATUS USING THE SAME}

본 발명은 공인인증서 등의 인증서를 고정 단말에서 모바일 단말로 이동시키는 기술에 관한 것으로, 특히 인증서 암호화 처리를 위해 사용되는 키의 생성 시 키 공간 전체를 사용할 수 있도록 함으로써 보안 수준을 향상시키고 이동된 인증서 관련 정보의 무결성을 간단히 검증할 수 있는 인증서 이동 기술에 관한 것이다.The present invention relates to a technique for moving a certificate, such as a public certificate from a fixed terminal to a mobile terminal, and in particular, to improve the security level by allowing the entire key space to be used when generating a key used for certificate encryption processing. It relates to a certificate movement technique that can simply verify the integrity of the relevant information.

이동 단말기를 사용한 무선인터넷의 사용은 최근 급격히 증가하고 있다. 또한, 스마트폰과 같은 이동 단말기를 이용하여 은행 거래 등의 금융 거래를 하는 사용자가 급증하고 있다. 이동 단말기를 통한 금융거래시에도 안전한 거래를 위해 공인인증서 등의 인증서가 필요하고, 따라서 사용자 PC 등의 고정 단말기에 저장된 공인인증서를 이동 단말기로 이동시키는 경우가 많다.The use of wireless Internet using mobile terminals has been increasing rapidly in recent years. In addition, the number of users who make financial transactions such as bank transactions using a mobile terminal such as a smart phone is increasing rapidly. In the case of financial transactions through a mobile terminal, a certificate such as an accredited certificate is required for a secure transaction. Therefore, there are many cases in which an accredited certificate stored in a fixed terminal such as a user PC is moved to the mobile terminal.

한국공개특허 제2004-0082362호에는 내보내기 기능을 통해 사용자의 네트워크 단말기에 저장된 공인인증서를 이동통신 단말기로 이동시키고, 네트워크 단말기를 통해서 인증서가 필요한 거래를 하는 경우 이동통신 단말기에 저장된 인증서를 제공 받아서 인증 절차를 수행하는 공인인증서 관리 방법이 개시되어 있다. 그러나, 한국공개특허 제2004-0082362호는 이동통신 단말기의 인증서 관리 모듈을 구동하고 인증서 관리 서버로 전송하기 위해 콜백 유알엘(Callback URL)을 포함하는 SMS가 요구되며, 이동통신 단말기를 단순히 인증서 저장매체로만 사용한다는 한계가 존재한다. 또한, 인증서 관리 서버는 이동통신 단말기와 네트워크 단말기 간의 모든 통신을 열람할 수 있으므로 악의적인 목적으로 활용될 수 있는 문제점이 있다.In Korean Patent Publication No. 2004-0082362, an export function moves an authorized certificate stored in a user's network terminal to a mobile communication terminal, and when a transaction requiring a certificate is performed through a network terminal, a certificate stored in the mobile communication terminal is provided and authenticated. A method of managing an accredited certificate to carry out the procedure is disclosed. However, Korean Patent Laid-Open Publication No. 2004-0082362 requires an SMS including a callback URL to drive a certificate management module of a mobile communication terminal and transmit it to a certificate management server. There is a limit to using only. In addition, the certificate management server has a problem that can be used for malicious purposes because it can read all communication between the mobile communication terminal and the network terminal.

한국공개특허 제2008-0047240호는 인증서 전송 서버를 통하여 이동 단말기와 고정 단말기를 인증하고, 안전한 통신 채널을 설정하여 인증서를 전달하는 기술을 개시하고 있으나, 이는 인증서 전송 서버가 인증코드를 발급하고 이 인증코드를 이동단말기로 전송하여 고정 단말기를 인증하는데 사용하므로, 불필요한 인증코드 이동이 불가피하고 이러한 인증코드 이동의 과정에서 보안상 약점이 발생한다는 문제가 있다.Korean Patent Laid-Open No. 2008-0047240 discloses a technology for authenticating a mobile terminal and a fixed terminal through a certificate transmission server, establishing a secure communication channel, and delivering a certificate, but the certificate transmission server issues an authentication code. Since the authentication code is transmitted to the mobile terminal and used to authenticate the fixed terminal, unnecessary authentication code movement is inevitable and there is a problem that security weakness occurs in the process of moving the authentication code.

한국공개특허 제2011-0057376호는 인증코드의 발생을 이동 단말기에서 직접 이루어지게 하고, 고정 단말기에 저장된 인증서를 암호화하여 암호화된 생성된 인증서를 전송 서버를 통해 이동 단말기로 전송하는 기술을 개시하고 있으나, 인증서 암호화가 키 공간 전체를 사용하는 암호화키를 사용하여 수행되지 아니하므로 그 임의성에 한계가 있고 따라서 보안 수준이 낮다는 한계가 있다. 이를 보완하기 위해 한국공개특허 제2011-0057376호는 PKCS#12 인증서를 다시 암호화하는 2중 암호 방식을 채택하고 있으나, 이 역시 그 복잡성에 비해 충분한 보안 수준을 제공하기 어렵다. 나아가, 한국공개특허 제2011-0057376호는 모바일 단말에서 서버로부터 전송 받은 인증서의 유효성을 검증함에 있어, 사용자로부터 인증서의 암호를 입력 받는 방식을 채택하여 인증서의 유효성 검증이 번거롭다는 문제점이 있다.Korean Patent Laid-Open No. 2011-0057376 discloses a technique for directly generating a verification code at a mobile terminal and transmitting a generated certificate encrypted by encrypting a certificate stored in a fixed terminal to a mobile terminal through a transmission server. However, since certificate encryption is not performed using an encryption key that uses the entire key space, there is a limit to the randomness and thus a low level of security. To compensate for this, Korean Patent Publication No. 2011-0057376 adopts a double encryption method for re-encrypting a PKCS # 12 certificate, but this also does not provide a sufficient level of security compared to its complexity. Furthermore, Korean Patent Application Publication No. 2011-0057376 has a problem in that when validating a certificate received from a server in a mobile terminal, a method of inputting a password of a certificate from a user is troublesome.

따라서, 보다 강력한 보안 수준을 제공하면서도 간단히 이동된 인증서의 유효성을 검증할 수 있는 새로운 인증서 이동 기술의 필요성이 절실하게 대두된다.Thus, there is an urgent need for a new certificate transfer technique that can provide a stronger level of security while simply validating the migrated certificate.

본 발명의 목적은 인증서 전달 위한 인증서 암호화에 사용되는 키의 생성 시 키 공간 전체를 사용할 수 있도록 하여 보안 수준을 향상시키는 것이다.An object of the present invention is to improve the security level by allowing the entire key space to be used when generating a key used for certificate encryption for certificate delivery.

또한, 본 발명의 목적은 안전하고 효율적인 암호화 및 복호화를 통한 인증서 전달이 가능하도록 함으로써 간단하면서도 안전하게 인증서를 전달할 수 있도록 하는 것이다.In addition, an object of the present invention is to enable the delivery of certificates through secure and efficient encryption and decryption to enable simple and secure delivery of certificates.

또한, 본 발명의 목적은 간단하게 이동 단말에서 암호화된 인증서의 무결성을 검증할 수 있도록 하여 인증서 전달의 효율성 및 보안 강도를 향상시키는 것이다.In addition, an object of the present invention is to simply verify the integrity of the encrypted certificate in the mobile terminal to improve the efficiency and security strength of certificate delivery.

상기한 목적을 달성하기 위한 본 발명에 따른 고정 단말기로부터 이동 단말기로 인증서를 이동시키는 방법은, 상기 고정 단말기가 상기 이동 단말기의 식별자 및 상기 이동 단말기에 의해 랜덤하게 생성된 인증코드를 입력 받는 단계; 상기 고정 단말기가 키 공간 모두를 사용하여 일회용 베이스 키(OTBK; One-Time Base Key) 및 일회용 공개 정보(OTPI; One-Time Public Information) 중 어느 하나를 생성하는 단계; 상기 고정 단말기가 상기 식별자 및 상기 인증코드를 이용하여 중간 키(ISK; Intermediate Secret Key) 및 초기 벡터값(IV; Initial Vector)을 생성하는 단계; 상기 고정 단말기가 상기 중간 키를 이용하여 상기 일회용 베이스 키 및 일회용 공개 정보 중 다른 하나를 생성하는 단계; 상기 고정 단말기가 상기 일회용 베이스 키를 이용하여 상기 인증서를 암호화하기 위한 암호화 키(EK; Encryption Key) 및 메시지 인증 코드 키(MACK; Message Authentication Code Key)를 생성하는 단계; 상기 고정 단말기가 상기 암호화 키를 이용하여 상기 인증서를 암호화하는 단계; 상기 고정 단말기가 상기 메시지 인증 코드 키를 이용하여 상기 인증서에 대한 메시지 인증 코드(MAC; Message Authentication Code)를 생성하는 단계; 및 상기 고정 단말기가 상기 식별자, 암호화된 상기 인증서, 상기 메시지 인증 코드 및 상기 일회용 공개 정보를 인증서 전송 서버로 전송하는 단계를 포함한다.According to an aspect of the present invention, there is provided a method of moving a certificate from a fixed terminal to a mobile terminal, the fixed terminal receiving an identifier of the mobile terminal and an authentication code randomly generated by the mobile terminal; Generating, by the fixed terminal, one of a one-time base key (OTBK) and one-time public information (OTPI) using all of the key spaces; Generating, by the fixed terminal, an intermediate secret key (ISK) and an initial vector (IV) using the identifier and the authentication code; Generating, by the fixed terminal, the other of the disposable base key and the disposable public information using the intermediate key; Generating, by the fixed terminal, an encryption key (EK) and a message authentication code key (MACK) for encrypting the certificate using the disposable base key; Encrypting, by the fixed terminal, the certificate using the encryption key; Generating, by the fixed terminal, a message authentication code (MAC) for the certificate by using the message authentication code key; And transmitting, by the fixed terminal, the identifier, the encrypted certificate, the message authentication code, and the disposable public information to a certificate transmission server.

이 때, 상기 일회용 베이스 키는 상기 암호화 키의 전체 크기인 16바이트 키를 랜덤하게 발생시켜서 생성되고, 상기 일회용 공개 정보는 상기 일회용 베이스 키 및 상기 중간 키를 배타적 논리합(exclusive OR)하여 생성될 수 있다.At this time, the one-time base key is generated by randomly generating a 16-byte key that is the total size of the encryption key, and the one-time public information can be generated by exclusive OR of the one-time base key and the intermediate key. have.

이 때, 상기 일회용 공개 정보는 gR mod p (p는 유한공간 Zp를 결정하는 2048비트 이상의 소수, g는 Zp의 원소로서, 위수로

Figure pat00001
를 갖는 생성자, R은
Figure pat00002
인 난수)를 계산하여 생성되고, 상기 일회용 베이스 키는 상기 일회용 공개 정보에 대하여 OTPIX mod p(OTPI는 상기 일회용 공개 정보, X는 상기 중간 키에
Figure pat00003
를 취한 결과 값)를 계산하여 상위 16바이트를 취하여 생성될 수 있다.At this time, the disposable public information is g R mod p (p is a decimal number of 2048 bits or more to determine the finite space Z p , g is an element of Z p ,
Figure pat00001
Constructor with R
Figure pat00002
Is generated by calculating a random number), and the one-time base key is OTPI X mod p (OTPI is the one-time public information and X is the intermediate key).
Figure pat00003
It can be generated by taking the upper 16 bytes by calculating the resulting value).

이 때, p의 크기는 2048 비트 이상의 소수로서 예시를 하였으나, 다양한 적용 환경에 따라 p의 크기는 가변적으로 적용될 수 있다.In this case, the size of p is illustrated as a prime number of 2048 bits or more, but the size of p may be variably applied according to various application environments.

이 때, 인증서 이동 방법은 상기 이동 단말기가 상기 인증서 전송 서버로 상기 인증서의 전송을 요청하는 단계; 상기 인증서 전송 서버가 상기 이동 단말기에 상응하는 암호화된 상기 인증서를 검색하는 단계; 상기 인증서 전송 서버가 암호화된 상기 인증서, 상기 메시지 인증 코드값 및 상기 일회용 공개 정보를 상기 이동 단말기로 전송하는 단계; 상기 이동 단말기가 상기 일회용 공개 정보를 이용하여 상기 암호화 키를 생성하는 단계; 및 상기 이동 단말기가 상기 암호화 키를 이용하여 암호화된 상기 인증서를 복호화하여 상기 인증서를 복원하는 단계를 더 포함할 수 있다.At this time, the certificate movement method comprises the steps of the mobile terminal requesting the transmission of the certificate to the certificate transmission server; Retrieving, by the certificate transmission server, the encrypted certificate corresponding to the mobile terminal; Transmitting, by the certificate transmission server, the encrypted certificate, the message authentication code value, and the disposable public information to the mobile terminal; Generating, by the mobile terminal, the encryption key using the disposable public information; And recovering, by the mobile terminal, the certificate by decrypting the certificate encrypted using the encryption key.

상기 인증서 이동 방법은 상기 인증서를 복호화하여 상기 인증서를 복원하는 단계 이전에, 상기 이동 단말기가 상기 일회용 공개 정보를 이용하여 상기 일회용 베이스 키를 복원하는 단계; 복원된 상기 일회용 베이스 키를 이용하여 상기 메시지 인증 코드 키를 복원하는 단계; 및 상기 메시지 인증 코드 키를 이용하여 암호화된 상기 인증서의 메시지 인증 코드 검증을 수행하는 단계를 더 포함하고, 상기 인증서를 복호화하여 상기 인증서를 복원하는 단계는 상기 메시지 인증 코드 검증이 성공하여 무결성(integrity)이 검증된 경우에만 상기 인증서를 복호화하여 상기 인증서를 복원할 수 있다.The certificate movement method may include: restoring, by the mobile terminal, the disposable base key using the disposable public information before the decrypting the certificate to restore the certificate; Restoring the message authentication code key using the restored one-time base key; And verifying a message authentication code of the certificate encrypted using the message authentication code key, and restoring the certificate by decrypting the certificate may be successful by verifying the integrity of the message authentication code. Can only be restored by decrypting the certificate.

또한, 본 발명의 일실시예에 따른 고정 단말기는 이동 단말기로 이동시키고자 하는 인증서에 대한 사용자 정당성을 검증하는 사용자 인증부; 상기 사용자 정당성이 검증되면, 상기 이동 단말기의 식별자 및 상기 이동 단말기에 의해 랜덤하게 생성된 인증코드를 입력 받고, 키 공간 모두를 사용하여 일회용 베이스 키(OTBK; One-Time Base Key) 및 일회용 공개 정보(OTPI; One-Time Public Information) 중 어느 하나를 생성하고, 상기 식별자 및 상기 인증코드를 이용하여 중간 키(ISK; Intermediate Secret Key) 및 초기 벡터값(IV; Initial Vector)을 생성하고, 상기 중간 키를 이용하여 상기 일회용 베이스 키 및 일회용 공개 정보 중 다른 하나를 생성하고, 상기 일회용 베이스 키를 이용하여 상기 인증서를 암호화하기 위한 암호화 키(EK; Encryption Key) 및 메시지 인증 코드 키(MACK; Message Authentication Code Key)를 생성하는 암호키 생성부; 상기 암호화 키를 이용하여 상기 인증서를 암호화하는 인증서 암호부; 및 상기 메시지 인증 코드 키를 이용하여 상기 인증서에 대하여 생성된 메시지 인증 코드(MAC; Message Authentication Code), 상기 식별자, 암호화된 상기 인증서 및 상기 일회용 공개 정보를 인증서 전송 서버로 전송하는 인증서 전송부를 포함한다.In addition, the fixed terminal according to an embodiment of the present invention comprises a user authentication unit for verifying the validity of the user to the certificate to be moved to the mobile terminal; If the user legitimacy is verified, an identifier of the mobile terminal and an authentication code randomly generated by the mobile terminal are input, and a one-time base key (OTBK) and one-time public information are used using both key spaces. Generate one of (OTPI; One-Time Public Information), generate an intermediate secret key (ISK) and an initial vector (IV) using the identifier and the authentication code, and generate the intermediate A key to generate another one of the one-time base key and one-time public information, and an encryption key (EK) and a message authentication code key (MACK) for encrypting the certificate using the one-time base key. An encryption key generation unit for generating a code key); A certificate encryption unit for encrypting the certificate using the encryption key; And a certificate transmission unit configured to transmit a message authentication code (MAC), the identifier, the encrypted certificate, and the one-time public information generated for the certificate using the message authentication code key to a certificate transmission server. .

이 때, 메시지 인증 코드는 상기 이동 단말기가 복원한 상기 메시지 인증 코드 키를 이용하여 메시지 인증 코드 검증을 수행하는데 사용될 수 있다.In this case, the message authentication code may be used to perform message authentication code verification using the message authentication code key restored by the mobile terminal.

또한, 본 발명의 일실시예에 따른 이동 단말기는 난수 발생기에 의해 랜덤하게 인증코드를 생성하는 인증코드 생성부; 인증서 전송 서버로 고정 단말기로부터 이동시키고자 하는 인증서에 대한 이동 요청을 송신하는 인증서 요청부; 상기 인증서 전송 서버로부터 암호화된 상기 인증서, 메시지 인증 코드(MAC; Message Authentication Code) 및 일회용 공개 정보(OTPI; One-Time Public Information)를 수신하는 인증서 수신부; 상기 일회용 공개 정보로부터 일회용 베이스 키(OTBK; One-Time Base Key)를 생성하고, 상기 일회용 베이스 키를 이용하여 암호화 키(EK; Encryption Key) 및 메시지 인증 코드 키(MACK; Message Authentication Code Key)를 생성하는 암호키 생성부; 상기 메시지 인증 코드 키를 이용하여 암호화된 상기 인증서에 대한 메시지 인증 코드 검증을 수행하고, 상기 검증 결과 무결성이 검증되면 상기 암호화 키를 이용하여 암호화된 상기 인증서를 복호화하는 인증서 복호부; 및 복호화된 상기 인증서를 저장하는 인증서 저장부를 포함한다.In addition, the mobile terminal according to an embodiment of the present invention comprises an authentication code generation unit for generating a random authentication code by a random number generator; A certificate request unit which transmits a movement request for a certificate to be moved from the fixed terminal to the certificate transmission server; A certificate receiver configured to receive the encrypted certificate, a message authentication code (MAC) and one-time public information (OTPI) from the certificate transmission server; Generate a one-time base key (OTBK) from the one-time public information, and use the one-time base key to generate an encryption key (EK) and a message authentication code key (MACK). An encryption key generation unit to generate; A certificate decryption unit for performing a message authentication code verification on the certificate encrypted using the message authentication code key, and decrypting the certificate encrypted using the encryption key when the verification result integrity is verified; And a certificate storage unit for storing the decrypted certificate.

또한, 본 발명의 일실시예에 따른 인증서 전송 서버는, 고정 단말기로부터 이동 단말기의 식별자, 암호화된 인증서, 상기 인증서에 상응하는 메시지 인증 코드(MAC; Message Authentication Code) 및 일회용 공개 정보(OTPI; One-Time Public Information)를 수신하고, 이동 단말기의 요청에 따라 상기 암호화된 인증서, 상기 메시지 인증 코드 및 상기 일회용 공개 정보를 송신하는 인증서 송수신부; 상기 암호화된 인증서, 상기 메시지 인증 코드 및 상기 일회용 공개 정보를 상기 식별자에 따라 저장하는 인증서 저장부; 및 상기 인증서 저장부에서 상기 이동 단말기의 요청에 상응하는 상기 암호화된 인증서, 상기 메시지 인증 코드 및 상기 일회용 공개 정보를 검색하여 검색된 결과를 상기 인증서 송수신부로 제공하고, 상기 이동 단말기로 전송된 정보를 삭제하는 인증서 처리부를 포함한다.In addition, the certificate transmission server according to an embodiment of the present invention, from the fixed terminal, the identifier of the mobile terminal, the encrypted certificate, a message authentication code (MAC) corresponding to the certificate and one-time public information (OTPI; One) A certificate transmitting / receiving unit for receiving the time public information and transmitting the encrypted certificate, the message authentication code, and the disposable public information according to a request of the mobile terminal; A certificate storage unit for storing the encrypted certificate, the message authentication code, and the disposable public information according to the identifier; And searching the encrypted certificate, the message authentication code, and the one-time public information corresponding to the request of the mobile terminal in the certificate storage unit, provide the searched result to the certificate transceiver, and delete the information transmitted to the mobile terminal. It includes a certificate processing unit.

본 발명에 따르면, 인증서 전달을 의한 인증서 암호화에 사용되는 키의 생성 시 키 공간 전체를 사용할 수 있도록 하여 보안 수준이 향상된다.According to the present invention, the security level is improved by enabling the entire key space to be used when generating a key used for certificate encryption by certificate delivery.

또한, 본 발명은 안전하고 효율적인 암호화 및 복호화를 통한 인증서 전달이 가능하도록 함으로써 간단하면서도 안전하게 인증서를 전달할 수 있다.In addition, the present invention can be delivered simply and securely by enabling certificate delivery through secure and efficient encryption and decryption.

또한, 본 발명은 간단하게 이동 단말에서 암호화된 인증서의 무결성을 검증할 수 있도록 하여 인증서 전달의 효율성 및 보안 강도를 향상시킨다.In addition, the present invention can simply verify the integrity of the encrypted certificate in the mobile terminal to improve the efficiency and security strength of certificate delivery.

도 1은 본 발명의 일실시예에 따른 인증서 이동 방법이 적용되는 시스템을 나타낸 블록도이다.
도 2는 본 발명의 일실시예에 따른 인증서 이동 방법을 나타낸 동작 흐름도이다.
도 3은 도 2에 도시된 암호화 키 생성 단계의 일 예를 나타낸 동작 흐름도이다.
1 is a block diagram illustrating a system to which a certificate movement method is applied according to an embodiment of the present invention.
2 is a flowchart illustrating a certificate movement method according to an embodiment of the present invention.
3 is an operation flowchart illustrating an example of an encryption key generation step illustrated in FIG. 2.

본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.The present invention will now be described in detail with reference to the accompanying drawings. Hereinafter, a repeated description, a known function that may obscure the gist of the present invention, and a detailed description of the configuration will be omitted. Embodiments of the present invention are provided to more fully describe the present invention to those skilled in the art. Accordingly, the shapes and sizes of the elements in the drawings and the like can be exaggerated for clarity.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일실시예에 따른 인증서 이동 방법이 적용되는 시스템을 나타낸 블록도이다.1 is a block diagram illustrating a system to which a certificate movement method is applied according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일실시예에 따른 인증서 이동 방법이 적용되는 시스템은 이동 단말기(110), 인증서 전송 서버(120) 및 고정 단말기(130)를 포함한다.Referring to FIG. 1, a system to which a certificate movement method is applied according to an embodiment of the present invention includes a mobile terminal 110, a certificate transmission server 120, and a fixed terminal 130.

이동 단말기(110)는 고정 단말기로부터 인증서를 이동 받고자 하는 단말기로, 스마트폰, 랩탑, 태블릿 등의 다양한 단말기일 수 있다.The mobile terminal 110 is a terminal for receiving a certificate from a fixed terminal, and may be various terminals such as a smartphone, a laptop, a tablet, and the like.

이동 단말기(110)는 인증코드 생성부(111), 인증서 요청부(113), 인증서 수신부(115), 암호키 생성부(117), 인증서 복호부(118) 및 인증서 저장부(119)를 포함한다.The mobile terminal 110 includes an authentication code generator 111, a certificate requester 113, a certificate receiver 115, an encryption key generator 117, a certificate decoder 118, and a certificate storage 119. do.

인증코드 생성부(111)는 난수 발생기에 의해 랜덤하게 인증코드를 생성한다. 인증코드를 생성하는 상세한 방법에 대해서는 뒤에 자세히 설명한다.The authentication code generator 111 randomly generates an authentication code by a random number generator. A detailed method of generating the authentication code will be described later.

인증서 요청부(113)는 인증서 전송 서버로 고정 단말기로부터 이동시키고자 하는 인증서에 대한 이동 요청을 송신한다.The certificate request unit 113 transmits a movement request for a certificate to be moved from the fixed terminal to the certificate transmission server.

인증서 수신부(115)는 상기 인증서 전송 서버로부터 암호화된 상기 인증서, 메시지 인증 코드(MAC; Message Authentication Code) 및 일회용 공개 정보(OTPI; One-Time Public Information)를 수신한다.The certificate receiver 115 receives the encrypted certificate, a message authentication code (MAC) and one-time public information (OTPI) from the certificate transmission server.

암호키 생성부(117)는 상기 일회용 공개 정보로부터 일회용 베이스 키(OTBK; One-Time Base Key)를 생성하고, 상기 일회용 베이스 키를 이용하여 암호화 키(EK; Encryption Key) 및 메시지 인증 코드 키(MACK; Message Authentication Code Key)를 생성한다.The encryption key generation unit 117 generates a one-time base key (OTBK) from the one-time public information, and uses the one-time base key to encrypt an encryption key (EK) and a message authentication code key (EK). MACK; Message Authentication Code Key) is generated.

인증서 복호부(118)는 상기 메시지 인증 코드 키를 이용하여 암호화된 상기 인증서에 대한 메시지 인증 코드 검증을 수행하고, 상기 검증 결과 무결성이 검증되면 상기 암호화 키를 이용하여 암호화된 상기 인증서를 복호화한다.The certificate decryption unit 118 performs a message authentication code verification on the certificate encrypted using the message authentication code key, and decrypts the certificate encrypted using the encryption key when the integrity of the verification result is verified.

인증서 저장부(119)는 복호화된 상기 인증서를 저장한다.The certificate storage unit 119 stores the decrypted certificate.

인증서 전송 서버(120)는 고정 단말기(130)로부터 이동 단말기(110)로 인증서 이동을 중계하는 역할을 한다.The certificate transmission server 120 relays a certificate movement from the fixed terminal 130 to the mobile terminal 110.

인증서 전송 서버(120)는 인증서 송수신부(121), 인증서 처리부(122) 및 인증서 저장부(123)를 포함한다.The certificate transmission server 120 includes a certificate transmission unit 121, a certificate processing unit 122, and a certificate storage unit 123.

인증서 송수신부(121)는 고정 단말기(130)로부터 이동 단말기(110)의 식별자, 암호화된 인증서, 상기 인증서에 상응하는 메시지 인증 코드(MAC; Message Authentication Code) 및 일회용 공개 정보(OTPI; One-Time Public Information)를 수신하고, 이동 단말기(110)의 요청에 따라 상기 암호화된 인증서, 상기 메시지 인증 코드 및 상기 일회용 공개 정보를 송신한다.The certificate transmitting and receiving unit 121 is an identifier of the mobile terminal 110 from the fixed terminal 130, an encrypted certificate, a message authentication code (MAC) corresponding to the certificate and one-time public information (OTPI; One-Time) Public Information) and transmits the encrypted certificate, the message authentication code, and the one-time public information in response to a request of the mobile terminal 110.

인증서 저장부(123)는 상기 암호화된 인증서, 상기 메시지 인증 코드 및 상기 일회용 공개 정보를 상기 식별자에 따라 저장한다.The certificate storage unit 123 stores the encrypted certificate, the message authentication code, and the disposable public information according to the identifier.

인증서 처리부(122)는 인증서 저장부(123)에서 이동 단말기(110)의 요청에 상응하는 상기 암호화된 인증서, 상기 메시지 인증 코드 및 상기 일회용 공개 정보를 검색하여 검색된 결과를 인증서 송수신부(121)로 제공하고, 이동 단말기(110)로 전송된 정보를 삭제한다.The certificate processor 122 retrieves the encrypted certificate, the message authentication code, and the one-time public information corresponding to the request of the mobile terminal 110 from the certificate storage unit 123 to the certificate transceiver 121. Provide information and delete information transmitted to the mobile terminal 110.

고정 단말기(130)는 이동 단말기(120)로 이동시키고자 하는 인증서에 대한 사용자 정당성을 검증하고, 인증서를 암호화하여 일회용 공개 정보 등과 같이 인증서 전송 서버(120)를 통해 이동 단말기(110)로 전송한다.The fixed terminal 130 verifies the validity of the user for the certificate to be moved to the mobile terminal 120, encrypts the certificate and transmits the certificate to the mobile terminal 110 through the certificate transmission server 120, such as one-time public information. .

고정 단말기(130)는 사용자 인증부(131), 암호키 생성부(132), 인증서 암호부(133) 및 인증서 전송부(134)를 포함한다.The fixed terminal 130 includes a user authentication unit 131, an encryption key generation unit 132, a certificate encryption unit 133, and a certificate transmission unit 134.

사용자 인증부(131)는 이동 단말기(110)로 이동시키고자 하는 인증서에 대한 사용자 정당성을 검증한다.The user authenticator 131 verifies the user legitimacy of the certificate to be moved to the mobile terminal 110.

암호키 생성부(132)는 상기 사용자 정당성이 검증되면, 이동 단말기(110)의 식별자 및 이동 단말기(110)에 의해 랜덤하게 생성된 인증코드를 입력 받고, 키 공간 모두를 사용하여 일회용 베이스 키(OTBK; One-Time Base Key) 및 일회용 공개 정보(OTPI; One-Time Public Information) 중 어느 하나를 생성하고, 상기 식별자 및 상기 인증코드를 이용하여 중간 키(ISK; Intermediate Secret Key) 및 초기 벡터값(IV; Initial Vector)을 생성하고, 상기 중간 키를 이용하여 상기 일회용 베이스 키 및 일회용 공개 정보 중 다른 하나를 생성하고, 상기 일회용 베이스 키를 이용하여 상기 인증서를 암호화하기 위한 암호화 키(EK; Encryption Key) 및 메시지 인증 코드 키(MACK; Message Authentication Code Key)를 생성한다.When the user's validity is verified, the encryption key generation unit 132 receives an identifier of the mobile terminal 110 and an authentication code randomly generated by the mobile terminal 110, and uses a single-use base key ( OTBK (One-Time Base Key) and one-time public information (OTPI) One of the generation, and using the identifier and the authentication code Intermediate Secret (ISK) and initial vector value An encryption key (EK) for generating an initial vector (IV), generating another one of the disposable base key and disposable public information using the intermediate key, and encrypting the certificate using the disposable base key; Key) and a Message Authentication Code Key (MACK).

인증서 암호부(133)는 상기 암호화 키를 이용하여 상기 인증서를 암호화한다.The certificate encryptor 133 encrypts the certificate using the encryption key.

이 때, 인증서 암호부(133)는 상기 메시지 인증 코드 키를 이용하여 상기 인증서에 대한 메시지 인증 코드(MAC; Message Authentication Code)를 생성할 수 있다.At this time, the certificate encryption unit 133 may generate a message authentication code (MAC) for the certificate using the message authentication code key.

인증서 전송부(134)는 상기 메시지 인증 코드, 상기 식별자, 암호화된 상기 인증서 및 상기 일회용 공개 정보를 인증서 전송 서버(120)로 전송한다.
The certificate transmitter 134 transmits the message authentication code, the identifier, the encrypted certificate, and the one-time public information to the certificate transmission server 120.

본 발명은 이동 단말기(110)의 계산 능력(Computational Performance)을 고려하여 암호화 키의 생성에 있어서 두 방안을 제시한다. 즉, 계산 능력이 제한된 이동 단말기(예를 들어, CPU 성능이 600MHz 이하) 또는 이동 단말기의 사용자 환경에 따라 이동 단말기의 계산 능력이 현저히 저하되는 환경에서의 적용 방안과 고성능 이동 단말기 환경의 두 방안을 각각 제시한다. 제시되는 두 방안은 여러 응용 환경에 따라 보다 적절한 방안으로 선택 적용될 수 있다.The present invention proposes two methods for generating an encryption key in consideration of the computational performance of the mobile terminal 110. That is, two methods of application in a mobile terminal with limited computing power (for example, CPU performance of 600 MHz or less) or an environment in which the computing power of the mobile terminal is considerably degraded depending on the user environment of the mobile terminal and a high performance mobile terminal environment are proposed. Present each. The two proposed solutions can be selected and applied as more appropriate according to various application environments.

특히, 일회용 공개 정보 및 일회용 베이스 키를 생성함에 있어서 이동 단말기(110)의 계산 능력에 따라 다른 방식이 적용될 수 있다.
In particular, in generating the disposable public information and the disposable base key, other methods may be applied according to the calculation capability of the mobile terminal 110.

계산 능력이 제한된 이동 단말기 환경Mobile terminal environment with limited computing power

이동 단말기(110)의 사용자는 인증서의 이동을 위해 먼저 이동 단말기의 인증서 관리 클라이언트 프로그램을 실행한다. 인증서 관리 클라이언트 프로그램의 인증코드 생성부(111)는 난수발생기(RNG; Random Number Generator)에 의해 16자리 인증코드를 랜덤하게 생성하여 이동 단말기(110)의 화면에 출력한다.
A user of the mobile terminal 110 first executes a certificate management client program of the mobile terminal to move a certificate. The authentication code generator 111 of the certificate management client program randomly generates a 16-digit authentication code by a random number generator (RNG) and outputs it to the screen of the mobile terminal 110.

이후, 사용자는 고정 단말기(130)의 인증서 관리 프로그램을 실행하고, 이동하고자 하는 인증서를 선택한다. 관리 프로그램의 사용자 인증부(131)가 실행되어 이동하고자 하는 인증서에 대한 패스워드 기반 사용자의 정당성을 검증한다. 검증이 성공하면 사용자 인증부(131)는 사용자에게 이동 단말기(110)의 식별자와 인증코드를 입력할 것을 요청하고, 요청을 받은 사용자는 인증서를 이동 받고자 하는 이동 단말기(110)의 식별자와 이동 단말기(110)에 표시된 인증코드를 입력한다. 이동 단말기 식별자는 이동 단말기(110)를 유일하게 식별하기 위한 식별자로 응용에 따라 이동 단말기나 이동 대상 인증서를 유일하게 식별할 수 있는 다양한 정보가 사용될 수 있고, 이동 단말기(110)의 전화번호 일 수 있다.
Thereafter, the user executes a certificate management program of the fixed terminal 130 and selects a certificate to be moved. The user authentication unit 131 of the management program is executed to verify the legitimacy of the password-based user for the certificate to be moved. If the verification is successful, the user authentication unit 131 requests the user to input the identifier and the authentication code of the mobile terminal 110, the user receives the request and the identifier and the mobile terminal of the mobile terminal 110 to move the certificate Enter the authentication code displayed on (110). The mobile terminal identifier is an identifier for uniquely identifying the mobile terminal 110. Various information for uniquely identifying a mobile terminal or a moving object certificate may be used according to an application, and may be a phone number of the mobile terminal 110. have.

이후, 고정 단말기(130)의 암호 키 생성부(132)가 실행되며, 난수발생기에 의해 암호 키의 전체 크기인 16바이트 키를 랜덤하게 생성하여 일회용 베이스 키(OTBK; One-time Base Key)로 사용한다. 또한, 고정 단말기(130)의 암호 키 생성부(132)는 이동 단말기(110)의 식별자와 인증코드를 입력으로 PKCS(Public-Key Cryptography System) #5에서 정의된 KDF(Key Derivation Function)을 사용하여 중간 키(ISK; Intermediate Secret Key)와 CBC 암호화 시 사용되는 초기 벡터값(IV; Initial Vector)을 유도한다. 이후, 고정 단말기(130)의 암호 키 생성부(132)는 중간 키와 일회용 베이스 키인 OTBK와 비트 단위 배타적 논리합(exclusive OR) 연산을 취한 16바이트 결과 값을 일회용 공개 정보(OTPI; One-Time Public Information)로 하고 사용한다. 여기서, 이동 단말기(110)의 식별자와 인증 코드로부터 중간 키 및 IV의 유도는 PKCS #5를 사용하는 경우를 예로 들었으나, 유도 방법은 이에 국한하지 않고 응용에 따라 다양한 방법이 적용될 수 있다. 또한, 고정 단말기(130)의 암호 키 생성부(132)는 일회용 베이스 키(OTBK)로부터 암호화 키(EK; Encryption Key)와 메시지 인증 코드 키(MACK; Message Authentication Code Key)를 유도한다. 예를 들어, 일회용 베이스 키(OTBK)로부터 암호화 키(EK)와 메시지 인증 코드 키(MACK)를 유도할 때 ANSI X9.24 Part1의 방식이 사용될 수 있다. 다만, 암호화 키와 메시지 인증 코드 키의 유도에는 다른 방식이 적용될 수도 있다.
Thereafter, the encryption key generation unit 132 of the fixed terminal 130 is executed, and randomly generates a 16-byte key that is the total size of the encryption key by a random number generator to generate a one-time base key (OTBK). use. In addition, the encryption key generation unit 132 of the fixed terminal 130 uses the KDF (Key Derivation Function) defined in Public-Key Cryptography System (PKCS) # 5 as an input of the identifier and the authentication code of the mobile terminal 110. Thus, an intermediate vector (ISK) and an initial vector (IV) used for CBC encryption are derived. Thereafter, the encryption key generation unit 132 of the fixed terminal 130 uses the OTBK, which is the intermediate key and the disposable base key, and a 16-byte result value obtained by performing an exclusive OR operation on a bit basis. Information). Here, the derivation of the intermediate key and the IV from the identifier and the authentication code of the mobile terminal 110 is an example of using PKCS # 5, but the derivation method is not limited thereto, and various methods may be applied depending on the application. In addition, the encryption key generation unit 132 of the fixed terminal 130 derives an encryption key (EK) and a message authentication code key (MACK) from the disposable base key (OTBK). For example, the scheme of ANSI X9.24 Part 1 may be used when deriving an encryption key (EK) and a message authentication code key (MACK) from a disposable base key (OTBK). However, other methods may be applied to derivation of the encryption key and the message authentication code key.

이후, 고정 단말기(130)의 인증서 암호부(133)는 암호 키인 EK로 이동 대상 인증서(인증서 공개키 및 인증서 개인키)를 암호화한다. 이 때, 인증서의 암호화에는 국내 블록 암호화 표준 알고리즘인 SEED의 CBC 암호화 방식을 사용할 수 있다. 이 때, IV가 사용될 수 있다. 또한, 암호화된 인증서에 대한 메시지 인증 코드(MAC; Message Authentication Code) 값을 메시지 인증 코드 키(MACK; Message Authentication Code Key)를 적용하여 생성한다. MAC의 생성 방식은 ANSI X9.19 표준 방식을 준용할 수 있다. 인증서의 암호화에는 SEED 이외의 다른 국제적 표준 블록 암호화 알고리즘이 적용될 수도 있다.
Thereafter, the certificate encryption unit 133 of the fixed terminal 130 encrypts the certificate to be moved (certificate public key and certificate private key) with the encryption key EK. In this case, SEED's CBC encryption method, which is a domestic block encryption standard algorithm, may be used for encryption of a certificate. At this time, IV may be used. In addition, a message authentication code (MAC) value for the encrypted certificate is generated by applying a message authentication code key (MACK). MAC generation method can conform to ANSI X9.19 standard method. The encryption of the certificate may be applied to international standard block encryption algorithms other than SEED.

이후, 고정 단말기(130)의 인증서 전송부(134)는 이동 단말기 식별자, 암호화된 인증서, 메시지 인증 코드(MAC), 일회용 공개 정보(OTPI)를 인증서 전송 서버(120)로 전송한다. 여기서, 이동 단말기 식별자는 어느 주체가 인증서 이동 서비스를 이용하는지에 대한 익명성을 부여하기 위해 해쉬를 취한 값으로 사용될 수 있고, 해쉬 함수에 의한 충돌(collision; 서로 다른 두 입력 값에 대해 두 해쉬 출력 값이 동일)에 의한 시스템 오류를 방지하기 위해 이동 단말기 식별자에 대한 해쉬 값에 순차적인 일련번호를 부가하여 사용할 수도 있다.
Thereafter, the certificate transmitter 134 of the fixed terminal 130 transmits the mobile terminal identifier, the encrypted certificate, the message authentication code (MAC), and the one-time public information (OTPI) to the certificate transmission server 120. Herein, the mobile terminal identifier may be used as a hashed value to give anonymity to which subject uses a certificate mobility service, and outputs two hashes for two different input values by a hash function. In order to prevent a system error caused by the same value), a sequential serial number may be added to the hash value for the mobile terminal identifier.

인증서 이동 서버(120)의 인증서 송수신부(121)는 고정 단말기(130)로부터 전송된 자료를 수신하고 인증서 저장부(123)를 통해 저장한다. 이 때, 인증서 저장부(123)는 저장되는 정보에 대해 유효기간 설정을 할 수 있고, 유효기간이 경과하면 저장된 정보가 자동 삭제될 수 있다.
The certificate transceiving unit 121 of the certificate moving server 120 receives the data transmitted from the fixed terminal 130 and stores it through the certificate storage unit 123. In this case, the certificate storage unit 123 may set a valid period for the stored information, and the stored information may be automatically deleted when the valid period has elapsed.

사용자는 이동 단말기(110)의 인증서 요청부(113)를 실행하여 이동 단말기의 식별자와 함께 인증서 요청 메시지를 인증서 전송 서버(120)로 전송한다. 인증서 전송 서버(120)에서는 인증서 처리부(122)가 실행되며, 이 때 인증서 처리부(122)는 식별자와 일치하는 암호화된 인증서가 존재하는지 검색한다. 일치하는 인증서가 존재할 경우, 인증서 처리부(122)는 암호화된 인증서, 메시지 인증 코드(MAC), 그리고 일회용 공개 정보(OTPI) 자료를 이동 단말기(110)로 전송한다. 자료가 전송되고 나면 인증서 처리부(122)는 해당 식별자에 해당되는 모든 자료를 삭제한다.
The user executes the certificate request unit 113 of the mobile terminal 110 and transmits a certificate request message to the certificate transmission server 120 together with the identifier of the mobile terminal. In the certificate transmission server 120, a certificate processing unit 122 is executed. At this time, the certificate processing unit 122 searches whether there is an encrypted certificate matching the identifier. If a matching certificate exists, the certificate processing unit 122 transmits the encrypted certificate, the message authentication code (MAC), and the one-time public information (OTPI) data to the mobile terminal 110. After the data is transmitted, the certificate processing unit 122 deletes all the data corresponding to the identifier.

이동 단말기(110)의 인증서 수신부(115)는 인증서 전송 서버(120)가 전송한 자료를 수신한다. 이후 이동 단말기(110)의 임호 키 생성부(117)는 이동 단말기(110)의 식별자와 인증코드를 입력으로 PKCS #5에 정의된 KDF(Key Derivation Function)을 사용하여 중간 키(ISK)와 IV(Initial Vector)를 유도한다. 이후, 중간 키와 일회용 공개 정보인 OTPI와 비트 단위 배타적 논리합(exclusive OR) 연산을 취한 16바이트 결과 값을 일회용 베이스 키(OTBK)로 하고 사용한다. 또한, 일회용 베이스 키(OTBK)로부터 암호화 키(EK)와 메시지 인증 코드 키(MACK)를 유도한다. 일회용 베이스 키(OTBK)로부터 EK와 MACK의 유도 방법은 고정 단말기(130)의 경우와 같다.
The certificate receiver 115 of the mobile terminal 110 receives the data transmitted by the certificate transmission server 120. Thereafter, the encryption key generation unit 117 of the mobile terminal 110 uses the KDF (Key Derivation Function) defined in PKCS # 5 as an input of the identifier and the authentication code of the mobile terminal 110 and the IV. Derivation of (Initial Vector) Thereafter, the 16-byte result value obtained by performing an intermediate key, OTPI, which is one-time public information, and an exclusive OR operation on a bit basis, is used as the one-time base key (OTBK). In addition, the encryption key EK and the message authentication code key MACK are derived from the disposable base key OTBK. The method of deriving EK and MACK from the disposable base key (OTBK) is the same as that of the fixed terminal 130.

이후, 이동 단말기(110)의 인증서 복호부(118)는 먼저 MACK(Message Authentication Code Key)로 암호화된 인증서의 MAC(Message Authentication Code) 검증을 수행함으로써 전송된 자료의 무결성(integrity)을 검증한다. 검증이 성공하면, 인증서 복호부(118)는 EK로 암호화된 인증서를 복호화하고, 인증서 저장부(119)는 복호화된 인증서를 이동 단말기(110)에 저장함으로써 최종적으로 사용자가 이동 단말기(110)에서 인증서 서비스를 사용할 수 있게 한다.
Thereafter, the certificate decryption unit 118 of the mobile terminal 110 first verifies the integrity of the transmitted data by performing a Message Authentication Code (MAC) verification of a certificate encrypted with a message authentication code key (MACK). If the verification is successful, the certificate decrypting unit 118 decrypts the certificate encrypted with EK, and the certificate storage unit 119 stores the decrypted certificate in the mobile terminal 110 so that the user finally receives the information from the mobile terminal 110. Enable Certificate Services.

고성능 이동 단말기 환경High performance mobile terminal environment

고성능 이동 단말기 환경에서 암호 키의 생성시 Diffie-Hellman Key Sharing 방식을 응용하기 위해 다음의 시스템 파라미터들을 가정한다.The following system parameters are assumed to apply the Diffie-Hellman Key Sharing method when generating an encryption key in a high performance mobile terminal environment.

- p: 2048 비트 이상의 소수(prime)로서 유한 공간(finite field) Zp를 결정한다.p: determines the finite field Z p as a prime of 2048 bits or more.

- g: Zp의 원소로서 위수로

Figure pat00004
를 갖는 생성자이다.g is the element of Z p ,
Figure pat00004
Constructor with

여기서, p의 크기는 2048 비트 이상의 소수로서 예시를 하였으나, 다양한 적용 환경에 따라 p의 크기는 가변적으로 적용될 수 있다.
Here, the size of p is illustrated as a prime number of 2048 bits or more, but the size of p may be variably applied according to various application environments.

위 두 시스템 파라미터들은 공개정보로서 사전에 이동 단말기(110)와 고정 단말기(130)가 공유하고 있을 수도 있고, 응용에 따라 무결성이 보장되는 환경에서 인증서 전송 서버(120)에 저장되어 사용될 수도 있다.The above two system parameters may be shared by the mobile terminal 110 and the fixed terminal 130 as public information in advance, or may be stored and used in the certificate transmission server 120 in an environment where integrity is guaranteed according to an application.

고성능 이동 단말기 환경에서도 이동 단말기(110)가 인증코드를 생성하고, 고정 단말기(130)가 이동하고자 하는 인증서에 대해 패스워드 기반 사용자의 정당성을 검증하고, 이동 단말기의 식별자와 인증코드를 입력 받는 과정은 계산 능력이 제한된 이동 단말기 환경과 동일하게 적용된다.
Even in a high-performance mobile terminal environment, the mobile terminal 110 generates an authentication code, the fixed terminal 130 verifies the validity of the password-based user with respect to the certificate to be moved, and receives the identifier and the authentication code of the mobile terminal. The same applies to mobile terminal environments with limited computing power.

이후, 고정 단말기(130)의 암호 키 생성부(132)가 실행된다. 암호 키 생성부(132)는 난수발생기에 의해 R(

Figure pat00005
)을 랜덤하게 생성하고, gR mod p 를 계산하여 일회용 공개 정보(OTPI)로 하고 사용한다. 이후, 고정 단말기(130)의 암호 키 생성부(132)는 이동 단말기(110)의 식별자와 인증코드를 입력으로 PKCS #5에 정의된 KDF(Key Derivation Function)을 사용하여 중간 키(ISK; Intermediate Secret Key)와 IV(Initial Vector; CBC 암호화 시 초기 벡터값)를 유도한다. 여기서, 이동 단말기(110)의 식별자와 인증코드로부터 중간 키 및 IV의 유도는 PKCS #5를 준용하였으나, 유도 방법인 이에 국한되지 않고 응용에 따라 다양한 방법이 적용될 수 있다. 이후, 중간 키 값에
Figure pat00006
를 취한 결과 값을 X로 표기하고, OTPIX mod p 를 계산하여 상위 16바이트를 일회용 베이스 키(OTBK; One-Time Base Key)로 사용한다. 또한, 고정 단말기(130)의 암호 키 생성부(132)는 OTBK로부터 암호화 키(EK)와 메시지 인증 코드 키(MACK)를 유도한다. OTBK로부터 EK와 MACK의 유도 방법은 ANSI X9.24 Part 1의 방식을 따를 수 있다. 다만, OTBK로부터 EK 및 MACK의 유도에는 다양한 방식이 적용될 수 있다.Thereafter, the encryption key generation unit 132 of the fixed terminal 130 is executed. Encryption key generation unit 132 by the random number generator R (
Figure pat00005
) Is randomly generated, and g R mod p is calculated and used as one-time publicly available information (OTPI). Thereafter, the encryption key generation unit 132 of the fixed terminal 130 inputs an identifier and an authentication code of the mobile terminal 110 and uses an intermediate key (ISK; Key Derivation Function) defined in PKCS # 5. Secret Key) and IV (Initial Vector) are derived. Here, the derivation of the intermediate key and the IV from the identifier and the authentication code of the mobile terminal 110 is applied to PKCS # 5, but not limited to the derivation method, various methods may be applied depending on the application. After, to the intermediate key value
Figure pat00006
The result is denoted by X, and OTPI X mod p is calculated and the upper 16 bytes are used as a one-time base key (OTBK). In addition, the encryption key generation unit 132 of the fixed terminal 130 derives the encryption key (EK) and the message authentication code key (MACK) from the OTBK. Derivation of EK and MACK from OTBK can follow the method of ANSI X9.24 Part 1. However, various methods may be applied to derivation of EK and MACK from OTBK.

고성능 이동 단말기 환경에서도, 고정 단말기(130)가 인증서를 암호화하고, 암호화된 인증서 등을 인증서 전송 서버(120)로 전송하고, 이동 단말기(110)의 요청에 따라 인증서 전송 서버(120)가 암호화된 인증서 등의 정보를 이동 단말기로 전송하는 과정은 계산 능력이 제한된 이동 단말기 환경과 동일하다.
Even in a high performance mobile terminal environment, the fixed terminal 130 encrypts the certificate, transmits the encrypted certificate, etc. to the certificate transmission server 120, and the certificate transmission server 120 is encrypted according to the request of the mobile terminal 110. The process of transmitting information, such as a certificate, to a mobile terminal is the same as a mobile terminal environment with limited computing power.

이후, 이동 단말기(110)의 인증서 수신부(115)는 인증서 전송 서버(120)가 전송한 자료를 수신한다. 이동 단말기(110)의 암호 키 생성부(117)는 이동 단말기(110)의 식별자와 인증코드를 입력으로 PKCS #5에 정의된 KDF(Key Derivation Function)을 사용하여 중간 키(ISK)와 IV를 유도한다. 이후, 암호 키 생성부(117)는 중간 키 값에

Figure pat00007
를 취한 결과 값 X를 계산하고, OTPIX mod p 를 계산하여 상위 16바이트를 일회용 베이스 키인 OTBK로 하고 사용한다. 또한, 암호 키 생성부(117)는 OTBK로부터 암호화 키 EK와 MACK를 유도한다. OTBK로부터 EK와 MACK의 유도는 고정 단말기(130)의 경우와 같다.Thereafter, the certificate receiver 115 of the mobile terminal 110 receives the data transmitted by the certificate transmission server 120. The cryptographic key generation unit 117 of the mobile terminal 110 inputs an intermediate key (ISK) and an IV using a key derivation function (KDF) defined in PKCS # 5 by inputting an identifier and an authentication code of the mobile terminal 110. Induce. Thereafter, the encryption key generation unit 117 is assigned to the intermediate key value.
Figure pat00007
Calculate the value X, compute OTPI X mod p, and use the upper 16 bytes as the disposable base key OTBK. In addition, the encryption key generation unit 117 derives encryption keys EK and MACK from the OTBK. Derivation of EK and MACK from the OTBK is the same as that of the fixed terminal 130.

이후, 생성된 암호화 키와 메시지 인증 코드 키를 이용하여 수행되는 동작은 계산 능력이 제한된 이동 단말기 환경과 동일하다.
Subsequently, the operation performed using the generated encryption key and the message authentication code key is the same as that of the mobile terminal with limited computing power.

도 2는 본 발명의 일실시예에 따른 인증서 이동 방법을 나타낸 동작 흐름도이다.2 is a flowchart illustrating a certificate movement method according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일실시예에 따른 인증서 이동 방법은 먼저 이동 단말기가 인증 코드를 생성하고 이를 화면에 출력한다(S201).2, in the certificate movement method according to an embodiment of the present invention, the mobile terminal first generates an authentication code and outputs it to the screen (S201).

또한, 인증서 이동 방법은 고정 단말기가 이동하고자 하는 인증서를 선택한다(S202).In addition, the certificate moving method selects a certificate to be moved by the fixed terminal (S202).

이후, 고정 단말기는 선택된 인증서에 대해 패스워드 기반 사용자 정당성을 검증한다(S203).Thereafter, the fixed terminal verifies the password-based user legitimacy for the selected certificate (S203).

이후, 고정 단말기는 사용자로부터 인증서가 이동될 이동 단말기의 식별자와 단계(S201)에서 생성된 인증코드를 입력 받는다(S204).Thereafter, the fixed terminal receives an identifier of the mobile terminal to which the certificate is to be moved and an authentication code generated in step S201 (S204).

이후, 고정 단말기는 단계(S204)에서 입력 받는 식별자와 인증코드를 이용하여 암호화 키 등 필요한 키들을 생성한다(S205).Thereafter, the fixed terminal generates necessary keys such as an encryption key by using the identifier and the authentication code received in step S204 (S205).

이후, 고정 단말기는 단계(S205)에서 생성된 암호화 키를 이용하여 인증서를 암호화하고 메시지 인증 코드 키를 이용하여 메시지 인증 코드를 생성한다(S206).Thereafter, the fixed terminal encrypts the certificate using the encryption key generated in step S205 and generates a message authentication code using the message authentication code key (S206).

이후, 고정 단말기는 인증서 전송 서버로 이동 단말기 식별자, 암호화된 인증서, 메시지 인증 코드(MAC) 및 일회용 공개 정보(OTPI)를 전송한다(S207).Thereafter, the fixed terminal transmits the mobile terminal identifier, the encrypted certificate, the message authentication code (MAC) and the one-time public information (OTPI) to the certificate transmission server (S207).

이후, 인증서 전송 서버는 수신된 이동 단말기 식별자, 암호화된 인증서, 메시지 인증 코드(MAC) 및 일회용 공개 정보(OTPI)를 저장한다(S208).Thereafter, the certificate transmission server stores the received mobile terminal identifier, the encrypted certificate, the message authentication code (MAC), and the one-time public information (OTPI) (S208).

이동 단말기가 인증서 전송 요청을 하고(S209), 인증서 전송 서버는 인증서 전송 요청에 상응하는 이동 단말기 식별자로 암호화된 인증서를 검색한다(S210).The mobile terminal makes a certificate transmission request (S209), and the certificate transmission server searches for a certificate encrypted with the mobile terminal identifier corresponding to the certificate transmission request (S210).

인증서 전송 서버는 이동 단말기 식별자와 일치하는 암호화된 인증서 및 관련 정보를 이동 단말기로 전송한 후 해당 자료를 DB에서 삭제한다(S211).The certificate transmission server deletes the corresponding data from the DB after transmitting the encrypted certificate and related information corresponding to the mobile terminal identifier to the mobile terminal (S211).

이동 단말기는 인증서 전송 서버로부터 수신한 일회용 공개 정보 등을 이용하여 암호화 키 및 메시지 인증 코드 키를 생성한다(S212).The mobile terminal generates an encryption key and a message authentication code key using disposable public information received from the certificate transmission server (S212).

또한, 이동 단말기는 메시지 인증 코드 키를 이용하여 MAC 검증을 수행하고 암호화 키를 이용하여 인증서를 복호화한다(S213).In addition, the mobile terminal performs MAC verification using the message authentication code key and decrypts the certificate using the encryption key (S213).

또한, 이동 단말기는 복호화된 인증서를 저장한다(S214).
In addition, the mobile terminal stores the decrypted certificate (S214).

도 3은 도 2에 도시된 암호화 키 생성 단계의 일 예를 나타낸 동작 흐름도이다.3 is an operation flowchart illustrating an example of an encryption key generation step illustrated in FIG. 2.

도 3을 참조하면, 먼저 고정 단말기가 키 공간 모두를 사용하여 일회용 베이스 키(OTBK; One-Time Base Key) 및 일회용 공개 정보(OTPI; One-Time Public Information) 중 어느 하나를 생성한다(S310).Referring to FIG. 3, the fixed terminal first generates one of a one-time base key (OTBK) and one-time public information (OTPI) using all of the key spaces (S310). .

예를 들어, 계산 능력이 제한된 이동 단말기 환경에서는 단계(S310)가 상기 암호화 키의 전체 크기인 16바이트 키를 랜덤하게 발생시켜서 일회용 베이스 키를 생성하고, 고성능 이동 단말기 환경에서는 단계(S310)가 gR mod p (p는 유한공간 Zp를 결정하는 2048비트 이상의 소수, g는 Zp의 원소로서, 위수로

Figure pat00008
를 갖는 생성자, R은
Figure pat00009
인 난수)를 계산하여 일회용 공개 정보를 생성할 수 있다.For example, in a mobile terminal environment with limited computing power, step S310 randomly generates a 16-byte key which is the total size of the encryption key to generate a disposable base key, and in a high performance mobile terminal environment, step S310 is g. R mod p (p is a fraction of 2048 bits or more that determines the finite space Z p , g is the element of Z p ,
Figure pat00008
Constructor with R
Figure pat00009
Phosphorus random number) may be calculated to generate disposable public information.

이 때, p의 크기는 2048 비트 이상의 소수로서 예시를 하였으나, 다양한 적용 환경에 따라 p의 크기는 가변적으로 적용될 수 있다.
In this case, the size of p is illustrated as a prime number of 2048 bits or more, but the size of p may be variably applied according to various application environments.

또한, 고정 단말기는 상기 식별자 및 상기 인증코드를 이용하여 중간 키(ISK; Intermediate Secret Key) 및 초기 벡터값(IV; Initial Vector)을 생성한다(S320).In addition, the fixed terminal generates an intermediate secret key (ISK) and an initial vector (IV) using the identifier and the authentication code (S320).

이 때, 중간 키와 초기 벡터값은 이동 단말기의 식별자와 인증코드를 입력으로 PKCS #5에 정의된 KDF(Key Derivation Function)를 사용하여 유도될 수 있다.At this time, the intermediate key and the initial vector value may be derived using a key derivation function (KDF) defined in PKCS # 5 by inputting the identifier and the authentication code of the mobile terminal.

또한, 고정 단말기는 상기 중간 키를 이용하여 상기 일회용 베이스 키 및 일회용 공개 정보 중 다른 하나를 생성한다(S330).In addition, the fixed terminal generates another one of the disposable base key and the disposable public information using the intermediate key (S330).

예를 들어, 계산 환경에 제한된 이동 단말기 환경에서는 단계(S320)가 중간 키와 단계(S310)에서 생성된 일회용 베이스 키를 비트 단위 배타적 논리합(exclusive OR) 연산하여 나온 16바이트 결과 값을 일회용 공개 정보로 생성하고, 고성능 이동 단말기 환경에서는 단계(S320)가 단계(S310)에서 생성된 일회용 공개 정보에 대하여 OTPIX mod p(OTPI는 상기 일회용 공개 정보, X는 상기 중간 키에

Figure pat00010
를 취한 결과 값)를 계산하여 상위 16바이트를 취하여 일회용 베이스 키를 생성할 수 있다.For example, in a mobile terminal environment limited to a computing environment, step S320 uses a 16-byte result value obtained by performing a bitwise exclusive OR operation on the intermediate key and the disposable base key generated in step S310. In the high performance mobile terminal environment, step S320 is performed on the disposable public information generated in step S310 by OTPI X mod p (OTPI is the disposable public information, and X is the intermediate key).
Figure pat00010
Is a resultant value) to generate the disposable base key by taking the top 16 bytes.

또한, 고정 단말기는 일회용 베이스 키를 이용하여 암호화 키 및 메시지 인증 코드 키를 생성한다(S340).In addition, the fixed terminal generates an encryption key and a message authentication code key using the disposable base key (S340).

이 때, 암호화 키 및 메시지 인증 코드 키의 생성은 ANSI X9.24 Part 1의 방식에 따라 이루어질 수 있다.
At this time, the generation of the encryption key and the message authentication code key may be performed according to the method of ANSI X9.24 Part 1.

본 발명은 인증서 암호화에 사용되는 암호화 키 생성시 그 키의 공간(암호화 키가 생성될 수 있는 가지 수)인 2128(암호화 키의 크기 128비트 기준) 모두를 사용한다. 이를 위해, 계산 능력이 제한된 이동 단말기 환경에서는 128비트 키 전체를 난수발생기를 통해 랜덤하게 생성하고, 고성능 이동 단말기 환경에서는 키 생성에 사용되는 OTPI에서의 R을 난수발생기를 통해 랜덤하게 생성함으로써 암호화 키 생성시 키 전체 공간을 사용할 수 있도록 하였다.The present invention uses both 2 128 (based on the size of the encryption key 128 bits), which is the space of the key (the number of branches that an encryption key can be generated) in generating the encryption key used for certificate encryption. To this end, in a mobile terminal environment with limited computational power, an entire 128-bit key is randomly generated by a random number generator. In a high-performance mobile terminal environment, an encryption key is generated by randomly generating an R in OTPI, which is used for key generation, through a random number generator. The entire key space can be used during creation.

또한, 본 발명은 전송되는 암호화된 인증서의 위변조 유무를 판단하기 위해 암호화된 인증서의 메시지 인증 코드(MAC)를 생성하여 사용함으로써, 수신 측인 이동 단말기에서 효과적으로 무결성을 검증할 수 있다.
In addition, the present invention by generating and using the message authentication code (MAC) of the encrypted certificate to determine whether there is a forgery of the transmitted encrypted certificate, it is possible to effectively verify the integrity at the receiving terminal.

이상에서와 같이 본 발명에 따른 인증서 이동 방법 및 이를 이용한 장치는 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.As described above, the certificate movement method and the apparatus using the same according to the present invention are not limited to the configuration and method of the embodiments described as described above, but the embodiments may be modified in various embodiments. All or some of these may optionally be combined.

110: 이동 단말기
111: 인증코드 생성부
113: 인증서 요청부
115: 인증서 수신부
117: 암호키 생성부
118: 인증서 복호부
119: 인증서 저장부
120: 인증서 전송 서버
121: 인증서 송수신부
122: 인증서 처리부
123: 인증서 저장부
130: 고정 단말기
131: 사용자 인증부
132: 암호키 생성부
133: 인증서 암호부
134: 인증서 전송부
110: mobile terminal
111: authentication code generation unit
113: certificate request unit
115: certificate receiving unit
117: encryption key generation unit
118: certificate decoder
119: certificate store
120: certificate transfer server
121: certificate transceiver
122: certificate processing unit
123: certificate storage unit
130: fixed terminal
131: user authentication unit
132: encryption key generation unit
133: certificate cipher
134: certificate transmission unit

Claims (15)

고정 단말기로부터 이동 단말기로 인증서를 이동시키는 방법에 있어서,
상기 고정 단말기가 상기 이동 단말기의 식별자 및 상기 이동 단말기에 의해 랜덤하게 생성된 인증코드를 입력 받는 단계;
상기 고정 단말기가 키 공간 모두를 사용하여 일회용 베이스 키(OTBK; One-Time Base Key) 및 일회용 공개 정보(OTPI; One-Time Public Information) 중 어느 하나를 생성하는 단계;
상기 고정 단말기가 상기 식별자 및 상기 인증코드를 이용하여 중간 키(ISK; Intermediate Secret Key) 및 초기 벡터값(IV; Initial Vector)을 생성하는 단계;
상기 고정 단말기가 상기 중간 키를 이용하여 상기 일회용 베이스 키 및 일회용 공개 정보 중 다른 하나를 생성하는 단계;
상기 고정 단말기가 상기 일회용 베이스 키를 이용하여 상기 인증서를 암호화하기 위한 암호화 키(EK; Encryption Key) 및 메시지 인증 코드 키(MACK; Message Authentication Code Key)를 생성하는 단계;
상기 고정 단말기가 상기 암호화 키를 이용하여 상기 인증서를 암호화하는 단계;
상기 고정 단말기가 상기 메시지 인증 코드 키를 이용하여 상기 인증서에 대한 메시지 인증 코드(MAC; Message Authentication Code)를 생성하는 단계; 및
상기 고정 단말기가 상기 식별자, 암호화된 상기 인증서, 상기 메시지 인증 코드 및 상기 일회용 공개 정보를 인증서 전송 서버로 전송하는 단계
를 포함하는 것을 특징으로 하는 인증서 이동 방법.
In the method for moving a certificate from a fixed terminal to a mobile terminal,
Receiving, by the fixed terminal, an identifier of the mobile terminal and an authentication code randomly generated by the mobile terminal;
Generating, by the fixed terminal, one of a one-time base key (OTBK) and one-time public information (OTPI) using all of the key spaces;
Generating, by the fixed terminal, an intermediate secret key (ISK) and an initial vector (IV) using the identifier and the authentication code;
Generating, by the fixed terminal, the other of the disposable base key and the disposable public information using the intermediate key;
Generating, by the fixed terminal, an encryption key (EK) and a message authentication code key (MACK) for encrypting the certificate using the disposable base key;
Encrypting, by the fixed terminal, the certificate using the encryption key;
Generating, by the fixed terminal, a message authentication code (MAC) for the certificate by using the message authentication code key; And
Transmitting, by the fixed terminal, the identifier, the encrypted certificate, the message authentication code, and the disposable public information to a certificate transmission server.
Certificate movement method comprising a.
청구항 1에 있어서,
상기 일회용 베이스 키는 상기 암호화 키의 전체 크기인 16바이트 키를 랜덤하게 발생시켜서 생성되고, 상기 일회용 공개 정보는 상기 일회용 베이스 키 및 상기 중간 키를 배타적 논리합(exclusive OR)하여 생성되는 것을 특징으로 하는 인증서 이동 방법.
The method according to claim 1,
The one-time base key is generated by randomly generating a 16-byte key, which is the entire size of the encryption key, and the one-time public information is generated by an exclusive OR of the one-time base key and the intermediate key. How to move a certificate.
청구항 1에 있어서,
상기 일회용 공개 정보는 gR mod p (p는 유한공간 Zp를 결정하는 소수, g는 Zp의 원소로서, 위수로
Figure pat00011
를 갖는 생성자, R은
Figure pat00012
인 난수)를 계산하여 생성되고, 상기 일회용 베이스 키는 상기 일회용 공개 정보에 대하여 OTPIX mod p(OTPI는 상기 일회용 공개 정보, X는 상기 중간 키에
Figure pat00013
를 취한 결과 값)를 계산하여 상위 16바이트를 취하여 생성되는 것을 특징으로 하는 인증서 이동 방법.
The method according to claim 1,
The disposable public information is g R mod p (p is a prime to determine the finite space Z p , g is an element of Z p ,
Figure pat00011
Constructor with R
Figure pat00012
Is generated by calculating a random number), and the one-time base key is OTPI X mod p (OTPI is the one-time public information and X is the intermediate key).
Figure pat00013
Is obtained by taking the upper 16 bytes by calculating the result value).
청구항 2 또는 청구항 3에 있어서,
상기 인증서 이동 방법은
상기 이동 단말기가 상기 인증서 전송 서버로 상기 인증서의 전송을 요청하는 단계;
상기 인증서 전송 서버가 상기 이동 단말기에 상응하는 암호화된 상기 인증서를 검색하는 단계;
상기 인증서 전송 서버가 암호화된 상기 인증서, 상기 메시지 인증 코드값 및 상기 일회용 공개 정보를 상기 이동 단말기로 전송하는 단계;
상기 이동 단말기가 상기 일회용 공개 정보를 이용하여 상기 암호화 키를 생성하는 단계; 및
상기 이동 단말기가 상기 암호화 키를 이용하여 암호화된 상기 인증서를 복호화하여 상기 인증서를 복원하는 단계
를 더 포함하는 것을 특징으로 하는 인증서 이동 방법.
The method according to claim 2 or 3,
The certificate movement method
Requesting, by the mobile terminal, the transmission of the certificate to the certificate transmission server;
Retrieving, by the certificate transmission server, the encrypted certificate corresponding to the mobile terminal;
Transmitting, by the certificate transmission server, the encrypted certificate, the message authentication code value, and the disposable public information to the mobile terminal;
Generating, by the mobile terminal, the encryption key using the disposable public information; And
Restoring the certificate by decrypting the certificate encrypted using the encryption key by the mobile terminal;
Certificate movement method further comprising.
청구항 4에 있어서,
상기 인증서 이동 방법은
상기 인증서를 복호화하여 상기 인증서를 복원하는 단계 이전에, 상기 이동 단말기가 상기 일회용 공개 정보를 이용하여 상기 일회용 베이스 키를 복원하는 단계;
복원된 상기 일회용 베이스 키를 이용하여 상기 메시지 인증 코드 키를 복원하는 단계; 및
상기 메시지 인증 코드 키를 이용하여 암호화된 상기 인증서의 메시지 인증 코드 검증을 수행하는 단계를 더 포함하고,
상기 인증서를 복호화하여 상기 인증서를 복원하는 단계는
상기 메시지 인증 코드 검증이 성공하여 무결성(integrity)이 검증된 경우에만 상기 인증서를 복호화하여 상기 인증서를 복원하는 것을 특징으로 하는 인증서 이동 방법.
The method of claim 4,
The certificate movement method
Before the step of recovering the certificate by decrypting the certificate, the mobile terminal recovering the one-time base key by using the one-time public information;
Restoring the message authentication code key using the restored one-time base key; And
Performing message verification code verification of the certificate encrypted using the message authentication code key;
Decrypting the certificate to restore the certificate
And restoring the certificate by decrypting the certificate only when the message authentication code verification succeeds and the integrity is verified.
이동 단말기로 이동시키고자 하는 인증서에 대한 사용자 정당성을 검증하는 사용자 인증부;
상기 사용자 정당성이 검증되면, 상기 이동 단말기의 식별자 및 상기 이동 단말기에 의해 랜덤하게 생성된 인증코드를 입력 받고, 키 공간 모두를 사용하여 일회용 베이스 키(OTBK; One-Time Base Key) 및 일회용 공개 정보(OTPI; One-Time Public Information) 중 어느 하나를 생성하고, 상기 식별자 및 상기 인증코드를 이용하여 중간 키(ISK; Intermediate Secret Key) 및 초기 벡터값(IV; Initial Vector)을 생성하고, 상기 중간 키를 이용하여 상기 일회용 베이스 키 및 일회용 공개 정보 중 다른 하나를 생성하고, 상기 일회용 베이스 키를 이용하여 상기 인증서를 암호화하기 위한 암호화 키(EK; Encryption Key) 및 메시지 인증 코드 키(MACK; Message Authentication Code Key)를 생성하는 암호키 생성부;
상기 암호화 키를 이용하여 상기 인증서를 암호화하는 인증서 암호부; 및
상기 메시지 인증 코드 키를 이용하여 상기 인증서에 대하여 생성된 메시지 인증 코드(MAC; Message Authentication Code), 상기 식별자, 암호화된 상기 인증서 및 상기 일회용 공개 정보를 인증서 전송 서버로 전송하는 인증서 전송부
를 포함하는 것을 특징으로 하는 고정 단말기.
A user authenticator verifying user legitimacy for a certificate to be moved to a mobile terminal;
If the user legitimacy is verified, an identifier of the mobile terminal and an authentication code randomly generated by the mobile terminal are input, and a one-time base key (OTBK) and one-time public information are used using both key spaces. Generate one of (OTPI; One-Time Public Information), generate an intermediate secret key (ISK) and an initial vector (IV) using the identifier and the authentication code, and generate the intermediate A key to generate another one of the one-time base key and one-time public information, and an encryption key (EK) and a message authentication code key (MACK) for encrypting the certificate using the one-time base key. An encryption key generation unit for generating a code key);
A certificate encryption unit for encrypting the certificate using the encryption key; And
Certificate transmission unit for transmitting a message authentication code (MAC), the identifier, the encrypted certificate and the one-time public information generated for the certificate using the message authentication code key to a certificate transmission server
Fixed terminal comprising a.
청구항 6에 있어서,
상기 일회용 베이스 키는 상기 암호화 키의 전체 크기인 16바이트 키를 랜덤하게 발생시켜서 생성되고, 상기 일회용 공개 정보는 상기 일회용 베이스 키 및 상기 중간 키를 배타적 논리합(exclusive OR)하여 생성되는 것을 특징으로 하는 고정 단말기.
The method of claim 6,
The one-time base key is generated by randomly generating a 16-byte key which is the total size of the encryption key, and the one-time public information is generated by an exclusive OR of the one-time base key and the intermediate key. Fixed terminals.
청구항 6에 있어서,
상기 일회용 공개 정보는 gR mod p (p는 유한공간 Zp를 결정하는 소수, g는 Zp의 원소로서, 위수로
Figure pat00014
를 갖는 생성자, R은
Figure pat00015
인 난수)를 계산하여 생성되고, 상기 일회용 베이스 키는 상기 일회용 공개 정보에 대하여 OTPIX mod p(OTPI는 상기 일회용 공개 정보, X는 상기 중간 키에
Figure pat00016
를 취한 결과 값)를 계산하여 상위 16바이트를 취하여 생성되는 것을 특징으로 하는 고정 단말기.
The method of claim 6,
The disposable public information is g R mod p (p is a prime to determine the finite space Z p , g is an element of Z p ,
Figure pat00014
Constructor with R
Figure pat00015
Is generated by calculating a random number), and the one-time base key is OTPI X mod p (OTPI is the one-time public information and X is the intermediate key).
Figure pat00016
A fixed terminal, characterized in that it is generated by taking the upper 16 bytes by calculating a).
청구항 7 또는 청구항 8에 있어서,
상기 메시지 인증 코드는
상기 이동 단말기가 복원한 상기 메시지 인증 코드 키를 이용하여 메시지 인증 코드 검증을 수행하는데 사용되는 것을 특징으로 하는 고정 단말기.
The method according to claim 7 or 8,
The message verification code is
And use the message authentication code key restored by the mobile terminal to perform message authentication code verification.
난수 발생기에 의해 랜덤하게 인증코드를 생성하는 인증코드 생성부;
인증서 전송 서버로 고정 단말기로부터 이동시키고자 하는 인증서에 대한 이동 요청을 송신하는 인증서 요청부;
상기 인증서 전송 서버로부터 암호화된 상기 인증서, 메시지 인증 코드(MAC; Message Authentication Code) 및 일회용 공개 정보(OTPI; One-Time Public Information)를 수신하는 인증서 수신부;
상기 인증코드를 이용하여 상기 일회용 공개 정보로부터 일회용 베이스 키(OTBK; One-Time Base Key)를 생성하고, 상기 일회용 베이스 키를 이용하여 암호화 키(EK; Encryption Key) 및 메시지 인증 코드 키(MACK; Message Authentication Code Key)를 생성하는 암호키 생성부;
상기 메시지 인증 코드 키를 이용하여 암호화된 상기 인증서에 대한 메시지 인증 코드 검증을 수행하고, 상기 검증 결과 무결성이 검증되면 상기 암호화 키를 이용하여 암호화된 상기 인증서를 복호화하는 인증서 복호부; 및
복호화된 상기 인증서를 저장하는 인증서 저장부
를 포함하는 것을 특징으로 하는 이동 단말기.
Authentication code generation unit for generating a random authentication code by a random number generator;
A certificate request unit which transmits a movement request for a certificate to be moved from the fixed terminal to the certificate transmission server;
A certificate receiver configured to receive the encrypted certificate, a message authentication code (MAC) and one-time public information (OTPI) from the certificate transmission server;
The one-time base key (OTBK) is generated from the one-time public information using the authentication code, and an encryption key (EK) and a message authentication code key (MACK) are used using the one-time base key. Encryption key generation unit for generating a Message Authentication Code Key);
A certificate decryption unit for performing a message authentication code verification on the certificate encrypted using the message authentication code key, and decrypting the certificate encrypted using the encryption key when the verification result integrity is verified; And
Certificate storage unit for storing the decrypted certificate
To the mobile terminal.
청구항 10에 있어서,
상기 일회용 베이스 키는 상기 암호화 키의 전체 크기인 16바이트 키를 랜덤하게 발생시켜서 생성되고, 상기 일회용 공개 정보는 상기 일회용 베이스 키 및 상기 중간 키를 배타적 논리합(exclusive OR)하여 생성되는 것을 특징으로 하는 이동 단말기.
The method of claim 10,
The one-time base key is generated by randomly generating a 16-byte key, which is the entire size of the encryption key, and the one-time public information is generated by an exclusive OR of the one-time base key and the intermediate key. Mobile terminal.
청구항 10에 있어서,
상기 일회용 공개 정보는 gR mod p (p는 유한공간 Zp를 결정하는 소수, g는 Zp의 원소로서, 위수로
Figure pat00017
를 갖는 생성자, R은
Figure pat00018
인 난수)를 계산하여 생성되고, 상기 일회용 베이스 키는 상기 일회용 공개 정보에 대하여 OTPIX mod p(OTPI는 상기 일회용 공개 정보, X는 상기 중간 키에
Figure pat00019
를 취한 결과 값)를 계산하여 상위 16바이트를 취하여 생성되는 것을 특징으로 하는 이동 단말기.
The method of claim 10,
The disposable public information is g R mod p (p is a prime to determine the finite space Z p , g is an element of Z p ,
Figure pat00017
Constructor with R
Figure pat00018
Is generated by calculating a random number), and the one-time base key is OTPI X mod p (OTPI is the one-time public information and X is the intermediate key).
Figure pat00019
A mobile terminal, characterized in that it is generated by taking the upper 16 bytes by calculating a).
고정 단말기로부터 이동 단말기의 식별자, 암호화된 인증서, 상기 인증서에 상응하는 메시지 인증 코드(MAC; Message Authentication Code) 및 일회용 공개 정보(OTPI; One-Time Public Information)를 수신하고, 이동 단말기의 요청에 따라 상기 암호화된 인증서, 상기 메시지 인증 코드 및 상기 일회용 공개 정보를 송신하는 인증서 송수신부;
상기 암호화된 인증서, 상기 메시지 인증 코드 및 상기 일회용 공개 정보를 상기 식별자에 따라 저장하는 인증서 저장부; 및
상기 인증서 저장부에서 상기 이동 단말기의 요청에 상응하는 상기 암호화된 인증서, 상기 메시지 인증 코드 및 상기 일회용 공개 정보를 검색하여 검색된 결과를 상기 인증서 송수신부로 제공하고, 상기 이동 단말기로 전송된 정보를 삭제하는 인증서 처리부
를 포함하는 것을 특징으로 하는 인증서 전송 서버.
Receives an identifier of the mobile terminal, an encrypted certificate, a message authentication code (MAC) corresponding to the certificate, and one-time public information (OTPI) from the fixed terminal, and at the request of the mobile terminal. A certificate transmission / reception unit configured to transmit the encrypted certificate, the message authentication code, and the disposable public information;
A certificate storage unit for storing the encrypted certificate, the message authentication code, and the disposable public information according to the identifier; And
The certificate storage unit searches for the encrypted certificate, the message authentication code, and the one-time public information corresponding to the request of the mobile terminal, provides the searched result to the certificate transceiver, and deletes the information transmitted to the mobile terminal. Certificate processing unit
Certificate transmission server comprising a.
청구항 13에 있어서,
상기 일회용 공개 정보는 상기 암호화 키의 전체 크기인 16바이트 키를 랜덤하게 발생시켜서 생성된 일회용 베이스 키 및 상기 식별자 및 상기 이동 단말기의 인증코드를 이용하여 생성된 중간 키를 배타적 논리합(exclusive OR)하여 생성되는 것을 특징으로 하는 인증서 전송 서버.
The method according to claim 13,
The one-time public information is exclusive OR of a one-time base key generated by randomly generating a 16-byte key that is the total size of the encryption key and an intermediate key generated by using the identifier and the authentication code of the mobile terminal. Certificate transmission server, characterized in that it is generated.
청구항 13에 있어서,
상기 일회용 공개 정보는 gR mod p (p는 유한공간 Zp를 결정하는 소수, g는 Zp의 원소로서, 위수로
Figure pat00020
를 갖는 생성자, R은
Figure pat00021
인 난수)를 계산하여 생성되고, 상기 암호화된 인증서는 상기 일회용 공개 정보에 대하여 OTPIX mod p(OTPI는 상기 일회용 공개 정보, X는 상기 중간 키에
Figure pat00022
를 취한 결과 값)를 계산하여 상위 16바이트를 취하여 생성되는 일회용 베이스 키에 의하여 생성된 암호화 키로 암호화되는 것을 특징으로 하는 인증서 전송 서버.
The method according to claim 13,
The disposable public information is g R mod p (p is a prime to determine the finite space Z p , g is an element of Z p ,
Figure pat00020
Constructor with R
Figure pat00021
A random number), and the encrypted certificate is OTPI X mod p (OTPI is the one-time public information, X is the intermediate key) for the one-time public information.
Figure pat00022
Calculating a result value) and encrypting the encryption key generated by the one-time base key generated by taking the upper 16 bytes.
KR1020120102682A 2012-09-17 2012-09-17 Method of migrating certificate to mobile terminal using certificate transmission server based on one-time public information and apparatus using the same KR101388452B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120102682A KR101388452B1 (en) 2012-09-17 2012-09-17 Method of migrating certificate to mobile terminal using certificate transmission server based on one-time public information and apparatus using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120102682A KR101388452B1 (en) 2012-09-17 2012-09-17 Method of migrating certificate to mobile terminal using certificate transmission server based on one-time public information and apparatus using the same

Publications (2)

Publication Number Publication Date
KR20140036512A true KR20140036512A (en) 2014-03-26
KR101388452B1 KR101388452B1 (en) 2014-04-23

Family

ID=50645743

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120102682A KR101388452B1 (en) 2012-09-17 2012-09-17 Method of migrating certificate to mobile terminal using certificate transmission server based on one-time public information and apparatus using the same

Country Status (1)

Country Link
KR (1) KR101388452B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113487245A (en) * 2021-09-06 2021-10-08 苏州浪潮智能科技有限公司 Cross-project resource transfer method and system for cloud platform and computer storage medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102524377B1 (en) * 2022-11-25 2023-04-21 주식회사 유니온플레이스 Method of communicating vehicle data for vehicle control

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100406525B1 (en) 2001-07-09 2003-11-22 한국전자통신연구원 Initial certification system for wireless public key infrastructure, and its method
US7548620B2 (en) 2004-02-23 2009-06-16 Verisign, Inc. Token provisioning
KR100668446B1 (en) 2006-11-09 2007-01-12 소프트포럼 주식회사 Safe --method for transferring digital certificate
KR101100726B1 (en) * 2009-11-24 2011-12-29 이니텍(주) A Method of Transporting Certificate to Mobile Terminal

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113487245A (en) * 2021-09-06 2021-10-08 苏州浪潮智能科技有限公司 Cross-project resource transfer method and system for cloud platform and computer storage medium
CN113487245B (en) * 2021-09-06 2021-12-07 苏州浪潮智能科技有限公司 Cross-project resource transfer method and system for cloud platform and computer storage medium

Also Published As

Publication number Publication date
KR101388452B1 (en) 2014-04-23

Similar Documents

Publication Publication Date Title
US10785019B2 (en) Data transmission method and apparatus
JP5307191B2 (en) System and method for secure transaction of data between a wireless communication device and a server
CN108282329B (en) Bidirectional identity authentication method and device
KR100506076B1 (en) Method for mutual authentication and key exchange based on the user's password and apparatus thereof
CN110969431B (en) Secure hosting method, device and system for private key of blockchain digital coin
CN108347404B (en) Identity authentication method and device
CN111404664B (en) Quantum secret communication identity authentication system and method based on secret sharing and multiple mobile devices
CN113225302B (en) Data sharing system and method based on proxy re-encryption
CN111526007B (en) Random number generation method and system
CN113691502A (en) Communication method, communication device, gateway server, client and storage medium
CN109547413B (en) Access control method of convertible data cloud storage with data source authentication
CN110999202A (en) Computer-implemented system and method for highly secure, high-speed encryption and transmission of data
CN108809936A (en) A kind of intelligent mobile terminal auth method and its realization system based on Hybrid Encryption algorithm
CN111416712B (en) Quantum secret communication identity authentication system and method based on multiple mobile devices
CN114338239B (en) Method and system for data encryption transmission
CN110519226B (en) Quantum communication server secret communication method and system based on asymmetric key pool and implicit certificate
KR101347124B1 (en) Method of managing electronic prescription based on one-time public information and apparatus using the same
WO2020042023A1 (en) Instant messaging data encryption method and apparatus
KR101388452B1 (en) Method of migrating certificate to mobile terminal using certificate transmission server based on one-time public information and apparatus using the same
KR100542652B1 (en) Key-exchange protocol method for mobile communication system
KR20080005344A (en) System for authenticating user's terminal based on authentication server
KR20070035342A (en) Method for mutual authentication based on the user's password
CN116055136A (en) Secret sharing-based multi-target authentication method
KR101793528B1 (en) Certificateless public key encryption system and receiving terminal
CN111526131B (en) Anti-quantum-computation electronic official document transmission method and system based on secret sharing and quantum communication service station

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180418

Year of fee payment: 5