Via PUF 기술



여러가지 PUF 기술이 나와 있으나, 대부분 Active 소자를 이용하여 구현한 것이며, 이들은 PVT (process, voltage, temperature)변화에 민감하며, aging effect등이 동반된다. 이를 극복하기 위해서 ECC (Error Correction Code) 로직함수 등을 추가로 도입해야하는 문제점이 있다. 

그러나, Via PUF는 반도체 생산 공정 중 메탈 레이어를 연결하는 Via Hole 형성시 미세하게 발생하는 공정편차를 이용해 PUF를 구현하는 기술이다. 

이는 기존 Active 소자 (능동소자) 방식에서 벗어난 Passive 소자 (수동소자) 방식으로서 기존 기술의 문제점을 모두 해결해 주는 혁신적인 방식이다. 
반도체 생산에서 동일한 공정의 동일한 설계로 만들지만 미세공차를 이용하므로 반도체 칩마다 다른 특성의 결과를 갖는다. 즉, 반도체 칩마다 서로 다른 ID를 발생시킨다.

이를 일컬어 반도체의 지문이라고도 한다 
> Silicon Inborn ID 

Via PUF는 당연시 여겨지는 반도체 설계 방법을 거꾸로 뒤집어 사고하는 "발상의 전환" 의 결과물이다.



일반적인 반도체 설계는 Via Hole의 형성을 목적으로 설계를 하지만, Via PUF는 Via Hole의 형성과 미형성의 중간을 택하여 설계를 한다. 
이의 결과로 Via PUF는 형성 (short)과 미형성(open)이 반반으로 나타나는 예측 불가능한 랜덤성(NIST SP800-90B 기준 충족)을 갖게된다.
Passive 소자인 Via Hole의 특성 상, 어떤 환경의 변화에도 그 특성이 변하지 않는 항상성을 갖는다. 
주변의 일반 로직의 Via와 구분이 안되므로 역공정으로도 구별해 낼 수 없는 보안성을 갖는다.
[a]PUF zone at 50% probability of Via or Contact fomation
[b]Cross sectional microscopic image of VIA PUF
Via PUF 기반의 Root of Trust



Root of Trust (RoT)는 복제되거나 변경되지 않는 하드웨어와 소프트웨어 기반의 함수를 일컫는다. 
컴퓨터 운영시스템 (OS)이 항상 믿을 수 있는 시스템으로서 다양한 형태의 해킹 공격에도 뚫리지 않는 안정성이 특징이다

소프트웨어 만으로는 RoT를 이룰 수 없으며, 하드웨어 기반의 RoT를 갖추는 것이 중요함.
고유한 난수 (Unique ID)를 생성하고 이 난수를 활용하여 암호화 키를 생성 
 Root of Trust의 근본
Via PUF는 고유한 Silicon Inborn ID의 특성을 제공함으로써 모든 신뢰의 원천인 RoT의 근본이 된다.
고유한 ID를 외부에서 주입시키는 것이 아니라 내부에서 자체 생성시킴 : 보안성 향상 
Passive 소자인 Via Hole의 특성 상, 어떤 환경의 변화에도 그 특성이 변하지 않는 항상성을 갖는다
소프트웨어 만으로는 RoT를 이룰 수 없으며, 
하드웨어 기반의 RoT를 갖추는 것이 중요함. 
고유한 난수 (Unique ID)를 생성하고 이 난수를 활용하여 
암호화 키를 생성   Root of Trust의 근본 
Via PUF는 고유한 Silicon Inborn ID의 특성을 제공함으로써 
모든 신뢰의 원천인 RoT의 근본이 된다. 
고유한 ID를 외부에서 주입시키는 것이 아니라 
내부에서 자체 생성시킴 : 보안성 향상 
Passive 소자인 Via Hole의 특성 상, 어떤 환경의 변화에도 그 특성이 변하지 않는 항상성을 갖는다. 
아래 표는 Via PUF 기반의 RoT의 기능과 그 구현 방법을 나타낸다.
특성
RoT 기능
구현방법
고유성
물리적인 디바이스에 고유한 ID를 생성시킴
Via PUF
무결성
펌웨어에 대한 무결성 검증기능
Via PUF + 비대칭키 알고리즘
실행보안
Secure 펌웨어 업데이트
Via PUF + 비대칭키 알고리즘
데이터 보안
Secure Storage (디지털 키 혹은 인증서 보호)
Via PUF
랜덤성
랜덤성 확보로 예측불가의 기능
Via PUF
암호화 기능
암호 가속기 기능
Via PUF + 암호화 알고리즘
통신보안
통신 프로토콜에 개인키 생성
Via PUF + 통신 알고리즘