Skip to main content
QUICK REVIEW

[논문 리뷰] Randen - fast backtracking-resistant random generator with AES+Feistel+Reverie

Jan Wassenberg, Robert Obryk|arXiv (Cornell University)|2018. 10. 04.
Chaos-based Image/Signal Encryption참고 문헌 23인용 수 5
한 줄 요약

Randen은 AES, 16개의 지점이 있는 일반화된 페이스텔 구조, 그리고 스폰지 유사 구조인 Reverie를 결합한 빠르고 백트래킹에 저항하는 의사난수 생성기이다. 강력한 보안성을 확보하여 난수와 구분 불가능하고 상태 유출에 저항하지만, 메르센 트위스터, PCG, 차차8, ISAAC, 필록스보다 실세계 벤치마크에서 뛰어난 성능을 보이며, 암호화되지 않은 응용 프로그램에서 안전하고 고성능의 대체 수 Mitt을 제공한다.

ABSTRACT

Algorithms that rely on a pseudorandom number generator often lose their performance guarantees when adversaries can predict the behavior of the generator. To protect non-cryptographic applications against such attacks, we propose 'strong' pseudorandom generators characterized by two properties: computationally indistinguishable from random and backtracking-resistant. Some existing cryptographically secure generators also meet these criteria, but they are too slow to be accepted for general-purpose use. We introduce a new open-sourced generator called 'Randen' and show that it is 'strong' in addition to outperforming Mersenne Twister, PCG, ChaCha8, ISAAC and Philox in real-world benchmarks. This is made possible by hardware acceleration. Randen is an instantiation of Reverie, a recently published robust sponge-like random generator, with a new permutation built from an improved generalized Feistel structure with 16 branches. We provide new bounds on active s-boxes for up to 24 rounds of this construction, made possible by a memory-efficient search algorithm. Replacing existing generators with Randen can protect randomized algorithms such as reservoir sampling from attack. The permutation may also be useful for wide-block ciphers and hashing functions.

연구 동기 및 목표

  • 암호화되지 않은 환경에서도 계산적으로 난수와 구분 불가능하고 백트래킹에 저항하는 의사난수 생성기를 설계하는 것.
  • 일반 목적의 응용 프로그램에서 암호화 보안 생성기의 성능 저하 문제를 하드웨어 가속된 AES를 활용하여 해결하는 것.
  • 메르센 트위스터나 PCG처럼 널리 쓰이지만 공식적인 보안 보장을 갖지 못하는 생성기들에 대한 안전한 대체 수 Mitt을 제공하는 것.
  • 최적화된 순열 설계와 하드웨어 활용을 통해 기존의 암호화되지 않은 생성기들보다 더 빠른 고보안 PRNG가 가능함을 보여주는 것.
  • 어떤 공격자도 과거 출력을 예측하거나 복원할 수 없도록 하여 랜덤 알고리즘(예: 리저보아 샘플링)의 안전한 배포를 가능하게 하는 것.

제안 방법

  • Randen은 새로운 16지점 일반화된 페이스텔 순열을 사용하여 효율적인 상태 혼합을 수행하는 Reverie 스폰지 유사 난수 생성기의 구현이다.
  • 이 순열은 AES 기반 라운드 함수로 구성되며, AES-NI 지원이 있는 현대 CPU에서 저지연, 고처리량 실행을 위해 최적화되어 있다.
  • 메모리 효율적인 검색 알고리즘을 사용하여 최대 24라운드까지 활성 S-박스의 새로운 범위를 유도함으로써 강력한 확산 성질을 확보한다.
  • 생성기는 설계상 백트래킹에 저항하며, 현재 상태가 유출되더라도 과거 출력을 복원할 수 없도록 한다.
  • AES-NI를 통한 하드웨어 가속 덕분에, 더 강력한 보안 보장을 갖추고도 ChaCha8나 Philox와 같은 소프트웨어 중심 생성기보다 뛰어난 성능을 달성한다.
  • 생성기는 결정론적이며 재시드가 필요 없어 재현 가능하고 디버깅에 유리하며, 동시에 향후 기밀성 보장을 유지한다.

실험 결과

연구 질문

  • RQ1의사난수 생성기가 성능을 희생시키지 않고도 계산적으로 난수와 구분 불가능하고 백트래킹에 저항할 수 있는가?
  • RQ2기존의 암호화되지 않은 생성기들인 메르센 트위스터나 PCG보다 더 빠른 암호학적으로 강력한 PRNG를 구축하는 것이 가능한가?
  • RQ3스폰지 유사 구조(Reverie)를 페이스텔 기반 순열로 효율적으로 구현하여 고처리량과 강력한 보안을 동시에 확보할 수 있는가?
  • RQ424라운드 동안 16지점 일반화된 페이스텔 구조에서 활성 S-박스의 가장 날카운 경계는 무엇이며, 이는 보안에 어떤 영향을 미치는가?
  • RQ5하드웨어 가속된 AES를 활용하여 암호화 보안이 강하고 실용적인 일반 목적의 시스템에서 사용 가능한 PRNG를 구축할 수 있는가?

주요 결과

  • x86 및 POWER8 플랫폼에서 Randen은 메르센 트위스터보다 1.1~1.4배 빠르며, x86에서 기하평균 속도 향상 요인은 1.1, PPC에서도 1.1이다.
  • POWER8에서 PCG보다 1.1배 빠르며, 몬테카를로 시뮬레이션에서는 x86에서 1.2배 빠르다. 다만 PCG는 마이크로벤치마크에서는 더 빠르지만, 실제 워크로드에서는 그렇지 않다.
  • x86에서 Philox보다 2.3배 빠르고, POWER8에서는 3.4배 빠르며, x86에서 ISAAC보다 2.0배 빠르고, POWER8에서는 2.5배 빠르다.
  • x86에서 ChaCha8보다 2.1배 빠르고, ChaCha20보다 7.8배 빠르며, x86에서 CTR-DRBG보다 9.3배 빠르다.
  • AES 기반 라운드를 사용하는 새로운 16지점 페이스텔 순열은 강력한 확산 성질을 확보하며, 최대 24라운드까지 활성 S-박스의 새로운 경계는 메모리 효율적인 검색 알고리즘을 통해 유도되었다.
  • Randen은 실세계 워크로드에서 메르센 트위스터보다 빠르고 백트래킹에 저항하는 소프트웨어 기반 PRNG로 처음으로 입증되었으며, 암호화되지 않은 응용 프로그램에서 불안전한 생성기의 실질적인 대체 수 Mitt이 될 수 있다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.