보안·암호
PBKDF2-HMAC 키 유도 IP 코어
SSD/eMMC 키 수립을 위한 하드웨어 PBKDF2-HMAC-SHA-256/512 키 유도.
개요
사용자 비밀번호를 두 가지 방어 장치(레코드별 솔트 + 튜너블 반복 횟수, key stretching)로 암호 키로 변환하는 하드웨어 PBKDF2-HMAC 엔진입니다. 저장장치 컨트롤러용으로 설계되어 SSD/eMMC를 여는 KEK(Key-Encryption-Key) 도출, 호스트 인증, 데이터 암호 키 준비에 사용됩니다.
설계는 3계층으로 분해되지만 실제 연산 datapath는 단일 SHA-256 압축 코어 하나뿐이며, HMAC·PBKDF2 계층은 순수 제어 FSM입니다. midstate 캐시가 비밀번호-키 패딩을 한 번만 사전 계산해 모든 반복에서 재사용하므로, 반복 1회는 SHA-256 블록 압축 2회 비용입니다(약 2배 절감). 동일한 SHA-256/HMAC 코어는 eMMC RPMB 인증에도 재사용됩니다.
블록 다이어그램
파라메트릭 사양
| 용도 | SSD/eMMC 컨트롤러 키 유도(KEK), 호스트 인증, 데이터 키 준비 |
|---|---|
| 표준 | RFC 8018 (PBKDF2), RFC 2104 (HMAC), FIPS 180-4 (SHA-2), NIST SP 800-132 |
| 알고리즘 | PBKDF2-HMAC-SHA-256 (SHA-512 옵션) |
| PRF | HMAC-SHA-256 / HMAC-SHA-512 |
| 반복 횟수(work factor) | 튜너블, 32-bit (예: OWASP 2023 권고 600,000) |
| 도출 키 길이 | 최대 64 B (이상은 다중 블록) |
| 인터페이스 | AXI4-Lite slave(32-bit); 브리지로 APB4; IRQ 또는 폴링 |
| 핵심 최적화 | midstate 캐시 → 반복 1회 = SHA-256 압축 2회 |
| 클록 | 100–150 MHz (Arria II GX) |
| 리소스 | EP2AGX260에서 ≈3,000–5,000 LE (≈2%) |
| 검증 | 계층별 KAT: SHA-256, HMAC(RFC 4231), PBKDF2 벡터 |
| 구현 | 순수 RTL(벤더 프리미티브 미사용); iverilog + Quartus |
| 상태 | 설계 시방서 Rev 1.1, RTL 산출물; FPGA 특성화는 통합 단계 |
성능
변형
PBKDF2-SHA256
기본 — HMAC-SHA-256 PRF, 32 B 해시, 메인스트림 KEK 도출.
PBKDF2-SHA512
고강도 옵션 — HMAC-SHA-512 PRF, 64 B 해시.
제공 항목
- 합성 가능 Verilog RTL(sha256_core, hmac_engine, pbkdf2_engine, AXI4-Lite 레지스터, top) — 순수 RTL, 벤더 프리미티브 미사용
- AXI4-Lite 레지스터 맵 + 베어메탈 C 드라이버(폴링·인터럽트)
- 계층별 KAT 테스트벤치(SHA-256, HMAC RFC 4231, PBKDF2 벡터) + iverilog 플로우
- Quartus 합성 스크립트 및 설계 시방서 Rev 1.1(NDA)
지원 디바이스
타겟/검증 플랫폼. ASIC 공정 수치는 통합 단계에서 특성화됩니다.
단일 벤더의 풀 보안 스토리지 데이터패스: PBKDF2가 KEK를 도출하고 미디어 키(MEK)를 언랩, AES-256-XTS가 섹터를 암호화(IEEE 1619), 공유 SHA-256/HMAC 코어가 eMMC RPMB(JEDEC)를 인증 — 면적·검증 비용 절감.
리소스·타이밍 수치는 Arria II GX(EP2AGX260) 추정값이며 최종 수치는 통합 단계에서 특성화됩니다. 상세 레지스터 맵·C 드라이버·테스트 벡터는 NDA 하에 제공됩니다.
문서
풀 데이터시트·통합 가이드·평가 파일은 NDA 하에 제공됩니다. 아래에서 요청해 주시면 영업일 1일 내 회신드립니다.
데이터시트 요청응용 분야
견적 요청
견적 또는 평가 요청
프로젝트를 알려주세요. * 표시는 필수입니다. 영업일 1일 내 회신드립니다.