신뢰점(RoT)이 없으면 시스템 신뢰 사슬은 시작되지 않는다

CBDC·IoT 보안의 근간인 신뢰점(Root of Trust)의 PUF 기반 키 관리, 보안·측정 부팅, 원격 인증 구조와 TPM 2.0 실습 절차를 정리한다

2026-08-12 · 최초 발행 2025-12-09

CBDC 시스템과 대규모 IoT 인프라의 보안은 결국 하나의 질문으로 귀결된다 — 아무것도 신뢰할 수 없는 상태에서 첫 번째 신뢰는 어디서 나오는가. 그 답이 신뢰점(RoT, Root of Trust)이다. RoT는 제품 수명 전 주기에 걸쳐 변경 불가능한 하드웨어·소프트웨어 모듈 집합으로, 시스템 신뢰 사슬의 시작점 역할을 한다. Via PUF 기반 Inborn ID를 포함한 칩 고유 신원과 키 관리 기능을 통해 복제 불가성과 원격 인증 가능성을 확보한다.

변경 불가능하다는 것의 의미

RoT는 부팅·키관리·무결성 검증·난수생성 같은 보안 핵심 기능을 불변성(ROM, OTP/eFuse)으로 보장하는 최소 신뢰 기반 모듈 집합이다. 초기 부트 ROM, 하드웨어 고정 키, 정책 엔진의 핵심 경로를 불변화해 런타임 공격과 서플라이체인 변조에 대한 방어선을 만든다.

Via PUF는 제조 공정의 물리적 변이로부터 생성되는 물리적 복제 불가능 함수(Physical Unclonable Function)로, 칩마다 고유한 Inborn ID를 만든다. 비아(via) 구조 기반이라 안정성이 높고 복제 난이도도 높다. 핵심은 키를 저장하지 않고 필요할 때마다 재생하는 구조라는 점인데, 이렇게 하면 저장소를 노린 추출 공격의 위험이 크게 줄어든다.

최소 신뢰 경로와 키가 만들어지는 방식

ROM 부트로더, 불변 공개키(루트 인증서), 보안 설정 레지스터(락 비트)로 최소 신뢰 실행 경로를 확정하고, 이 경로는 업데이트 가능 영역과 물리적으로 분리된다. 정책은 "허용된 알고리즘·키·버전"의 화이트리스트로 설계하며 정책 데이터에는 롤백 방지 카운터를 연계한다.

키 관리는 Via PUF에서 추출한 비밀을 Fuzzy Extractor와 ECC로 안정화해 Inborn ID와 디바이스 루트 키(DRK)를 유도하고, DRK에서 파생키(HKDF/KBKDF)를 생성하는 방식이다. 무저장(stateless) 재생 설계를 적용하고, 보조 데이터(helper data)는 그 자체로는 무의미한 공개값으로 저장해 키 유출을 억제한다.

부팅이 곧 검증이 되게 만든다

Secure Boot는 서명 검증을 통과해야 실행을 허용하고, Measured Boot는 해시 측정값(PCR/이벤트 로그)을 기록해 사후 검증·인증을 지원한다. 이 둘은 병행 운영하는 것이 권장된다. 반(反)롤백(anti-rollback) 카운터와 보안 시간 소스를 연계하고, 검증에 실패하면 격리 모드로 전환한다.

원격 인증은 디바이스와 검증자 사이에서 증명(Quote/Attestation)으로 펌웨어·구성 상태·카운터를 증빙하는 절차다. TPM 2.0, CCA, DICE, EPID, DAA 같은 프레임워크가 이 역할을 한다. CBDC처럼 프라이버시 요구가 있는 영역에서는 익명 인증(DAA)이나 상호 인증 내 가명 키 회전을 적용한다.

보안 서비스 세트로는 TRNG, 보안 저장소, 단조 카운터, 보안 시간, 지갑 보호 스토리지(SE), 물리 변조 탐지(탬퍼)를 제공한다. 운영 메커니즘으로는 키 파생 정책, 전용 APB/AHB 버스 격리, DMA 방지, 디버그 포트 잠금(JTAG/SWD 라이프사이클 관리)이 있다.

