KR100431081B1 - Security module and a method of using the same - Google Patents
Security module and a method of using the same Download PDFInfo
- Publication number
- KR100431081B1 KR100431081B1 KR10-2001-0039242A KR20010039242A KR100431081B1 KR 100431081 B1 KR100431081 B1 KR 100431081B1 KR 20010039242 A KR20010039242 A KR 20010039242A KR 100431081 B1 KR100431081 B1 KR 100431081B1
- Authority
- KR
- South Korea
- Prior art keywords
- security module
- stored
- encrypted
- storage means
- firmware
- Prior art date
Links
Classifications
-
- 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/3234—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 additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- 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/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
-
- 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/3226—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 using a predetermined code, e.g. password, passphrase or PIN
Abstract
본 발명은 보안모듈 및 그의 이용 방법에 관한 것으로, 보안모듈 관리자에 의해 암호화된 펌웨어가 저장되는 제 1 저장수단과, 보안모듈 관리자에 의해 입력된 마스터 키가 저장되는 제 2 저장수단과, 제 2 저장수단에 저장된 마스터 키를 이용하여 저장수단으로부터 공급되는 펌웨어를 복호화하는 복호화 수단과, 복호화 수단으로부터 출력되는 평문 형태의 펌웨어를 저장하기 위한 제 3 저장수단으로 이루어진다.The present invention relates to a security module and a method of using the same, the first storage means for storing the firmware encrypted by the security module manager, the second storage means for storing the master key input by the security module manager, and the second Decryption means for decrypting the firmware supplied from the storage means using the master key stored in the storage means, and third storage means for storing the firmware in the plain text form output from the decryption means.
Description
본 발명은 보안모듈 및 그의 이용 방법에 관한 것으로, 특히, 관리자에 의해 안전하게 암호화된 프로그램 및 데이터를 인가된 사용자가 복호화시켜 사용할 수 있도록 한 보안모듈 및 그의 이용 방법에 관한 것이다.The present invention relates to a security module and a method of using the same, and more particularly, to a security module and a method of using the same so that an authorized user can decrypt and use a program and data securely encrypted by an administrator.
일반적으로 암호화 시스템은 소정의 정보를 이해할 수 없도록 변형시키고 인가된 키(key)를 소유한 사람만이 변형된 정보를 판독하여 이용할 수 있도록 하기 위한 장치로써 비밀키 암호화 시스템(Private Key Cryptosystem)과 공개키 암호화 시스템(Public Key Cryptosystem)으로 분류된다.In general, an encryption system is a device for modifying certain information so that it cannot be understood, and allowing only the person who owns an authorized key to read and use the modified information. It is classified as a public key cryptosystem.
비밀키 암호화 시스템은 소정의 정보를 암호화 및 복호화시키는 데 동일한 키를 사용하는 시스템으로써 다른 암호화 시스템보다 암호화 및 복호화 속도가 빠른 반면, 암호화 및 복호화에 사용되는 키를 안전하게 공유하기 위해서는 사전에 키에 관한 정보를 전송해야 하는 과정이 필요하다.The secret key encryption system uses the same key for encrypting and decrypting certain information, and the encryption and decryption speed is faster than other encryption systems.However, in order to securely share the key used for encryption and decryption, The process of transmitting information is necessary.
또한, 비밀키 암호화 시스템을 이용하면 송신자의 신분을 증명하기 위한 전자 서명의 사용이 불가능해지고 메시지의 무결성을 유지하기 어렵게 된다.In addition, using a secret key encryption system makes it impossible to use an electronic signature to verify the identity of the sender and makes it difficult to maintain the integrity of the message.
이러한 비밀키 암호화 시스템이 가지는 문제점을 해결하기 위해 1976년 'Diffie'와 'Hellman'이 공개키 암호화 시스템의 개념을 제안하였다.In 1976, 'Diffie' and 'Hellman' proposed the concept of public key encryption system.
공개키 암호화 시스템은 정보 교환이 필요한 모든 사람에게 공개하기 위한 '공개키'와 자신만이 비밀로 간직하기 위한 '비밀키'로 분류되는 두 개의 키를 사용한다.Public-key cryptography systems use two keys, a public key for disclosure to everyone who needs to exchange information, and a secret key for keeping it secret.
예를 들면, '갑'이 '을'에게 소정의 비밀 정보를 보내고자 할 경우 '갑'은 '을'이 공개한 공개키를 이용하여 정보를 암호화한 후 '을'에게 전송하며, '을'은 자신이 소유하고 있는 비밀키를 이용해 암호화된 정보를 복호화하여 평문 형태의 정보로 만든다.For example, if 'A' wants to send certain secret information to 'A', 'A' encrypts the information using 'A''s public key and sends 'A' to 'A'. 'Decrypts the encrypted information using its private key to make it into plain text information.
따라서, 이러한 공개키 암호화 시스템을 이용하면 사전에 키를 분배하는 과정이 필요없게 되어 정보 공유자간의 키 교환을 위한 정보 전송이 불필요하게 된다.Therefore, when using such a public key encryption system, a process of distributing a key in advance is unnecessary, and thus information transmission for key exchange between information sharers is unnecessary.
그러나, 공개키 암호화 시스템을 이용하면 정보를 암/복호화하기 위해 관리해야 하는 키(공개키 및 비밀키)가 많아지고 암/복호화에 많은 시간이 소요된다.However, when using a public key encryption system, there are many keys (public key and secret key) that need to be managed to encrypt / decrypt information, and it takes a lot of time to encrypt / decrypt.
따라서, 본 발명은 보안모듈 내부에 프로그램 및 데이터를 안전하게 암호화시켜 저장하고, 인가된 사용자만이 암호화된 프로그램 및 데이터를 복호화시켜 사용할 수 있도록 하므로써 상기한 단점을 해소할 수 있는 보안모듈 및 그의 이용 방법을 제공하는 데 그 목적이 있다.Therefore, the present invention securely encrypts and stores programs and data in the security module, and only the authorized user can use the decrypted program and data to solve the above-mentioned security module and its use method. The purpose is to provide.
상기한 목적을 달성하기 위한 본 발명에 따른 보안모듈은 보안모듈 관리자에 의해 암호화된 펌웨어가 저장되는 제 1 저장수단과, 보안모듈 관리자에 의해 입력된 마스터 키가 저장되는 제 2 저장수단과, 제 2 저장수단에 저장된 마스터 키를 이용하여 저장수단으로부터 공급되는 펌웨어를 복호화하는 복호화 수단과, 복호화 수단으로부터 출력되는 평문 형태의 펌웨어를 저장하기 위한 제 3 저장수단으로 이루어진 것을 특징으로 한다.Security module according to the present invention for achieving the above object is the first storage means for storing the firmware encrypted by the security module manager, the second storage means for storing the master key input by the security module manager, and And decrypting means for decrypting the firmware supplied from the storing means using the master key stored in the storing means, and third storing means for storing the plain text firmware output from the decrypting means.
또한, 본 발명에 따른 보안모듈의 이용 방법은 부트로더, 관리자 아이디 및 패스워드, 마스터 키 및 펌웨어가 암호화되어 저장된 보안모듈을 사용자 자신의 컴퓨터에 장착한 후 사용자 인증 과정을 거쳐 상기 펌웨어가 복호화되도록 하는 것을 특징으로 한다.In addition, the method of using the security module according to the present invention is such that the boot loader, the administrator ID and password, the master key and the firmware is encrypted and stored in the user's own computer after mounting the security module stored in the user's own process to decrypt the firmware It is characterized by.
도 1은 본 발명에 따른 보안모듈을 설명하기 위한 구성도.1 is a block diagram for explaining a security module according to the present invention.
도 2는 도 1에 도시된 플래쉬 메모리의 구성도.FIG. 2 is a configuration diagram of the flash memory shown in FIG. 1.
도 3은 본 발명의 보안모듈 이용 방법을 설명하기 위한 흐름도.3 is a flowchart illustrating a method of using a security module of the present invention.
도 4는 도 3의 암호화 과정을 설명하기 위한 개념도.4 is a conceptual diagram illustrating the encryption process of FIG.
도 5는 도 4에 도시된 블록 암호화 칩을 이용하여 펌웨어를 암호화하는 과정을 설명하기 위한 개념도.FIG. 5 is a conceptual diagram illustrating a process of encrypting firmware using a block encryption chip shown in FIG. 4. FIG.
<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>
100 : 보안모듈 101 : 플래쉬 메모리100: security module 101: flash memory
102 : 마스터 키 저장용 SRAM102: SRAM for master key storage
103 : 블록 암호화 칩 104 : 전원 공급부103: block encryption chip 104: power supply
105 : 스위칭부105: switching unit
108 : 프로그램 실행용 SRAM108: SRAM for program execution
200 : 암호화 칩200: encryption chip
201 : 마스터 키 10 : 부트 프로그램 영역201: master key 10: boot program area
20 : 프로그램 영역 30 : 데이터 영역20: program area 30: data area
이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명하기로 한다.Hereinafter, with reference to the accompanying drawings will be described in detail the present invention.
도 1은 본 발명에 따른 보안모듈을 설명하기 위한 구성도이다.1 is a block diagram illustrating a security module according to the present invention.
본 발명에 따른 보안모듈(100)은 보안모듈 관리자에 의해 안전하게 암호화된 펌웨어(Emk)를 저장하기 위한 플래쉬 메모리(101)와, 마스터 키 보관용 SRAM(102)에 저장된 마스터 키를 이용하여 상기 암호화된 펌웨어(Emk)를 복호화시키는 블록 암호화 칩(103)과, 상기 블록 암호화 칩(103)에 의해 복호화된 펌웨어(Dmk)를 저장하는 프로그램 실행용 SRAM(106)으로 구성되며, 상기 마스터 키 보관용 SRAM(102)에는 전원 공급부(104)로부터 전원이 공급되어 마스터 키의 계속적인 보관이 이루어지도록 한다.The security module 100 according to the present invention uses the flash memory 101 for storing the firmware (Emk) securely encrypted by the security module manager and the encryption using the master key stored in the master key storage SRAM 102. A block encryption chip 103 for decrypting the old firmware Emk, and a program execution SRAM 106 for storing the firmware Dmk decrypted by the block encryption chip 103, for storing the master key. The SRAM 102 is supplied with power from the power supply 104 to allow for continuous storage of the master key.
도 2는 도 1에 도시된 플래쉬 메모리의 구성도로서, 상기 플래쉬 메모리(101)는 부트 프로그램 영역(10), 프로그램 영역(20) 및 데이터 영역(30)으로 구분된다.FIG. 2 is a configuration diagram of the flash memory shown in FIG. 1, and the flash memory 101 is divided into a boot program area 10, a program area 20, and a data area 30.
상기 부트 프로그램 영역(10)에는 보안모듈(100)의 동작에 관한 응용 프로그램을 수행이 가능하도록 로드하는 부트 로더와, 보안모듈 관리자의 인증시 사용되는 암호화된 관리자 아이디 및 패스워드와, 블록암호화 칩(103)을 제어하기 위한 제어 프로그램이 암호화되어 저장된다.The boot program area 10 includes a boot loader for loading an application program related to the operation of the security module 100, an encrypted administrator ID and password used for authentication of the security module manager, and a block encryption chip ( The control program for controlling 103 is encrypted and stored.
상기 프로그램 영역(20)에는 보안모듈 사용자가 이용하게 될 여러 종류의 응용 프로그램, 즉 보안모듈 사용자의 정보처리를 위해 필요한 응용 프로그램(예를 들면, 암호화 통신 프로그램 등)이 암호화되어 저장된다.In the program area 20, various types of application programs to be used by the security module user, that is, application programs (for example, an encryption communication program, etc.) necessary for processing information of the security module user are encrypted and stored.
상기 데이터 영역(30)에는 보안모듈 사용자가 암호화를 수행하는 경우 필요한 각 사용자의 예비키(제 1 키 내지 제 N 키), 상기 예비 키에 대응하여 인증시 발급하는 인증서 및 인증 티켓, 보안모듈 사용자의 인증시 필요한 사용자의 아이디 및 패스워드, 그리고 보안모듈 사용자를 위한 데이터가 암호화되어 저장된다.In the data area 30, a preliminary key (first key to N-key) of each user required when the security module user performs encryption, a certificate and an authentication ticket issued during authentication corresponding to the preliminary key, and a security module user User ID and password required for authentication and data for security module user are encrypted and stored.
즉, 보안모듈 플래쉬 메모리(101)에서 암호화되어 저장되는 부분은 부트 프로그램 영역(10)중 관리자 아이디 및 패스워드와 프로그램 영역(20) 및 데이터 영역(30)이다.That is, the encrypted and stored portions of the security module flash memory 101 are the administrator ID and password, the program area 20, and the data area 30 of the boot program area 10.
상기 마스터 키 저장용 SRAM(102)은 스위칭 수단(105)을 통해 전원 공급부(104)로부터 전원을 공급받는 휘발성 메모리로 이루어지며, 관리자로부터 제공된 마스터 키는 플래쉬 메모리(101)에 암호화되어 저장되는 과정에서 마스터 키 보관용 SRAM(102)에 저장된다.The SRAM 102 for storing the master key is made of a volatile memory supplied with power from the power supply unit 104 through the switching means 105, and the master key provided from the manager is encrypted and stored in the flash memory 101. Is stored in the master key storage SRAM 102.
상기 블록 암호화 칩(103)은 플래쉬 메모리(101)에 암호화되어 저장된 제어 프로그램에 의해 구동되며, 상기 플래쉬 메모리(101)에 암호화되어 저장된 펌웨어(Emk)를 복호화하기 위해 마스터 키 보관용 SRAM(102)으로부터 마스터 키(201)를 제공받는다.The block encryption chip 103 is driven by a control program encrypted and stored in the flash memory 101, and the SRAM 102 for storing a master key for decrypting firmware (Emk) encrypted and stored in the flash memory 101. From the master key 201.
또한, 상기 프로그램 실행용 SRAM(106)은 휘발성 메모리로 이루어지며, 상기 블록 암호화 칩(103)에 의해 복호화된 펌웨어(Dmk)가 평문 형태로 저장된다.In addition, the program execution SRAM 106 is formed of a volatile memory, and the firmware Dmk decrypted by the block encryption chip 103 is stored in a plain text form.
그러면 상기와 같이 구성된 보안모듈의 이용 방법을 도 3 내지 도 5를 통해 설명하면 다음과 같다.The method of using the security module configured as described above will now be described with reference to FIGS. 3 to 5.
보안모듈의 제작 단계에서 상기 보안모듈(100)내의 플래쉬 메모리(101)의 부트 프로그램 영역(10)에는 관리자의 아이디 및 패스워드가 상기 부트 로더와 함께 암호화되어 저장된다. 이때, 아이디 및 패스워드가 안전하게 저장될 수 있도록 관리자는 자신의 아이디 및 패스워드를 암호화한 후 제작자에게 전달한다.In the manufacturing process of the security module, an ID and password of an administrator are encrypted and stored together with the boot loader in the boot program area 10 of the flash memory 101 in the security module 100. At this time, the administrator encrypts his ID and password so that the ID and password can be stored securely and delivers it to the producer.
보안모듈의 제작이 완료되면(단계 S1) 제작된 보안모듈은 보안모듈 관리자에게 제공된다(단계 S2). 보안모듈 관리자는 보안모듈 제작자로부터 제공된 보안모듈(100)을 자신의 컴퓨터에 설치한다. 이때, 보안모듈(100)은 보안모듈 관리자 컴퓨터와 상호 데이터 송/수신이 가능한 소정의 인터페이스를 통해 연결된다.When the production of the security module is completed (step S1), the produced security module is provided to the security module manager (step S2). The security module manager installs the security module 100 provided from the security module producer on his computer. At this time, the security module 100 is connected to the security module manager computer via a predetermined interface capable of mutual data transmission / reception.
보안모듈 관리자는 자신의 아이디 및 패스워드를 입력하여 보안모듈의 사용을 허가 즉, 인증받는다(단계 S3). 이때, 관리자에 의해 입력된 아이디 및 패스워드가 제작 단계에서 저장된 관리자 아이디 및 패스워드와 서로 상이할 경우 새로운 아이디 및 패스워드의 입력을 소정 횟수만큼 재요청하여 비인가자의 사용을 사전에 방지할 수 있으며, 입력된 보안모듈 관리자의 아이디 및 패스워드가 저장된 아이디 및 패스워드와 동일하면 펌웨어를 암호화하기 위해 사용할 마스터 키(201)를 입력하여 상기 마스터 키 보관용 SRAM(102)에 저장되도록 한다. 이러한 과정은 예를 들어 제작단계에서 보안모듈(100)의 플래쉬 메모리(101)에 저장된 부트 로더의 동작에 따라 이루어진다.The security module manager inputs his ID and password to permit use of the security module, that is, authentication (step S3). At this time, if the ID and password entered by the administrator is different from the administrator ID and password stored in the production step, it is possible to prevent the unauthorized use in advance by re-requesting input of a new ID and password a predetermined number of times. If the ID and password of the security module manager is the same as the stored ID and password, the master key 201 to be used for encrypting the firmware is input to be stored in the master key storage SRAM 102. This process is performed according to, for example, the operation of the boot loader stored in the flash memory 101 of the security module 100 in the manufacturing step.
이후, 보안모듈 관리자는 자신의 컴퓨터 내부에 구비된 암호화 칩(200)을 이용하여 소정의 펌웨어를 암호화한 후 상기 플래쉬 메모리(101)에 저장한다(단계 S5). 상기 펌웨어에는 상기 플래쉬 메모리(101)의 부트 프로그램 영역(10), 프로그램 영역(20) 및 데이터 영역(30)에 암호화되어 저장되는 모든 프로그램 및 데이터가 포함된다.Thereafter, the security module manager encrypts predetermined firmware using the encryption chip 200 provided in the computer, and stores the predetermined firmware in the flash memory 101 (step S5). The firmware includes all programs and data encrypted and stored in the boot program area 10, the program area 20, and the data area 30 of the flash memory 101.
상기와 같이 마스터 키(201)와 암호화된 펌웨어(Emk)가 저장된 보안모듈(100)은 보안모듈 관리자로부터 사용자로 전달된다(단계 S6).As described above, the security module 100 in which the master key 201 and the encrypted firmware Emk are stored is transferred from the security module manager to the user (step S6).
보안모듈(100)을 제공받은 사용자는 보안모듈을 자신의 컴퓨터에 설치한다. 이때, 보안모듈(100)은 상호 데이터 송/수신이 가능한 소정의 인터페이스를 통해 연결된다.The user provided with the security module 100 installs the security module in his computer. At this time, the security module 100 is connected through a predetermined interface capable of transmitting and receiving data with each other.
상기와 같이 보안모듈(100)이 설치되면 보안모듈 사용자는 자신의 아이디 및 패스워드를 입력하여 보안모듈의 사용을 허가 즉, 인증받는다(단계 S7). 이때, 사용자에 의해 입력된 아이디 및 패스워드가 관리자에 의해 입력된 아이디 및 패스워드와 서로 상이할 경우 새로운 아이디 및 패스워드의 입력을 소정 횟수만큼 재요청하여 비인가자의 사용을 사전에 방지할 수 있으며, 입력된 사용자의 아이디 및 패스워드가 저장된 아이디 및 패스워드와 동일하면 상기 부트 로더의 동작에 따라 상기 플래쉬 메모리(101)에 암호화되어 저장된 펌웨어(Emk)가 상기 블록 암호화 칩(103)으로 전달된다.When the security module 100 is installed as described above, the user of the security module inputs his ID and password to permit the use of the security module, that is, to be authenticated (step S7). In this case, if the ID and password input by the user are different from the ID and password input by the administrator, the user may re-request the input of a new ID and password a predetermined number of times to prevent unauthorized use in advance. If the user ID and password are the same as the stored ID and password, the firmware Emk encrypted and stored in the flash memory 101 is transferred to the block encryption chip 103 according to the operation of the boot loader.
암호화된 펌웨어(Emk)가 블록 암호화 칩(103)으로 전달되면 플래쉬 메모리(101)의 부트 프로그램 영역에 저장된 제어 프로그램의 실행에 따라 암호화된 펌웨어(Emk)가 복호화되는데(단계 S8), 이와 같은 복호화는 상기 마스터 키 보관용 SRAM(102)에 저장된 마스터 키의 공급에 따라 이루어진다.When the encrypted firmware Emk is transferred to the block encryption chip 103, the encrypted firmware Emk is decrypted according to the execution of the control program stored in the boot program area of the flash memory 101 (step S8). Is performed according to the supply of the master key stored in the master key storage SRAM 102.
블록 암호화 칩(103)에 의해 복호화된 평문 형태의 펌웨어(Dmk)는 프로그램 실행용 SRAM(106)으로 전송되어 저장되는데(단계 S9), 보안모듈 사용자는 프로그램 실행용 SRAM(106)에 저장된 평문 형태의 펌웨어(Dmk) 즉, 응용 프로그램 및 데이터를 이용하게 된다.The firmware Dmk in the clear text decrypted by the block encryption chip 103 is transmitted to and stored in the SRAM 106 for program execution (step S9). The user of the security module stores the plain text in the SRAM 106 for the program execution. The firmware (Dmk) of the application, and the data will be used.
상기 보안모듈(100)의 사용이 종료되고 사용자에 의해 전원의 공급이 차단되면 상기 프로그램 실행용 SRAM(106)에 저장된 평문 형태의 프로그램 및 데이터는 삭제되기 때문에 비인가자에 의한 사용이 방지된다.When the use of the security module 100 is terminated and the power supply is cut off by the user, the program and the data in the plain text form stored in the program execution SRAM 106 are deleted, thereby preventing use by unauthorized persons.
또한, 본 발명에서는 마스터 키가 저장된 상기 보안모듈(100)의 케이스가 개봉되면 상기 스위치 수단(105)의 개방에 의해 저장된 마스터 키가 제거되도록 하여 보안성을 높일 수 있다.In addition, in the present invention, when the case of the security module 100 in which the master key is stored is opened, the stored master key may be removed by opening the switch means 105 to increase security.
도 4는 상기 단계 S3 및 S7에서 실시되는 보안모듈 관리자 및 사용자의 아이디 및 패스워드가 암호화되는 과정을 도시한다.4 illustrates a process of encrypting IDs and passwords of a security module manager and a user performed in steps S3 and S7.
도 4를 참조하면, 일반적으로 아이디 및 패스워드(보안모듈 관리자 및 보안모듈 사용자의 아이디 및 패스워드)를 암호화하기 위해서는 여러 가지의 암호화 키(Key)가 필요하게 되기 때문에 키 관리상의 문제점이 발생한다.Referring to FIG. 4, a key management problem occurs because various encryption keys are required to encrypt an ID and a password (ID and password of a security module manager and a security module user).
그러므로 이를 해결하기 위해 본 발명에서는 아이디 및 패스워드를 상/하위 두 부분으로 분할하여 상위 부분은 '키'로 사용하고 하위 부분은 '데이터'로 사용한다.Therefore, in order to solve this problem, the present invention divides the ID and password into upper / lower two parts and uses the upper part as a 'key' and the lower part as 'data'.
상위 부분의 키가 소정의 크기보다 작을 경우 패딩(padding) 과정을 통해 패드부(PAD)가 갱신되도록 하므로써 전체 '키'의 크기를 동일하게 조정할 수 있으며, 또한, '데이터'로 사용되는 하위 부분의 크기도 소정의 크기보다 작을 경우 패딩 과정을 통해 패드부가 갱신되도록 하여 전체 '데이터'의 크기를 동일하게 조정할 수 있다.If the key of the upper part is smaller than the predetermined size, the pad portion (PAD) is updated through the padding process so that the size of the entire 'key' can be adjusted equally, and the lower part used as the 'data' If the size is smaller than the predetermined size, the pad part is updated through the padding process so that the size of the entire 'data' can be adjusted to be the same.
상기와 같이 패딩 과정을 거쳐 크기가 조정된 '키'와 '데이터'는 보안모듈 관리자(또는 보안모듈 사용자)의 컴퓨터(도시되지 않음) 내에 구비된 암호화 칩(200)으로 전송되며, 암호화 칩(200)으로 전송된 '키'와 '데이터'는 암호화 칩(200)의 암호 알고리즘에 따라 암호화된다.The 'key' and 'data', which have been adjusted through the padding process as described above, are transmitted to the encryption chip 200 provided in the computer (not shown) of the security module manager (or security module user), and the encryption chip ( The 'key' and the 'data' transmitted to the 200 are encrypted according to the encryption algorithm of the encryption chip 200.
도 5는 도 4에 도시된 블록 암호화 칩(200)을 이용하여 펌웨어를 암호화하는 과정을 설명하기 위한 개념도이다.FIG. 5 is a conceptual diagram illustrating a process of encrypting firmware using the block encryption chip 200 illustrated in FIG. 4.
보안모듈 관리자에 의해 암호화를 위한 펌웨어가 입력되면 보안모듈 관리자의 컴퓨터 내에 구비된 암호화 칩(200)의 동작에 따른 암호화 알고리즘에 의해 펌웨어가 암호화되는데, 상기 암호화는 관리자에 의해 입력된 마스터 키(201)의 공급에 의해 이루어진다.When the firmware for encryption is input by the security module manager, the firmware is encrypted by an encryption algorithm according to the operation of the encryption chip 200 provided in the computer of the security module manager. The encryption is performed by the master key 201 input by the administrator. By the supply of
상술한 바와 같이 본 발명은 보안모듈 내부에 프로그램 및 데이터를 안전하게 암호화시켜 저장하고, 인가된 사용자만이 암호화된 프로그램 및 데이터를 복호화시켜 사용할 수 있도록 한다. 즉, 관리자에 의해 암호화된 펌웨어가 보안모듈의 플래쉬 메모리에 안전하게 저장되도록 하고, 사용자 인증 과정을 통해 암호화된 펌웨어가 복호화되도록 한다.As described above, the present invention securely encrypts and stores programs and data in a security module, and allows only an authorized user to decrypt and use an encrypted program and data. That is, the firmware encrypted by the administrator is safely stored in the flash memory of the security module, and the encrypted firmware is decrypted through the user authentication process.
따라서 본 발명은 속도가 빠른 비밀키 암호화 시스템이 적용된 보안모듈을 이용하여 인가된 사용자만이 프로그램 및 데이터를 안전하게 사용할 수 있도록 하므로써 정보의 유출로 인한 피해를 효과적으로 방지할 수 있다.Therefore, the present invention can effectively prevent the damage caused by the leakage of information by allowing only authorized users to safely use the program and data using a secure module to which a fast secret key encryption system is applied.
또한, 본 발명은 관리자에 의해 암호화되어 저장된 마스터 키가 별도의 전원 공급장치로부터 공급되는 전원에 의해 보관되도록 하되, 보안모듈의 케이스가 개봉될 경우 스위칭 수단의 동작에 의해 전원 공급이 차단되어 마스터 키가 제거되도록 하므로써 보안모듈의 안전성을 높일 수 있다.In addition, the present invention allows the master key encrypted and stored by the administrator to be stored by the power supplied from a separate power supply, the power supply is cut off by the operation of the switching means when the case of the security module is opened, the master key Can be removed to increase the safety of the security module.
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2001-0039242A KR100431081B1 (en) | 2001-07-02 | 2001-07-02 | Security module and a method of using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2001-0039242A KR100431081B1 (en) | 2001-07-02 | 2001-07-02 | Security module and a method of using the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20030002932A KR20030002932A (en) | 2003-01-09 |
KR100431081B1 true KR100431081B1 (en) | 2004-05-12 |
Family
ID=27713012
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2001-0039242A KR100431081B1 (en) | 2001-07-02 | 2001-07-02 | Security module and a method of using the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100431081B1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101393307B1 (en) | 2007-07-13 | 2014-05-12 | 삼성전자주식회사 | Secure boot method and semiconductor memory system for using the method |
KR101795457B1 (en) * | 2016-09-27 | 2017-11-10 | 시큐리티플랫폼 주식회사 | Method of initializing device and method of updating firmware of device having enhanced security function |
KR101982917B1 (en) * | 2017-04-28 | 2019-05-27 | 건국대학교 산학협력단 | Certificate-based vehicle security method and apparatus to maintain ecu security |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5748740A (en) * | 1995-09-29 | 1998-05-05 | Dallas Semiconductor Corporation | Method, apparatus, system and firmware for secure transactions |
US5825878A (en) * | 1996-09-20 | 1998-10-20 | Vlsi Technology, Inc. | Secure memory management unit for microprocessor |
US5999629A (en) * | 1995-10-31 | 1999-12-07 | Lucent Technologies Inc. | Data encryption security module |
KR20000048718A (en) * | 1996-09-30 | 2000-07-25 | 피터 엔. 데트킨 | Secure boot |
US6138236A (en) * | 1996-07-01 | 2000-10-24 | Sun Microsystems, Inc. | Method and apparatus for firmware authentication |
EP1072975A2 (en) * | 1999-07-27 | 2001-01-31 | Compaq Computer Corporation | Virus resistant and hardware independent method of flashing computer system bios |
-
2001
- 2001-07-02 KR KR10-2001-0039242A patent/KR100431081B1/en not_active IP Right Cessation
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5748740A (en) * | 1995-09-29 | 1998-05-05 | Dallas Semiconductor Corporation | Method, apparatus, system and firmware for secure transactions |
US5999629A (en) * | 1995-10-31 | 1999-12-07 | Lucent Technologies Inc. | Data encryption security module |
US6138236A (en) * | 1996-07-01 | 2000-10-24 | Sun Microsystems, Inc. | Method and apparatus for firmware authentication |
US5825878A (en) * | 1996-09-20 | 1998-10-20 | Vlsi Technology, Inc. | Secure memory management unit for microprocessor |
KR20000048718A (en) * | 1996-09-30 | 2000-07-25 | 피터 엔. 데트킨 | Secure boot |
EP1072975A2 (en) * | 1999-07-27 | 2001-01-31 | Compaq Computer Corporation | Virus resistant and hardware independent method of flashing computer system bios |
Also Published As
Publication number | Publication date |
---|---|
KR20030002932A (en) | 2003-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7697691B2 (en) | Method of delivering Direct Proof private keys to devices using an on-line service | |
US7058806B2 (en) | Method and apparatus for secure leveled access control | |
CN102271037B (en) | Based on the key protectors of online key | |
EP1500226B1 (en) | System and method for storage and retrieval of a cryptographic secret from a plurality of network enabled clients | |
RU2147790C1 (en) | Method for transferring software license to hardware unit | |
CN1820482B (en) | Method for generating and managing a local area network | |
US20050210241A1 (en) | Method and apparatus for digital rights management using certificate revocation list | |
US20050193199A1 (en) | Accessing protected data on network storage from multiple devices | |
EP0936530A1 (en) | Virtual smart card | |
US20110040971A1 (en) | Portable system and method for remotely accessing data | |
CN108768963B (en) | Communication method and system of trusted application and secure element | |
JP2004538584A (en) | Information processing method and system in electronic device, electronic device, and processing block | |
JP2004180310A (en) | Method for setting and managing confidence model between chip card and radio terminal | |
JP2007027896A (en) | Communication card, secret information processing system, secret information transmission method, and program | |
KR20130020729A (en) | Secure device authentication | |
EP1501238B1 (en) | Method and system for key distribution comprising a step of authentication and a step of key distribution using a KEK (key encryption key) | |
CN105247833A (en) | Self-authentication device and method | |
EP3292654B1 (en) | A security approach for storing credentials for offline use and copy-protected vault content in devices | |
CN111191217B (en) | Password management method and related device | |
JP5622668B2 (en) | Application authentication system, application authentication method | |
KR100431081B1 (en) | Security module and a method of using the same | |
CN110740036A (en) | Anti-attack data confidentiality method based on cloud computing | |
EP1290531A2 (en) | Network agent password storage and retrieval scheme | |
JPH09130376A (en) | User password authentication method | |
WO2023154419A2 (en) | Access control systems and methods for cryptowallets |
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: 20090324 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |