[논문 리뷰] Using Convolutional Codes for Key Extraction in SRAM Physical Unclonable Functions
이 논문은 신뢰도 측도를 소프트 입력으로 활용하여, 신뢰도가 떨어지는 응답 비트를 기각하지 않고도 SRAM PUF의 키 재구성 성능을 향상시키기 위해 소프트 입력 Viterbi 디코딩, 리스트 디코딩, 순차적 디코딩을 사용하는 방법을 제안한다. 신뢰도 측도를 소프트 입력으로 활용함으로써, 메모리 길이 7인 비율 1/3 코드를 사용할 경우 키 오류 확률을 10⁻⁶ 이하로 낮추었으며, 실패율을 감소시키고 ROVA나 비트 선택이 필요 없어졌다.
Physical Unclonable Functions (PUFs) exploit variations in the manufacturing process to derive bit sequences from integrated circuits, which can be used as secure cryptographic keys. Instead of storing the keys in an insecure, non-volatile memory, they can be reproduced when needed. Since the reproduced sequences are not stable due to physical reasons, error correction must be applied. Recently, convolutional codes were shown to be suitable for key reproduction in PUFs based on SRAM. This work shows how to further decrease the reconstruction failure probability and PUF implementation size using codes with larger memory length and decoding concepts such as soft-information and list decoding.
연구 동기 및 목표
- 환경 변화와 비안정한 응답으로 인해 발생하는 SRAM PUF의 높은 키 재구성 실패율 문제를 해결한다.
- 이전 방법들이 신뢰도가 떨어지는 PUF 응답 비트를 기각하거나 ROVA를 통한 비트 선택에 의존하는 한계를 극복한다.
- 비트 선택을 피하고 도우미 데이터 오버헤드를 최소화함으로써 PUF 구현의 크기와 복잡도를 감소시킨다.
- 소프트 입력 디코딩 및 리스트 디코딩과 같은 고급 디코딩 기법을 활용하여 오류 수정 성능을 향상시킨다.
- 모든 응답 비트를 신뢰도 정보를 소프트 입력으로 활용함으로써 키 재구성 정확도가 크게 향상됨을 입증한다.
제안 방법
- PUF 응답을 오류 수정하기 위해 메모리 길이 μ와 비율 1/2 또는 1/3인 컨volutional 코드를 적용한다.
- 디코더 입력에서 개별 비트의 신뢰도 값을 소프트 메트릭(예: 로그 우도 비율)으로 변환하여 소프트 입력 Viterbi 디코딩을 수행한다.
- 단일 경로 Viterbi 디코딩을 초월한 오류 수정 성능 향상을 위해 리스트 크기 ℒ을 사용한 리스트 디코딩을 구현한다.
- 고메모리 길이 코드의 디코딩 복잡도를 감소시키기 위해 Fano의 알고리즘을 사용한 순차적 디코딩을 활용한다.
- 다양한 교환 확률 p_i를 갖는 이진 대칭 채널(BSC) 모델을 사용하여 PUF 응답 오류를 시뮬레이션한다.
- 최대 10⁷회의 읽기 연산을 사용한 몬테카를로 시뮬레이션을 통해 코드 파라미터(μ, 비율, ℒ) 및 디코딩 전략 간 성능을 비교한다.
실험 결과
연구 질문
- RQ1소프트 입력 Viterbi 디코딩은 하드 디시전 디코딩 대비 SRAM PUF의 키 재구성 실패 확률을 감소시킬 수 있는가?
- RQ2신뢰도 정보를 소프트 입력으로 활용하여 모든 PUF 응답 비트(신뢰도가 낮은 비트 포함)를 사용할 경우, 임계값 기반 비트 기각 전략 대비 오류 수정 성능이 향상되는가?
- RQ3리스트 크기 ℒ을 증가시켜 리스트 디코딩을 통해 오류 확률을 추가로 감소시킬 수 있는가? 이때 복잡도 증가가 과도하지 않은가?
- RQ4고메모리 길이 컨volutional 코드에 대해 순차적 디코딩은 Viterbi 디코딩 대비 복잡도와 오류 성능 측면에서 어떻게 비교되는가?
- RQ5소프트 정보와 고급 디코딩 기법을 활용함으로써, 더 작은 코드 메모리 길이에서도 키 오류 확률을 10⁻⁶ 이하로 낮출 수 있는가?
주요 결과
- 메모리 길이 7인 비율 1/3 컨volutional 코드를 사용한 소프트 입력 Viterbi 디코딩은 키 오류 확률을 약 1.73×10⁻²로 낮추어 하드 디시전 디코딩보다 뚜렷이 우수한 성능을 보였다.
- 메모리 길이 9인 비율 1/3 코드를 사용할 경우, 리스트 디코딩과 3회의 읽기 연산을 통해 키 오류 확률이 10⁻⁶ 이하로 떨어지며, 실패율은 1×10⁻⁷ 미만이 되었다.
- 소프트 정보 활용으로 모든 PUF 응답 비트를 사용할 수 있게 되어, 임계값 p_T ≈ 0.2를 사용할 경우 최대 1/3의 비트 기각이 필요 없어졌다.
- Fano의 알고리즘을 사용한 순차적 디코딩은 고메모리 길이 코드의 디코딩 복잡도를 감소시켰으며, μ = 20일 경우 오류 확률 약 10⁻⁶, μ = 24일 경우 약 10⁻⁷을 달성했다.
- 리스트 크기 ℒ = 3인 리스트 디코딩은 (3,1,[6]) 코드에서 단일 경로의 경우 오류 확률 2.24×10⁻²에서 5.70×10⁻⁵로 감소시켜 뚜렷한 성능 향상을 보였다.
- 제안된 방법은 ROVA(Response-Only-Verification-Algorithm) 오버헤드를 피하여 PUF 시스템의 구현 복잡도와 면적 요구량을 감소시켰다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.