실제로 어디에 들어가나

CBDC 오프라인 지갑 단말에서는 Via PUF 기반 Inborn ID로 지갑 디바이스를 등록·한정 사용하고, 단조 카운터와 정책 한도(금액·횟수)를 결합해 이중지출을 억제한다. 오프라인 거래는 로컬 정책 엔진이 잔액·카운터를 검증한 뒤 서명하고, 온라인으로 복귀하면 원격 인증으로 상태를 동기화하고 카운터를 합의한다. 분실·도난 시에는 등록된 Inborn ID 폐기 목록을 배포한다.

모바일·웨어러블 SE/TEE 결제에서는 TEE(TrustZone) 위에서 SE의 RoT가 키를 보호하고 생체인증을 바인딩한다. FIDO2/WebAuthn 인증서로 사용자와 단말을 묶고, OTA 업데이트는 RoT 검증을 거쳐 단계적으로(staged rollout) 배포한다. 실패하면 안전하지 않은 롤백은 금지하고 복구 파티션으로 부팅한다.

산업 IoT 게이트웨이·센서는 제로 트러스트 온보딩(MASA/EST/DPP) 시 RoT attestation이 필수다. 네트워크 접근 제어(NAC)는 상태 기반으로 허용 여부를 결정하고, 펌웨어 SBOM과 측정값을 Quote에 포함시켜 서플라이체인 무결성을 추적한다.

서버·엣지 장비에서는 BMC의 RoT가 호스트 펌웨어를 측정·리포트하고, SPDM·DMTF DICE로 장비 간 상호 인증을 수행한다. 원격 플랫폼 상태에 기반해 시크릿을 정책적으로 언실딩(unsealing)하면 런타임 위험을 줄일 수 있다.

부팅부터 인증까지, 실패는 어떻게 처리되나

아니오아니오아니오아니오전원 인가(입력)RoT ROM 초기화TRNG 시드 확보 PUF챌린지 생성(처리)PUF 응답 수집재생(Fuzzy Extractor)재생 성공율 = 임계치?Secure Boot: 펌웨어 서명검증에러 처리: 재부팅/격리/열화모드 전환(출력)서명 유효 버전 = 정책 버전?Measured Boot: 해시측정값(PCR/로그) 기록단조 카운터 획득(트랜잭션시작)카운터 상태 유효?카운터 증가(원자적 커밋)롤백 시도 탐지: 차단 알림원격 인증 요청(Quote 생성:측정값+카운터)검증자: 증명서·정책 검증정책 만족?세션 확립 시크릿언실딩(출력)접근 거부 포렌식 로깅(출력)

구현 옵션을 비교하면

구현 옵션 성능(서명/부팅) 확장성(대량 배포) 일관성(측정·정책) 안정성(물리 공격) 운영 편의
TPM 2.0 모듈 중간 높음(표준 생태계) 높음(PCR/Quote) 중간(보호 케이스 의존) 높음(tpm2-tools/표준 API)
Secure Element + Via PUF 중~높음 중간(칩 공급망 필요) 높음(키 무저장) 높음(탬퍼 저항) 중간(전용 툴체인)
TEE(TrustZone 기반) 높음 높음(SoC 내장) 중간(신뢰 경계 넓음) 중간(물리 저항 한계) 높음(모바일 생태계)

TPM은 광범위한 호환성이 장점이지만 외장 채널과 물리 보안은 별도로 설계해야 한다. SE+PUF는 키 보호와 복제 불가성이 우수한 대신 BOM·공급망·개발 키트 확보가 필요하다. TEE는 성능과 개발 편의성이 좋지만, RoT의 최소 경로 불변성을 확보하려면 부트 ROM·DICE와 병행하는 것이 권장된다.

운영에서 신경 써야 할 것들

