Skip to main content
QUICK REVIEW

[논문 리뷰] Generating High Quality Random Numbers: A High Throughput Parallel Bitsliced Approach

Saleh Khalaj Monfared, Omid Hajihassani|arXiv (Cornell University)|2019. 09. 10.
Chaos-based Image/Signal Encryption참고 문헌 33인용 수 4
한 줄 요약

이 논문은 GPU에서 병렬적이고 비트 슬라이싱 구현을 통해 고성능, 암호학적으로 안전한 의사난수 생성기(CSPRNG)를 제안한다. 데이터를 열 우선 형식으로 재구성하고 LFSR 기반의 MICKEY 2.0 스트림 암호를 활용하여 고비용의 비트 시프트 연산을 효율적인 레지스터 스왑으로 대체함으로써, GTX 980 Ti에서 1.6 Tb/s, Tesla V100에서 2.9 Tb/s의 성능을 달성하였다. 이는 성능과 비용 효율성 면에서 cuRAND를 뛰어넘으며, 모든 NIST 통계적 난수성 테스트에 통과하였다.

ABSTRACT

In this work, by employing a bitsliced data representation as building blocks of algorithms, we showcase the capability and scalability of our proposed method in a variety of PRNG methods in the category of block and stream ciphers. While demonstrating the suitability of stream-ciphers for high throughput PRNG, as an example, we implement and investigate a bitsliced MICKEY 2.0 PRNG by altering the paradigm of internal functions and data structure. The LFSR-based (Linear Feedback Shift Register) nature of the PRNG in our implementation perfectly suits the GPU's many-core structure due to its register oriented architecture and allows the usage of bit slicing technique to further improve the performance. In our SIMD vectorized fully parallel GPU implementation, each GPU thread is capable of generating a remarkable number of 32 pseudo-random bits in each LFSR clock cycle. We then compare our implementation with some of the most significant PRNGs that display a satisfactory performance in both throughput and randomness criteria. The proposed implementation successfully passes the NIST test for statistical randomness and bit-wise correlation criteria. To the best of authors' best knowledge, our method outperforms the current best implementations in the literature for computer-based PRNG and the optical solutions in terms of performance and performance per cost, while maintaining an acceptable measure of randomness. Our highest performance among all of the implemented CPRNGs with the proposed method is achieved by the MICKEY 2.0 algorithm which shows 1.9x improvement over the state of the art NVIDIA's proprietary high-performance PRNG, cuRAND library, achieving 1.6 Tb/s of throughput on the affordable NVIDIA GTX 980 Ti.

연구 동기 및 목표

  • 일반 목적의 병렬 플랫폼인 GPU에서 고성능 암호학적으로 안전한 난수 생성의 성능 저하 문제를 해결하기 위해.
  • 기존 PRNG의 성능과 비용 효율성을 향상시키면서도 강력한 난수성 보장을 유지하기 위해.
  • 이전에 DES와 같은 대칭 암호에서 사용된 바이트 슬라이싱 기법을, 특히 LFSR 기반 스트림 암호에 적용하기 위해.
  • 열 우선 데이터 표현 방식이 GPU의 SIMD 데이터 경로를 최대한 활용할 수 있음을 보여주어, 고도로 병렬화된 실행을 가능하게 한다는 것을 입증하기 위해.
  • NIST SP 800-22 난수성 테스트 세트를 사용하여 통계적 품질을 검증하고, 최신 기술인 cuRAND와의 성능 비교를 수행하기 위해.

제안 방법

  • GPU의 SIMD 데이터 경로를 최대한 활용하기 위해 열 우선 데이터 표현 방식을 사용하여, 행 기반 연산을 병렬적 비트 수준 계산으로 전환한다.
  • LFSR 기반 스트림 암호인 MICKEY 2.0에 비트 슬라이싱 기법을 적용하여, 고비용의 비트 시프트 및 마스크 연산을 효율적인 레지스터 스왑과 비트 연산(XOR, AND, OR)으로 대체한다.
  • 최적의 스레드 블록 구성(블록당 64개 스레드, 그리드당 256개 스레드)을 사용한 CUDA 커널을 구현하여, 할당률과 메모리 접근의 연속성을 극대화한다.
  • 공유 메모리를 사용하여 난수 생성 중 글로벌 메모리 지연을 줄이고 대역폭 효율성을 향상시킨다.
  • AES 및 Grain과 같은 다른 PRNG에도 내부 구조에 맞게 비트 슬라이싱 논리를 변형하여 일반화한다.
  • 이전 연구와의 공정한 비교를 위해, 처리 능력 단위당 성능을 정규화한다. 특히 오래된 또는 접근이 어려운 GPU 플랫폼에 대해서도 유의미한 비교가 가능하도록 한다.

실험 결과

연구 질문

  • RQ1비트 슬라이싱 기법을 CSPRNG에 효과적으로 적용하여 GPU 플랫폼에서 고성능을 달성할 수 있는가?
  • RQ2기존의 행 우선 레이아웃에 비해 열 우선 데이터 표현 방식이 GPU의 자원 활용도와 성능 향상에 뚜렷한 영향을 미치는가?
  • RQ3제안된 방법은 cuRAND와 같은 기존 라이브러리 및 기타 고성능 PRNG와 비교해 성능과 난수 품질 면에서 어떻게 다른가?
  • RQ4LFSR 기반 스트림 암호인 MICKEY 2.0의 아키텍처가 GPU의 다수의 코어와 레지스터 중심 구조와 비트 슬라이싱 실행에 얼마나 잘 부합하는가?
  • RQ5제안된 방법은 NIST SP 800-22 테스트 세트를 통해 검증된 바와 같이, 고성능과 강력한 통계적 난수성의 두 가지 요건을 동시에 충족할 수 있는가?

주요 결과

  • 제안된 GPU 기반 비트 슬라이싱 구현은 NVIDIA GTX 980 Ti에서 MICKEY 2.0 알고리즘을 사용해 최고 1.6 Tb/s의 성능을 달성하였으며, NVIDIA의 cuRAND 라이브러리 대비 1.9배 향상된 성능을 보였다.
  • Tesla V100 GPU에서는 2.90 Tb/s의 성능을 기록하여 cuRAND를 뛰어넘었으며, NIST SP 800-22 통계적 난수성 테스트 전부에 완전히 준수하였다.
  • 모든 15개의 NIST 통계 테스트(Frequency, BlockFrequency, CumulativeSums, LinearComplexity 포함)에서 p-value가 0.01 이상을 확보하여 생성된 비트스트림의 난수 품질이 매우 높음을 확인하였다.
  • 고비용의 비트 수준 연산(시프트 및 마스크)을 효율적인 레지스터 수준 스왑으로 변환함으로써 GPU 스레드 전반에 걸친 완전한 병렬화를 가능하게 하였다.
  • 일반 목적의 PRNG 및 광학 솔루션 대비 성능 대비 비용 비율이 뛰어나, 고성능 대안으로서 비용 효율성이 뛰어나다.
  • GTX 980 Ti, GTX 1050 Ti, GTX 1080 Ti, Tesla V100 등 다양한 GPU 플랫폼에서의 확장성도 입증되었으며, cuRAND 대비 일관된 성능 향상이 관찰되었다.

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

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

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

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