KR102503366B1 - 전자 회로에 고유한 값을 생성하는 방법, 이 값을 생성하는 전자 회로 및 이 값을 사용하는 방법 - Google Patents

전자 회로에 고유한 값을 생성하는 방법, 이 값을 생성하는 전자 회로 및 이 값을 사용하는 방법 Download PDF

Info

Publication number
KR102503366B1
KR102503366B1 KR1020177033900A KR20177033900A KR102503366B1 KR 102503366 B1 KR102503366 B1 KR 102503366B1 KR 1020177033900 A KR1020177033900 A KR 1020177033900A KR 20177033900 A KR20177033900 A KR 20177033900A KR 102503366 B1 KR102503366 B1 KR 102503366B1
Authority
KR
South Korea
Prior art keywords
value
electronic circuit
values
components
component
Prior art date
Application number
KR1020177033900A
Other languages
English (en)
Other versions
KR20180012761A (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 KR20180012761A publication Critical patent/KR20180012761A/ko
Application granted granted Critical
Publication of KR102503366B1 publication Critical patent/KR102503366B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/84Generating pulses having a predetermined statistical distribution of a parameter, e.g. random pulse generators
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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/3271Cryptographic 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/3278Cryptographic 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]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Complex Calculations (AREA)

Abstract

전자 회로(10)의 컴포넌트(11)에 대해서 실행되는 물리량의 측정을 통해서 전자 회로(10)에 고유한 값(19)을 생성하는 방법으로서, 이 방법은 컴포넌트에 대해서 실행되는 일련의 측정으로부터 유도된 적어도 하나의 값(V)을 계산해서 각각의 컴포넌트(11)에 대해 연관시키고, 컴포넌트의 불변의 쌍들의 집합을 형성하며, 이 집합에서, 쌍들의 각각 쌍의 컴포넌트와 연관된 값(V)이 적어도 셋포인트 값에 의해 서로 분리되도록, 쌍들(16)을 선택하며, 각각의 선택된 쌍(16)의 컴포넌트(11)와 연관된 값(V)의 비교 결과에 기초해서 전자 회로(10)에 고유한 상기 값(19)을 생성하되, 값(V)을 계산하는 것은, 일련의 측정으로부터 통계적인 값을 결정하는 것과, 이 값(V)을 통계적인 값으로서 혹은 통계적인 값으로부터 계산된 불확실성 범위로서 정의함으로써 행해진다.

Description

