KR20100020520A - 전자 장치의 공개키 생성 방법 및 전자 장치, 전자 장치 인증 방법 및 컴퓨터 판독가능 매체 - Google Patents

전자 장치의 공개키 생성 방법 및 전자 장치, 전자 장치 인증 방법 및 컴퓨터 판독가능 매체 Download PDF

Info

Publication number
KR20100020520A
KR20100020520A KR1020107000596A KR20107000596A KR20100020520A KR 20100020520 A KR20100020520 A KR 20100020520A KR 1020107000596 A KR1020107000596 A KR 1020107000596A KR 20107000596 A KR20107000596 A KR 20107000596A KR 20100020520 A KR20100020520 A KR 20100020520A
Authority
KR
South Korea
Prior art keywords
public key
electronic device
reference point
generating
unique identifier
Prior art date
Application number
KR1020107000596A
Other languages
English (en)
Other versions
KR101261683B1 (ko
Inventor
헤이케 비 노이만
폴 허브메르
Original Assignee
엔엑스피 비 브이
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엔엑스피 비 브이 filed Critical 엔엑스피 비 브이
Publication of KR20100020520A publication Critical patent/KR20100020520A/ko
Application granted granted Critical
Publication of KR101261683B1 publication Critical patent/KR101261683B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/3013Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the discrete logarithm problem, e.g. ElGamal or Diffie-Hellman systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic 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

Abstract

개인키 및 상기 전자 장치(200)와 관련된 고유 식별자에 기초해서 공개키를 생성하는 단계(103)를 포함하는 전자 장치의 공개키 생성 방법이 제공된다.

Description

전자 장치의 공개키 생성 방법 및 전자 장치{METHOD OF GENERATING A PUBLIC KEY FOR AN ELECTRONIC DEVICE AND ELECTRONIC DEVICE}
본 발명은 공개키 생성 방법에 관한 것이다.
본 발명은 또한 전자 장치, 상세하게는 보안 토큰에 관한 것이다.
또한, 본 발명은 인증 방법에 관한 것이다.
아울러, 본 발명은 프로그램 구성 요소에 관한 것이다.
또한, 본 발명은 컴퓨터-판독 가능 매체에 관한 것이다.
전자 티켓팅, 운송 혹은 디지털 액세스 제어 시스템과 같은 많은 애플리케이션에서, 관련 정보 혹은 보안 정보를 저장하는데 보안 토큰이 사용된다. 종종, 보안은, 부분적으로는, 보안 토큰이 진정한(authentic) 것이라는 사실, 즉 특정 하드웨어가 사용되고 있고, 그 트랜젝션이 PC 혹은 임의의 다른 전자 장치에 의해 시뮬레이션되지 않고 있다는 사실에 의존한다. 특히 운송 애플리케이션의 경우에 티켓의 카피를 방지하는 것은, 매우 제한된 물리적인 환경하에서 특정 종류의 보안 토큰만이 특별한 형태의 시리얼 번호를 제공할 수 있다는 사실에 의존하는 방식으로 구현된다.
일반적으로, FPGA(Field Programmable Gate Array)를 통해서 이들 보안 토큰을 복제하는 것은 그다지 어려운 것은 아니지만, 통상적으로 복제하는데 드는 비용이 공격(attack)을 통해 얻는 이익을 초과한다.
복제 공격에 대한 보안 레벨을 강화시키기 위한 한가지 옵션은, 진정성을 암호화 방식으로 입증하는 것이다. 기존 대칭 키의 기반 구조의 결여 및 키 관리의 복잡성때문에, 비대칭형 프리미티브(primitives)를 이용해서 암호화 방식으로 입증하는 것이 일반적 해법이다. 비대칭형 프리미티브에 기초한 이러한 프로토콜은 이산 대수(discrete logarithm) 문제를 풀기 어려운 수학적 군(mathematical group)에 대해서 구현될 수 있다. 이러한 수학적 군에서, 예컨대, 공개키를 생성하기 위한 알고리즘 혹은 각각의 보안 토큰을 인증하기 위한 알고리즘에서 사용될 수 있는 기준 요소 또는 기준점 g가 선택된다.
본 발명의 목적은 인증 알고리즘을 위한 공개키 및/또는 기준점을 제공하는 대안의 방법을 제공하는 것이 될 수 있다.
위에 정의한 목적을 달성하기 위해서, 독립 청구항에 따르면, 공개키 생성 방법, 전자 장치 상세하게는 보안 토큰, 인증 방법, 프로그램 구성 요소 및 컴퓨터-판독 가능 매체가 제공된다.
본 발명의 예시적인 실시예에 따라서, 전자 장치용 공개키 생성 방법이 제공되고, 이 방법은 전자 장치와 관련된 개인키 및 고유 식별자에 기초해서 공개키를 생성하는 단계를 포함한다.
예시적인 실시예에 따라서, 전자 장치는 메모리를 포함하고, 이 메모리는 본 발명의 예시적인 실시예에 따라서 공개키를 저장하도록 되어 있다. 특히, 공개키는 메모리에 저장될 수 있다.
예시적인 실시예에 따라서, 전자 장치 인증 방법은, 본 발명의 예시적인 실시예에 따라서 공개키를 생성하는 단계와, 전자 장치에 공개키를 저장하는 단계와, 공개키 및 고유 식별자를 다른 전자 장치로 전송하는 단계와, 비대칭형 입증 알고리즘(an asymmetric proof algorithm)을 이용해서 전자 장치를 인증하는 단계를 포함한다. 특히, 전자 장치는 예시적인 실시예에 따른 전자 장치가 될 수 있다.
예시적인 실시예에 따라서, 프로세서에 의해 실행될 때, 공개키 생성 방법을 제어하거나 수행하도록 되어 있는 프로그램 구성 요소가 제공되며, 이 방법은 전자 장치와 관련된 개인키 및 고유 식별자에 기초해서 공개키를 생성하는 단계를 포함한다.
예시적인 실시예에 따라서, 프로세서에 의해 실행될 때, 공개키 생성 방법을 제어하거나 수행하도록 되어 있는 컴퓨터 프로그램이 저장된 컴퓨터-판독 가능 매체가 제공되며, 이 방법은 전자 장치와 관련된 개인키 및 고유 식별자에 기초해서 공개키를 생성하는 단계를 포함한다.
이 출원에서, 용어 '공개키'는, 인증 방법을 위한 키로서, 공개되어 있고, 이 인증 방법에서 엔티티를 인증하는데 사용될 수 있는 키를 특히 가리킬 수 있다. 이러한 공개키는 예컨대, 비대칭형 입증 알고리즘을 위한 기준 요소 즉, 기준점에 기초해서 생성될 수 있다. 또한, 이 공개키의 인증서(certificate)는 신뢰된 단체에 의해 발행될 수 있다.
이 출원에서, 용어 '개인키' 혹은 '비밀키'는, 공개되지 않으며, 인증될 엔티티와 관련된 키를 특히 가리킬 수 있다.
이 출원에서, 용어 '고유 식별자'는, 예컨대, 전자 장치의 식별 번호 혹은 시리얼 번호와 같이, 인증될 엔티티와 관련된 임의의 고유 번호를 특히 가리킬 수 있다.
개인키 및 고유 식별자에 기초해서 공개키를 생성함으로써, 지식의 영지식 증명(Zero-knowledge proof of knowledge)과 같은 통상의 비대칭형 입증 프로토콜에서 알려진 것보다 현저히 짧은 키, 예컨대, 더 적은 비트를, 지식의 영지식 증명 프로토콜의 표준 사용에 비해서 보안 레벨을 거의 유지하면서 이용하는 것이 가능하다. 요약하면, 인증 프로토콜 혹은 알고리즘에서의 모든 계산에서 사용될 수 있는 기준점 또는 기준 요소는, 예컨대 전자 장치와 같은 입증 엔티티의 고유 식별자, 예컨대, 시리얼 번호에 의해서 다양화된다(diversified)고 할 수 있다.
수학적인 관점에서, 이 알고리즘이 주로, 공개키의 계산에서, 수 비트의 비밀키 혹은 개인키 혹은 비밀 지수(exponent)를 전송하는 것에 의해서만 변경되기 때문에, 다양화된 기준점을 사용해서 생성된 이러한 공개키를 사용하는 것은 충분히 믿을 수 있다. 각각의 전자 장치가 서로 다른 기준점을 이용하기 때문에, 공개키를 생성할 때 고유 식별자를 이용하므로, 공격자는 전체 시스템에 대해 일반적인 공격을 감행할 수 없으며, 즉 예컨대 다수의 기준점을 저장하고, 이른바 베이비-스텝-자이언트-스텝(baby-step-giant-step) 알고리즘을 이용해서 통상적으로 사용되는 기준점에 대한 이산 대수 가정(discrete logarithm assumption)을 파괴할 수 없다. 반대로, 공격자는 예컨대, 보안 토큰과 같은, 서로 다른 전자 장치를 서로 다르게 공격하여야 할 수 있다. 따라서, 하나 이상의 토큰을 공격하는 것은, 표준 시스템에서보다 훨씬 더 어려울 수 있다.
또한, 예시적인 실시예에 따른 공개키 생성에 기초한 인증 방법을 이용하는 시스템은, 계산에 필요한 수고가 줄어들고, 전자 장치가 항상 동일하게 다양화된 기준점을 이용할 수 있어서 표준 시스템보다 훨씬 짧은 키 및 난수를 이용할 수 있기 때문에, 성능이 향상될 수 있다. 판독기 측에서 보안 토큰과 같은, 각각의 전자 장치마다 새로운 기준점을 계산할 수 있어야 하지만, 계산에 필요한 수고는 표준 시스템과 실질적으로 같을 수 있다. 구체적으로, 예시적인 실시예에 따른 비대칭형 키는, 다양화된 기준점을 이용해서 표준 비대칭형 키 알고리즘보다 더 적은 키를 이용해서 같은 보안 레벨을 달성할 수 있기 때문에, 예컨대 보안 토큰과 같은 전자 장치에 용이하게 구현될 수 있다.
다음으로, 공개키 생성 방법의 다른 예시적인 실시예가 설명된다. 그러나, 이들 실시예는 또한 전자 장치, 인증 방법, 프로그램 구성 요소 및 컴퓨터-판독 가능 매체에 적용될 수 있다.
또 다른 예시적인 실시예에 따라서, 이 방법은 제 1 기준점을 이용해서, 공개키의 생성을 위한 제 2 기준점을 생성하는 단계를 더 포함한다. 상세하게, 제 2 기준점은 전자 장치와 관련된 고유 식별자에 기초해서 계산되거나 생성될 수 있다. 고유 식별자는 전자 장치의 식별 번호 혹은 시리얼 번호가 될 수 있으며, 이 전자 장치는 예컨대 스마트 카드 혹은 USB 보안 토큰의 형태의 보안 토큰이 될 수 있다.
제 2 기준점의 생성은 제 1 기준점 및 고유 식별자에 기초할 수 있기 때문에, 각각의 전자 장치는 자신의 명백한(unequivocal) 기준점을 생성할 수 있으며, 그 결과, 이러한 공개키 및/또는 기준점을 이용해서 인증 알고리즘에 대한 일반적인 공격에 대한 보안을 강화시킬 수 있다.
이 방법의 또 다른 예시적인 실시예에 따라서, 제 1 기준점은 프라임 필드(prime field) 혹은 타원 곡선 상의 기준점이다. 더 일반적으로, 이산 대수 문제를 풀기 어려운 모든 수학적 군이 사용될 수 있다. 이러한 군을 이용함으로써, 생성된 공개키 혹은 기준점을 이용하는 프로토콜의 보안을 강화할 수 있다.
이 방법의 다른 예시적인 실시예에 따라서, 공개키는 다음 식에 따라서 계산된다.
y=g'χ,
여기서, y는 공개키를 가리키고,
χ는 개인키를 가리키며,
g'는 제 2 기준점을 가리키고, g'=gID에 따라서 계산되며,
여기서, ID는 시리얼 식별 번호를 가리키고,
g는 제 1 기준점을 가리킨다.
다음으로, 전자 장치의 다른 예시적인 실시예가 설명된다. 그러나, 이들 실시예는 공개키 생성 방법, 인증 방법, 프로그램 구성 요소 및 컴퓨터-판독 가능 매체에 적용될 수 있다.
전자 장치의 또 다른 예시적인 실시예에 따르면, 메모리는 고유 식별자 및 공개키의 인증서를 저장하도록 되어 있다. 상세하게는, 고유 식별자 및 인증서가 메모리에 저장될 수 있다. 많은 경우에 전자 장치는 보안 토큰이 될 수 있다.
전자 장치가 보안 토큰인 경우에, 기존의 지수적으로 증가하는 시리얼 번호 기반 구조를 이용할 수 있다. 즉, 모든 트랜젝션에서, 식별을 행하기 위해서 보안 토큰이 그 시리얼 번호를 판독기에 전송하는 것으로 가정할 수 있다. 따라서, 시리얼 번호를 사용하는 것은, 비대칭형 입증 알고리즘에서 사용되는 기준점을 다양화하는 효율적인 방법이 될 수 있다.
다음으로, 인증 방법의 다른 예시적인 실시예가 설명된다. 그러나, 이들 실시예는 공개키 생성 방법, 전자 장치, 프로그램 구성 요소 및 컴퓨터-판독 가능 매체에도 적용될 수 있다.
인증 방법의 또 다른 예시적인 실시예에 따르면, 비대칭형 입증 알고리즘은 지식의 영지식 증명 알고리즘이다. 상세하게는 지식의 영지식 증명 알고리즘은 ElGamal 타입의 암호화 방식이다.
지식의 영지식 증명 알고리즘, 예컨대, ElGamal 타입의 암호화 방식을 이용함으로써, 높은 보안 레벨을 보장할 수 있으며, 이는 이들 알고리즘이 비대칭형 입증의 가장 안전한 분류에 속하기 때문이다.
또 다른 예시적인 실시예에 따라서, 이 인증 방법은 고유 식별자에 기초해서 제 2 기준점을 계산하는 단계를 더 포함한다.
요컨대, 본 발명의 예시적인 측면의 핵심은, 기존의 보안 토큰의 시리얼 번호 기반 구조를 이용해서 시스템 파라미터, 예컨대, 지식의 영지식 증명 알고리즘의 기준점, 개인키 및/또는 공개키를 다양화시키는 것에 있다. 따라서, 예컨대, 표준 ElGamal 타입 알고리즘과 같은 공지된 지식의 영지식 증명 알고리즘을 변경하는 것은, 간단하게 정리하면 보안 토큰의 시리얼 번호를 이용해서 이 ElGamal 타입 알고리즘을 다양화하는 것이다. 더 상세하게는, 프로토콜 혹은 알고리즘에서의 모든 계산에 사용되는 기준점 또는 기준 요소 g가 이 시리얼 번호에 의해 다양화되는 것이다. 따라서, 각각의 보안 토큰마다, 새로운 기준점이 사용될 수 있다.
본 발명의 상술한 측면과 예시적인 실시예 및 다른 측면은 후술되는 본 발명의 실시예로부터 자명하며, 이는 이들 실시예를 참조로 설명될 것이다.
본 발명은 이하 실시예를 참조로 상세하게 후술되겠지만, 본 발명이 이 실시예로 한정되는 것은 아니다.
도 1은 예시적인 실시예에 따른 인증 방법의 흐름도를 개략적으로 도시하는 도면,
도 2는 보안 토큰을 개략적으로 도시하고 있다.
도면은 개략적으로 도시된 것이다. 각각의 도면에서, 유사한 혹은 동일한 구성 요소는 동일한 참조 번호로 표시했다.
이하, 예시적인 실시예에 따른 지식의 영지식 증명 프로토콜에 기초한 인증 방법(100)이 도 1의 흐름도를 참조로 더 상세하게 설명될 것이다.
제 1 단계(101)에서, 제조 업자는 수학적 군 G의 제 1 기준점 g를, 예를 들어 타원 곡선 상에 정의한다. 제 2 단계(102)에서, 시리얼 번호 ID를 가진 각각의 보안 토큰 A마다 개인키 χ가 선택된다. 그 후, g'=gID 및 y=g'χ에 따라서 공개키 y가 계산되며(103), 여기서 ID가 각각의 보안 토큰마다 고유하기 때문에, g'는 각각의 보안 토큰마다 고유한 제 2 기준점을 나타낸다. 이후, 시리얼 번호 ID, 공개키 y 및 y의 인증서가 보안 토큰에 저장된다(104). 이 인증서는 예컨대 보안 토큰의 제조 업자 혹은 임의의 다른 신뢰된 단체에 의해 인증 시스템에 발행될 수 있다.
인증을 위해서, 보안 토큰 A는 자신의 시리얼 번호 ID, 공개키 y 및 인증서를 판독기 B로 전송한다(105). 판독기 B는 인증서를 확인해서(106) 유효한 인증서인 경우에는, B는 후속하는 프로토콜을 위한 기준점으로서 g'=gID를 계산한다(107). 인증서가 유효하지 않은 경우에, 인증 방법은 중단된다(113). 또한, A는 번호 r를 선택하고, g'r을 계산해서, 그 결과를 판독기 B로 전송한다(108). g'r의 결과를 수신한 이후에, B는 첼린지(challenge) c를 무작위로 선택하고, 이 첼린지 c를 보안 토큰 A로 전송한다. 이후에 A는
resp=(r+c·ID·χ) mod n
을 계산해서 resp를 B에 전송하는데(110), 여기서, n은 수학적 군 G의 차수이다. 다음 단계에서, B는 g'resp가 g'r·yc와 같은지 체크함으로써 응답 resp를 확인한다(111). 확인 결과, 같다면, 보안 토큰 A은 진정한 것이다(112). 확인 결과, 같지 않다면, 보안 토큰 A는 진정한 것이 아니다(113).
예시적인 실시예에 따른 알고리즘은, 시리얼 넘버 기반 구조가 존재하면서 강력한 암호화 방식의 인증의 입증이 요구되는 모든 시스템에서 사용될 수 있다. 각각의 보안 토큰마다 고유한 8바이트 시리얼 번호가 마련된 토큰 판독기 시스템을 상정해 보면, 실제 구현은 다음과 같은 단계로 이루어진다.
보안 토큰의 제조 업자는 타원 곡선에 기초해서 암호화 시스템을 정의하는데, 즉, 제조 업자는, 인증서 확인을 위해 타원 곡선의 파라미터, 기준점 g 및 자신의 공개키를 공개한다. 적절한 보안 수준을 갖기 위해서, 160 비트의 파라미터가 선택될 수 있다. 전형적으로 160비트를 이용한 타원 곡선 암호화는 적절한(qualified) 디지털 서명으로서 충분히 양호한 것으로 평가되고 있다. 따라서, 보안 레벨이 너무 높을 필요는 없기 때문에, 160비트보다 짧은 값을 선택하는 것도 가능할 수 있다. 보안 토큰 및 판독기 모두에서, 타원 곡선 상에서의 포인트 승산을 수행하기 위한 알고리즘이 구현될 수 있다.
제조 업자는, 각각의 보안 토큰마다 UID(고유 식별자:Unique Identification), 비밀키 y를 생성하고, 공개키 y=gUID 를 계산하거나 생성하며, y에 대한 인증서를 발행, 즉 제조 업자가 자신이 갖고 있는 개인키를 가지고 y에 서명할 수 있다. UID가 8바이트이고, 160비트의 매우 높은 보안 레벨이라고 가정하면, 비밀키는 96비트를 가질 수 있고, 대응하는 키는 160비트를 가질 수 있다.
엔티티는 보안 토큰의 진정성(originality)에 대한 입증을 원할 때마다, 도 1에 도시된 흐름도를 참조로 설명되는 프로토콜을 수행한다. 보안 토큰이 테스트에 합격하면, 이 보안 토큰은 오리지날인 것이고, 테스트에 실패하면 오리지날이 아닌 것이다. 모든 첼린지 c에 적절하게 응답할 수 있는 공격자는 개인 지수를 '알고 있는' 것이므로, 이 프로토콜은 정확한 것이다.
도 2는 보안 토큰을 개략적으로 도시하고 있다. 이러한 보안 토큰은 스마트 카드 혹은 USB 보안 토큰이 될 수 있다. 상세하게, 도 2는 USB 보안 토큰(200)을 개략적으로 도시하고 있다. USB 보안 토큰(200)은 판독 장치의 USB 포트에 꽂을 수 있게 되어 있는 인터페이스부(201) 및 USB 보안 토큰(200)의 일부인 집적 회로의 케이스를 이루는 바디(202)를 포함한다. 상세하게, 메모리(203)가 도 2에 개략적으로 도시되어 있으며, 이 메모리(203)에는 개인키, 인증 알고리즘용 기준점, 공개키, 공개키의 인증서, 시리얼 번호 UID 및 다른 데이터가 저장될 수 있다.
마지막으로, 상술한 실시예는 본 발명을 한정하는 것이 아니라 예시하는 것으로, 당업자라면 첨부된 청구의 범위에 정의된 본 발명의 범주를 벗어남 없이도 많은 다른 실시예를 설계할 수 있을 것이라는 점을 유의하여야 한다. 청구의 범위에서, 괄호 안에 표시된 참조 번호가 청구항을 한정하는 것으로 해석되어서는 안 된다. 용어 '포함한다' 및 그 파생어는, 어떤 청구항이나 상세한 설명 전체에 명시된 구성 요소 혹은 단계 이외의 구성 요소나 단계가 존재한다는 것을 배제하지 않는다. 구성 요소가 단수 형태인 경우에도 이러한 구성 요소가 복수 존재하는 것을 배제하지 않고, 그 반대도 마찬가지다. 다수의 수단을 열거한 장치 청구항에서, 다수의 이러한 수단들은 소프트웨어 혹은 하드웨어 중 하나의 동일한 아이템에 의해서 실시될 수 있다. 서로 다른 종속 청구항에서 단지 특정 수단이 인용되었다고 해서, 이들 수단의 조합이 유용하게 이용될 수 없다는 것을 나타내는 것은 아니다.

Claims (15)

  1. 전자 장치(200)의 공개키를 생성하는 방법으로서,
    상기 전자 장치(200)와 관련된 고유 식별자 및 개인키에 기초해서 공개키를 생성하는 단계(103)를 포함하는
    전자 장치의 공개키 생성 방법.
  2. 제 1 항에 있어서,
    제 1 기준점(a primary base point)을 이용해서, 상기 공개키를 생성하기 위한 제 2 기준점을 생성하는 단계를 더 포함하는
    전자 장치의 공개키 생성 방법.
  3. 제 1 항에 있어서,
    상기 제 2 기준점은 상기 전자 장치(200)와 관련된 상기 고유 식별자에 기초해서 계산되는 전자 장치의 공개키 생성 방법.
  4. 제 3 항에 있어서,
    상기 제 1 기준점은 프라임 필드(a prime field) 혹은 타원 곡선 상의 기준점인 전자 장치의 공개키 생성 방법.
  5. 제 1 항에 있어서,
    상기 전자 장치(200)의 상기 고유 식별자는 시리얼 식별 번호인 전자 장치의 공개키 생성 방법.
  6. 제 5 항에 있어서,
    상기 공개키는 다음 식에 따라서 계산되고,
    y=g'χ,
    여기서, y는 공개키를 가리키고,
    χ는 개인키를 가리키며,
    g'는 제 2 기준점을 가리키고, g'=gID에 따라서 계산되며,
    여기서, ID는 시리얼 식별 번호를 가리키고,
    g는 제 1 기준점을 가리키는
    전자 장치의 공개키 생성 방법.
  7. 제 1 항에 따른 공개키를 저장하도록 구성된 메모리(203)를 포함하는 전자 장치(200).
  8. 제 7 항에 있어서,
    상기 메모리(203)는 자신의 고유 식별자 및 상기 공개키의 인증서를 더 저장하는 전자 장치.
  9. 제 7 항에 있어서,
    상기 전자 장치(200)는 보안 토큰인 전자 장치.
  10. 전자 장치(200)를 인증하는(100) 방법에 있어서,
    제 1 항에 따라 공개키를 생성하는 단계(103)와,
    상기 전자 장치(200)에 상기 공개키를 저장하는 단계(104)와.
    상기 공개키 및 고유 식별자를 다른 전자 장치에 전송하는 단계(105)와,
    비대칭형 입증 알고리즘(an asymmetric proof algorithm)을 이용해서 상기 전자 장치를 인증하는 단계
    를 포함하는 전자 장치 인증 방법.
  11. 제 10 항에 있어서,
    상기 비대칭형 입증 알고리즘은 지식의 영지식 증명(Zero-knowledge proof of knowledge) 알고리즘인 전자 장치 인증 방법.
  12. 제 11 항에 있어서,
    상기 지식의 영지식 증명 알고리즘은 ElGamal 타입의 암호화 방식인 전자 장치 인증 방법.
  13. 제 10 항에 있어서,
    상기 고유 식별자에 기초해서 제 2 기준점을 계산하는 단계를 더 포함하는 전자 장치 인증 방법.
  14. 프로세서에 의해 실행될 때, 제 1 항에 따른 공개키 생성 방법을 제어하거나 수행하도록 되어 있는 프로그램 구성요소.
  15. 프로세서에 의해 실행될 때, 제 1 항에 따른 공개키 생성 방법을 제어하거나 수행하도록 되어 있는 프로그램 구성요소가 저장된 컴퓨터-판독 가능 매체.
KR1020107000596A 2007-06-11 2008-04-28 전자 장치의 공개키 생성 방법 및 전자 장치, 전자 장치 인증 방법 및 컴퓨터 판독가능 매체 KR101261683B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP07109971 2007-06-11
EP07109971.7 2007-06-11

Publications (2)

Publication Number Publication Date
KR20100020520A true KR20100020520A (ko) 2010-02-22
KR101261683B1 KR101261683B1 (ko) 2013-05-06

Family

ID=39935024

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107000596A KR101261683B1 (ko) 2007-06-11 2008-04-28 전자 장치의 공개키 생성 방법 및 전자 장치, 전자 장치 인증 방법 및 컴퓨터 판독가능 매체

Country Status (8)

Country Link
US (2) US8958563B2 (ko)
EP (1) EP2158719B1 (ko)
JP (1) JP5178826B2 (ko)
KR (1) KR101261683B1 (ko)
CN (1) CN101682508A (ko)
BR (1) BRPI0811913B1 (ko)
MX (1) MX2009012432A (ko)
WO (1) WO2008152532A2 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008152532A2 (en) * 2007-06-11 2008-12-18 Nxp B.V. Method of generating a public key for an electronic device and electronic device
DE102009027682A1 (de) * 2009-07-14 2011-01-20 Bundesdruckerei Gmbh Verfahren zur Erzeugung eines Soft-Tokens
CN103119599B (zh) 2010-09-17 2016-03-23 塞尔蒂卡姆公司 用于管理认证设备生命周期的机制
US9935768B2 (en) 2012-08-06 2018-04-03 Samsung Electronics Co., Ltd. Processors including key management circuits and methods of operating key management circuits
EP2955872B1 (en) * 2014-06-12 2016-10-12 Nxp B.V. Method for configuring a secure element, key derivation program, computer program product and configurable secure element
US11070380B2 (en) 2015-10-02 2021-07-20 Samsung Electronics Co., Ltd. Authentication apparatus based on public key cryptosystem, mobile device having the same and authentication method
JP6928218B2 (ja) * 2015-12-25 2021-09-01 三菱マテリアル株式会社 表面被覆立方晶窒化ホウ素焼結体工具
US10237063B2 (en) * 2016-12-13 2019-03-19 Nxp B.V. Distributed cryptographic key insertion and key delivery
US11641563B2 (en) * 2018-09-28 2023-05-02 Apple Inc. System and method for locating wireless accessories
US11889302B2 (en) 2020-08-28 2024-01-30 Apple Inc. Maintenance of wireless devices
US11849043B2 (en) * 2020-11-13 2023-12-19 Sony Group Corporation Zero-knowledge authentication based on device information

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6005943A (en) * 1996-10-29 1999-12-21 Lucent Technologies Inc. Electronic identifiers for network terminal devices
EP0856968A3 (en) * 1997-01-24 2000-12-06 Nec Corporation Encryption key processing system to be incorporated into data recovery system or key setting system for generating encryption key
DE69724235T2 (de) 1997-05-28 2004-02-26 Siemens Ag Computersystem und Verfahren zum Schutz von Software
EP0936812A1 (en) * 1998-02-13 1999-08-18 CANAL+ Société Anonyme Method and apparatus for recording of encrypted digital data
JP2001320356A (ja) * 2000-02-29 2001-11-16 Sony Corp 公開鍵系暗号を使用したデータ通信システムおよびデータ通信システム構築方法
CA2369540C (en) * 2001-12-31 2013-10-01 Certicom Corp. Method and apparatus for computing a shared secret key
US20030221102A1 (en) * 2002-05-24 2003-11-27 Jakobsson Bjorn Markus Method and apparatus for performing multi-server threshold password-authenticated key exchange
US20050160259A1 (en) * 2003-03-31 2005-07-21 Masaaki Ogura Digital certificate management system, apparatus and software program
JP2005268931A (ja) * 2004-03-16 2005-09-29 Matsushita Electric Ind Co Ltd 情報セキュリティ装置及び情報セキュリティシステム
CN1773905B (zh) 2004-11-10 2010-08-18 日电(中国)有限公司 在安全通信系统中生成匿名公钥的方法、设备和系统
US20060215837A1 (en) * 2004-12-18 2006-09-28 Hewlett-Packard Development Company, L.P. Method and apparatus for generating an identifier-based public/private key pair
DE602005010039D1 (de) * 2004-12-23 2008-11-13 Hewlett Packard Development Co Verbesserungen in der Anwendung von bilinearen Abbildungen bei kryptographischen Anwendungen
US20060156013A1 (en) * 2005-01-07 2006-07-13 Beeson Curtis L Digital signature software using ephemeral private key and system
US7869593B2 (en) * 2005-01-07 2011-01-11 First Data Corporation Software for providing based on shared knowledge public keys having same private key
US7940927B2 (en) * 2005-04-27 2011-05-10 Panasonic Corporation Information security device and elliptic curve operating device
US7596812B2 (en) * 2005-06-14 2009-09-29 Motorola, Inc. System and method for protected data transfer
CN101213786A (zh) * 2005-07-07 2008-07-02 皇家飞利浦电子股份有限公司 检验对象真伪的方法、设备和系统
US8645712B1 (en) * 2005-10-27 2014-02-04 Altera Corporation Electronic circuit design copy protection
US7613915B2 (en) * 2006-11-09 2009-11-03 BroadOn Communications Corp Method for programming on-chip non-volatile memory in a secure processor, and a device so programmed
WO2008152532A2 (en) * 2007-06-11 2008-12-18 Nxp B.V. Method of generating a public key for an electronic device and electronic device

Also Published As

Publication number Publication date
CN101682508A (zh) 2010-03-24
BRPI0811913B1 (pt) 2020-07-07
US8958563B2 (en) 2015-02-17
WO2008152532A3 (en) 2009-02-05
US9832018B2 (en) 2017-11-28
EP2158719A2 (en) 2010-03-03
JP2010529514A (ja) 2010-08-26
EP2158719B1 (en) 2016-08-03
KR101261683B1 (ko) 2013-05-06
WO2008152532A2 (en) 2008-12-18
BRPI0811913A2 (pt) 2014-11-18
MX2009012432A (es) 2010-02-24
US20100172503A1 (en) 2010-07-08
JP5178826B2 (ja) 2013-04-10
US20150163059A1 (en) 2015-06-11

Similar Documents

Publication Publication Date Title
KR101261683B1 (ko) 전자 장치의 공개키 생성 방법 및 전자 장치, 전자 장치 인증 방법 및 컴퓨터 판독가능 매체
US8874900B2 (en) Direct anonymous attestation scheme with outsourcing capability
JP4635009B2 (ja) 通信における証明された秘密値の使用
US11070542B2 (en) Systems and methods for certificate chain validation of secure elements
JP5710075B2 (ja) 証明書の検証
CN105262595B (zh) 用于设备和数据认证的系统和方法
US9882890B2 (en) Reissue of cryptographic credentials
US20080307223A1 (en) Apparatus and method for issuer based revocation of direct proof and direct anonymous attestation
US20100153731A1 (en) Lightweight Authentication Method, System, and Key Exchange Protocol For Low-Cost Electronic Devices
AU2008261152A1 (en) Privacy-Protected Biometric Tokens
CN109918888B (zh) 基于公钥池的抗量子证书颁发方法及颁发系统
KR101004829B1 (ko) 이선형 맵들로부터의 직접적인 익명의 증명을 위한 장치 및방법
US11101989B2 (en) Trusted ring
US20100153450A1 (en) System and method for authentication using a shared table and sorting exponentiation
US7083089B2 (en) Off-line PIN verification using identity-based signatures
KR101371054B1 (ko) 일회용 비밀번호와 서명 패스워드를 이용한 비대칭키 전자 서명 및 인증 방법
CN111125782B (zh) 一种不可克隆芯片id的验证方法及系统
Kusuma et al. An authenticated University file system using EdDSA
CN110838918B (zh) 基于公钥池和签名偏移量的抗量子证书颁发方法及系统
CN1192546C (zh) 一种基于公钥证书的身份认证方法

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20111118

Effective date: 20130123

GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160411

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190401

Year of fee payment: 7