KR20140026316A - 인증 정보 처리 장치 및 방법 - Google Patents
인증 정보 처리 장치 및 방법 Download PDFInfo
- Publication number
- KR20140026316A KR20140026316A KR1020130128260A KR20130128260A KR20140026316A KR 20140026316 A KR20140026316 A KR 20140026316A KR 1020130128260 A KR1020130128260 A KR 1020130128260A KR 20130128260 A KR20130128260 A KR 20130128260A KR 20140026316 A KR20140026316 A KR 20140026316A
- Authority
- KR
- South Korea
- Prior art keywords
- puf
- password
- authentication
- unique key
- key
- Prior art date
Links
Images
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/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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- 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/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- 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/3271—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 challenge-response
- H04L9/3278—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 challenge-response using physically unclonable functions [PUF]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
반도체 제조 공정 상의 공정 편차를 이용하여 유니크 키를 생성하는 PUF, 및 상기 유니크 키를 이용하여 사용자로부터 수신한 패스워드 및/또는 바이오 정보를 암호화하는 암호화부를 포함하는 정보 처리 장치가 제공된다.
Description
디지털 보안 분야에 연관되며, 보다 특정하게는 바이오 정보를 저장하고 처리하는 장치 및 방법에 연관된다. 또한, 바이오 정보 및/또는 사용자 패스워드를 안전하게 저장하고 처리하여, 전자장치의, 임베디드 시스템(Embedded system), SoC(System on Chip), 스마트 카드(Smart Card), 및 USIM(Universal Subscriber Identity Module) 등의 디바이스의 보안/인증에 사용하는 방법에 연관된다.
정보화 사회가 고도화 됨에 따라 개인 프라이버시 보호의 필요성도 높아지고 있고, 인증 수단의 안전성이 중요한 기술적 이슈로 제기되고 있다.
특히, 전자금융, 스마트카드(Smart Card), M2M(Machine to machine) 기술 등에는 사용자 또는 기기를 식별하는 인증키의 보안 신뢰성이 높은 수준으로 요구된다. 이하 본 명세서에서는 이러한 인증키(Authentication key)를 식별키(Identification key) 또는 단순히 키(Key)로 지칭하기로 한다.
인증에는 소유 기반(Possession-based) 인증과, 지식 기반(Knowledge-based) 인증이 가능하다. 전자는 특정한 객체를 소유하고 있는 것에 의해 인증을 수행하는 것이고, 후자는 암호(Password) 등에 의해 인증을 수행하는 것으로 이해할 수 있다.
상기 두 방식은 각각의 장단점을 가지기 때문에, 인증의 안전성을 위해 이러한 소유 기반 인증과 지식 기반 인증을 모두 수행하는 기술들이 소개되고 있다.
한편, PUF (Physically Unclonable Function)는 예측 불가능한 (Unpredictable) 디지털 값을 제공할 수 있다. 개개의 PUF들은 정확한 제조 공정이 주어지고, 동일한 공정에서 제조되더라도, 상기 개개의 PUF들이 제공하는 디지털 값은 다르다.
따라서, 복제가 불가능한 POWF (Physical One-Way Function practically impossible to be duplicated)로 지칭될 수도 있다.
이러한 PUF는 보안 및/또는 인증을 위한 암호 키의 생성에 이용될 수 있다. 이를테면, 디바이스를 다른 디바이스와 구별하기 위한 유니크 키(Unique key to distinguish devices from one another)를 제공하기 위해 PUF가 이용될 수 있다.
그러나, PUF가 생성한 키 자체를 인증에 사용하는 경우, 사용자가 식별키를 기억하기 어려운 경우도 있다. 한편, 사용자 입력 패스워드 및/또는 사용자의 바이오 정보를 인증 키로 사용하는 경우 이를 단말에 저장하였을 때의 안전성이 높은 수준으로 보장되어야 한다.
일측에 따르면, 반도체 제조 공정 상의 공정 편차를 이용하여 적어도 하나의 유니크 키를 생성하는 PUF; 및 상기 유니크 키를 이용하여 사용자로부터 수신한 패스워드를 암호화하여 식별키를 생성하는 암호화부를 포함하는 정보 처리 장치가 제공된다.
일실시예에 따르면, 상기 PUF는 반도체의 전도성 레이어 사이에 형성되는 인터-레이어 컨택이 상기 전도성 레이어를 단락 하는지의 여부를 이용하여 상기 유니크 키를 생성할 수 있다.
이 경우, 상기 반도체의 전도성 레이어 사이에 형성되는 상기 인터-레이어 컨택은, 상기 반도체 제조 공정에서 제공되는 디자인 룰에 따른 사이즈 보다 작도록 구성될 수 있다.
일실시예에 따르면, 상기 PUF는, 상기 반도체의 전도성 레이어 사이에 형성되는 상기 인터-레이어 컨택이 상기 전도성 레이어를 단락 하는 확률과 단락 하지 못하는 확률의 차이가 미리 지정된 오차 범위 내에 있도록 하는 상기 인터-레이어 컨택의 사이즈를 가질 수 있다.
일실시예에 따르면, 상기 PUF는, 한 쌍의 전도성 레이어와 그 사이를 연결하는 하나의 인터-레이어 컨택을 이용하여 1 비트의 디지털 값을 생성하는 단위 구조를 N 개 가져서 - 단, N은 자연수임 -, 상기 N 개의 단위 구조를 통해 N 비트의 유니크 키를 생성할 수 있다.
이 경우, 상기 PUF는 N 비트의 디지털 값을 생성하고, 상기 정보 처리 장치는 상기 N 비트의 유니크 키에 포함된 디지털 값들을 k 개 단위로 그룹핑 하고 - 단, k는 자연수임 -, 그룹핑된 복수 개의 그룹들 중 제1 그룹 및 제2 그룹을 비교하여, 상기 제1 그룹에 포함된 k개의 디지털 비트로 구성된 값이 상기 제2 그룹에 포함된 k개의 디지털 비트로 구성된 값보다 큰 경우에 상기 제1 그룹과 상기 제2 그룹을 대표하는 디지털 값을 1로 결정할 수 있다.
여기서, 상기 정보 처리 장치는, 상기 제1 그룹에 포함된 k개의 디지털 비트로 구성된 값이 상기 제2 그룹에 포함된 k개의 디지털 비트로 구성된 값이 같은 경우, 설정에 따라 선택적으로, 상기 제1 그룹과 상기 제2 그룹의 대표하는 디지털 값을 1 또는 0 중 어느 한 쪽으로 결정하거나 또는 상기 제1 그룹과 상기 제2 그룹의 대표하는 디지털 값을 결정하지 않을 수 있다.
일실시예에 따르면, 상기 암호화부는, 상기 유니크 키를 라운드 키로 사용하여 상기 패스워드를 N 회 - N은 자연수 - 암호화하여 상기 식별키를 생성할 수 있다.
이 경우, 상기 암호화부는, AES 방법 또는 T-DES 방법으로 상기 패스워드를 암호화하여 상기 식별키를 생성할 수 있다.
다른 일측에 따르면, 반도체 제조 공정 상의 공정 편차를 이용하여 적어도 하나의 유니크 키를 생성하는 PUF; 및 상기 유니크 키를 이용하여 입력된 바이오 정보를 암호화하여 식별키를 생성하는 암호화부를 포함하는 정보 처리 장치가 제공된다.
일실시예에 따르면, 상기 PUF는 반도체의 전도성 레이어 사이에 형성되는 인터-레이어 컨택이 상기 전도성 레이어를 단락 하는지의 여부를 이용하여 상기 유니크 키를 생성할 수 있다.
일실시예에 따르면, 상기 반도체의 전도성 레이어 사이에 형성되는 상기 인터-레이어 컨택은, 상기 반도체 제조 공정에서 제공되는 디자인 룰에 따른 사이즈 보다 작도록 구성될 수 있다.
한편, 상기 PUF는, 상기 반도체의 전도성 레이어 사이에 형성되는 상기 인터-레이어 컨택이 상기 전도성 레이어를 단락 하는 확률과 단락 하지 못하는 확률의 차이가 미리 지정된 오차 범위 내에 있도록 하는 상기 인터-레이어 컨택의 사이즈를 가질 수 있다.
또 다른 일측에 따르면, 반도체 제조 공정 상의 공정 편차를 이용하여 적어도 하나의 디지털 값으로 구성된 유니크 키를 생성하는 적어도 하나의 PUF를 포함하고, 상기 적어도 하나의 PUF 중 적어도 하나가 제공하는 적어도 하나의 유니크 키를 이용하여 사용자로부터 수신한 패스워드 또는 바이오 정보 중 적어도 하나를 암호화하여 식별키를 생성하는 암호화부를 포함하는 정보 처리 장치가 제공된다.
일실시예에 따르면, 상기 암호화부는, 상기 적어도 하나의 유니크 키를 라운드 키로 사용하여 상기 패스워드 또는 상기 바이오 정보 중 적어도 하나를 N 회 - N은 자연수 - 암호화하여 상기 식별키를 생성할 수 있다.
일실시예에 따르면, 상기 암호화부는, AES 방법 또는 T-DES 방법으로 상기 패스워드 또는 상기 바이오 정보 중 적어도 하나를 암호화하여 상기 식별키를 생성할 수 있다.
일실시예에 따르면, 상기 적어도 하나의 PUF 각각은 반도체의 전도성 레이어 사이에 형성되는 인터-레이어 컨택이 상기 전도성 레이어 사이를 단락 하는지의 여부를 이용하여 상기 유니크 키를 생성할 수 있다.
이 경우, 상기 인터-레이어 컨택은, 상기 반도체 제조 공정에서 제공되는 디자인 룰에 따른 사이즈 보다 작도록 구성될 수 있다.
여기서, 상기 PUF는, 상기 반도체의 전도성 레이어 사이에 형성되는 상기 인터-레이어 컨택이 상기 전도성 레이어를 단락 하는 확률과 단락 하지 못하는 확률의 차이가 미리 지정된 오차 범위 내에 있도록 하는, 상기 인터-레이어 컨택의 사이즈를 가질 수 있다.
일실시예에 따르면, 상기 정보 처리 장치는, 상기 적어도 하나의 PUF 중 상기 암호화부가 상기 암호화에 이용할 PUF를 선택하는 PUF 선택부를 더 포함할 수 있다.
또 다른 일측에 따르면, 정보 처리 장치에 포함된 PUF가, 반도체 제조 공정 상의 공정 편차를 이용하여 적어도 하나의 유니크 키를 생성하는 단계; 및 상기 정보 처리 장치의 암호화부가, 상기 유니크 키를 이용하여, 상기 정보 처리 장치에 입력된 제1 사용자 입력 패스워드 또는 제1 사용자 바이오 정보 중 적어도 하나를 암호화하여 암호화된 패스워드 또는 암호화된 바이오 정보 중 적어도 하나를 생성하는 단계를 포함하는 정보 처리 방법이 제공된다.
일실시예에 따르면, 상기 정보 처리 방법은, 사용자로부터 상기 정보 처리 장치에 제2 사용자 입력 패스워드 또는 제2 사용자 바이오 정보 중 적어도 하나가 입력되는 경우, 상기 제2 사용자 입력 패스워드 또는 상기 제2 사용자 바이오 정보 중 적어도 하나를 암호화하는 단계; 및 상기 정보 처리 장치의 인증부가, 암호화된 상기 제2 사용자 입력 패스워드 또는 암호화된 상기 제2 사용자 바이오 정보 중 적어도 하나를 상기 암호화된 패스워드 또는 상기 암호화된 바이오 정보 중 적어도 하나와 비교하여 인증을 수행하는 단계를 더 포함할 수 있다.
다른 일실시예에 따르면, 상기 정보 처리 방법은, 사용자로부터 상기 정보 처리 장치에 제2 사용자 입력 패스워드 또는 제2 사용자 바이오 정보 중 적어도 하나가 입력되는 경우, 상기 정보 처리 장치의 암호화부가 상기 암호화된 패스워드 또는 상기 암호화된 바이오 정보 중 적어도 하나를 복호화하여 상기 제1 사용자 입력 패스워드 또는 상기 제1 사용자 바이오 정보 중 적어도 하나를 생성하는 단계; 및 상기 정보 처리 장치의 인증부가, 상기 복호화된 상기 제1 사용자 패스워드 또는 상기 제1 사용자 바이오 정보 중 적어도 하나를, 상기 제2 사용자 입력 패스워드 또는 상기 제2 사용자 바이오 정보 중 적어도 하나와 비교하여 인증을 수행하는 단계를 더 포함할 수 있다.
도 1은 일실시예에 따른 정보 처리 장치를 도시한다.
도 2는 일실시예에 따른 PUF의 구성을 설명하기 위한 개념도이다.
도 3은 도 2의 실시예에 따른 PUF를 설명하기 위한 그래프이다.
도 4는 다른 일실시예에 따른 PUF 의 구성을 설명하기 위한 개념도이다.
도 5는 일실시예에 따른 PUF에서 유니크 키를 생성할 수 있도록 하는 인터-레이어 컨택 어레이를 도시한다.
도 6은 일실시예에 따라 PUF가 생성한 유니크 키를 인식하는 과정을 설명하기 위한 도면이다.
도 7은 일실시예에 따라 PUF가 생성한 유니크 키의 밸런싱 과정을 설명하기 위한 개념도이다.
도 8은 다른 일실시예에 따른 정보 처리 장치를 도시한다.
도 9는 일실시예에 따라 PUF들이 암호화부 내에 배치되는 예시적 구성을 도시한다.
도 10은 일실시예에 따른 정보 처리 방법에 따라 패스워드 및/또는 바이오 정보를 암호화 하여 저장하는 과정을 도시하는 흐름도이다.
도 11은 도 8의 실시예에 따른 정보 처리 장치가 패스워드 및/또는 바이오 정보를 암호화 하여 저장하는 과정을 도시하는 흐름도이다.
도 12는 일실시예에 따른 정보 처리 장치에서 사용자 입력 패스워드 및/또는 바이오 정보를 인증하는 과정을 도시하는 흐름도이다.
도 13은 다른 일실시예에 따른 정보 처리 장치에서 사용자 입력 패스워드 및/또는 바이오 정보를 인증하는 과정을 도시하는 흐름도이다.
도 2는 일실시예에 따른 PUF의 구성을 설명하기 위한 개념도이다.
도 3은 도 2의 실시예에 따른 PUF를 설명하기 위한 그래프이다.
도 4는 다른 일실시예에 따른 PUF 의 구성을 설명하기 위한 개념도이다.
도 5는 일실시예에 따른 PUF에서 유니크 키를 생성할 수 있도록 하는 인터-레이어 컨택 어레이를 도시한다.
도 6은 일실시예에 따라 PUF가 생성한 유니크 키를 인식하는 과정을 설명하기 위한 도면이다.
도 7은 일실시예에 따라 PUF가 생성한 유니크 키의 밸런싱 과정을 설명하기 위한 개념도이다.
도 8은 다른 일실시예에 따른 정보 처리 장치를 도시한다.
도 9는 일실시예에 따라 PUF들이 암호화부 내에 배치되는 예시적 구성을 도시한다.
도 10은 일실시예에 따른 정보 처리 방법에 따라 패스워드 및/또는 바이오 정보를 암호화 하여 저장하는 과정을 도시하는 흐름도이다.
도 11은 도 8의 실시예에 따른 정보 처리 장치가 패스워드 및/또는 바이오 정보를 암호화 하여 저장하는 과정을 도시하는 흐름도이다.
도 12는 일실시예에 따른 정보 처리 장치에서 사용자 입력 패스워드 및/또는 바이오 정보를 인증하는 과정을 도시하는 흐름도이다.
도 13은 다른 일실시예에 따른 정보 처리 장치에서 사용자 입력 패스워드 및/또는 바이오 정보를 인증하는 과정을 도시하는 흐름도이다.
이하에서, 본 발명의 일부 실시예를, 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일실시예에 따른 정보 처리 장치(100)를 도시한다.
일실시예에 따른 정보 처리 장치(100)는 사용자로부터 수신되는 패스워드(Password) 및/또는 바이오 정보를 암호화 하여 안전하게 저장하고, 또한 보안 인증을 수행할 수 있다.
일실시예에 따르면, 정보 처리 장치(100)의 수신부(110)는 사용자가 입력하는 패스워드를 수신할 수 있다.
사용자가 입력한 패스워드를 등록하여, 등록된 패스워드를 이용하여 사용자 및/또는 기기를 인증하는 것이 지식 기반 인증에 대응할 수 있다. 그러나, 사용자 입력 패스워드가 보안 공격에 의해 유출되는 경우, 이러한 지식 기반 인증은 신뢰 할 수 없는 것이 된다.
따라서, 사용자가 입력한 패스워드를 높은 수준의 보안 처리에 의해 등록하여 관리하는 것이 요구된다.
일실시예에 따르면, 정보 처리 장치(100)는 수신부(110)에서 수신한 사용자 입력 패스워드를 암호화하여 저장(등록)한다. 상기 수신하는 패스워드는 평문(Plain text)일 수 있다.
일실시예에 따르면, 정보 처리 장치(100)는 반도체 공정 상의 공정 편차를 이용하여 시간에 따라 변하지 않는 무작위의 디지털 값(Digital value)인 유니크 키를 생성하는 PUF(120)를 포함한다.
상기 PUF(120)가 생성한 디지털 값은 이를 테면, N 비트(단, N은 자연수)일 수 있다.
PUF(120)가 생성한 유니크 키 자체를 소유 기반의 인증을 위한 식별키로 사용할 수도 있으나, 일실시예에 따르면 상기 유니크 키를 이용하여 상기 사용자 입력 패스워드를 암호화함으로써, 소유 기반 인증과 지식 기반 인증을 모두 제공할 수 있다.
이 경우, PUF(120)가 생성한 유니크 키는 외부로 유출되지 않음으로써 높은 수준의 신뢰성과 안전성이 보장될 수 있다. PUF(120)의 구현에 관해서는 보다 상세히 후술한다.
일실시예에 따르면, PUF(120)가 생성한 유니크 키를 AES (Advanced Encryption Standard) 등에서 사용되는 라운드 키(round key)로 이용하여, 사용자로부터 수신된 패스워드를 k 회(단, k는 자연수) 암호화 하여 암호화된 값을 인증을 위한 식별키로 사용할 수 있다.
일실시예에 따르면, 암호화부(130)는 상기한 바와 같이, PUF(120)가 생성한 유니크 키를 시드(seed)로 이용하여, 수신부(110)가 수신한 패스워드를 AES 방식 또는 T-DES (Triple Data Encryption Standard) 방식 등으로 k회 암호화하여 인증에 사용될 식별키를 생성한다.
다만, 상기 AES 방식 또는 T-DES 방식 등은 일부 실시예에 불과하며, DES(Data Encryption Standard) 등 다른 여러 가지 실시예 또한 가능하다.
일실시예에 따르면, 생성된 식별키는 저장부(140)에 저장될 수 있다.
저장부(140)는 OTP(One Time Programmable) 메모리, 플래시(Flash) 메모리 등 다양한 형태의 비휘발성(non-volatile) 메모리 일 수 있다.
저장부(140)에 저장된 식별키는, 온라인 상에서 사용자 및/또는 기기의 인증을 수행하는 데에 이용될 수 있으며, 상기 패스워드가 유출되더라도 PUF(120)의 복제 불가능성에 의해 동일한 식별키의 생성이 방지된다.
또한, 다른 실시예에서는 상기 저장된 식별키는 스마트 카드 등 보안 인증이 필요한 기기 또는 칩(Chip)에 대한 외부의 접근(Access)을 차단하는 게이팅(gating) 역할을 수행할 수도 있다.
따라서, 생성되어 저장된 상기 식별키를 인증/보안의 목적으로 사용하는 용도에 있어서는 일부 실시예에 국한되지 않는다.
한편, 다른 일실시예에 따르면, 정보 처리 장치(100)는 사용자 입력 패스워드뿐만 아니라 사용자의 바이오 정보, 이를테면 지문, 홍채에 연관된 정보를 안전하게 암호화 하여 저장하는 데에 이용될 수도 있다.
이 실시예에서, 수신부(110)에 바이오 정보가 수신되면, PUF(120)가 생성한 유니크 키를 이용하여, 암호화부(130)는 상기 바이오 정보를 AES 방식 또는 T-DES (Triple Data Encryption Standard) 방식 등으로 k회 암호화할 수 있다.
이렇게 암호화하여 생성된 식별키가 저장부(140)에 저장되는 경우, PUF(120)에 의해 생성된 유니크 키 없이는 상기 식별키를 상기 바이오 정보로 복호화 할 수 없으므로 높은 수준의 신뢰성 및 안전성이 제공된다.
상기한 과정은 사용자 입력 및/또는 바이오 정보를 인증에 사용되는 식별키로서 등록하는 과정으로 이해될 수 있다. 일실시예에 따르면, 정보 처리 장치(100)는 이렇게 등록된 식별키를 이용하여, 사용자 및/또는 기기를 인증하는 인증부(150)를 더 포함할 수 있다.
사용자 패스워드를 등록하여 인증에 이용하는 실시예에에서, 인증부(150)는 인증 수행을 위해 입력되는 사용자 패스워드가 등록된 패스워드와 일치하는 지의 여부를 인증할 수 있다.
일실시예에 따르면, 사용자가 인증 수행을 위해 입력하는 패스워드가 수신부(110)에 입력되면, 암호화부(130)는 PUF(120)가 생성한 유니크 키를 이용하여 상기 입력된 패스워드를 암호화하여 암호화된 패스워드를 인증부(150)에 전달할 수 있다. 그러면, 인증부(150)는 상기 암호화된 패스워드가 저장부(140)에 미리 저장되어 있는 등록된 식별키와 일치하는 지의 여부를 판단하여 패스워드의 인증 성공 또는 인증 실패를 결정할 수 있다.
다른 일실시예에 따르면, 사용자가 인증 수행을 위해 입력하는 패스워드가 수신부(110)에 입력되면, 수신부(110)가 입력된 패스워드를 인증부(150)에 전달한다. 그리고 암호화부(130)는 PUF(120)가 생성한 유니크 키를 이용하여 저장부(140)에 미리 저장되어 있는 식별키를 복호화 하여 복호화된 식별키를 인증부(150)에 전달할 수 있다. 그러면, 인증부(150)는 상기 수신부(110)로부터 전달된 사용자 입력 패스워드와 상기 암호화부(130)로부터 전달된 복호화된 식별키가 일치하는 지의 여부를 판단하여 패스워드의 인증 성공 또는 인증 실패를 결정할 수 있다.
한편, 바이오 정보를 등록하여 인증에 이용하는 실시예에서, 인증부(150)는 인증 수행을 위해 입력되는 바이오 정보가 등록된 바이오 정보와 일치하는 지의 여부를 인증할 수 있다.
일실시예에 따르면, 인증 수행을 위한 바이오 정보가 수신부(110)에 입력되면, 암호화부(130)는 PUF(120)가 생성한 유니크 키를 이용하여 상기 입력된 바이오 정보를 암호화하여 암호화된 바이오 정보를 인증부(150)에 전달할 수 있다. 그러면, 인증부(150)는 상기 암호화된 바이오 정보가 저장부(140)에 미리 저장되어 있는 등록된 식별키와 일치하는 지의 여부를 판단하여 패스워드의 인증 성공 또는 인증 실패를 결정할 수 있다.
다른 일실시예에 따르면, 인증 수행을 위한 바이오 정보가 수신부(110)에 입력되면, 수신부(110)가 입력된 바이오 정보를 인증부(150)에 전달한다. 그리고 암호화부(130)는 PUF(120)가 생성한 유니크 키를 이용하여 저장부(140)에 미리 저장되어 있는 식별키를 복호화 하여 복호화된 식별키를 인증부(150)에 전달할 수 있다. 그러면, 인증부(150)는 상기 수신부(110)로부터 전달된 바이오 정보와 상기 암호화부(130)로부터 전달된 복호화된 식별키가 일치하는 지의 여부를 판단하여 패스워드의 인증 성공 또는 인증 실패를 결정할 수 있다.
이 실시예는 바이오 정보의 처리에 유용할 수 있다. 바이오 정보, 이를테면 지문이나 홍채 무늬는 입력 시 마다 식별 오차가 있을 수 있어서, 등록 시에 사용된 동일한 오브젝트의 바이오 정보를 추후에 인증 수행 시 다시 입력하더라도, 식별되는 바이오 정보는 완전히 일치하지 않을 수도 있다. 따라서, 통상적인 바이오 정보의 인증 과정도 입력된 바이오 정보와 미리 등록된 바이오 정보의 일치도를 판단하고 있다.
이 실시예에서도, 인증을 위해 입력되어 수신부(110)에 전달된 바이오 정보를 암호화 하지 않고, 인증부(150)에 전달하고, 인증부는 복호화된 식별키와 상기 전달된 바이오 정보를 비교하여 일치도에 따라 인증 성공 또는 인증 실패를 결정할 수 있다.
이하에서는 일실시예에 따른 PUF(120)의 예시적 구성에 대해 설명한다.
일실시예에 따른 PUF(120)는 반도체 제조 공정 상 반도체 소자 상에 생성되는 노드(node) 간의 단락(short) 여부가 확률적으로 결정될 수 있는 구성에 의해 구현된다.
이를테면, PUF(120)는 동일한 반도체 제조 공정에서 발생하는 공정편차(Process-variation)를 이용하여, 전도성 레이어들(conductive layers) 사이의 인터-레이어 컨택이 상기 전도성 레이어들 사이를 단락시키는지의 여부에 따라 N 비트의 디지털 값을 생성한다. 상기 인터-레이어 컨택은, 이를테면 비아(Via)일 수 있으며, 이하에서는 별다른 언급이 없더라도 인터-레이어 컨택은 반도체의 전도성 레이어들 사이를 전기적으로 단락할 수 있는 다양한 전도성 요소를 포함하는 것으로 이해되어야 한다.
인터-레이어 컨택, 이를테면 비아는 전도성 레이어들 사이를 연결하도록 설계되는 것이어서, 통상적으로 인터-레이어 컨택 또는 비아 사이즈는 전도성 레이어들 사이를 단락시키도록 결정된다. 그리고 통상적인 디자인 룰(rule)에서는 전도성 레이어들 사이를 단락시키는 것이 보장되도록 최소한의 비아 사이즈가 정해져 있다.
그러나, 본 실시예에 따른 PUF(120)의 구현에 있어서는, 인터-레이어 컨택, 이를테면 비아의 사이즈를 디자인 룰에서 정해진 것보다 의도적으로 작게 하여, N 개의 비아 중 일부의 비아는 전도성 레이어들 사이를 단락시키고, 다른 일부의 비아는 상기 전도성 레이어들 사이를 단락시키지 못하게 됨으로써, 각 노드의 단락 여부가 확률적으로 결정된다.
기존의 반도체 공정에서는 인터-레이어 컨택이 전도성 레이어들 사이를 단락시키지 못하면 공정 상 실패한 것이 되나, 실시예들에서는 이를 무작위의 디지털 값인 유니크 키 생성에 이용하는 것이다.
상기 실시예에 따른 인터-레이어 컨택, 이를테면 비아의 사이즈 설정은 도 2 내지 도 3을 참조하여 보다 상세히 후술한다.
한편, PUF(120)의 구현에 대한 다른 일실시예에 따르면, PUF(120)는 반도체 제조 공정 상에서 전도성 라인들 간의 간격 (spacing)을 디자인 룰보다 의도적으로 작게 결정하여, 전도성 라인들 사이의 단락 여부가 확률적으로 결정되도록 하여, 유니크 키가 생성된다.
이러한 실시예 또한, 종래의 반도체 제조 공정에서, 전도성 라인들 사이의 오픈을 보장하는 디자인 룰인 전도성 레이어 사이의 최소 간격 이하의 간격을 만듦으로써, PUF(120)에 의한 유니크 키가 생성되는 것이다.
상기 실시예에 따른 전도성 레이어 간격 설정은 도 4를 참조하여 보다 상세히 후술한다.
한편, PUF(120)가 생성한 유니크 키는, 상기 전도성 레이어들 사이를 상기 인터-레이어 컨택이 단락하고 있는지를 리드 트랜지스터(read transistor)를 이용하여 식별함으로써 얻어질 수 있다. 리드 트랜지스터의 예시적 구현은 도 6을 참조하여 보다 상세히 후술한다.
한편, 상기한 인터-레이어 컨택의 사이즈 조정을 이용하는 실시예에서, 전도성 레이어들 사이를 단락하는 인터-레이어 컨택과 그렇지 못한 인터-레이어 컨택의 비율이 가급적 1/2로 동일한 확률을 가지도록 인터-레이어 컨택의 사이즈를 조정하더라도, 단락이 되는 경우(이를 테면 디지털 값 0)와 그렇지 않은 경우(이를 테면 디지털 값 1)의 비율이 확률적으로 완전히 동일한 것이 보장되지 않을 수도 있다.
즉, 인터-레이어 컨택, 이를테면 비아의 사이즈가 디자인 룰에서 정해진 값에 가깝게 커질수록 전도성 레이어들 사이가 단락되는 확률이 커지고, 반대로 작아질수록 단락이 되지 않는 확률이 커진다. 그런데, 단락되는 경우와 단락되지 않는 경우의 확률 중 어느 한 쪽이 커지게 되면, 생성된 유니크 키의 난수성이 저하된다.
이러한 문제는 상기한 전도성 라인 사이의 간격(spacing)을 조정하는 실시예에서도 마찬가지이다.
따라서 일실시예에 따르면, PUF(120)가 생성한 로우 디지털 값(Raw digital values)을 그룹핑하여 각 그룹 사이의 디지털 값을 비교함으로써 PUF(120)가 생성하는 유니크 키를 결정할 수 있다. 이러한 내용은 생성된 디지털 값에 대해 디지털 값 '0'과 디지털 값 '1' 사이의 밸런싱(balancing)을 수행하는 과정으로 이해될 수 있다.
이러한 밸런싱 과정은 도 7을 참조하여 보다 상세히 후술한다.
도 2는 일실시예에 따른 PUF(120) 의 구성을 설명하기 위한 개념도이다.
반도체 제조 공정에서 메탈 1 레이어(202)과 메탈 2 레이어(201) 사이에 인터-레이어 컨택의 일 예인 비아들이 형성된 모습의 도시되었다.
비아 사이즈를 디자인 룰에 따라 충분히 크게 한 그룹(210)에서는 모든 비아가 메탈 1 레이어(202)와 메탈 2 레이어(201)를 단락시키고 있으며, 이 때 단락 여부를 디지털 값으로 표현하면 모두 0이 된다.
한편, 비아 사이즈를 너무 작게 한 그룹(230)에서는 모든 비아가 메탈 1 레이어(202)와 메탈 2 레이어(201)을 단락시키지 못하고 있다. 따라서 이 때 단락 여부를 디지털 값으로 표현하면 모두 1이 된다.
그리고, 비아 사이즈를 그룹(210)에서의 사이즈와 그룹(230)에서의 사이즈 사이로 선택한 그룹(220)에서는, 일부의 비아는 메탈 1 레이어(202)와 메탈 2 레이어(201)을 단락시키고, 다른 일부의 비아는 메탈 1 레이어(202)와 메탈 2 레이어(201)을 단락시키지 못하고 있다.
일실시예에 따른 PUF(120)는, 그룹(220)과 같이, 일부의 비아는 메탈 1 레이어(202)와 메탈 2 레이어(201)를 단락시키고, 다른 일부의 비아는 메탈 1 레이어(202)와 메탈 2 레이어(201)를 단락시키지 못하도록 비아 사이즈를 설정하여 구성된다.
비아 사이즈에 대한 디자인 룰은 반도체 제조 공정에 따라 상이할 수 있다. 이를테면 0.18 미크론(um)의 CMOS(Complementary metal-oxide-semiconductor) 공정에서 비아의 디자인 룰이 0.25 미크론으로 설정된다고 하면, 상기 실시예에 따른 PUF(120)에서는 비아 사이즈를 0.19 미크론으로 설정하여, 메탈 레이어들 사이의 단락 여부가 확률적으로 분포하도록 한다.
이러한 단락 여부의 확률 분포는 50%의 단락 확률을 갖도록 하는 것이 이상적이며, 본 발명의 일실시예에 따른 PUF(120)는 상기 확률 분포가 최대한 50%에 가깝게 비아 사이즈를 설정하여 구성된다. 이러한 비아 사이즈 설정에서는 공정에 따른 실험에 의하여 비아 사이즈를 결정할 수 있다.
도 3은 일실시예에 따른 PUF(120)의 구성을 설명하기 위한 그래프이다.
그래프에서 비아의 사이즈가 커질수록, 메탈 레이어들 사이의 단락(Short) 확률이 1에 가까운 것을 확인할 수 있다. 디자인 룰에 따른 비아 사이즈는 Sd로서, 메탈 레이어들 사이의 단락이 충분히 보장되는 값이다.
그리고, SM은 이론적으로 메탈 레이어의 단락 확률이 0.5가 되는 비아 사이즈인데, 상기한 바와 같이, 공정에 따라 값이 상이하며 실험에 의해 최대한 비슷한 값을 찾을 수는 있지만, 정확한 SM을 찾는 것은 어렵다.
따라서, 일실시예에 따른 PUF(120)에서는 구체적인 실험에 따라 메탈 레이어들 사이의 단락 여부가 0.5에서 미리 지정된 허용 오차를 갖는 Sx1과 Sx2 범위 내(상기 Sx1 과 Sx2는 별도로 도시하지 않지만, 도시된 Sx 근처의 일정한 마진을 갖는 영역임)에서 설정될 수 있다.
도 4는 다른 일실시예에 따른 PUF(120)의 구성을 설명하기 위한 개념도이다.
본 실시예에 따르면, 메탈 라인들 사이의 간격을 조정하여 메탈 라인들 사이의 오픈 여부가 확률적으로 결정되도록 할 수 있다.
메탈 라인들 사이의 간격을 충분히 작게 한 그룹(410)에서는 모든 경우에서 메탈 라인들이 단락되었다.
그리고, 메탈 라인 간격을 매우 크게 한 그룹(430)에서는 모든 경우에서 메탈 라인들이 단락되지 않았다.
본 실시예에 따른 PUF(120)에서는, 그룹(420)과 같이, 메탈 라인들 중 일부는 단락되고 일부는 단락되지 않도록, 단락이 확률적으로 이루어지는 메탈 라인 간격을 설정한다.
도 5는 일실시예에 따른 PUF(120)에서 유니크 키를 생성할 수 있도록 하는 인터-레이어 컨택 어레이를 도시한다.
반도체 기판(substrate)에 적층된 메탈 레이어들 사이에 가로 M개, 세로 N 개(단, M 및 N은 자연수), 총 M*N 개의 비아가 형성된 모습이 도시되었다.
PUF(120)는 M*N 개의 비아들 각각이 메탈 레이어들 사이를 단락시키는지(디지털 값 0) 또는 단락시키지 못하는지(디지털 값 1)의 여부에 따라, M*N 비트(bit)의 디지털 값인 유니크 키를 생성한다.
그리고, 이렇게 생성된 M*N 비트의 유니크 키는 암호화부(130)가 사용자 입력 패스워드 및/또는 바이오 정보를 등록하는 과정에서 암호화를 수행하는 데에 시드 키(Seed key)로서 이용될 수 있다.
도 6은 일실시예에 따라 PUF(120)가 생성한 유니크 키를 인식하는 과정을 설명하기 위한 도면이다.
본 실시예에 따르면, PUF(120)에 포함된 어느 하나의 노드에서, 레퍼런스 전압 VDD와 그라운드(ground) 사이에 있는 리드 트랜지스터가 상기 노드의 단락 여부를 검사한다.
풀다운(Pull-down) 회로로 구성되는 도 6의 실시예에서, PUF(120) 내의 하나의 노드, 이를테면 비아가 메탈 레이어들 사이를 단락시키면 출력 값은 0으로 되고, 그렇지 않으면 출력 값이 1로 된다. 이러한 과정을 통해 PUF(120)가 생성한 유니크 키가 판독될 수 있다. 한편, 본 명세서에서 별다른 언급이 없더라도 풀다운 회로에 대한 설명은 풀업(Pull-up) 회로로 구성되는 예로 확장될 수 있고, 이는 이 기술이 속하는 기술 분야에서는 자명한 것이므로 구체적인 언급이 없더라도 다른 다양한 실시예를 제외하는 것으로 이해되어서는 안 된다.
또한, 메탈 라인들 사이의 단락을 이용하는 실시예도 동일하게 식별키가 생성된다.
나아가, 이러한 디지털 값 판독 과정은 일부 실시예에 불과하며, 다른 실시예들에 의한 디지털 값 판독 역시 가능하다.
따라서, PUF(120) 내의 메탈 레이어 간 또는 메탈 라인 간의 단락 여부를 검사하여 디지털 값을 판독할 수 있는 구성이라면, 본 발명의 사상을 벗어나지 않는 범위에서 다른 변형이 가능하며, 이러한 구성 또한 본 발명의 범위에서 배제되지 않는다.
도 7은 일실시예에 따라 PUF가 생성한 유니크 키의 밸런싱 과정을 설명하기 위한 개념도이다.
본 실시예에 따르면, PUF(120)가 생성한 M*N 비트의 디지털 값은 미리 설정된 개수로 묶여서 그룹핑될 수 있다.
도시된 실시예서는, 4 개의 디지털 값이 하나의 그룹으로 그룹핑 되었다.
이렇게 복수 개의 디지털 값 그룹이 생성되면, 개별 그룹들의 디지털 값을 비교함으로써 디지털 값 '0'과 디지털 값 '1' 사이의 밸런싱이 수행된다.
이를테면, 그룹(710)과 그룹(720)가 각각 생성한 4비트의 디지털 값의 크기를 비교한다. 그리고, 그룹(710)의 4비트 디지털 값이 그룹(720)의 4비트 디지털 값보다 크면, 상기 그룹(710)과 그룹(720)을 대표하는 디지털 값은 1로 결정한다.
반대로, 그룹(710)의 4비트 디지털 값이 그룹(720)의 4비트 디지털 값보다 작으면, 상기 그룹(710)과 그룹(720)을 대표하는 디지털 값은 0으로 결정한다.
물론, 그룹(720)의 4비트 디지털 값이 그룹(710)의 4비트 디지털 값보다 큰 경우에, 대표 디지털 값을 1로 결정할 수도 있다.
만일, 그룹(710)의 4비트 디지털 값과 그룹(720)의 4비트 디지털 값이 같을 경우에는, 대표 디지털 값을 1 또는 0으로 결정하거나, 아니면, 대표 값을 결정하지 않을 수도 있다.
PUF(120) 내의 복수 개의 노드들 각각에서는 전도성 레이어들 사이가 단락되는 비율(디지털 값 0)과 단락되지 않는 비율(디지털 값 1)이 서로 달라서, 0과 1의 밸런싱(balancing)이 맞추어지지 않는 경우도 있을 수 있다.
하나의 그룹 내에서는 각 비트의 값이 1일 확률과 0일 확률이 다를 수 있지만, 서로 다른 그룹을 비교하면 어느 그룹의 디지털 값이 큰 지는 50%의 확률이 될 수 있다. 이를테면, 두 개의 그룹들(710 및 720) 중 어느 한 그룹이 다른 한 그룹보다 큰 디지털 값을 가질 확률은 50%이다. 따라서, 상기한 과정을 통해서 0과 1의 확률적 밸런싱이 보장되는 것으로 이해될 수 있다.
또한, 그룹(730)과 그룹(740)을 비교하여 또 다른 디지털 값 1비트가 생성될 수 있어서, 그룹(710 내지 740)을 통해 최소 2 비트 이상의 유니크 키가 제공될 수 있다.
이러한 과정에 의해, PUF(120)가 생성한 디지털 값의 밸런싱이 수행되면 PUF(120)가 생성한 디지털 값인 유니크 키의 무작위성은 더욱 높은 수준으로 보장될 수 있다.
상기한 바에 따라, 원래 생성된 디지털 값이 M*N 비트였다면, 상기 도 7에서 PUF(120)에서 생성된 최종 디지털 값은 (M*N/8) 비트일 수 있다. 도 7의 실시예에서는 8 비트의 디지털 값을 이용하여 새로운 1 비트의 디지털 값을 결정하기 때문이다.
따라서, 상기 실시예에 의하면, 무작위성과 시불변성을 동시에 만족할 수 있는 신뢰 가능한 유니크 키가 PUF(120)에 의해 생성된다.
일실시예에 따르면, 암호화부(130)는 이렇게 밸런싱 된 유니크 키를 이용하여 사용자 입력 패스워드 및/또는 바이오 정보를 암호화 할 수 있다.
이렇게 PUF(120)에 의해 유니크 키가 생성되는 경우, 제조 비용이 낮으면서 시불변성도 만족되고, 나아가 암호화부(130)가 AES 등의 방법으로 패스워드를 암호화하는 시드가 되는 유니크 키는 외부로 유출되지 않는다.
도 8은 다른 일실시예에 따른 정보 처리 장치를 도시한다.
본 실시예에서는 정보 처리 장치(800)의 암호화부(820) 내에 N 개(단, N은 자연수)의 PUF들(830)이 포함될 수 있다.
N 개의 PUF들(830)은 반도체 제조 과정에서 암호화부(820) 내에 포함되어 숨겨질(hided) 수 있다.
이를 테면, 암호화부(820) 내에는 적어도 하나의 PUF들, 이를테면 도 9에서 도시되는 PUF들(831, 832, 833, 834 및 835 등)이 포함된다.
예시적으로 도 9에 도시된 PUF들(831, 832, 833, 834 및 835 등)은 각각 독립적으로 또는 상호 연관하여, 수신부(810)에서 수신된 패스워드 및/또는 바이오 정보를 AES 또는 T-DES 등의 방식으로 암호화하는 데에 사용되는 시드(seed) 유니크 키를 생성한다.
일부 실시예에서는 암호화부(820) 내에 PUF가 하나만 포함될 수도 있으나, 다른 실시예들에서는 도 9에 도시된 바와 같이 복수 개 포함된다.
그리고, 이렇게 복수 개의 PUF들이 포함된 실시예에서는 암호화부(820) 내에 PUF 선택부(840)가 더 포함될 수 있다.
PUF 선택부(840)는 복수 개의 PUF들(831, 832, 833, 834 및 835 등) 중 적어도 하나를 선택하여 암호화부(820)가 사용자 입력 패스워드 및/또는 바이오 정보를 암호화하는 데에 이용될 실제 PUF를 적어도 하나 선택한다.
암호화부(820)가 생성한 식별키가 저장부(850)에 저장될 수 있는 과정 및 저장부(850)의 구현은 도 1의 실시예와 동일하다.
또한, 인증부(860)가 인증을 위해 입력된 사용자 패스워드 및/또는 바이오 정보를 미리 등록된 식별키와 비교하여 인증을 수행하는 내용도 도 1에서 설명한 바와 같다.
도 9는 일실시예에 따라 PUF들이 암호화부 내에 배치되는 예시적 구성을 도시한다.
암호화부(820)가 설계되어 제조되는 과정에서, PUF들(831, 832, 833, 834 및 835 등)이 암호화부(820) 내에 숨겨져서(hided), 외부에서는 이러한 PUF들(831, 832, 833, 834 및 835 등)의 위치나 역할에 대해 분석할 수 없다. 즉, 각각의 PUF들(831, 832, 833, 834 및 835 등)의 위치도 파악하기 힘들뿐더러, 어느 PUF가 실제 암호화부(820)에 의해 암호화 시드 키로서 이용되는지도 파악할 수 없다.
따라서, PUF들(831, 832, 833, 834 및 835 등)을 통한 암호화부(820) 동작의 암호화 과정은 외부에서 분석이 불가능하며, 암호화부(820)가 다른 구성들과 통신하는 버스(bus)를 프로빙(probing)하더라도 유니크 키를 알아내는 것이 불가능하다.
결국, 사용자가 입력한 패스워드 및/또는 바이오 정보가 암호화부(820)에 의해 암호화되는 과정은 높은 수준으로 보안이 유지될 수 있다.
도 10은 일실시예에 따른 정보 처리 방법에 따라 패스워드 및/또는 바이오 정보를 암호화 하여 저장(등록)하는 과정을 도시하는 흐름도이다.
도 1을 참조하면, 단계(1010)에서 정보 처리 장치(100)의 수신부(110)에 사용자 입력 패스워드 및/또는 바이오 정보가 수신된다. 수신된 패스워드 및/또는 바이오 정보는 상기한 바와 같이 지식 기반 인증을 구현할 수 있다.
단계(1020)에서는 상기 패스워드 및/또는 바이오 정보가 AES 또는 T-DES 등의 방법에 의해 암호화되는 과정에서, 반복되는 N 번(단, N은 자연수)의 이터래이션(iteration)을 위해 초기값이 i=0에서 i를 1 증가시킨다.
그리고, 단계(1030)에서 PUF(120)가 제공하는 유니크 키가 독출되고, 단계(1040)에서는 i 번째 이터래이션이 수행되어, 키 ID(i)이 생성된다.
그리고, 단계(1050)에서는 i가 N이 될 때까지 상기 이터래이션을 진행시킨다.
이렇게 N 회 이터래이션에 걸쳐, 암호화부(120)는 최종 식별키인 키 ID(N)을 생성하며, 단계(1060)에서는 생성된 식별키 ID(N)이 저장부(140)에 저장된다.
도 11은 도 8의 실시예에 따른 정보 처리 장치가 패스워드 및/또는 바이오 정보를 암호화 하여 저장하는 과정을 도시하는 흐름도이다.
단계(1110)에서 패스워드가 수신되고 이터래이션 i의 초기 값이 0으로 설정되는 과정은 도 10의 실시예와 같다.
그리고, i의 값이 1 증가되며(단계 1120), 도 8 및 도 9를 참조하여 설명된 복수 개의 PUF들(831, 832, 833, 834 및 835 등) 중 어느 하나가 PUF 선택부(840)에 의해 선택된다.
일부 실시예에서는 이러한 선택이 매 이터래이션 마다 새로이 수행될 수도 있으며, 다른 실시예에서는 선택 과정이 한 번만 수행될 수도 있다.
선택된 PUF가 제공하는 디지털 값을 이용하여 i 번째 이터래이션에서의 식별키 ID(i)가 생성되며(단계 1140), 단계(1150)에 의해 이터래이션이 N 회 반복된다.
이렇게 N 번 암호화부(820)의 암호화가 수행되면 식별키 ID(N)이 생성되며, 단계(1160)에서는 생성된 키 ID(N)가 저장부(850)에 저장된다.
도 12는 일실시예에 따른 정보 처리 장치에서 사용자 입력 패스워드 및/또는 바이오 정보를 인증하는 과정을 도시하는 흐름도이다.
도 10 내지 도 11의 실시예들은, 각각 정보 처리 장치(100) 또는 정보 처리 장치(800)가 인증에 사용할 패스워드 및/또는 바이오 정보를 최초 등록하는 내용에 연관되었다면, 도 12는 상기 패스워드 및/또는 바이오 정보가 암호화되어 등록된 이후 실제 인증 수행 과정에 연관될 수 있다.
일실시예에 따라, 단계(1210)에서, 사용자가 인증 수행을 위해 입력하는 패스워드 및/또는 바이오 정보가 수신부(110 또는 810)에 입력될 수 있다.
그러면, 단계(1220)에서, 암호화부(130 또는 820)는 PUF가 생성한 유니크 키를 이용하여 상기 입력된 패스워드 및/또는 바이오 정보를 암호화하여 암호화된 패스워드 및/또는 바이오 정보를 인증부(150 또는 860)에 전달할 수 있다.
그러면, 인증부(150 또는 860)는 상기 암호화된 패스워드 및/또는 바이오 정보가 저장부(140 또는 850)에 미리 저장되어 있는 등록된 식별키와 일치하는 지의 여부를 판단하여 패스워드 및/또는 바이오 정보의 인증 성공 또는 인증 실패를 결정할 수 있다.
도 13은 다른 일실시예에 따른 정보 처리 장치에서 사용자 입력 패스워드 및/또는 바이오 정보를 인증하는 과정을 도시하는 흐름도이다.
단계(1310)에서, 사용자가 인증 수행을 위해 입력하는 패스워드 및/또는 바이오 정보가 수신부(110 또는 810)에 입력될 수 있다. 수신부(110 또는 810)는 입력된 패스워드 및/또는 바이오 정보를 인증부(150 또는 860)에 전달한다.
단계(1320)에서, 그리고 암호화부(130 또는 820)는 저장부(140 또는 850)에 미리 저장되어 있는 식별키 ID(N)을 복호화 하여 복호화된 식별키를 인증부(150 또는 860)에 전달할 수 있다.
그러면, 단계(1330)에서, 인증부(150 또는 860)는 상기 수신부(110 또는 810)로부터 전달된 사용자 입력 패스워드 및/또는 바이오 정보와 상기 암호화부(130 또는 820)로부터 전달된 복호화된 식별키가 일치하는 지의 여부를 판단하여 패스워드 및/또는 바이오 정보의 인증 성공 또는 인증 실패를 결정할 수 있다.
도 1을 참조하여 상술한 바와 같이, 도 13의 실시예는 바이오 정보의 처리에 유용할 수 있다. 바이오 정보, 이를테면 지문이나 홍채 무늬는 입력 시 마다 식별 오차가 있을 수 있어서, 등록 시에 사용된 동일한 오브젝트의 바이오 정보를 추후에 인증 수행 시 다시 입력하더라도, 식별되는 바이오 정보는 완전히 일치하지 않을 수도 있다. 따라서, 통상적인 바이오 정보의 인증 과정도 입력된 바이오 정보와 미리 등록된 바이오 정보의 일치도를 판단하고 있다.
도 13의 실시예에서도, 인증을 위해 입력되어 수신부(110 또는 810)에 전달된 바이오 정보를 암호화한 결과를 미리 등록된 식별키와 비교 하지 않고, 대신 미리 등록된 식별키를 복호화 하여, 상기 바이오 정보와의 일치도에 따라 인증 성공 또는 인증 실패를 결정할 수 있다.
상술한 다양한 실시예들에 따르면, 인증을 위해 사용되는 사용자 패스워드 및/또는 바이오 정보가 안전하게 암호화되어 관리될 수 있다. 또한, 인증 수행에 있어서, 사용자 입력 패스워드 및/또는 바이오 정보뿐만 아니라 디바이스에 임베디드된 PUF의 유니크 키가 이용되기 때문에, 인증의 신뢰성이 높은 수준으로 제공될 수 있다.
본 발명의 일 실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
Claims (4)
- 반도체 제조 공정 상의 공정 편차를 이용하여 적어도 하나의 유니크 키를 생성하는 PUF(Physically Unclonable Function); 및
상기 유니크 키를 이용하여 사용자로부터 수신한 패스워드를 암호화하여 식별키를 생성하는 암호화부
를 포함하는 정보 처리 장치. - 반도체 제조 공정 상의 공정 편차를 이용하여 적어도 하나의 유니크 키를 생성하는 PUF(Physically Unclonable Function); 및
상기 유니크 키를 이용하여 입력된 바이오 정보를 암호화하여 식별키를 생성하는 암호화부
를 포함하는 정보 처리 장치. - 반도체 제조 공정 상의 공정 편차를 이용하여 적어도 하나의 디지털 값으로 구성된 유니크 키를 생성하는 적어도 하나의 PUF(Physically Unclonable Function)를 포함하고, 상기 적어도 하나의 PUF 중 적어도 하나가 제공하는 적어도 하나의 유니크 키를 이용하여 사용자로부터 수신한 패스워드 또는 바이오 정보 중 적어도 하나를 암호화하여 식별키를 생성하는 암호화부
를 포함하는 정보 처리 장치. - 정보 처리 장치에 포함된 PUF(Physically Unclonable Function)가, 반도체 제조 공정 상의 공정 편차를 이용하여 적어도 하나의 유니크 키를 생성하는 단계; 및
상기 정보 처리 장치의 암호화부가, 상기 유니크 키를 이용하여, 상기 정보 처리 장치에 입력된 제1 사용자 입력 패스워드 또는 제1 사용자 바이오 정보 중 적어도 하나를 암호화하여 암호화된 패스워드 또는 암호화된 바이오 정보 중 적어도 하나를 생성하는 단계
를 포함하는 정보 처리 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130128260A KR101882289B1 (ko) | 2013-10-28 | 2013-10-28 | 인증 정보 처리 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130128260A KR101882289B1 (ko) | 2013-10-28 | 2013-10-28 | 인증 정보 처리 장치 및 방법 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120091197A Division KR101332517B1 (ko) | 2012-08-21 | 2012-08-21 | 인증 정보 처리 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140026316A true KR20140026316A (ko) | 2014-03-05 |
KR101882289B1 KR101882289B1 (ko) | 2018-07-30 |
Family
ID=50641054
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130128260A KR101882289B1 (ko) | 2013-10-28 | 2013-10-28 | 인증 정보 처리 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101882289B1 (ko) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016048054A3 (ko) * | 2014-09-24 | 2016-05-12 | 삼성전자 주식회사 | 데이터 통신 보안을 위한 방법, 장치 및 시스템 |
WO2015156622A3 (ko) * | 2014-04-09 | 2017-01-12 | (주) 아이씨티케이 | 인증 장치 및 방법 |
US10454904B2 (en) | 2014-09-24 | 2019-10-22 | Samsung Electronics Co., Ltd. | Method, apparatus and system for secure data communication |
US10958451B2 (en) | 2014-04-09 | 2021-03-23 | Ictk Holdings Co., Ltd. | Authentication apparatus and method |
WO2021221274A1 (ko) * | 2020-04-29 | 2021-11-04 | 박재범 | 디지털 저작물의 저작 이력을 반영한 식별키 생성 방법 및 저작물 배포 방법 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3876120A4 (en) * | 2019-02-01 | 2022-08-10 | ICTK Holdings Co., Ltd. | AUTHENTICATION INFORMATION PROCESSING METHOD AND APPARATUS AND USER TERMINAL COMPRISING AUTHENTICATION INFORMATION PROCESSING METHOD APPARATUS |
US20220052997A1 (en) * | 2019-02-01 | 2022-02-17 | Ictk Holdings Co., Ltd. | Authentication information processing method and apparatus and user terminal including authentication information processing method and apparatus |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3804670B2 (ja) * | 2004-04-21 | 2006-08-02 | セイコーエプソン株式会社 | 半導体装置、電子機器及び半導体装置のアクセス制御方法 |
KR20090068987A (ko) * | 2007-12-24 | 2009-06-29 | 주식회사 시큐트론 | 공정편차에 기반한 식별 시스템 및 방법 |
US20110002461A1 (en) * | 2007-05-11 | 2011-01-06 | Validity Sensors, Inc. | Method and System for Electronically Securing an Electronic Biometric Device Using Physically Unclonable Functions |
JP2012503814A (ja) * | 2008-09-26 | 2012-02-09 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | デバイス及びユーザの認証 |
-
2013
- 2013-10-28 KR KR1020130128260A patent/KR101882289B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3804670B2 (ja) * | 2004-04-21 | 2006-08-02 | セイコーエプソン株式会社 | 半導体装置、電子機器及び半導体装置のアクセス制御方法 |
US20110002461A1 (en) * | 2007-05-11 | 2011-01-06 | Validity Sensors, Inc. | Method and System for Electronically Securing an Electronic Biometric Device Using Physically Unclonable Functions |
KR20090068987A (ko) * | 2007-12-24 | 2009-06-29 | 주식회사 시큐트론 | 공정편차에 기반한 식별 시스템 및 방법 |
JP2012503814A (ja) * | 2008-09-26 | 2012-02-09 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | デバイス及びユーザの認証 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015156622A3 (ko) * | 2014-04-09 | 2017-01-12 | (주) 아이씨티케이 | 인증 장치 및 방법 |
US10958451B2 (en) | 2014-04-09 | 2021-03-23 | Ictk Holdings Co., Ltd. | Authentication apparatus and method |
US11876917B2 (en) | 2014-04-09 | 2024-01-16 | Ictk Holdings Co., Ltd. | Authentication apparatus and method |
WO2016048054A3 (ko) * | 2014-09-24 | 2016-05-12 | 삼성전자 주식회사 | 데이터 통신 보안을 위한 방법, 장치 및 시스템 |
US10454904B2 (en) | 2014-09-24 | 2019-10-22 | Samsung Electronics Co., Ltd. | Method, apparatus and system for secure data communication |
WO2021221274A1 (ko) * | 2020-04-29 | 2021-11-04 | 박재범 | 디지털 저작물의 저작 이력을 반영한 식별키 생성 방법 및 저작물 배포 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR101882289B1 (ko) | 2018-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101332517B1 (ko) | 인증 정보 처리 장치 및 방법 | |
US10769309B2 (en) | Apparatus and method for generating identification key | |
US10320573B2 (en) | PUF-based password generation scheme | |
KR101882289B1 (ko) | 인증 정보 처리 장치 및 방법 | |
US10439828B2 (en) | Encoding data for cells in a PUF that corresponds to a response in a challenge response pair | |
KR101663341B1 (ko) | 식별키 생성 장치 및 방법 | |
US10484188B2 (en) | PUF hardware arrangement for increased throughput |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
N231 | Notification of change of applicant | ||
A201 | Request for examination | ||
AMND | Amendment | ||
AMND | Amendment | ||
N231 | Notification of change of applicant | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) |