피드로 돌아가기
What Is the OpenSSL Engine API? Integrating Cloud HSMs and YubiKeys with OpenSSL
Dev.toDev.to
Security

OpenSSL이 Engine API를 통해 외부 HSM과 YubiKey 같은 하드웨어 보안 모듈에 암호화 작업을 위임함으로써 FIPS 140-2 Level 3 준수 환경에서 개인키 노출 위험 제거

What Is the OpenSSL Engine API? Integrating Cloud HSMs and YubiKeys with OpenSSL

Katz Sakai2026년 3월 27일5intermediate

Context

코드 서명용 개인키 유출 사건이 반복되면서(예: 2022년 Nvidia 사건) 2023년 6월 1일부터 FIPS 140-2 Level 2 이상의 하드웨어에 개인키 저장을 강제하는 산업 규제가 도입되었다. OpenSSL은 기본적으로 로컬 메모리에서만 암호화 작업을 수행하므로 규제 준수를 위해 외부 하드웨어와의 통합 메커니즘이 필요했다.

Technical Solution

  • Engine API 도입: OpenSSL이 기본 암호화 연산(암호화, 서명) 대신 외부 하드웨어로 작업 위임 가능하게 플러그인 구조 제공
  • PKCS#11 인터페이스 표준화: pkcs11 engine 플러그인을 통해 PKCS#11을 구현한 모든 암호화 장치에 접근 가능하게 추상화
  • Google Cloud HSM 연동: Google PKCS #11 Cloud KMS Library를 사용해 Google Cloud HSM의 암호화 작업을 OpenSSL에서 투명하게 호출
  • YubiKey 하드웨어 연동: YKCS11 라이브러리로 YubiKey에 저장된 비대칭 개인키를 사용한 작업 실행
  • 개인키 로컬 미보관: HSM 하드웨어에 개인키를 저장 유지한 채로 서명 등 암호화 작업 수행

Key Takeaway

OpenSSL Engine API는 암호화 작업의 외부 위임을 표준화하여 개인키 보호 규제를 기술적으로 충족 가능하게 만들었으며, PKCS#11 같은 표준 인터페이스의 채택으로 다양한 HSM 벤더와의 호환성을 제공한다.


코드 서명 인증서를 발급하거나 관리하는 조직에서 OpenSSL Engine API와 PKCS#11 인터페이스를 구현한 HSM(Google Cloud HSM, YubiKey 등)을 통합하면 FIPS 140-2 준수 요구사항을 충족하면서도 OpenSSL의 기존 워크플로우를 유지할 수 있다.

원문 읽기