라이프사이클 관리는 제조 초기화(Enrollment)→프로비저닝→운영→RMA/폐기까지 Inborn ID·정책·라벨링을 추적 관리해야 하고, 디버그 포트는 상태 전이 시 영구 비활성화한다. 프라이버시 측면에서는 Inborn ID의 추적성 위험을 완화하기 위해 가명 인증(DAA), 세션별 attestation 키 회전, 블라인드 서명을 적용한다. 환경 보정은 온도·전압 드리프트를 보정하도록 PUF 재생 파라미터와 보조 데이터를 설계하고, 품질 기준 미달 칩은 출하를 차단한다. 업데이트는 안전 부트 체인 아래서 롤링으로 진행하며, 실패 시 복구 파티션으로 부팅하고 카운터가 불일치하면 온라인 동기화 전까지 시크릿 봉인을 유지한다. 규격·검증은 FIPS 140-3, Common Criteria, TEE/TPM 프로파일을 준수하고 서드파티 실험실의 침투 테스트와 사이드채널(파워/EM) 평가를 병행한다.

TPM 2.0으로 원격 인증 흐름 확인하기

전제조건은 TPM 2.0 활성화, tpm2-tools 설치(≥ 5.0), 디바이스 역할의 호스트 A와 검증자 역할의 호스트 B다.

디바이스(A)에서는 다음을 순서대로 실행한다.

tpm2_createak -C o -c ak.ctx -G ecc -s ecdsa -g sha256 -u ak.pub -n ak.name
tpm2_pcrread sha256:0,1,2 -o pcr.bin
tpm2_quote -c ak.ctx -l sha256:0,1,2 -q nonce123 -m quote.msg -s quote.sig -o quote.tk

생성된 파일(ak.pub, pcr.bin, quote.msg, quote.sig, quote.tk)을 검증자에게 전송한다.

검증자(B)는 다음 명령으로 확인한다.

tpm2_checkquote -u ak.pub -m quote.msg -s quote.sig -f quote.tk -g sha256 -q nonce123 -l sha256:0,1,2

결과를 허용된 측정값·버전 정책과 매핑해 접근을 허용하거나 차단한다. CBDC 단말·IoT 장치에서는 이 흐름을 SE+PUF 기반 attestation이나 DICE SPDM으로 대체 적용할 수 있다.

수치로 보는 오버헤드와 신뢰도

복제·위조 저항성은 Via PUF의 Inborn ID로 확보되고, 대량 복제 공격의 위험도 크게 줄어든다. 키 유출 면적은 무저장 키 재생 구조로 비밀 저장소 자체를 없애 물리 공격에 대한 회복력을 높인다. 원격 인증 기반 정책 시행은 무결성 부팅률을 높이고 위험 단말을 자동으로 격리하는 운영 신뢰 자동화를 가능하게 한다.

환경별로 상이하다는 전제 아래, 부팅 서명 검증 오버헤드는 ARM Cortex-A급·RSA/ECDSA 기반·캐시 온 조건에서 10~80ms/boot 수준으로 설계된다. PUF 재생 안정화 실패율은 ECC 2KB helper data 기준으로 10^-6 미만 설계가 가능하고, 오프라인 CBDC의 한도 초과·이중지출 탐지율은 정책·카운터 연계와 온라인 동기화를 전제로 99% 이상이다.

RoT는 CBDC와 IoT의 신뢰 기반을 제공하는 불변 앵커다. Via PUF 기반 Inborn ID와 키 무저장 재생 구조로 복제 불가성과 신원 보장을 확보하고, Secure/Measured Boot와 원격 인증을 결합해 정책 중심의 운영 자동화를 구현한다. 구현 시에는 TCB 최소화와 라이프사이클·프라이버시·공급망 관리의 균형이 필요하며, CBDC 지갑·산업 IoT·서버 플랫폼에 단계적으로 도입하는 것이 보안과 운영 효율을 함께 높이는 길이다.

RootOfTrustPUF보안부팅원격인증CBDC보안