Linux의 crypto_rng 추상화 계층, 다음 삭제 대상
요약
Linux 커널의 암호화 서브시스템 전문가 Eric Biggers가 crypto_rng 추상화 계층을 제거하는 작업을 진행 중입니다. 기존의 범용 인터페이스 대신 DRBG 및 jitterentropy 모듈의 전용 API를 직접 사용하도록 구조를 단순화하여 효율성을 높이는 것이 목적입니다.
핵심 포인트
- Linux 커널 내 crypto_rng 추상화 계층 제거 추진
- DRBG 및 jitterentropy 모듈의 전용 API 직접 호출 방식으로 전환
- 불필요한 인터페이스 제거를 통한 커널 구조 단순화 및 혼란 방지
- Linux v7.3 사이클 반영 여부 주목
Linux의 crypto_rng 추상화 계층, 다음 삭제 대상

Google의 Linux 암호화 서브시스템(crypto subsystem) 전문가인 Eric Biggers는 커널에서 crypto_rng 추상화 계층을 제거하는 작업을 진행 중입니다. 난수 생성기(RNG)를 위한 이 범용 인터페이스는 이제 결정론적 난수 비트 생성기(Deterministic Random Bit Generator (DRBG)) 및 이를 지원하는 Jitterentropy 모듈의 API를 직접 사용하는 것이 권장됨에 따라 궁극적으로 불필요해졌습니다.
Biggers는 현재 wip-rng Git 브랜치를 통해 대기 중인 패치에서 다음과 같이 설명합니다:
"crypto_rng 추상화 계층은 난수 생성기(RNG)를 위한 범용 인터페이스로 설계되었습니다. 하지만 현재는 (인증상의 이유로) "NIST 승인" RNG와 이를 지원하는 "jitterentropy" 엔트로피 수집기(entropy collector)를 구현하는 데에만 독점적으로 사용되고 있습니다.
이전에는 일부 하드웨어 RNG 드라이버가 crypto_rng를 지원했습니다. 하지만 해당 기능은 사용되지 않았으며, 실제로 사용되는 인터페이스인 hw_random과 함께 존재하여 혼란만 가중시켰습니다.
이러한 현실을 반영하여, crypto_rng 추상화를 제거하고 drbg 및 jitterentropy 모듈이 전용 API를 직접 제공하도록 하겠습니다.
이를 구현하기 위해, crypto_rng의 사용자들을 다음과 같이 업데이트합니다:
-
algif_rng.c는 이제 DRBG 및 jitterentropy API를 직접 호출합니다.
-
__crypto_stdrng_get_bytes()는 이제 DRBG API를 직접 호출합니다.
-
DRBG 자체 테스트(self-tests)는 testmgr에서 drbg.c 자체로 이동하며, DRBG API가 직접 사용됩니다."
이 crypto_rng 인터페이스 제거 작업이 다가오는 Linux v7.3 사이클에 제출될지 지켜봐야겠습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Phoronix의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기