전자 회로에 고유한 값을 생성하는 방법, 이 값을 생성하는 전자 회로 및 이 값을 사용하는 방법
본 개시는, 예컨대 칩 혹은 칩셋과 같은 전자 회로에 고유한 값을 생성할 수 있는 방법에 관한 것이다. 상세하게 이 방법은 물리적 복제 방지 기능(physically unclonable function)을 사용하는 것, 즉 재생성(reproduced), 카피 혹은 복제가 불가능한 기능을 사용하는 것을 포함한다. 본 개시는 또한 이러한 방법을 구현하기 위한 전자 회로, 및 이 회로에 고유한 값을 사용하는 방법에 관한 것이다.
현재, 집적 회로에 포함되거나 혹은 이와 연관된 전자 컴포넌트에 물리적으로 접속된 고유 식별자 소스로서 물리적 복제 방지 기능(줄여서 PUF라 함)이 학계 및 산업계에서 연구되고 있다. 그 주요한 사상은, 이들 컴포넌트의 제조 공정의 편차(variation)를 사용하는 것으로 이로써 전자 회로(칩 혹은 칩셋과 같은)를 자체의 본질적인 특성에 기인해서 고유하게 하고자 하는 것이다.
이 기술은 전자 컴포넌트의 모든 제조 프로세스가 통상적으로 갖고 있는 특성에 기초하고 있다. 이러한 프로세스는 완전할 수는 없으며 일정한 정확도의 마진을 갖고 생산하는 것을 보장하는 정도이므로, 이 마진 내에서, 생상되는 컴포넌트 사이의 약간의 차이를 일으킬 수 있다. 환언하면, 이들 컴포넌트가 동일한 생산 라인에서 만들어지고 동일한 조건하에서 생산되더라도 차이가 존재하며, 이는 본질적으로 이들 컴포넌트를 의도하지 않게 커스터마이징한다. 제조 공정에 허용 오차가 있기 때문에, 이러한 차이를 활용 가능한 정도의 정보로 변환하는데 혼란이 있다. 생산 라인의 마지막에, 정확하게 동일한 물리적인 특성을 가진 컴포넌트가 마련되어 있는 2개의 집적 회로를 획득할 확률이 매우 낮다는 점에서, 이 정보는 거의 고유한 것으로 인정될 수 있다. 나아가 이 정보는 예측이 불가능하고 그 제조 공정에 의한 재생성이 불가능하다는 특성을 갖고 있다. 따라서, 컴포넌트 혹은 전자 컴포넌트의 세트를 다른 것 중에서 식별하는 것을 가능하게 할 수 있다.
물리적 복제 방지 기능은, 이하에서 PUF라고도 하며, 이들 전자 컴포넌트의 하나 이상의 물리적인 파라미터를 정확한 측정을 통해서 결정함으로써 집적 회로의 컴포넌트마다 특유한 랜덤한 편차를 활용하는 기능이다. 따라서, 이러한 PUF 기능을 만들어서 식별자 혹은 특정 값(이하 PUF 값 이라고 함)을 획득하는 것은 용이하지만, 이 기능을 복제해서 이들 값을 취득하는 것은 불가능하거나 혹은 매우 어렵다. 이는 주로, PUF 기능이 기초하고 있는 전자 컴포넌트를 커스터마이즈하는 미세한 차이는 제어할 수 없기 때문에, 실무적인 관점에서, PUF 기능으로부터 나온 PUF 값을 예측 및/또는 재생성하는 것이 불가능하다는 점에 기인하고 있다. 이러한 작은 차이에 기인한 정보는 의사-랜덤 비트 시퀀스로 표현될 수 있다. 따라서 이 정보 혹은 고유 값은 모든 예상되는 비밀의 특성을 갖고 있고, 이는 예컨대, 암호화의 목적으로 바람직하게 사용될 수 있다.
지금까지 고려된 대부분의 응용예는 3개의 주요 카테고리로, 즉 이러한 PUF 기능에 의해 정의된 고유 식별자를 이용해서 식별 가능한 칩을 생산하는 것, 시도(challenge) 및 이에 대한 응답(response)(시도/응답 타입의)을 포함하는 처리를 통해서 칩을 인증하는 것, 및 암호화 키를 생성하는 것으로 그룹화될 수 있다. 현재, 대부분의 응용예는 마지막 카테고리를 가리키며, PUF 값이 보안 메시지 교환에서 암호화 키로서 사용되는 솔루션을 포함하는 것을 목적으로 하고 있다는 점에 주의한다.
이들 칩의 단점은, 이 칩이 만들어내는 PUF 값이 달라질 수 있다는 점이다. 실제로, 이 값은 전자 컴포넌트에 따라서 달라지기 때문에, 기생 노이즈가 없다고 하는 이상적인 이론상의 조건 하에서만 불변인 것으로 정의될 수 있다. 현재 실제로 이 PUF 값은 사용 조건에 따라서 약간씩 변동될 수 있다. 이러한 변동은 전형적으로 전자 컴포넌트의 동작 온도 편차나 혹은 파워 서플라이에서의 약간의 편차가 될 수 있다. 이는 회로 자체(예컨대, 오래된 회로인 경우에)나 혹은 위치된 환경에 의해 발생되는 랜덤 노이즈에 기인할 수 있다. 이러한 불안정성은 잘못된 응답, 즉 특정한 사용 조건하에서는, 생산 라인의 환경과 같은 관리되고 있는 환경에서 얻어지는 응답에 더 이상 대응하지 않는 응답을 포함하고 있다.
이러한 칩으로부터 일정한 PUF 값을 얻을 수 있도록 다양한 솔루션이 공지되어 있다.
첫번째 솔루션은 PUF 기능을 이용해서 값을 생성하고, 이 PUF 값을 칩의 메모리에 저장하는 것이다. 이후, 이 PUF 값이 예컨대, 암호화 키나 식별자로서 사용되어야 할 때마다, 이 메모리에서 취득할 수 있을 것이다. 기밀(confidential)이 될 수 있는 값을 메모리에 저장하면 악의적인 사람에 의해 판독되는 것을 방지하지 못한다.
두번째 솔루션은 PUF 기능으로부터 생성된 값의 정확도를 체크하거나 혹은 적어도 이 값이 에러에 의해서 손상되었는지 여부를 검출하는 것이다. 이를 위해서, PUF 값은 기준 값과 비교될 수 있다. 이 기준 값은 PUF 기능에 의해 가장 자주 생성되는 값이 될 수 있다. 이 비교는 기준 값을 메모리에 저장하는 것을 포함하며, 충분히 보안되어 있다고 볼 수 있는 솔루션이 아니라는 것을 알 수 있을 것이다. PUF 기능에 의해 생성된 값이 적합한 값인지 여부를 검출하기 위한 다른 솔루션은 PUF 값을 특징짓는 상보적인 표시를 사용하는 것이다. 이 표시는 일반적으로, 완전히 신뢰할 수 없는 통신 채널을 통한 특정한 데이터 전송에서 사용된다. 이 표시는 전형적으로 패리티 비트로 이루어질 수 있으며, PUF 값으로부터의 비트의 합이 짝수이면 0이 되고, 홀수이면 1이 된다. 이러한 표시의 첫번째 단점은 PUF 값의 정확도를 보장할 수 없으며 이 값이 정확한 것일 확률의 표시만을 제공할 뿐이라는 점이다. 두번째 단점은 이 표시가 PUF 기능의 값에 기초한 계산에 기인한 것이며, 따라서 이 값에 대한 정보를 제공하고 있다는 점이다. 이 값에 대한 정보의 약간의 일부만 있으면 PUF 기능의 값을 알아내고자 하는 악의적인 사람에게 도움이 될 수 있다. 이러한 첫번째 단점을 방지하기 위해서, 에러의 존재를 검출하고 이를 정정할 수 있는 해밍 코드(Hamming code)와 같은 에러 정정 코드의 사용이 알려져 있다. 그러나, 이러한 코드는 PUF 값에 대한 정보도 제공해서 상술한 두번째 단점과 마찬가지의 단점을 갖고 있다. 나아가, 이러한 정정 코드는 모든 종류의 에러를 정정하는 것은 불가능할 수 있다. 예컨대, 이들 코드 중 일부는 간단한 비트 반전으로 인한 에러만을 정정할 수 있을 뿐이다.
세번째 솔루션은 PUF 값을 획득하고자 할 때마다 연속 라운드에서 수회 연속해서 PUF 값을 생성하고, 이렇게 생성된 PUF 값들을 비교한 후에 가장 자주 나타나는 값을 최종적으로 반환한다. 그러나 이 처리에서는, 각 라운드 동안에 모든 계산된 값 중에서 실제 PUF 값이 명백하게 식별될 수 있을 정도로 에러 확률이 낮아야 한다. 또한, 무시할 수 없을 정도의 횟수의 라운드를 수행하려면 상당한 실행 시간이 필요하며 이는 칩의 계산 리소스를 독점하게 되어서, 칩의 계산 리소스가 특정 애플리케이션에 PUF 값을 이용하기 위한 목적으로 다른 프로세스에 액세스하는 것을 방해한다.
네번째 솔루션은 공개 EP2816757에 개시되어 있는 것으로, PUF 기능을 호스팅하는 전자 회로를 초기 설정 동작 동안에 더 커스터마이즈할 수 있는 셋포인트 값(setpoint value) 데이터에 의해서 PUF 기능을 설정하는 것으로 이루어진다. 이러한 커스터마이즈는 예컨대, 이 기능에 기초를 형성할 컴포넌트를 선택함으로써 얻어진다. 환언하면, 이 셋포인트 값 데이터는, PUF 기능에 유용한 칩의 전자 컴포넌트 중에서, 하나 이상의 물리량의 측정이 수행될 전자 컴포넌트의 서브셋을 선택하는 것을 가능하게 한다. 이 개시 동작은 전형적으로 칩 생산시나 혹은 이후에 칩의 테스트나 개시 기간 동안에 이루어질 수 있다. 이 솔루션의 단점은, 개시, 테스트 혹은 개별 맞춤화(personalization) 기간 동안 칩이 '오픈 상태'에 있어서, 그 물리적인 특성에 대한 액세스를 허용하고, 따라서 생성했다고 추정되는 PUF 값이나 혹은 적어도 이 값의 식별을 가능하게 할 정확한 정보에 대한 액세스를 제공한다는 점이다. 따라서, 심지어 제한된 환경에서도 칩의 임의의 '오픈 상태'는 보안 상의 문제를 유발한다.
EP 2081170는 해시 함수로부터 나온 키의 안정성 및 보안성을 개선하는 보안 장치에 대해서 개시하고 있다. 이 장치는, 물리적인 특성을 사용해서 해시 함수로부터 나온 소정 키를 생성함으로써 공격에 대한 방어를 제공하는 PUF 유닛을 포함한다. 이는 또한 부분 에러 정정 정보를 저장하는 유닛, PUF 정정 정보의 일부를 생성하는 PUF 기능의 정정 유닛 및 몇가지 다른 정정 유닛을 포함한다.
문헌 XP031183294(Edward Suh G 등의 "Physical Unclonable Functions for Device Authentication and Secret Key Generation")에서는, 집적 회로마다 상이한 트랜지스터에 고유한 지연 특성을 이용하는 PUF 기능에 기초한 디자인을 개시하고 있다. 이 문헌은 PUF 기능이 집적 회로의 저비용 인증을 가능하게 하고, 암호화 동작을 위해서 휘발성 보안 키를 생성하는 것을 가능하게 하는 방법에 대해서 개시하고 있다.
본 개시의 목적은 물리적 복제 방지 기능을 이용해서 외부 개입없이 일정한 값을 생성할 수 있는 전자 회로를 제안함으로써 상술한 문제를 적어도 부분적으로 해결하는 것이다. 이러한 회로에서 이 값의 생성을 가능하게 하는 방법은 이 값의 사용의 특정한 방법 및 다른 목적으로도 제안된다.
상술한 전자 회로는 임의의 회로 혹은 회로 부품을 가리킨다. 상세하게, 칩, 칩셋 혹은 칩의 일부가 될 수 있다.
상술한 형용사 '일정한'이란 이 값이 전자 회로에 의해서 변경되지 않고 지속적으로 재생성될 수 있다는 것을 의미한다. 따라서 이 형용사는 생성된 값의 안정성 및 신뢰성을 나타내는 것이다.
이 PUF 기능을 사용하는 목적은 이 값이 전자 회로에 직접적으로, 상세하게는 이 회로의 컴포넌트에 물질적으로 혹은 물리적으로 연관된다는 것을 나타내는 것이다. 'PUF 값'이란 명칭은 이러한 연관성에서 나온 것이다. 상술한 바와 같이 이 값이 자신이 유래되는 전자 회로의 고유 컴포넌트에 따라 달라지기 때문에 단 하나의 카피에만 존재한다는 것을 인증하는 거의 고유한 특성이라는 점에서 바람직하다. 나아가, PUF 기능이 마련된 전자 회로를 지능적으로 설계함으로써, 정확하게 동일한 물리적인 특성을 가진 컴포넌트가 마련된 2개의 집적 회로를 얻을 극히 적은 가능성은 무시할 정도로 낮아진다. 동일한 전자 회로 배치(batch)에 비한 PUF 값의 고유성은 고려되는 전자 회로의 수에 따라서 달라질 뿐만 아니라 PUF 값을 구성하는 비트의 수는 물론 PUF 값을 계산하는데 사용되는 컴포넌트의 수와 같은 다양한 파라미터에 따라서도 달라진다.
일반적인 형태에서, 이 방법은 PUF 값, 즉 물리량의 측정을 통해서 전자 회로에 고유한 값을 생성하는 것으로, 이 측정은 해당 회로의 컴포넌트에 대해서 수행된다.
이 방법은 다음 단계를 포함한다.
- 각각의 컴포넌트에 대해서 실행되는 일련의 측정으로부터 유도된 적어도 하나의 값을 계산해서 각각의 상기 컴포넌트에 대해 연관시키는 단계와,
- 컴포넌트의 불변의 쌍들의 집합을 형성하는 단계와
- 이 집합에서, 이 쌍들의 각각의 쌍의 컴포넌트와 연관된 상기 값이 서로 이격되도록, 즉, 적어도 셋포인트 값에 의해서, 상세하게는 불변의 그리고 바람직하게는 사전 결정된 셋포인트 값에 의해서 분리되거나 혹은 서로 다르게 설정되도록, 쌍들을 선택하는 단계와,
- 각각의 선택된 쌍의 컴포넌트와 연관된 값의 비교 결과 및/또는 데이터(이 데이터 중 적어도 하나는 이들 값으로부터 유도됨)의 비교 결과를 결합시켜서(concatenate) 전자 회로에 고유한 값을 생성하는 단계
를 포함하고, 이를 위해서 결과는 상기 비교 동안에 이 쌍들과 관련된 값이나 데이터와 같이, 불변의 바람직하게는 사전 결정된 순서로 처리된다.
바람직한 실시예에서, 일련의 측정으로부터 유도된 값을 계산하는 것은 통계적인 계산이다. 더 바람직하게는, 이 계산은 일련의 측정으로부터 평균값을 구하는 것을 목적으로 한다. 일련의 측정으로부터 유도된 값은 구해진 평균값이 될 수 있다. 다른 방안으로, 각각의 평균값에 대해서 불확실성(uncertainty) 범위를 계산한 후에, 일련의 측정으로부터 유도된 값을 불확실성 범위가 계산된 것이라고 정의할 수도 있다.
환언하면, 바람직하게는 일련의 측정으로부터 유도된 값의 계산은 예컨대,
- 일련의 측정으로부터 통계적인 계산을 구하는 단계와,
- 일련의 측정으로부터 유도된 값을 이 통계적인 값으로부터 계산된 불확실성 범위로서 정의하는 단계
를 포함할 것이다.
이 통계적인 값은 일련의 측정의 평균값과 같은 평균값이 될 것이다.
집합에서 쌍들을 선택하는 기준은 예컨대, 이 집합의 쌍의 컴포넌트와 연관된 불확실성 범위에서 중첩이 없는 것이 될 수 있다. 이 기준은 선택 동안에 시험된 각 쌍과 연관된 불확실성 범위에 적용된다.
전자 회로에 고유한 PUF 값은 예컨대, 이전에 선택된 각 쌍의 컴포넌트들과 연관된 불확실성 범위들을 비교함으로써 생성될 수 있다. 따라서, 바람직하게는 비교 결과로서 각각의 선택된 쌍으로부터 값 1 혹은 0을 가진 비트가 획득될 수 있다. 서로 충분히 분리되도록 하기 위해서 선택된 값에 대해서 이러한 비교가 수행되고, 또한 비교된 값 혹은 데이터가 불변의 순서로 취해지기 때문에, 이들 비교 결과는 반복되는 횟수에 관계없이 일정하다는 점에서 바람직하다.
또한, 이들 비교 결과가 불변의 순서로 취급되기 때문에, 최종 PUF 값은 일정한 값으로, 즉 어떤 장애에도 무관하게 시간이 흘러도 안정되어 있다. 나아가, 이 값은 바람직하게는 예컨대, 온도 변동이나 공급 전압으로 인한 불시적인 편차에 의존하지 않으며, 기생 노이즈에 의해서 유발되는 불안정성의 영향도 받지 않는다. 결과적으로 이 PUF 값을 생성하는 처리는 바람직하게는 세션 사이에, 특히 전자 회로가 임의의 애플리케이션에서 이 값을 사용하고자 할 때마다 반복될 수 있다. 이러한 특징은, 이 애플리케이션을 향후에 사용하기 위해서, 이 값이 메모리(예컨대, 비휘발성 메모리)에 저장되는 것을 방지할 수 있게 한다. 나아가, 이 값의 재생성 가능성은 이 값을 생성한 전자 회로에 대한 외부 개입에 의존하는 일이 없다.
이 회로는 항상 '닫힘 상태'로 유지될 수 있다는 점에서 바람직하다. PUF 값의 발견을 가능하게 하는 표시를 제공할 수 있는 어떠한 정보도 이 전자 회로로부터 발행되지 않으며, 혹은 바람직하게는 영구적으로 저장되지 않는다. 따라서, 이 회로는 자체 수단에 의해서, 자신에 특정하며 발견이 불가능한 보안 값을 생성할 수 있다.
이하 상세한 설명에서는 다른 이점 및 실시예가 또한 제시될 것이다.
본 개시를, 비한정의 예로서 제공되는 첨부된 개략 도면을 통해서 더욱 이해할 수 있을 것이다.
도 1은 전형적으로는 PUF을 동작시키는 집적 회로인 전자 회로를 나타내는 개략도,
도 2는 전자 회로의 컴포넌트에서 실행되는 측정으로부터 획득되는 통계 데이터의 예를 나타내는 도면,
도 3은 제 1 실시예에 따른 방법의 주요 단계를 나타내고 있다.
전자 회로(10)를 나타내는 도 1을 참조하며, 이는 집적 회로, 칩의 세트, 전자 칩, 전자 회로 혹은 회로 부분을 포함하는 칩이나 임의의 다른 소자의 일부가 될 수 있다. 이 회로(10)는, 물리적 복제 방지 기능, 이른바 PUF 기능을 만드는데 유용한 측정을 제공하는 소스 소자로서 사용되는 복수의 컴포넌트(11)를 포함하는 다수의 전자 소자를 포함한다. 이 도면에 개략적으로 표현된 바와 같이, 이 컴포넌트(11)는 예컨대, 별도의 오실레이터, 상세하게는 링 오실레이터로 이루어질 수 있고, 그 수는 약 수십개, 예컨대 64개 혹은 128개이다. 이 오실레이터(11)는 바람직하게는, 각각의 오실레이터에 특정한 물리적인 값을 결정하는 측정 소자(12)로 각각 연결된다. 이 경우, 측정 소자(12)는 자신이 전용으로 되어 있는 오실레이터의 주파수 f를 정확하게 측정할 수 있다. 다른 방안으로, 다수의 오실레이터에 의해 하나 혹은 한정된 수의 측정 소자(12)가 공유되어서 각각의 오실레이터에 특정한 물리적인 값을 결정할 수도 있다. 이하에서, 기본적으로 컴포넌트(11)의 예로서 오실레이터를 가리키지만, 이 실시예는 한정의 의미가 아니며, (측정 소자(12)에 의해서) 전류, 전압, 전력, 저항, 온도, 시간, 광강도 등과 같은 다른 물리량이 측정될 수 있는 다른 컴포넌트(11)가 사용될 수도 있다. 결과적으로 측정 소자(12)는 전형적으로 하나 이상의 물리량을 측정하도록 장착된 전자 장치가 될 것이다.
첫번째 방식으로서, 전자 회로(10)를 이루는 오실레이터들은 동일한 것이며, 특히 동일한 생산 라인에서 생산되었다면 서로 상이하지 않은 것으로 간주될 수 있다. 그러나, 두번째 방식으로서, 각각의 오실레이터는 자체에 특정한 주파수를 갖고, 오실레이터의 주파수는 정확하게 동일하지 않고 오실레이터마다 약간 변동된다고 볼 수 있을 것이다. 초 서브미크론 기술에서, 예컨대 하나 이상의 동일한 생산 라인에서 동일한 제조 공정을 이용해서 생산된 동일한 타입의 오실레이터 내에서의 약간의 주파수 편차는, 물리적 복제 방지 기능을 만들기에 충분하다. 따라서 이 PUF 기능은, 각각의 오실레이터가 기본적으로 제조하는 동안 나타난 작은 편차의 결과인 고유 주파수를 갖고 있다는 점을 이용할 것이다.
이하, 이 방법을 첨부된 도면을 사용해서 설명한다.
이 방법의 목적 중 하나는, 물리량(예컨대, 이 경우 주파수)의 측정을 통해서 전자 회로(10)에 고유한 값(19)을 생성하는 것이다. 도 1 및 3에 개략적으로 도시된 바와 같이, 이 측정은 회로(10)의 컴포넌트(11)에 대해서 수행된다. 더 상세하게, 예컨대 전자 회로(10)에서 이러한 목적을 위해서 마련된 모든 컴포넌트(11)에 대해서 일련의 측정(f1, f2, ... fi)이 수행될 것이다.
일련의 측정 각각에 기초해서, 사용되는 각각의 컴포넌트(11)마다, 이 컴포넌트에 대해 행해진 측정으로부터 유도된 적어도 하나의 통계적인 값을 계산할 수 있다. 예컨대, 도 2에 도시된 바와 같이, 각각의 일련의 측정(f1, f2, ... fi)의 평균값(
Figure 112022086829663-pct00001
)을 구한다. 나아가, 각각의 평균값에 대해서 불확실성 범위(p)가 구해질 수도 있다. 이 불확실성 범위는 평균값 에러의 산출값에 대응하며, 평균에 대한 표준 편차 혹은 불확실성을 계산하는데 사용되는 것과 같은 통계 공식에 의해서 구해질 수 있다. 행해지는 측정의 횟수가 많을수록 에러가 감소되기 때문에 평균의 산출값은 양호해질 것이다. 그러나, 행해지는 측정의 횟수가 많을수록 이 측정으로부터 통계적인 값을 얻는 시간이 길어지기 때문에, 절충되어야 할 것이다. 도 2에 도시된 바와 같이, 불확실성 범위(p)는 다양한 방식으로 표현될 수 있다는 것을 이해할 것이다. 예컨대, 이는 2개의 극값 a, b에 의해, 예컨대 주파수 f의 스케일의 2개의 주파수에 의해서 구해질 수 있다. 또 다른 예에서, 이 범위(p)는 평균값에 대한 에러 e의 산출값에 의해서 정의될 수 있다(에컨대,
Figure 112022086829663-pct00002
).
측정(f1, f2, ... fi)으로부터 유도된 적어도 하나의 값(V)(예컨대 평균값
Figure 112017116721167-pct00003
및/또는 불확실성 범위(p))은 이들 측정이 행해진 컴포넌트와 연관될 것이다. 이러한 연관은 예컨대, 이 값(V)을 해당 컴포넌트(11)의 식별자와 연관시키고 있는 레코드 혹은 테이블에 의해서 얻어질 수 있다. 이러한 연관은 도 1에 식별자(ID1, ID2, ... IDn)에 의해 표시된 컴포넌트를 각각 가리키는 값(V1, V2, ... Vn)으로서 도시되어 있다. 마이크로프로세서 혹은 전자 컴포넌트의 세트와 같은 계산 유닛(15)은 예컨대, 이들 값(V1, V2, ... Vn)의 계산을 행한 이후에 이 태스크를 수행할 수 있다.
도 3의 좌측에 도시된 첫번째 단계 이후에, 바람직하게는 통계적인 값이 이전에 구해진 모든 컴포넌트로부터, 컴포넌트(11)의 불변의 쌍의 집합(13)(즉 세트)을 형성하는 것을 목적으로 하는 두번째 주요 단계가 있다. 이 집합(13)은 도 3의 중앙 좌측에 도시되어 있으며, 여기서 컴포넌트의 불변의 쌍은 괄호(Vx -Vy) 내의 문자의 쌍으로 표현된다. 따라서, 모든 가능한 조합 혹은 특정한 수의 조합이 구해질 때까지, 이 쌍 중 첫번째가 커플(V1-V2)에 의해 구해지고, 두번째가 커플(V1-V3)에 의해 구해지는 등이 행해진다. 이 예에서, 값(V)의 표시는, 이 값(V)이 유도된 컴포넌트의 식별자 ID를 가리킨다. 또한, 이 예에 의해서, 각각의 쌍의 컴포넌트가 이들 값을 통해서 식별될 수 있다는 것을 이해할 것이다. 이들 쌍을 형성하는 순서는, 실행되는 단계를 예컨대 계산 유닛(15)에 의해서 실행되는 프로그래밍 단계를 통해서 루틴으로 정의될 수 있다. 중요한 것은, 컴포넌트의 불변의 쌍을 얻도록 이 순서는 한번 정해지면 변경이 불가능해야 하고 따라서 PUF 값(19)의 재생성 가능성에 기여해야 한다는 것이다.
다른 방안으로서, 집합(13)의 불변의 쌍은 사전 결정된 컴포넌트의 쌍을 정의하고 있는 테이블 혹은 사전 설립된 리스트를 이용해서 생성될 수 있다. 이러한 리스트 혹은 테이블은, 대응하는 컴포넌트와 연관된 값이 일시적으로 연속해서 저장될 수 있는 참조 위치(예컨대, 컴포넌트 ID3에 할당된 위치 No. 3)를 포함할 수 있다. 예컨대, 이 값은 일단 구해지면 다음 단계에서 집합(13)으로부터 컴포넌트(11)의 쌍을 선택하기 위해서 사용될 때까지 저장될 수 있다.
전자 회로(10)에서 이용 가능한 모든 컴포넌트(11)를 고려하는 대신에, 이들 컴포넌트의 서브셋이 완전하게 저장되어서 변경되지 않는다면, 이들 컴포넌트의 서브셋만을 고려할 수도 있다.
또한, 이 집합(13)에서, 쌍(16)의 각각의 컴포넌트와 연관된 값(V)이 적어도 하나의 선택 기준(14)을 만족하도록 이들 쌍(16)을 선택하는 세번째 주요 단계가 있다. 도 3의 중앙 우측 부분에 도시된 바와 같이, 이 단계에서 적용되는 선택 기준(14)은 예컨대 이들 값(V)이 적어도 하나의 셋포인트 값(Vc)에 의해서 서로 분리되어야 한다고 정의할 수 있다. 예컨대, 각 쌍의 컴포넌트(11)와 연관된 값(V)이 이전에 계산된 불확실성 범위(p)라고 간주하면, 이 선택은 그 불확실성 범위(p)가 중첩되지 않는 쌍을 선택하는 것을 구성할 수 있다. 이 케이스가 예컨대, 도 2에 컴포넌트(1-2)의 쌍으로부터 나온 p1과 p2 사이의 편차 Δ로서 도시되어 있으며, 이는 식별자(ID1, ID2)를 가리킨다. 이 경우에, 이 범위 사이의 최소 거리를 정량화하는 셋포인트 값(Vc)은 널(null) 값이 될 것이다. 이는, 보안 정도를 증가시키고 심지어 2개의 범위의 가장 가까운 극값(도 1의 b1, a2)이 확실히 혼동되지 않도록 하고자 하는 경우에, 제로(zero) 이상이 될 수 있다.
셋포인트 값(Vc)은 도달할 수 있는 값 혹은 도달할 수 있는 임계값(최소값)으로 간주될 수 있다. 이는 사전 결정된 값이 될 수도 있고 혹은 행해지는 측정에 따라서 달라질 수도 있다. 모든 경우에, 이 값은 변경되지 않을 것이라는 점에서 일정하다. 이는 PUF 값(19)의 재생성 가능 특성에 기여하며, 완전한 신뢰를 보증하기 위해서, 동일한 전자 회로(10)에서 이를 생성하는 처리의 마지막마다 항상 동일해야 한다.
다른 방안으로서, 쌍의 컴포넌트와 연관된 평균값(예컨대,
Figure 112022086829663-pct00004
)은 서로 충분히 분리되어 있다면, 중첩되지 않는 불확실성 범위(p1, p2)를 갖는다는 점에서, 불확실성 범위 대신에 이들 평균값을 고려할 수 있다. 이 경우, 평균값(
Figure 112022086829663-pct00005
) 사이의 최소 편차를 정량화하는 셋포인트 값(Vc)은 고려되는 2개의 범위(p1, p2)의 평균과 적어도 동일한 값일 것이며, 바람직하게는 적어도 구해진 모든 불확실성 범위 중에서 2개의 가장 큰 범위의 평균과 같거나 혹은 심지어 구해진 가장 큰 불확실성 범위의 크기 p와 같을 것이다.
도 3에 도시된 바와 같이, 이러한 선택 동작을 수행함으로써, 선택된 쌍(16)이라고 하는 쌍을 얻을 수 있을 것이다. 이들이 선택됨에 따라서 선택된 쌍(16)은 PUF 값(19)를 생성하는데 사용될 때까지 예컨대, 리스트나 테이블에 일시적으로 저장될 수 있다. 이를 위해서, 이들은 예컨대 선택시에 리스트에 연속해서 배치될 수도 있고 혹은 예컨대 불변의 순서를 정의하고 있는 시간 순서(chronological) 식별자와 같은 인덱스를 할당받을 수도 있다. 이는 또한 (비 시간 순서) 인덱스로 표시된 위치에 리스트나 테이블에 위치될 수도 있다.
이해되는 바와 같이, 불변의 쌍의 집합(13)을 성립하는 것은 특정한 처리 순서로부터 달성될 수 있다. 이 처리 순서도 불변일 것이다. 예컨대, 이러한 순서는, 제 1 컴포넌트(11) 및 모든 다른 컴포넌트를 고려해서, 적어도 n개의 컴포넌트가 처리될 때까지 제 2 컴포넌트, 제 3 컴포넌트, 제 4 컴포넌트 등으로 이러한 처리를 연속해서 반복하는 것을 목적으로 한다. 이 선택 단계 즉 상술한 세번째 주요 단계 동안에, 쌍을 이러한 처리 순서로 테스트해서 선택 기준(14)을 만족하는지 알아내며, 적절하다면, 이 쌍이 선택 기준(14)을 만족하는 것일 일단 성립되면 선택된 쌍(16)을 리스트에 연속해서 배치함으로써, 선택된 쌍(16)의 시퀀싱을 자동으로 획득할 수 있다. 나아가, 이 시퀀싱은, 쌍이 선택을 위해서 테스트될 때 따랐던 불변의 처리 순서에 따라서 달라지기 때문에 변경될 수 없다.
따라서, 선택된 쌍(16)은, 이를 형성할 때 연속해서 따랐던 부여된 처리 순서를 통해서 간접적으로 순서가 결정될 수도 있고, 혹은 인덱스나 임의의 참조 수단을 통해서 직접적으로 순서가 결정될 수도 있다.
이 선택 단계 동안 집합(13)의 모든 쌍을 시험하는 것이 바람직한 실시예의 일부가 될 수는 있지만, 반드시 그럴 필요는 없다는 것을 이해할 것이다. 실제로, 선택되는 쌍(16)이 일정 수에 도달할 때까지 이 집합의 여러 쌍을 시험할 수 있다. 그러나, 이 경우 집합(13)의 쌍은 상술한 불변의 처리 순서와 같은 불변의 순서로 시험되어야 하지만, 이 선택 단계 동안에 집합(13)의 모든 쌍 혹은 집합의 불변의 서브셋의 모든 쌍이 시험되는 경우에는 이 순서의 불변의 특성은 필요없다. 역시 중요한 것은, 쌍(16)에 관한 값 혹은 데이터와 관련된 비교로부터 나온 결과가 다음 단계에서 불변의 순서로 처리될 수 있도록, 각각의 선택된 쌍(16)을 식별하거나 혹은 순서 결정(직접적으로 혹은 간접적으로)할 수 있다는 것이다. 이 선택 단계의 수행을 가능하게 하는 모든 실시예는 바람직하게는 계산 유닛(15)에 의해 혹은 다른 전자 유닛(프로세서, 칩셋 등)에 의해 예컨대, 전형적으로 이 유닛에 사전에 프로그래밍될 수 있는 루틴을 판독해서 실행함으로써 구현될 수 있다. 물론 이 루틴을 실행하는 데, 예컨대 일시적인 메모리 혹은 계산 레코드와 같은 다른 저장 장치를 사용할 수 있다.
일단 이 선택 단계가 수행되면, 네번째 주요 단계에서 각각의 선택된 쌍(16)의 컴포넌트(11)와 관련된 값(V)들의 비교 결과로부터 전자 회로에 고유한 값(19)을 생성할 수 있다. 이하 상세하게 설명하는 바와 같이, 이 비교는 이들 값(V)으로부터 유도된 이들 데이터 중 적어도 하나의 데이터와 관련될 수도 있다.
도 3의 우측 부분을 참조하면, 이 비교 단계는 식 테스트 "Vx>Vy"로 표현된다. 각각의 선택된 쌍(16)의 값 혹은 데이터는 괄호 내의 숫자의 쌍으로 표현되며, 여기서 각각의 숫자는 컴포넌트를 상징적으로 나타내고(예컨대, 그 식별자), 컴포넌트와 관련된 값 혹은 이러한 값으로부터 나온 데이터를 포함한다. 따라서, 도 3의 예에서, 첫번째 선택된 쌍(16)은 커플(1-3)이고, 두번째는 커플(2-4)이며, 세번째는 커플(3-n)인 등이다. 이들 쌍의 값들 혹은 데이터들은 도 1에 개략적으로 도시된 바와 같이 비교기(17)에 의해 혹은 복수의 비교기(17)에 의해 비교된다. 각각의 비교기(17)는 수신하는 이 커플의 2개의 값(V) 혹은 데이터 중 어느 것이 예컨대 최대값인지 혹은 최소값인지 결정하는 것을 목적어로 한다("이상" 혹은 "이하"와 같은 다른 관련 연산자를 배제하는 것은 아니다). 응답시에, 비교기(17)는 그 출력단에서 기초 2진값을 생성하며, 즉 쌍(X-Y)의 경우에 값 Vx이 예컨대 값 Vy보다 크면 비트 1을, 반대인 경우에 비트 0을 생성한다. 이들 비교 동안에, 쌍의 데이터 혹은 값 Vx, Vy은 일정한(즉 불변의) 순서로, 바람직하게는 사전 정의된 순서로 처리될 것이라는 점에 주의한다. 이는, 이 비교에 사용되는 연산자가 예컨대 '이상'인 경우에, 식 Vx>Vy의 결과가 물론 반대식 Vy>Vx의 결과와 상이하다는 점에서 나온 것이다.
비교될 수 있는 값 혹은 데이터로서 이하의 가상의 경우가 고려될 수 있다.
첫번째 경우에, 비교되는 값은 불확실성 범위가 될 수 있으며, 상세하게는 도 2에 도시된 바와 같이, 각각의 범위(p1, p2)는 2개의 극값(a1, b1)에 의해서 각각 a2, b2로 정의된다. 같은 쌍의 2개의 범위가 서로 중첩되지 않는다는 것을 확인하기 위해서, 예컨대 제 1 범위(p1)의 2개의 극값(a1, b1) 각각을 제 2 범위(p2)의 2개의 다른 극값(a2, b2) 각각보다 크도록 혹은 작도록 용이하게 제어할 수 있다.
두번째 경우에, (쌍(16)을 선택하는 것을 목적으로 하는 세번째 주요 단계 동안에) 쌍의 컴포넌트와 연관된 평균값에 대한 불확실성 범위가 중첩되지 않거나 혹은 중첩될 수 없다고 이미 판정되어 있기 때문에, 이러한 비교는 상술한 바와 같이 쌍의 컴포넌트와 연관된 평균값의 비교에 관한 것이다.
세번째 경우에, 이 비교는 동시에 불확실성 범위 및 불확실성 범위의 중심에서의 평균값에 관한 것이 될 수 있다. 이는 실제로 해당 범위가 어떻게 표현되는지에 따라서 달라진다. 이 가상의 경우에, 이 범위는 평균값
Figure 112017116721167-pct00006
에 대한 에러 e의 산출에 의해 표현될 것이다(도 2)
네번째 경우에, 이 비교는 데이터에 관한 것이 될 수 있으며, 그 데이터 중 적어도 하나는 쌍의 컴포넌트와 연관된 값(V)로부터 유도된 것이다. 예컨대, 범위 사이의 갭 즉, 해당 쌍의 2개의 범위(예컨대, p1, p2) 사이의 거리 Δ을 고려할 수 있다(도 2 참조). 이 갭 Δ 즉 범위 사이의 거리는 쌍의 컴포넌트와 연관된 값(불확실성 범위)으로부터 유도된 데이터에 대응한다. 이 갭은, 예컨대 최소 갭(Δmin)을 정의하는 값인 제 2 셋포인트 값이 될 수 있는 기준 값과 같은 다른 데이터와 비교될 수 있다. 이 제 2 셋포인트 값의 대안으로서 셋포인트 범위가 고려될 수도 있다. 예컨대, 쌍의 평균값
Figure 112017116721167-pct00007
Figure 112017116721167-pct00008
사이의 갭이, 최소 도달 범위와 같은 셋포인트 범위를 결정하고 있는 2개의 값 사이에 있는지 확인할 수 있다.
선택된 가상의 경우에도 불구하고, 각각의 비교의 결과, 도 1 및 3의 기초 2진값(18)으로 표시된 바와 같은 2진 응답이 항상 생성된다. 이들 비교의 결과에 기초해서, 즉 기초 2진값(18)에 기초해서, 최종 단계에서 PUF 값(19)이 결정될 것이다. PUF 값의 재생성 가능성에 기여하기 위해서는, 이 결과가 불변의 순서로 처리되는 것이 중요하다. 이 불변의 순서는 예컨대, 시간 순서를 준수하거나 혹은 각각의 결과를 스포팅(spot)함으로써 획득할 수 있다. 이러한 스포팅은 예컨대, 시간 순서 리스트에서 이들 결과가 차지하는 위치 즉 포지션에 의해서 획득될 수도 있고, 혹은 이들 포지션을 나타내는 인덱스에 의해서 획득될 수도 있으며(특히 이 리스트가 시간 순서가 아닌 경우), 혹은 마지막으로 2차원 테이블(혹은 그리드)에 결과를 스포팅하는 2개의 좌표의 커플을 통해서 획득될 수도 있다. 불변의 순서에 따라서, 기초 2진값(18)(비교 결과)은 도 1 및 3에 도시된 바와 같은 PUF 값(19)을 형성하도록 서로 연속해서 배치될 것이다. PUF 값(19)을 생성하는 것을 목적으로 하는 이 4번째 주요 단계는 이전 단계를 참조로 상기 설명한 바와 같이 예컨대, 계산 유닛(15)에 의해서나 혹은 임의의 다른 전자 유닛(프로세서, 칩셋, 메모리, 계산 레지스터 등)에 의해서 수행될 수 있다.
상기 설명한 주요 단계의 다양한 실시예는 종종 상기에서 이미 언급한 바와 같이 고려될 수 있다.
바람직한 실시예에 따라서 도 2의 도시를 참조하면, 해당 컴포넌트 각각에 대해서 실행되는 일련의 측정(f1, f2, ... fi)으로부터 유도되는 적어도 하나의 값(통계적인 값(V))을 계산하는 처리는,
- 이 일련의 측정으로부터 평균값
Figure 112017116721167-pct00009
을 구하는 단계와,
- 각각의 평균값
Figure 112017116721167-pct00010
에 대한 불확실성 범위(p)를 계산하는 단계와,
- 일련의 측정으로부터 유도된 값(V)을 계산된 불확실성 범위(p)로서 혹은 구해진 평균값
Figure 112017116721167-pct00011
으로서 정의하는 단계
를 포함할 것이다.
값(V)가 구해진 평균값
Figure 112017116721167-pct00012
으로서 정의되는 경우에 각각의 평균값
Figure 112017116721167-pct00013
에 대한 불확실성 범위(p)를 계산하는 상기 단계는 옵션의 단계가 될 수 있다는 점에 주의한다.
상세하게, 집합(13)의 쌍들 중에서 쌍을 선택하는 것은, 쌍의 컴포넌트와 연관된 불확실성 범위(p)를 비교하고, 이후에 중첩되지 않는 불확실성 범위(p)를 그 컴포넌트가 갖고 있는 쌍을 선택하는 방식으로 쌍 단위로 수행될 것이다. 환언하면, 도 2를 참조하면, 2개의 범위의 중첩이 제로보다 낮은 갭 Δ을 생성한다고 할 때, 불확실성 범위(p)를 그 컴포넌트가 갖고 있는 쌍을 선택하는 단계는 쌍의 불확실성 범위 p1, p2 사이의 갭 Δ을 결정하고, 이 갭 Δ이 제로 이상인지 혹은 제로인지 확인하는 것이다.
일 실시예에 따라서, 각각의 평균값
Figure 112017116721167-pct00014
의 불확실성 범위(p)는 계산 정수로서 주어지는 신뢰도 간격에 기초해서 계산된다. 이 신뢰도 간격은 예컨대, 대략 68% 혹은 95%가 될 수 있다. 통계적으로, 이러한 간격은 평균값
Figure 112017116721167-pct00015
의 정확도를 정량화할 수 있다.
도 1 및 3에 도시된 바와 같이, PUF 값(19)은 기초 2진값(18)의 순차화된 시퀀스로 이루어진다. 상술한 바와 같이, 이들 값은 선택된 쌍(16)의 컴포넌트와 연관된 값(혹은 데이터) 비교의 결과에 대응한다. 이들 값은 불변의 순서로 처리되어서 PUF 값의 일련의 비트의 시퀀싱을 획득한다. 강한 PUF 값(즉, 안전한 값)을 획득하기 위해서, 예컨대, 한정된 수의 1 및 0의 가능한 조합을 모두 테스트함으로써, 이 PUF 값이 포함하고 있는 비트의 수가 이 값을 추측할 수 없을 정도로 충분히 높은 것이 중요하다.
그러나, PUF 값에 너무 많은 수의 비트가 제공되면, 특히 이 값에 대해 의도되는 후속 애플리케이션에 다루는데 불편할 수 있다. 이런 이유에서, PUF 값이 중간값에 해시 함수가 적용된 결과인 실시예가 제안되고, 이 중간값은 상술한 결과의 순서화된 처리에 의해 결정된다. 환언하면, 도 1 및 3에 도시된 바와 같은 결과(기초 2진 값(18))를 시퀀싱한 직후에 PUF 값을 획득하는 대신, 이 시퀀싱에서 중간 값을 획득한다. 이후 이 중간값에 (불변의) 해시 함수를 적용해서 PUF 값(19)을 획득하는데 이는 바람직하게는 중간값보다 길이가 짧을 것이다. 이 PUF 값(19)의 길이는 예컨대 해시 함수에 의해 정의될 수 있다.
본 개시의 목적은 또한 그 전자 회로(10:도 1)에 고유한 값(19)(PUF 값)을 생성하도록 구성된 전자 회로(10)에 관한 것이다. 이 회로는 복수의 컴포넌트(11)를 포함하고, 그 각각에 대해서 혹은 그 일부에 대해서 적어도 하나의 물리량이 측정될 수 있다. 이 물리량은 적어도 하나의 측정 소자(12)에 의해 측정된다. 측정 소자(12)의 수가 컴포넌트(11)의 수와 같다면, 각각의 컴포넌트는 자체 측정 소자(12)를 가질 것이다. 측정 소자(12)의 수가 컴포넌트(11)의 수보다 적다면, 측정 소자(12)는 다수의 컴포넌트(11)에 의해 공유될 것이다. 어떤 경우든, 각각의 컴포넌트(11)로부터 해당 물리량에 대한 일련의 측정값(f1, f2, ... fi)이 획득될 것이다. 이 물리량은 주로 컴포넌트(11)의 타입에 따라 달라질 것이다. 바람직하게는, 이 컴포넌트는 오실레이터 특히 링 오실레이터가 될 것이다. 이 전자 회로(10)는 또한 2개의 값을 비교하도록 되어 있는 적어도 하나의 비교기(17) 및 바람직하게는 전자 회로(10)의 외부 환경과의 정보 교환을 가능하게 하는 인터페이스(20)를 더 포함한다.
이 전자 회로(10)는 상술한 방법의 단계, 상세하게는 이 방법의 임의의 실시예의 단계를 수행하도록 구성된 계산 유닛(15)을 포함한다.
계산 유닛(15)은 기본 버전에서,
- 컴포넌트(11)에 대해서 실행되는 일련의 측정(f1, f2, ... fi)으로부터 유도된 적어도 하나의 값(V)을 계산해서 각각의 컴포넌트(11)에 대해 연관시키고,
- 컴포넌트(11)의 불변의 쌍들의 집합(13)을 형성하며,
- 이 집합(13)에서, 쌍들(16)의 각각의 쌍의 컴포넌트(11)와 연관된 값(V)이 적어도 셋포인트 값(Vc)에 의해 분리되도록, 쌍(16)을 선택하고,
- 각각의 쌍의 컴포넌트(11)와 연관된 값(V)을 비교한 결과 및/또는 이들 값(V)으로부터 그 중 적어도 하나가 유도되는 데이터를 비교한 결과에 기초해서 전자 회로(10)와 고유한 값(19)(PUF 값)을 생성하도록 구성되고,
이들 결과는 상기 비교 동안에 이들 쌍에 대한 상기 값(V) 혹은 데이터와 동일한 불변의 순서로 처리된다.
바람직하게, 일련의 측정으로부터 유도된 값(V)은 예컨대,
- 일련의 측정으로부터 통계적인 값을 구하는 것,
- 일련의 측정으로부터 유도된 값이 통계적인 값인 것으로 혹은 이 통계적인 값으로부터 계산된 불확실성 범위로 정의하는 것
을 목적으로 하며,
이 통계적인 값은 일련의 측정의 평균값과 같은 평균값이 될 것이다.
이 방법의 설명에서 상기 언급된 바와 같이, 측정값(f1, f2, ... fi) 및 다른 계산된 데이터의 일시적인 저장이 하나 혹은 다수의 예컨대, 휘발성 타입의 메모리에 의해 행해질 수 있으며, 이 메모리는 전형적으로 계산 유닛(15)에 통합될 수도 있고 혹은 이에 접속될 수도 있다. 이 계산 유닛은 바람직하게는 수집된 데이터나 혹은 계산된 데이터의 저장이 불필요하게 되면 바로, 이들 메모리를 소거하도록 구성될 수 있다. 예컨대, 이들 데이터의 소거는 이들 데이터가 사용되자마자 행해지도록 프로그래밍되어서 실행될 수 있으며, 따라서 이들이 더 이상 저장되지 않게 한다.
이 방법의 설명에서 또한 언급된 바와 같이, 불변의 쌍의 집합(13)을 형성하는 것은 예컨대 계산 유닛(15)에서 사전 프로그래밍된 루틴으로부터 이루어질 수 있다.
이 방법의 구현예는, 상술한 실시예 중 임의의 것에 따라서, 예컨대 계산 유닛(15)에서 구현되는 알고리즘에 의해서 실행될 수 있다. 이 구현예는 전형적으로 전자 회로(10)의 제조 동안에 수행될 수 있다.
상술한 실시예 중 어느 것에 따라서, 이 방법의 단계 중 적어도 하나의 구현예에 필요한 알고리즘 및/또는 루틴의 세트는, 도 1의 계산 유닛(15) 내의 참조 번호 15'로 도식화되어 있다.
도 1에 도시된 바와 같이, 비교기(17)는, 이 계산 유닛(15)을 확장하는 것으로 나타내고 있는 점선으로 표현된 바와 같 계산 유닛(15)의 외부에 위치될 수도 있고 혹은 그 일부가 될 수도 있다.
전자 회로(10)에서 구현되는 알고리즘 혹은 알고리즘의 세트(15')는 바람직하게는 모든 필수적인 일정한 것(즉, 불변의 데이터)을 갖고 있으므로, 이 회로는 자율적인(autonomous) 것으로, 활용될 수 있는 어떤 초기화 혹은 개별 맞춤화 단계를 사용하지 않아도 된다는 이점을 갖고 있다. 따라서 이 회로(10)는 완전히 닫혀있는 것으로 도시되어 있으며, 자신이 생성하는 PUF 값(19)에 대한 정보의 조각을 제공할 수 있는 정보에 대한 액세스 가능성을 전혀 갖고 있지 않다. 따라서, 완전히 자율적으로 이 PUF 값(19)을 생성할 수 있다. 더 바람직하게, 이 전자 회로(10)는, PUF 값(19) 혹은 이 값에 대한 정보의 조각을 제공할 수 있는 어떠한 정보도 이 회로로부터 밖으로(예컨대, 인터페이스(20)를 통해서) 전송되지 않도록 구성되며, 바람직하게는 결코 영구적으로 저장되지 않는다. 이는, 계산된 데이터 및 측정된 값을 일시적으로 저장하도록 구성된 리소스(메모리, 레지스터, 테이블 혹은 다른 수단)는 바람직하게는 늦어도 전자 회로(10)에 고유한 PUF 값(19)이 처음 사용되자마자 그 컨텐츠가 비워져야(void)된다는 것을 의미한다. 따라서, 그 저장 수단에 저장된 데이터 및 값을 일시적으로 소거하면, 전자 회로(10)로 하여금 이 회로에 구현된 애플리케이션에 의해서 PUF 값을 각각 사용한 이후에 이 PUF 값을 재계산하게 한다.
환언하면, 전자 회로(10)는 다른 장치나 회로 혹은 사람이 알아낼 수 없는 PUF 값(19)을 자체적으로 생성할 수 있다. 오직 이 PUF 값을 생성하는 회로(10)만이 이를 알 수 있다.
또 바람직하게는, 이 전자 회로(10)는 바람직하게는 PUF 값을 영구적으로 저장할 수 있는 어떠한 메모리나 수단을 구비하지 않기 때문에, 이 값이 그 애플리케이션 중 하나에 의해 사용되어야 될 때마다 재계산되어야 한다. 비록 이것이 더 많은 시간과 계산 리소스를 필요로 하지만, 이러한 제한이 보안을 보장한다. 나아가, 이 PUF 값이 계산되는 시점을 제외하면, 전자 회로(10)는 이를 해킹해서 그 비밀 값을 획득하고자 하는 사람에게는 비활성화되어 있어서 사용이 불가능한 것으로 보여지게 된다는 점에서 바람직하다.
이 PUF 값은 전자 회로(10) 밖으로 내보내기될 수 없기 때문에, 전자 회로는 특정한 목적으로 이 PUF 값(19)을 사용하는 것을 목적으로 하는 적어도 하나의 애플리케이션을 수용할 수 있는 애플리케이션 유닛도 포함할 것이다. 이 경우 워드 애플리케이션은, 전자 회로(10)(상세하게는 애플리케이션 유닛(25))가 PUF 값(19)을 포함하는 태스크 혹은 태스크의 세트를 행하는데 직접 사용하는 프로그램(혹은 소프트웨어의 세트)이다.
애플리케이션 유닛(25)은, 비대칭형 암호화 시스템에서 개인 키로서 사용되는 PUF 값으로부터 암호화 공개 키를 생성할 수 있는 암호화 유닛을 구성할 수 있다. 바람직하게는, 이러한 애플리케이션이 마련되어 있는 회로(10)는, 개인 키가 전자 회로(10)에 국한되어서 외부 개입 없이 전자 회로(10)에 의해서만 생성될 수 있기 때문에, 개인 키의 보안을 완전히 보장할 수 있다. 한편, 공개 키는 인터페이스(20)를 통해서 전송될 수 있다. 이러한 암호화 유닛은 메시지를 복호화하는데도 사용될 수 있으며, 이 메시지는 공개 키에 의해 코딩된 것일 것이다. 이들 메시지는 예컨대 인터페이스(20)를 통해서 수신될 수 있다. 비밀 값의 생성 및 사용을 필요로 하는 다른 애플리케이션도 물론 전자 회로(10)의 제조시에 애플리케이션 유닛(25)에서 구현될 수 있다.
바람직하게는, 전자 회로(10)는 단일 형태로 구성되어서, 이 회로를 파괴하지 않고서는 이 컴포넌트를 분리해내는 것이 불가능하다.
본 개시는 또한 전자 회로(10)에 고유한 값(19)을 사용하는 방법에 관한 것이다. 이 사용 방법은 PUF 값(19)을 사용할 때마다 생성할 것을 요구하는 특정한 특징을 갖고 있다. 따라서, 이 방법은 전자 회로(10)에 고유한 값(19)을 사용하기 위해서, 이러한 목적으로 상기 설명한 방법에 의해서, 상세하게는 이 방법의 임의의 실시예에 의해서 PUF 값(19)을 생성하게 하고 있다.
더 상세한 실시예에서, 값(19)은 이를 생성한 전자 회로(10)에 의해서 독점적으로 사용된다는 점에 주의한다. 더 상세하게, 이 값은 예컨대, 전자 회로(10)의 애플리케이션 유닛(25)에서 구현되는 애플리케이션에 의해 사용될 것이다.
나아가, 이 전자 회로(10)에 고유한 값(19)은 바람직하게는 전자 회로(10) 내에서 구현되는 애플리케이션이 이 값(19)을 사용하고자 할 때 생성된다. 환언하면, 이 PUF 값은 이 값의 사용이 실제로 필요하지 않으면 생성되지도 않고 사전에 저장되지도 않는다.
신규한 청구 대상의 개요를 특정한 예시적인 실시예를 참조로 설명했지만, 본 발명의 실시예의 더 넓은 사상 및 범주로부터 벗어남없이 이들 실시예에 대한 다양한 수정 및 변경이 만들어질 수 있다. 예컨대, 그 다양한 실시예 및 특성은 조합 및 매칭될 수도 있고 당업자에 의해서 옵션화될 수도 있다. 개선된 청구 대상의 이러한 실시예는 개별적으로 혹은 통합해서 단지 편의를 위해서 '발명'이라는 용어로 지칭될 수 있으며, 발명이 실제로 하나 이상이 개시되어 있다면, 그 응용의 범주를 스스로 어느 하나의 발명으로 한정하고자 하는 것이 아니다.
본 명세서에 개시된 실시예는 당업자가 개시된 교시를 실시할 수 있도록 충분히 상세하게 설명했다. 다른 실시예가 사용될 수도 있으며 이로부터 유도될 수 있고, 본 개시의 범주로부터 벗어남없이 구조적인 논리적인 대체 및 변경이 있을 수 있다. 따라서, 상세한 설명은 한정의 의미가 아니며, 다양한 실시예의 범주는 오직 첨부된 청구항, 및 이러한 청구항이라고 명명된 등가물 전체에 의해서만 한정된다.

Claims (15)

  1. 전자 회로(10)의 컴포넌트(11)에 대해서 실행되는 물리량의 측정을 통해서 상기 전자 회로(10)에 고유한 값(19)을 생성하는 방법으로서,
    상기 컴포넌트(11)에 대해서 실행되는 일련의 측정(f1, f2, ... fi)으로부터 유도된 적어도 하나의 값(V)을 계산해서 각각의 컴포넌트(11)에 대해 연관시키는 단계와,
    컴포넌트(11)의 사전결정된 쌍들의 집합(13)을 형성하는 단계와,
    상기 집합(13)에서, 상기 쌍들(16)의 각각의 쌍의 컴포넌트(11)와 연관된 상기 값(V)이 적어도 셋포인트 값(Vc)만큼 서로 이격되도록, 상기 쌍들(16)을 선택하는 단계와,
    각각의 선택된 쌍(16)의 상기 컴포넌트들(11)와 연관된 상기 값들(V)의 비교 결과와 데이터들의 비교 결과를 결합시켜서(concatenate), 상기 전자 회로(10)에 고유한 상기 값(19)을 생성하는 단계로서, 상기 데이터들 중 적어도 하나는 상기 값들(V)로부터 유도되는, 단계;
    를 포함하되,
    상기 값(V)을 계산하는 것은,
    상기 일련의 측정(f1, f2, ... fi)으로부터 통계적인 값을 구하는 것과,
    상기 일련의 측정으로부터 유도된 상기 값(V)을 상기 통계적인 값으로서 혹은 상기 통계적인 값으로부터 계산된 불확실성 범위(uncertainty range)로서 정의하는 것
    을 포함하고,
    상기 비교 결과는 상기 비교 동안에 상기 쌍들(16)에 대한 상기 값들(V) 혹은 데이터들과 같이 사전결정된 순서로 처리되는,
    방법.
  2. 제 1 항에 있어서,
    상기 통계적인 값은 평균값인
    방법.
  3. 제 1 항에 있어서,
    상기 집합(13)에서 상기 쌍들(16)을 선택하는 것은, 쌍 단위로(pair after pair), 상기 쌍의 컴포넌트들과 연관된 상기 불확실성 범위들을 비교하고, 이후에 동일하지 않은 불확실성 범위(p)를 갖는 컴포넌트들의 쌍들(16)을 선택함으로써, 실행되는
    방법.
  4. 제 1 항에 있어서,
    상기 셋포인트 값(Vc)은 수행되는 상기 측정에 따라서 달라지는
    방법.
  5. 제 2 항에 있어서,
    상기 불확실성 범위는 상기 불확실성 범위를 한정하는 2개의 극값에 의해서나 혹은 상기 평균값의 에러를 산출함으로써 결정되는
    방법.
  6. 제 1 항에 있어서,
    상기 전자 회로(10)에 고유한 값(19)을 생성하기 위해서, 상기 값들(V)로부터 적어도 하나가 유도되는 데이터 중 적어도 하나와 비교되는 상기 데이터들은, 적어도 기준 값 및 선택된 상기 쌍(16)의 상기 컴포넌트와 관련된 불확실성 범위 사이의 간격을 정량화하는 값인
    방법.
  7. 제 1 항에 있어서,
    상기 불확실성 범위는 주어지는 신뢰도 간격에 기초해서 계산되는
    방법.
  8. 제 1 항에 있어서,
    상기 전자 회로(10)에 고유한 상기 값(19)은, 상기 비교 결과가 순서대로 처리됨으로써 결정되는 중간값에 적용되는 해시 함수로부터 유도되는
    방법.
  9. 전자 회로(10)에 고유한 값(19)을 생성하도록 구성된 상기 전자 회로(10)로서,
    컴포넌트(11) - 상기 컴포넌트(11) 각각에 대해서 적어도 하나의 물리량이 측정됨 - 와,
    상기 물리량의 측정(f1, f2, ... fi)을 수행할 수 있는 적어도 하나의 측정 소자(12)와,
    2개의 값을 비교하도록 되어 있는 적어도 하나의 비교기(17)와,
    상기 전자 회로(10) 외부의 환경과 정보를 교환할 수 있는 인터페이스(20)
    를 포함하고,
    청구항 1 내지 청구항 8 중 어느 한 항에 개시된 방법의 단계를 수행하도록 구성된 계산 유닛(15)과,
    상기 전자 회로(10)에 고유한 상기 값(19)을 사용하는 적어도 하나의 애플리케이션을 수용할 수 있는 애플리케이션 유닛(25)
    을 더 포함하는
    전자 회로(10).
  10. 제 9 항에 있어서,
    상기 인터페이스(20)를 통해서 상기 전자 회로(10)에 고유한 상기 값(19)의 전송을 차단하도록 더 구성되어 있는
    전자 회로(10).
  11. 제 9 항에 있어서,
    계산된 데이터 및 측정된 값을 일시적으로 기억하도록 구성된 수단을 더 포함하고,
    상기 전자 회로(10)에 고유한 상기 값(19)이 처음 사용되면 즉시 상기 데이터 및 상기 값을 상기 수단으로부터 삭제하도록 더 구성되어 있는
    전자 회로(10).
  12. 제 9 항에 있어서,
    상기 애플리케이션 유닛(25)는 상기 전자 회로(10)에 고유한 상기 값(19)으로부터 공개 키를 생성하도록 구성된 암호화 유닛이고,
    상기 값(19)은 비대칭형 암호화 시스템에서 상기 공개 키와 관련된 개인 키로서 사용되며,
    상기 암호화 유닛은 또한 부호화된 메시지를 상기 공개 키를 통해서 해독하도록 더 구성되는
    전자 회로(10).
  13. 전자 회로(10)에 고유한 값(19)을 사용하는 방법으로서,
    상기 값(19)은 사용되어야 할 때마다 청구항 1 내지 청구항 8 중 어느 한 항에 개시된 방법에 의해서 생성되는
    방법.
  14. 제 13 항에 있어서,
    상기 값(19)은 상기 전자 회로(10)에 의해서 독점적으로 사용되는
    방법.
  15. 제 13 항에 있어서,
    상기 값(19)은, 상기 전자 회로(10)에서 구현되는 애플리케이션이 상기 값(19)을 사용하고자 할 때 생성되는
    방법.
KR1020177033900A 2015-05-27 2016-05-26 전자 회로에 고유한 값을 생성하는 방법, 이 값을 생성하는 전자 회로 및 이 값을 사용하는 방법 KR102503366B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP15169422 2015-05-27
EP15169422.1 2015-05-27
PCT/EP2016/061867 WO2016189070A1 (en) 2015-05-27 2016-05-26 Method for generating a value inherent to an electronic circuit, electronic circuit generating this value and method for using such a value

Publications (2)

Publication Number Publication Date
KR20180012761A KR20180012761A (ko) 2018-02-06
KR102503366B1 true KR102503366B1 (ko) 2023-02-23

Family

ID=53434203

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177033900A KR102503366B1 (ko) 2015-05-27 2016-05-26 전자 회로에 고유한 값을 생성하는 방법, 이 값을 생성하는 전자 회로 및 이 값을 사용하는 방법

Country Status (7)

Country Link
US (1) US20180123807A1 (ko)
EP (1) EP3304737B1 (ko)
JP (1) JP6899778B2 (ko)
KR (1) KR102503366B1 (ko)
CN (1) CN107646130B (ko)
ES (1) ES2825774T3 (ko)
WO (1) WO2016189070A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106919216A (zh) * 2017-03-01 2017-07-04 深圳大学 一种基于Cascode电流镜结构的物理不可克隆电路
CN109428712B (zh) * 2017-08-24 2022-01-07 上海复旦微电子集团股份有限公司 数据加、解密方法及数据加、解密***
US11190336B2 (en) * 2019-05-10 2021-11-30 Sap Se Privacy-preserving benchmarking with interval statistics reducing leakage

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100031065A1 (en) 2006-11-06 2010-02-04 Yuichi Futa Information security apparatus
JP2010527219A (ja) 2007-05-11 2010-08-05 ヴァリディティー センサーズ,インク. 物理的に複製不可能な機能を用いて電子機器のセキュリティを電子的に確保する方法およびシステム
US20150046718A1 (en) 2013-08-06 2015-02-12 Infineon Technologies Ag Determining an identifier

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8176106B2 (en) * 2005-12-14 2012-05-08 Nxp B.V. On-chip estimation of key-extraction parameters for physical tokens
JP2011526113A (ja) * 2008-06-27 2011-09-29 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ アイテムの真正性、完全性、及び/又は物理的状態を検証するための装置、システム、及び方法
US8468186B2 (en) * 2009-08-05 2013-06-18 Verayo, Inc. Combination of values from a pseudo-random source
FR2955394B1 (fr) * 2010-01-18 2012-01-06 Inst Telecom Telecom Paristech Circuit integre en silicium comportant une fonction physiquement non copiable, procede et systeme de test d'un tel circuit
WO2011138823A1 (ja) * 2010-05-06 2011-11-10 三菱電機株式会社 ビット列生成装置及びビット列生成方法
US8619979B2 (en) * 2010-06-25 2013-12-31 International Business Machines Corporation Physically unclonable function implemented through threshold voltage comparison
US8848905B1 (en) * 2010-07-28 2014-09-30 Sandia Corporation Deterrence of device counterfeiting, cloning, and subversion by substitution using hardware fingerprinting
US8850608B2 (en) * 2011-03-07 2014-09-30 University Of Connecticut Embedded ring oscillator network for integrated circuit security and threat detection
KR101359783B1 (ko) * 2012-07-24 2014-02-10 (주)농업전자 부정합 부하 저항 소자 기반 물리적 복제 불가 함수 시스템
US9208355B1 (en) * 2013-05-28 2015-12-08 Sandia Corporation Apparatus, system and method for providing cryptographic key information with physically unclonable function circuitry
EP2816756A1 (fr) 2013-06-18 2014-12-24 Nagravision S.A. Procédé et dispositif cryptographique unique à fonction physiquement induplicable
WO2015031685A1 (en) * 2013-08-28 2015-03-05 Stc.Unm Systems and methods for analyzing stability using metal resistance variations
JP2015065495A (ja) * 2013-09-24 2015-04-09 ルネサスエレクトロニクス株式会社 暗号鍵供給方法、半導体集積回路および暗号鍵管理装置
US20150134966A1 (en) * 2013-11-10 2015-05-14 Sypris Electronics, Llc Authentication System
US9485094B1 (en) * 2014-04-21 2016-11-01 Maxim Integrated Products, Inc. Systems and methods for stable physically unclonable functions

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100031065A1 (en) 2006-11-06 2010-02-04 Yuichi Futa Information security apparatus
JP2010527219A (ja) 2007-05-11 2010-08-05 ヴァリディティー センサーズ,インク. 物理的に複製不可能な機能を用いて電子機器のセキュリティを電子的に確保する方法およびシステム
US20150046718A1 (en) 2013-08-06 2015-02-12 Infineon Technologies Ag Determining an identifier

Also Published As

Publication number Publication date
WO2016189070A1 (en) 2016-12-01
KR20180012761A (ko) 2018-02-06
CN107646130A (zh) 2018-01-30
JP2018517347A (ja) 2018-06-28
EP3304737B1 (en) 2020-09-02
US20180123807A1 (en) 2018-05-03
CN107646130B (zh) 2021-03-19
EP3304737A1 (en) 2018-04-11
JP6899778B2 (ja) 2021-07-07
ES2825774T3 (es) 2021-05-17

Similar Documents

Publication Publication Date Title
Herder et al. Trapdoor computational fuzzy extractors and stateless cryptographically-secure physical unclonable functions
US9948470B2 (en) Applying circuit delay-based physically unclonable functions (PUFs) for masking operation of memory-based PUFs to resist invasive and clone attacks
KR102656990B1 (ko) 물리적 복제 방지 기능을 갖는 암호화 디바이스
CN107276761B (zh) 用于测试物理不可克隆功能的设备和方法
US8059814B1 (en) Techniques for carrying out seed or key derivation
US9584329B1 (en) Physically unclonable function and helper data indicating unstable bits
US9571276B2 (en) Derivation of a device-specific value
US20150188718A1 (en) Providing a Cryptographic Key
US20150318999A1 (en) Derivation of a Device-Specific Value
TW201926118A (zh) 用於對裝置進行驗證的方法
KR102503366B1 (ko) 전자 회로에 고유한 값을 생성하는 방법, 이 값을 생성하는 전자 회로 및 이 값을 사용하는 방법
CN103870742A (zh) 自认证芯片和提供芯片的认证服务的方法
KR102037576B1 (ko) 반도체 장치 및 보안 시스템
US9298950B2 (en) Undiscoverable physical chip identification
Delvaux et al. Upper bounds on the min-entropy of RO sum, arbiter, feed-forward arbiter, and S-ArbRO PUFs
Liu et al. Methods for estimating the convergence of inter-chip min-entropy of SRAM PUFs
KR102554982B1 (ko) 역계산 퍼지 추출기 및 인증을 위한 방법
US11736286B2 (en) Method and secure boot control circuit for controlling secure boot of electronic device and method for controlling enrollment of electronic device
EP3811220B1 (en) Generating a target data based on a function associated with a physical variation of a device
Ramesh et al. Peer pressure on identity: On requirements for disambiguating PUFs in noisy environment
WO2023186414A1 (en) Hamming distance based matching for puf strings
JP2020046989A (ja) 認証装置
JP2015114910A (ja) プログラム、情報処理装置及び情報処理方法

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant