KR102459592B1 - 하드웨어 장치의 식별 정보를 생성하고 인증하는 전자 장치 및 이의 동작 방법 - Google Patents
하드웨어 장치의 식별 정보를 생성하고 인증하는 전자 장치 및 이의 동작 방법 Download PDFInfo
- Publication number
- KR102459592B1 KR102459592B1 KR1020200128757A KR20200128757A KR102459592B1 KR 102459592 B1 KR102459592 B1 KR 102459592B1 KR 1020200128757 A KR1020200128757 A KR 1020200128757A KR 20200128757 A KR20200128757 A KR 20200128757A KR 102459592 B1 KR102459592 B1 KR 102459592B1
- Authority
- KR
- South Korea
- Prior art keywords
- identification information
- public key
- hardware device
- authentication
- electronic device
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000006870 function Effects 0.000 claims description 28
- 238000004519 manufacturing process Methods 0.000 claims description 15
- 230000004044 response Effects 0.000 claims description 11
- 238000011017 operating method Methods 0.000 abstract description 2
- 238000012545 processing Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 7
- 238000012795 verification Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000009966 trimming Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/73—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- 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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
- H04L9/3268—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
하드웨어 장치의 식별 정보를 생성하고 인증하는 전자 장치 및 이의 동작 방법이 개시된다. 개시된 전자 장치의 동작 방법은 하드웨어 장치의 개인 키로부터 생성된 상기 하드웨어 장치의 공개 키를 이용하여, 상기 하드웨어 장치의 인증에 활용되는 식별 정보를 결정하는 단계 및 상기 식별 정보를 관리하는 단계를 포함한다.
Description
아래의 설명은 하드웨어 장치의 식별 정보를 생성하고 인증하는 전자 장치 및 이의 동작 방법에 관한 것으로, 보다 구체적으로는 보안 기능을 수행하는 칩, 모듈, 디바이스를 포함하는 하드웨어 장치의 식별 정보를 생성하고, 이에 기반한 인증을 수행하는 방법 및 장치에 관한 것이다.
칩(chip), 모듈(module), 디바이스(device) 등 하드웨어 장치를 생산, 판매, 사용하는 단계에서 해당 하드웨어 장치를 추적 및 관리를 위해서 고유의 ID(identification)와 같은 식별 정보를 필요로 한다. 일반적으로, 식별 정보는 관리를 목적으로 생성되는 정보로서, 생성된 식별 정보는 서버에 저장되고 관리될 수 있다.
만약 하드웨어 장치가 PKI(Public Key Infrastructure) 기능을 가지고 자신의 개인 키(private key)를 통해 보안 기능을 수행하고자 한다면, CA(certificate authority) 서버로부터 인증서를 발급받아 자신이 정당한지를 입증해야 한다. 일반적으로 인증서는 하드웨어 장치의 ID와 공개 키를 묶어서 CA 서버의 비밀 키로 서명함으로써 발급된다.
다만, 이를 구현하기 위해서는 CA 서버를 하드웨어 장치의 생산 설비에 추가적으로 구축해서 직접 운영하거나, 또는 원격의 CA 서버에 접속하여 인증서를 발급 받기 위해 기존 CA 서버의 운영자와 협약이 요구되는데, 이러한 일련의 과정들이 하드웨어 장치의 생산자나 유통자 등에게는 상당한 비용과 어려움으로 여겨질 수 있다.
일실시예에 따른 전자 장치의 동작 방법은 하드웨어 장치의 개인 키로부터 생성된 상기 하드웨어 장치의 공개 키를 이용하여, 상기 하드웨어 장치의 인증에 활용되는 식별 정보를 결정하는 단계; 및 상기 식별 정보를 관리하는 단계를 포함한다.
일실시예에 따른 전자 장치의 동작 방법에서 상기 식별 정보를 결정하는 단계는 상기 공개 키 또는 상기 공개 키에 미리 정해진 함수를 적용하여 얻어진 값에 기초하여 상기 식별 정보를 결정할 수 있다.
일실시예에 따른 전자 장치의 동작 방법에서 상기 함수는 상기 공개 키로부터 미리 정해진 길이의 데이터를 결정하는 암호화 해시 알고리즘(cryptographic hash algorithm), 상기 공개 키를 암호화하는 암호 알고리즘, 상기 공개 키의 일부를 활용하는 함수 또는 이들의 조합에 해당할 수 있다.
일실시예에 따른 전자 장치의 동작 방법에서 상기 식별 정보를 결정하는 단계는 상기 하드웨어 장치의 생산자 식별 정보, 제품 식별 정보, 생산일자 및 생산장소 중 적어도 하나에 대한 정보를 더 이용하여 상기 식별 정보를 결정할 수 있다.
일실시예에 따른 전자 장치의 동작 방법에서 상기 하드웨어 장치는 인증 대상이 되는 칩, 모듈, 디바이스 중 어느 하나일 수 있다.
일실시예에 따른 전자 장치의 동작 방법은 인증이 필요한 하드웨어 장치로부터 수신된 해당 하드웨어 장치의 식별 정보가 기 등록된 식별 정보인지를 확인하는 단계; 및 상기 수신된 식별 정보가 상기 기 등록된 식별 정보인 경우에 응답하여, 상기 수신된 식별 정보로부터 획득한 공개 키 또는 상기 인증이 필요한 하드웨어 장치로부터 수신한 공개 키를 이용하여 상기 인증이 필요한 하드웨어 장치에 대해 PKI 기반 인증을 수행하는 단계를 더 포함할 수 있다.
일실시예에 따른 전자 장치의 동작 방법에서 상기 PKI 기반 인증을 수행하는 단계는 CA 서버에 의해 발급된 인증서 없이, 상기 획득한 공개 키 또는 상기 수신한 공개 키를 이용하여 PKI 기반 인증을 수행할 수 있다.
일실시예에 따른 전자 장치의 동작 방법에서 상기 PKI 기반 인증을 수행하는 단계는 상기 획득한 공개 키 또는 상기 수신한 공개 키를 이용하여, 상기 전자 장치가 생성한 랜덤 값에 대한 PKI 서명을 생성할 수 있는지 여부에 기반하여 상기 PKI 기반 인증을 수행할 수 있다.
일실시예에 따른 전자 장치의 동작 방법에서 상기 PKI 기반 인증을 수행하는 단계는 상기 획득한 공개 키에 기반하여 암호화된 데이터를 상기 인증이 필요한 하드웨어 장치가 복호화할 수 있는지 여부에 기반하여 상기 PKI 기반 인증을 수행할 수 있다.
일실시예에 따른 전자 장치의 동작 방법에서 상기 PKI 기반 인증을 수행하는 단계는 상기 획득한 공개 키 또는 상기 수신한 공개 키를 이용하여, PKI 기반 세션 생성이 성공하는지 여부에 기반하여 상기 PKI 기반 인증을 수행할 수 있다.
일실시예에 따른 전자 장치의 동작 방법에서 상기 PKI 기반 인증을 수행하는 단계는 상기 획득한 공개 키로, 상기 인증이 필요한 하드웨어 장치로부터 수신한 서명 문서의 서명을 검증할 수 있는지 여부에 기반하여 상기 PKI 기반 인증을 수행할 수 있다.
일실시예에 따른 전자 장치의 동작 방법에서 상기 PKI 기반 인증을 수행하는 단계는 상기 수신된 식별 정보로부터 공개 키를 유효하게 생성할 수 없는 경우에 응답하여, 상기 수신한 공개 키로부터 획득한 식별 정보가 상기 수신된 식별 정보에 대응하는지 여부에 기반하여 인증을 수행할 수 있다.
일실시예에 따른 전자 장치의 동작 방법은 인증이 필요한 하드웨어 장치로부터 해당 하드웨어 장치의 식별 정보를 수신하는 단계; 상기 수신된 식별 정보가 기 등록된 식별 정보인지를 확인하는 단계; 및 상기 수신된 식별 정보가 상기 기 등록된 식별 정보인 경우에 응답하여, CA 서버에 의해 발급된 인증서 없이 상기 수신된 식별 정보로부터 획득한 공개 키 또는 상기 인증이 필요한 하드웨어 장치로부터 수신한 공개 키를 이용하여 상기 인증이 필요한 하드웨어 장치에 대해 PKI 기반 인증을 수행하는 단계를 포함한다.
일실시예에 따른 전자 장치는 프로세서; 및 상기 프로세서에 의해 실행 가능한 적어도 하나의 명령어를 포함하는 메모리를 포함하고, 상기 적어도 하나의 명령어가 상기 프로세서에서 실행되면, 상기 프로세서는 하드웨어 장치의 개인 키로부터 생성된 상기 하드웨어 장치의 공개 키를 이용하여, 상기 하드웨어 장치의 인증에 활용되는 식별 정보를 결정하고, 상기 식별 정보를 관리한다.
일실시예에 따른 전자 장치에서 상기 프로세서는 상기 공개 키 또는 상기 공개 키에 미리 정해진 함수를 적용하여 얻어진 값에 기초하여 상기 식별 정보를 결정할 수 있다.
일실시예에 따른 전자 장치에서 상기 함수는 상기 공개 키로부터 미리 정해진 길이의 데이터를 결정하는 암호화 해시 알고리즘, 상기 공개 키를 암호화하는 암호 알고리즘, 상기 공개 키의 일부를 활용하는 함수 또는 이들의 조합에 해당할 수 있다.
일실시예에 따른 전자 장치에서 상기 프로세서는 상기 하드웨어 장치의 생산자 식별 정보, 제품 식별 정보, 생산일자 및 생산장소 중 적어도 하나에 대한 정보를 더 이용하여 상기 식별 정보를 결정할 수 있다.
일실시예에 따른 전자 장치에서 상기 하드웨어 장치는 인증 대상이 되는 칩, 모듈, 디바이스 중 어느 하나일 수 있다.
일실시예에 따른 전자 장치에서 상기 프로세서는 인증이 필요한 하드웨어 장치로부터 수신된 해당 하드웨어 장치의 식별 정보가 기 등록된 식별 정보인지를 확인하고, 상기 수신된 식별 정보가 상기 기 등록된 식별 정보에 해당하는 경우에 응답하여, 상기 수신된 식별 정보로부터 획득한 공개 키 또는 상기 인증이 필요한 하드웨어 장치로부터 수신한 공개 키를 이용하여 상기 인증이 필요한 하드웨어 장치에 대해 PKI 기반 인증을 수행할 수 있다.
일실시예에 따르면, CA 서버로부터 인증서를 발급 받지 않고 하드웨어 장치의 공개 키에 기반하여 식별 정보를 생성함으로써, 비교적 단순한 시스템을 통해서도 하드웨어의 무결성을 유효하게 검증할 수 있다. 식별 정보는 외부에 공개되는 공개 키에 기반하여 생성되므로, 식별 정보 자체가 외부에 노출되는 것이 보안과 무관할 수 있다.
일실시예에 따르면, CA 서버로부터 인증서 발급 없이 식별 정보가 해당 하드웨어 장치의 공개 키로부터 생성됨으로써, CA 서버를 직접 운영하거나, 원격으로 기존 CA 서버에 접속해서 인증서를 발급 받아야 하는 어려움이나 비용 발생을 방지하면서도, 하드웨어 장치의 무결성(integrity)을 유효하게 입증할 수 있는 식별 정보를 얻을 수 있다. 또한, 인증서에 기반한 무거운 데이터 처리가 불필요하므로, 상대적으로 가벼운 보안 처리만으로 하드웨어 장치의 무결성을 효과적으로 입증할 수 있다.
일실시예에 따르면, 인증서를 발급 받아 사용하는 기존 시스템에서도 관리 목적으로 ID를 추출하여 저장하는 경우라면 인증서 발급 과정만 생략한 채 본 명세서에서 설명한 것을 그대로 적용할 수 있다.
도 1 내지 도 3은 일실시예에 따른 식별 정보를 발급하는 과정을 설명하기 위한 도면이다.
도 4는 일실시예에 따른 식별 정보에 기반하여 하드웨어 장치를 인증하는 과정을 설명하기 위한 도면이다.
도 5는 일실시예에 따른 전자 장치를 설명하기 위한 도면이다.
도 4는 일실시예에 따른 식별 정보에 기반하여 하드웨어 장치를 인증하는 과정을 설명하기 위한 도면이다.
도 5는 일실시예에 따른 전자 장치를 설명하기 위한 도면이다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 구현될 수 있다. 따라서, 실제 구현되는 형태는 개시된 특정 실시예로만 한정되는 것이 아니며, 본 명세서의 범위는 실시예들로 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
도 1 내지 도 3은 일실시예에 따른 식별 정보를 발급하는 과정을 설명하기 위한 도면이다.
도 1을 참조하면, 일실시예에 따른 전자 장치에 구비된 프로세서의 제어를 통해 식별 정보를 결정하고 관리하는 방법이 도시된다.
단계(110)에서, 전자 장치는 하드웨어 장치의 개인 키로부터 생성된 하드웨어 장치의 공개 키를 이용하여, 하드웨어 장치의 인증에 활용되는 식별 정보를 결정한다. 식별 정보는 고유하게 부여되어 해당 하드웨어 장치가 다른 하드웨어 장치와 구별될 수 있게 하는 정보로서, 이러한 식별 정보가 생성되는 과정에 대해서는 도 2 및 도 3을 통해 상세히 설명한다.
하드웨어 장치는 생산되어 사용자에게 판매된 후 해당 사용자에 의해 사용될 때 무결성 입증이 요구되는 장치로서, 예를 들어, 칩, 모듈, 디바이스 등을 포함할 수 있다. 여기서, 칩이나 모듈은 완제품에 해당하는 디바이스 내에 포함되어 일정한 기능을 담당하는 구성요소를 의미할 수 있다. 디바이스는, 예를 들어 스마트 폰, 태블릿, 랩탑, 퍼스널 컴퓨터 등 다양한 컴퓨팅 장치, 스마트 시계, 스마트 안경, 스마트 의류 등 다양한 웨어러블 기기, 스마트 스피커, 스마트 TV, 스마트 냉장고 등 다양한 가전장치, 스마트 자동차, 스마트 키오스크, IoT(Internet of Things) 기기, WAD(Walking Assist Device), 드론, 로봇 등을 포함할 수 있다.
아래에서 상세히 설명되겠으나, CA 서버로부터 인증서 발급 없이 식별 정보가 해당 하드웨어 장치의 공개 키로부터 생성됨으로써, CA 서버를 직접 운영하거나, 원격으로 기존 CA 서버에 접속해서 인증서를 발급 받아야 하는 어려움이나 비용 발생을 방지하면서도, 하드웨어 장치의 무결성을 유효하게 입증할 수 있는 식별 정보를 얻을 수 있다. 또한, 인증서에 기반한 무거운 데이터 처리가 불필요하므로, 상대적으로 가벼운 보안 처리만으로 하드웨어 장치의 무결성을 효과적으로 입증할 수 있다.
이러한 식별 정보를 생성하는 전자 장치는 하드웨어 장치로부터 공개 키 등을 추출하여 식별 정보를 생성하는 발급 장치나, 하드웨어 자체일 수 있으나, 실시예가 이로 한정되는 것은 아니다. 여기서, 발급 장치는 하드웨어 장치를 생산하는 시설에 구비되어 해당 시설에서 하드웨어 장치가 생산될 때마다 해당 장치의 식별 정보를 발급하는 장치일 수 있으나, 발급 장치의 실시예가 이에 한정되는 것은 아니다.
단계(120)에서, 전자 장치는 식별 정보를 관리한다. 예를 들어, 전자 장치가 발급 장치라면, 여러 하드웨어 장치들 각각에 대해 식별 정보를 결정해서 리스트로 관리할 수 있다. 전자 장치가 하드웨어 자체라면, 자신의 식별 정보를 내부에 저장하고, 외부의 데이터베이스로도 전송하여 여러 식별 정보들이 함께 관리되게끔 할 수 있다.
일실시예에서, 식별 정보들을 수집한 엔티티(entity)(예컨대, 칩이나 모듈 생산자 등)가 다른 엔티티(예컨대, 칩이나 모듈을 제공 받아 디바이스를 생산하는 자 등)로 식별 정보 리스트를 전달함으로써, 추후 설명할 인증 과정을 수행할 주체가 변경될 수도 있다. 식별 정보 리스트를 전달 받은 엔티티가 또 다른 엔티티로 해당 리스트를 이관시킬 수도 있음은 물론이다.
만약 특정 하드웨어 장치에 분실, 도난, 폐기 등의 이벤트가 발생하면, 해당 하드웨어 장치의 식별 정보를 식별 정보 리스트에서 삭제하거나, 폐기 리스트에 추가하여 별도로 관리함으로써, 해당 하드웨어 장치가 무단으로 사용되거나, 도용되는 것을 효과적으로 막을 수 있다.
이하, 설명의 편의를 위해 식별 정보가 발급 장치에서 결정되는 예시를 기준으로 설명하겠으나, 아래의 설명이 하드웨어 장치에서 식별 정보가 결정되는 예시에도 마찬가지로 적용될 수 있으므로, 보다 상세한 설명은 생략한다.
도 2를 참조하면, 일실시예에 따라 하드웨어 장치와 발급 장치 간 동작을 설명하기 위한 블록도가 도시된다.
먼저, 하드웨어 장치는 자신의 비밀 키를 결정할 수 있다. 예를 들어, 하드웨어 장치는 PUF 값에 기반하여 비밀 키를 생성하거나, RNG(random number generator)에서 생성된 랜덤 값에 기반하여 비밀 키를 생성할 수도 있다. 다만, 비밀 키를 생성하는 예시를 한정하는 것은 아니고, 비밀 키를 생성할 수 있는 다른 방법에도 본 명세서의 설명이 적용될 수 있다.
그리고, 하드웨어 장치는 PKI에 기반하여 비밀 키로부터 공개 키를 생성할 수 있다. 하드웨어 장치는 식별 정보의 생성을 위해 공개 키를 발급 장치로 전송할 수 있다. 본 명세서에서 식별 정보는 설명의 편의를 위해 ID로도 지칭될 수 있다.
발급 장치는 하드웨어 장치의 공개 키를 이용하여 해당 하드웨어 장치의 ID를 생성할 수 있으며, 이때 함수가 추가적으로 이용될 수도 있다.
도 3을 참조하여 식별 키 생성에 대해 상세하게 설명하면, 식별 정보는 공개 키 또는 공개 키에 일정한 함수를 적용시킨 값에 기반하여 결정될 수 있다. 함수 적용 없이 공개 키로 식별 정보를 결정하는 경우에도, 공개 키의 전체 또는 일부가 식별 정보 결정에 이용될 수 있다.
또한, 함수는 공개 키로부터 미리 정해진 길이의 데이터를 결정하는 암호화 해시 알고리즘(cryptographic hash algorithm), 공개 키를 암호화하는 암호 알고리즘, 공개 키의 일부를 활용하는 함수 또는 이들의 조합에 해당할 수 있다. 공개 키가 너무 긴 경우(예컨대, RSA(Rivest Shamir Adleman)나 PQC(post quantum cryptography)가 사용되는 경우 등), 이를 일정 길이의 데이터로 줄일 수 있는 암호화 해시 알고리즘이 함수로 식별 키에 적용되어 상대적으로 짧은 길이의 식별 정보가 얻어질 수 있다. 또는, 공개 키에 암호화 알고리즘을 적용시키거나, 공개 키의 일부를 자르거나(trim), 공개 키에 XOR(Exclusive OR) 연산을 적용시켜서 얻어진 값에 기초하여 식별 정보가 결정될 수도 있다. 경우에 따라서는, 앞서 설명한 함수들 둘 이상을 조합하여 공개 키에 적용시킴으로써 식별 정보가 결정될 수도 있다. 또한, 함수에 공개 키 전체가 입력될 수도 있으나, 실시예에 따라서는 공개 키의 일부만 함수에 입력되거나, 공개 키에 다른 특정 값을 추가한 결과가 함수에 입력될 수도 있다.
또한, 식별 정보가 공개 키 또는 공개 키에 함수를 적용시킨 값에 기반하여 결정될 때, 부가 정보가 추가적으로 고려될 수 있다. 예를 들어, 부가 정보는 하드웨어 장치의 생산자 식별 정보, 제품 식별 정보, 생산일자 및 생산장소 중 적어도 하나에 대한 정보를 포함할 수 있다. 다시 말해, 공개 키 또는 공개 키에 함수를 적용시킨 값과 같은 하드웨어 장치마다 상이한 개별 정보뿐만 아니라 생산자 식별 정보, 제품 식별 정보, 생산일자 및 생산장소에 대한 정보와 같이 함께 생성된 복수의 하드웨어 장치들이 공통적으로 가지는 고정 정보도 식별 정보 생성에 이용될 수 있다.
도 2로 돌아와서, 생성된 ID는 발급 장치에 의해 데이터베이스에 수집 및 저장되어 식별 정보 리스트로 관리될 수 있다. 식별 정보 리스트는 추후 하드웨어 장치의 무결성을 인증하는 인증 서버에 의해 활용될 수 있다.
또한, 생성된 ID는 하드웨어 장치로 전송되어 저장될 수 있다.
도 4는 일실시예에 따른 식별 정보에 기반하여 하드웨어 장치를 인증하는 과정을 설명하기 위한 도면이다.
도 4를 참조하면, 일실시예에 따른 전자 장치에 구비된 프로세서의 제어를 통해 하드웨어 장치를 인증하는 방법이 도시된다.
하드웨어 장치가 생산되어 사용자에게 판매된 경우, 해당 사용자는 하드웨어 장치에 기반한 서비스 이용을 위해 해당 서비스를 제공하는 서비스 서버에 접속할 수 있다. 서비스 서버는 정식 생산시설에서 실제 생산된 하드웨어 장치를 구매한 사용자에게만 서비스를 제공하기 위하여, 접속된 하드웨어 장치의 무결성 또는 유효성을 검증할 수 있다. 이때, 앞서 설명한 방식으로 생성된 식별 정보가 이용될 수 있다. 이후에 상세히 설명하겠으나, 이러한 무결성 또는 유효성 검증에 CA 서버에서 발급된 인증서가 요구되지 않아 상대적으로 적은 비용과 단순한 검증 방식으로도 손쉽게 검증이 수행될 수 있다. 본 명세서에서 하드웨어 장치의 무결성이나 유효성을 검증하는 서비스 서버는 설명의 편의를 위해 인증 서버로도 지칭될 수 있다.
만약 하드웨어 장치에 해당하는 칩(예컨대, SoC(System On Chip) 등)이 칩 제조사에서 생산되어 디바이스 제조사로 전달된 경우, 칩 제조사는 전달하는 하드웨어 장치들에 대한 식별 정보 리스트도 함께 디바이스 제조사로 전달함으로써, 디바이스 제조사는 칩의 진위 여부를 식별 정보 리스트를 통해 손쉽게 확인할 수 있다. 또한, 디바이스 제조사는 칩을 이용해 디바이스를 만들어 사용자에게 판매한 후, 해당 사용자가 디바이스를 통해 디바이스 제조사가 운영하는 서버에 접속하면 칩의 식별 정보를 통해 칩의 진위 여부뿐만 아니라 디바이스의 식별 정보를 통해 디바이스의 진위 여부를 용이하게 확인할 수 있고, 무결성이 검증된 칩이 적용된 디바이스나 무결성이 입증된 디바이스에게만 자신의 서비스를 제공할 수 있다.
이하, 하드웨어 장치를 인증하는 방법에 대해 상세히 설명하며, 인증 동작을 수행하는 서비스 서버 또는 인증 서버는 전자 장치로도 지칭될 수 있다.
단계(410)에서, 전자 장치는 인증이 필요한 하드웨어 장치로부터 해당 하드웨어 장치의 식별 정보를 수신한다.
단계(420)에서, 전자 장치는 수신된 식별 정보가 기 등록된 식별 정보인지를 확인한다. 전자 장치는 하드웨어 장치로부터 수신된 식별 정보가 리스트에 기 등록된 식별 정보인지를 확인할 수 있다. 또는, 전자 장치는 하드웨어 장치로부터 수신된 식별 정보가 폐기 리스트에 등록된 식별 정보인지를 확인할 수도 있다. 만약 수신된 식별 정보가 유효 리스트에 기 등록된 식별 정보에 해당하지 않는다면, 전자 장치는 하드웨어 장치의 인증을 거부하고 동작을 종료할 수 있다. 반대로, 수신된 식별 정보가 유효 리스트에 기 등록된 식별 정보에 해당한다면, 단계(430)가 이어서 수행될 수 있다.
단계(430)에서, 전자 장치는 수신된 식별 정보로부터 획득한 공개 키 또는 인증이 필요한 하드웨어 장치로부터 수신한 공개 키를 이용하여 인증이 필요한 하드웨어 장치에 대해 PKI 기반 인증을 수행한다. 이러한 PKI 기반 인증에는 CA 서버에 의해 발급된 인증서가 이용되지 않으므로, CA 서버로부터 인증서를 발급 받는 과정도 요구되지 않는다. 앞서 설명한 공개 키로부터 식별 정보를 결정하는 방식을 반대로 적용하여, 식별 정보로부터 공개 키가 획득될 수도 있다.
만약 식별 정보에 공개 키가 모두 포함되지 않아 식별 정보로부터 온전한 공개 키를 생성하기 어려운 경우라면, 하드웨어 장치로부터 수신된 공개 키에 동일한 방식을 적용하여 식별 정보를 생성하고, 생성된 식별 정보가 단계(410)에서 수신된 식별 정보와 일치하는지 여부로 인증을 수행할 수도 있다. 특히, 해시 알고리즘이 적용된 경우라면 해시 알고리즘 특성에 의해 공개 키의 유효성을 보다 명확하게 확인할 수 있다.
예를 들어, 획득한 공개 키 또는 수신한 공개 키를 이용하여 전자 장치가 생성한 랜덤 값에 대한 PKI 서명을 생성할 수 있는지 여부에 기초하여 PKI 기반 인증이 수행될 수 있다.
또한, 획득한 공개 키에 기반하여 암호화된 데이터를 하드웨어 장치가 복호화할 수 있는지 여부에 기반하여 PKI 기반 인증이 수행될 수 있다. 만약 하드웨어 장치가 유효한 식별 정보를 도용하여 인증을 시도한 경우라면, 해당 하드웨어 장치는 정당한 개인 키를 가지고 있지 않으므로 해당 식별 정보로부터 획득된 공개 키로 암호화된 데이터를 복호화할 수 없다는 특성을 이용한 인증 방법이다.
또한, 획득한 공개 키 또는 수신한 공개 키를 이용하여, PKI 기반 세션 생성이 성공하는지 여부에 기반하여 PKI 기반 인증이 수행될 수 있다.
또한, 획득한 공개 키로, 하드웨어 장치로부터 수신한 서명 문서의 서명을 검증할 수 있는지 여부에 기반하여 PKI 기반 인증이 수행될 수 있다. 만약 하드웨어 장치가 유효한 식별 정보를 도용하여 인증을 시도한 경우라면, 해당 하드웨어 장치는 정당한 개인 키를 가지고 있지 않으므로 정당한 개인 키로 서명한 서명 문서를 생성할 수 없다. 따라서, 하드웨어 장치로부터 수신된 서명 문서의 서명이 획득한 공개 키로 검증할 수 없으며, 이러한 특성을 이용한 인증 방법이다.
도 5는 일실시예에 따른 전자 장치를 설명하기 위한 도면이다.
도 5를 참조하면, 일실시예에 따른 전자 장치(500)는 메모리(510) 및 프로세서(520)를 포함한다. 메모리(510) 및 프로세서(520)는 버스(bus)(530)를 통하여 서로 통신할 수 있다. 도 5에서는 다른 디바이스와 유선 및/또는 무선 네트워크를 통해 통신을 수행하는 통신부가 생략될 수 있다. 전자 장치(500)는 앞서 설명한 하드웨어 장치, 발급 장치, 서비스 서버 또는 인증 서버로 구현될 수 있다.
메모리(510)는 컴퓨터에서 읽을 수 있는 명령어를 포함할 수 있다. 프로세서(520)는 메모리(510)에 저장된 명령어가 프로세서(520)에서 실행됨에 따라 앞서 언급된 동작들을 수행할 수 있다. 메모리(510)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.
프로세서(520)는 명령어들, 혹은 프로그램들을 실행하거나, 전자 장치(500)를 제어하는 장치로서, 예를 들어, CPU(Central Processing Unit) 및 GPU(Graphic Processing Unit) 등을 포함할 수 있다.
전자 장치(500)가 하드웨어 장치 또는 발급 장치로 구현되는 경우에, 프로세서(520)는 하드웨어 장치의 개인 키로부터 생성된 하드웨어 장치의 공개 키를 이용하여, 하드웨어 장치의 인증에 활용되는 식별 정보를 결정하고, 식별 정보를 관리한다.
전자 장치(500)가 서비스 서버 또는 인증 서버로 구현되는 경우에, 프로세서(520)는 인증이 필요한 하드웨어 장치로부터 해당 하드웨어 장치의 식별 정보를 수신하고, 수신된 식별 정보가 기 등록된 식별 정보인지를 확인하며, 수신된 식별 정보가 기 등록된 식별 정보인 경우에 응답하여, CA 서버에 의해 발급된 인증서 없이 수신된 식별 정보로부터 획득한 공개 키 또는 인증이 필요한 하드웨어 장치로부터 수신한 공개 키를 이용하여 인증이 필요한 하드웨어 장치에 대해 PKI 기반 인증을 수행한다.
실시예들은, 기존의 칩, 모듈, 디바이스에 인증, 추적 등의 목적으로 보안이 필요한 경우 CA 서버로부터 인증서를 발급 받아 사용하는 불편함을 해소하기 위해 ID를 공개 키에 기반하여 생성함으로써, 칩, 모듈, 디바이스의 유효성을 증명하는데 비용이나 노력을 효과적으로 감소시킬 수 있다. 특히, 인증서를 발급 받아 사용하는 기존 시스템에서도 관리 목적으로 ID를 추출하여 저장하는 경우라면 인증서 발급 과정만 생략한 채 본 명세서에서 설명한 것을 그대로 적용할 수 있다.
그 밖에, 전자 장치(500)에 관해서는 상술된 동작을 처리할 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있으며 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
위에서 설명한 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 또는 복수의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 이를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Claims (20)
- 하드웨어 장치의 개인 키로부터 생성된 상기 하드웨어 장치의 공개 키를 이용하여, 상기 하드웨어 장치의 인증에 활용되는 식별 정보를 결정하는 단계;
상기 식별 정보를 관리하는 단계;
인증이 필요한 하드웨어 장치로부터 수신된 해당 하드웨어 장치의 식별 정보가 기 등록된 식별 정보인지를 확인하는 단계;
상기 수신된 식별 정보가 상기 기 등록된 식별 정보인 경우에 응답하여, CA 서버에 의해 발급된 인증서와 관계없이, 상기 수신된 식별 정보로부터 획득한 공개 키 또는 상기 인증이 필요한 하드웨어 장치로부터 수신한 공개 키를 이용하여 상기 인증이 필요한 하드웨어 장치에 대해 PKI 기반 인증을 수행하는 단계; 및
상기 수신된 식별 정보가 상기 기 등록된 식별 정보에 해당되지 않는 경우에 응답하여, 상기 하드웨어 장치의 인증을 거부하는 단계
를 포함하는
전자 장치의 동작 방법.
- 제1항에 있어서,
상기 식별 정보를 결정하는 단계는
상기 공개 키 또는 상기 공개 키에 미리 정해진 함수를 적용하여 얻어진 값에 기초하여 상기 식별 정보를 결정하는,
전자 장치의 동작 방법.
- 제2항에 있어서,
상기 함수는
상기 공개 키로부터 미리 정해진 길이의 데이터를 결정하는 암호화 해시 알고리즘(cryptographic hash algorithm), 상기 공개 키를 암호화하는 암호 알고리즘, 상기 공개 키의 일부를 활용하는 함수 또는 이들의 조합에 해당하는,
전자 장치의 동작 방법.
- 제1항에 있어서,
상기 식별 정보를 결정하는 단계는
상기 하드웨어 장치의 생산자 식별 정보, 제품 식별 정보, 생산일자 및 생산장소 중 적어도 하나에 대한 정보를 더 이용하여 상기 식별 정보를 결정하는,
전자 장치의 동작 방법.
- 제1항에 있어서,
상기 하드웨어 장치는
인증 대상이 되는 칩, 모듈, 디바이스 중 어느 하나인,
전자 장치의 동작 방법.
- 삭제
- 삭제
- 제1항에 있어서,
상기 PKI 기반 인증을 수행하는 단계는
상기 획득한 공개 키 또는 상기 수신한 공개 키를 이용하여, 상기 전자 장치가 생성한 랜덤 값에 대한 PKI 서명을 생성할 수 있는지 여부에 기반하여 상기 PKI 기반 인증을 수행하는,
전자 장치의 동작 방법.
- 제1항에 있어서,
상기 PKI 기반 인증을 수행하는 단계는
상기 획득한 공개 키에 기반하여 암호화된 데이터를 상기 인증이 필요한 하드웨어 장치가 복호화할 수 있는지 여부에 기반하여 상기 PKI 기반 인증을 수행하는,
전자 장치의 동작 방법.
- 제1항에 있어서,
상기 PKI 기반 인증을 수행하는 단계는
상기 획득한 공개 키 또는 상기 수신한 공개 키를 이용하여, PKI 기반 세션 생성이 성공하는지 여부에 기반하여 상기 PKI 기반 인증을 수행하는,
전자 장치의 동작 방법.
- 제1항에 있어서,
상기 PKI 기반 인증을 수행하는 단계는
상기 획득한 공개 키로, 상기 인증이 필요한 하드웨어 장치로부터 수신한 서명 문서의 서명을 검증할 수 있는지 여부에 기반하여 상기 PKI 기반 인증을 수행하는,
전자 장치의 동작 방법.
- 제1항에 있어서,
상기 PKI 기반 인증을 수행하는 단계는
상기 수신된 식별 정보로부터 공개 키를 유효하게 생성할 수 없는 경우에 응답하여, 상기 수신한 공개 키로부터 획득한 식별 정보가 상기 수신된 식별 정보에 대응하는지 여부에 기반하여 인증을 수행하는,
전자 장치의 동작 방법.
- 삭제
- 제1항 내지 제5항 및 제8항 내지 제12항 중에서 어느 하나의 항의 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능한 저장 매체.
- 프로세서; 및
상기 프로세서에 의해 실행 가능한 적어도 하나의 명령어를 포함하는 메모리
를 포함하고,
상기 적어도 하나의 명령어가 상기 프로세서에서 실행되면, 상기 프로세서는
하드웨어 장치의 개인 키로부터 생성된 상기 하드웨어 장치의 공개 키를 이용하여, 상기 하드웨어 장치의 인증에 활용되는 식별 정보를 결정하고,
상기 식별 정보를 관리하고,
인증이 필요한 하드웨어 장치로부터 수신된 해당 하드웨어 장치의 식별 정보가 기 등록된 식별 정보인지를 확인하고,
상기 수신된 식별 정보가 상기 기 등록된 식별 정보인 경우에 응답하여, CA 서버에 의해 발급된 인증서와 관계없이, 상기 수신된 식별 정보로부터 획득한 공개 키 또는 상기 인증이 필요한 하드웨어 장치로부터 수신한 공개 키를 이용하여 상기 인증이 필요한 하드웨어 장치에 대해 PKI 기반 인증을 수행하며,
상기 수신된 식별 정보가 상기 기 등록된 식별 정보에 해당되지 않는 경우에 응답하여, 상기 하드웨어 장치의 인증을 거부하는,
전자 장치.
- 제15항에 있어서,
상기 프로세서는
상기 공개 키 또는 상기 공개 키에 미리 정해진 함수를 적용하여 얻어진 값에 기초하여 상기 식별 정보를 결정하는,
전자 장치.
- 제16항에 있어서,
상기 함수는
상기 공개 키로부터 미리 정해진 길이의 데이터를 결정하는 암호화 해시 알고리즘(cryptographic hash algorithm), 상기 공개 키를 암호화하는 암호 알고리즘, 상기 공개 키의 일부를 활용하는 함수 또는 이들의 조합에 해당하는,
전자 장치.
- 제15항에 있어서,
상기 프로세서는
상기 하드웨어 장치의 생산자 식별 정보, 제품 식별 정보, 생산일자 및 생산장소 중 적어도 하나에 대한 정보를 더 이용하여 상기 식별 정보를 결정하는,
전자 장치.
- 제15항에 있어서,
상기 하드웨어 장치는
인증 대상이 되는 칩(chip), 모듈(module), 디바이스 중 어느 하나인,
전자 장치.
- 삭제
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200128757A KR102459592B1 (ko) | 2020-10-06 | 2020-10-06 | 하드웨어 장치의 식별 정보를 생성하고 인증하는 전자 장치 및 이의 동작 방법 |
EP21877818.1A EP4227844A1 (en) | 2020-10-06 | 2021-07-30 | Electronic device for generating and authenticating identification information of hardware device, and operation method thereof |
PCT/KR2021/009962 WO2022075563A1 (ko) | 2020-10-06 | 2021-07-30 | 하드웨어 장치의 식별 정보를 생성하고 인증하는 전자 장치 및 이의 동작 방법 |
US18/029,712 US20230275749A1 (en) | 2020-10-06 | 2021-07-30 | Electronic device for generating and authenticating identification information of hardware device, and operation method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200128757A KR102459592B1 (ko) | 2020-10-06 | 2020-10-06 | 하드웨어 장치의 식별 정보를 생성하고 인증하는 전자 장치 및 이의 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220045743A KR20220045743A (ko) | 2022-04-13 |
KR102459592B1 true KR102459592B1 (ko) | 2022-10-28 |
Family
ID=81125837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200128757A KR102459592B1 (ko) | 2020-10-06 | 2020-10-06 | 하드웨어 장치의 식별 정보를 생성하고 인증하는 전자 장치 및 이의 동작 방법 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230275749A1 (ko) |
EP (1) | EP4227844A1 (ko) |
KR (1) | KR102459592B1 (ko) |
WO (1) | WO2022075563A1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220171840A1 (en) * | 2020-11-27 | 2022-06-02 | EMC IP Holding Company LLC | Hardware System Protection Using Verification of Hardware Digital Identity Values |
US12026535B2 (en) * | 2021-09-27 | 2024-07-02 | UiPath, Inc. | System and computer-implemented method for controlling a robot of a virtual machine |
KR102707080B1 (ko) * | 2023-12-18 | 2024-09-19 | 주식회사 안랩 | 디바이스 식별 장치 및 식별 방법, 관리 시스템 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI479870B (zh) * | 2011-08-16 | 2015-04-01 | Ict Korea Co Ltd | 基於puf透過機器對機器溝通在裝置之間認證的設備與方法 |
US8938792B2 (en) * | 2012-12-28 | 2015-01-20 | Intel Corporation | Device authentication using a physically unclonable functions based key generation system |
KR101599995B1 (ko) * | 2014-12-08 | 2016-03-07 | 고려대학교 산학협력단 | 인증서 없는 비대화형 키 교환 방법 및 시스템 |
KR102444239B1 (ko) * | 2016-01-21 | 2022-09-16 | 삼성전자주식회사 | 보안 칩, 어플리케이션 프로세서, 보안 칩을 포함하는 디바이스 및 그 동작방법 |
KR20190002388A (ko) * | 2018-12-24 | 2019-01-08 | 주식회사 아이씨티케이 홀딩스 | PUF 기반 하드웨어 OTP 제공 장치 및 이를 이용한 2-Factor 인증 방법 |
-
2020
- 2020-10-06 KR KR1020200128757A patent/KR102459592B1/ko active IP Right Grant
-
2021
- 2021-07-30 WO PCT/KR2021/009962 patent/WO2022075563A1/ko unknown
- 2021-07-30 US US18/029,712 patent/US20230275749A1/en active Pending
- 2021-07-30 EP EP21877818.1A patent/EP4227844A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20220045743A (ko) | 2022-04-13 |
US20230275749A1 (en) | 2023-08-31 |
WO2022075563A1 (ko) | 2022-04-14 |
EP4227844A1 (en) | 2023-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7297360B2 (ja) | キー管理方法、装置、システム、コンピュータ機器及びコンピュータプログラム | |
KR102459592B1 (ko) | 하드웨어 장치의 식별 정보를 생성하고 인증하는 전자 장치 및 이의 동작 방법 | |
TWI724683B (zh) | 電腦實施的用於管理用戶金鑰對的方法、用於管理用戶金鑰對的系統以及用於管理用戶金鑰對的裝置 | |
CA2904615C (en) | Method and apparatus for embedding secret information in digital certificates | |
US9064129B2 (en) | Managing data | |
EP3360070B1 (en) | Data processing device | |
US10841087B2 (en) | Security device, system, and security method | |
CN107743067B (zh) | 数字证书的颁发方法、系统、终端以及存储介质 | |
CN108768933B (zh) | 一种区块链平台上自主可监管数字身份认证系统 | |
WO2021141620A1 (en) | Remote grant of access to locked data storage device | |
TW201732669A (zh) | 受控的安全碼鑑認 | |
EP3292495B1 (en) | Cryptographic data | |
KR101690989B1 (ko) | Fido 인증모듈을 이용한 전자서명 방법 | |
WO2014187206A1 (zh) | 一种备份电子签名令牌中私钥的方法和系统 | |
CN110677376A (zh) | 认证方法、相关设备和系统及计算机可读存储介质 | |
US11556665B2 (en) | Unlocking a data storage device | |
US20160335453A1 (en) | Managing Data | |
US20160277182A1 (en) | Communication system and master apparatus | |
US11265152B2 (en) | Enrolment of pre-authorized device | |
US8612771B2 (en) | Verifying authenticity of playback device | |
WO2014187208A1 (zh) | 一种备份电子签名令牌中私钥的方法和系统 | |
KR101868564B1 (ko) | 사용자 본인 확인(identification) 등록과 로컬 인증을 연계한 사용자 인증 장치 및 방법 | |
WO2014187209A1 (zh) | 一种备份电子签名令牌中信息的方法和系统 | |
CN110210189B (zh) | 软件验证方法、软硬件绑定方法及其可编程器件 | |
CN115186286B (zh) | 模型处理方法、装置、设备、可读存储介质及程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |