본문 바로가기
KERD
논문KCI 등재

멀티코어 환경에서 효율적인 엔트로피 원의 설계 기법

An Approach to Constructing an Efficient Entropy Source on Multicore Processor

0

조회

0

다운로드

0

인용

0

참고문헌

키워드

주제분류컴퓨터학

초록

다양한 장비의 인터넷 연결을 지향하고 있는 사물인터넷시대에서 암호기술의 사용을 위해 암호학적으로 안전한난수생성은 중요 요구사항이다. 특히, 생성된 난수의 안전성과 연관된 엔트로피 원은 예측하기 어려운 잡음원을 위해 부가적인 하드웨어 로직을 사용하기도 한다. 비록 성능 측면에서 좋은 결과를 나타낼 수 있으나, 부가적인 리소스의 사용에 기인한 추가적인 전력 소비 및 면적문제 때문에 기존 자원을 최대한 활용하는 엔트로피 수집방법이 요구된다. 본 논문에서 제시하는 엔트로피 원은 멀티쓰레드 프로그램을 지원하는 환경에서 부가적인 장치 없이 공통적으로 사용 가능하므로 암호기술 구현에 있어 경량화의 어려움을 완화시킬 수 있다. 또한, 제안하는 엔트로피 원이NIST SP 800-90B에서 제시한 난수발생기를 위한 엔트로피 입력원 테스트에서 높은 보안강도를 갖는 것으로 평가 되었다.

Abstract

In the Internet of Things, in which plenty of devices have connection to each other, cryptographically secure RandomNumber Generators (RNGs) are essential. Particularly, entropy source, which is the only one non-deterministic part ingenerating random numbers, has to equip with an unpredictable noise source(or more) for the required security strength. Thismight cause an requirement of additional hardware extracting noise source. Although additional hardware resources has betterperformance, it is needed to make the best use of existing resources in order to avoid extra costs, such as area, powerconsumption. In this paper, we suggest an entropy source which uses a multi-threaded program without any additionalhardware. As a result, it reduces the difficulty when implementing on lightweight, low-power devices. Additionally, accordingto NIST’s entropy estimation test suite, the suggested entropy source is tested to be secure enough for source of entropyinput.

참고문헌 (34)

  1. Barker, E., "Recommendation for random number generation using deterministic random bit generators (revised), NIST SP 800-90A", US Department of Commerce, NIST, ~ (2007)
  2. Barker, E., "NIST DRAFT Special Publication 800-90b recommendation for the entropy sources used for random bit generation, NIST SP 800-90B", US Department of Commerce, NIST, ~ (2012)
  3. Jonsson, Jakob, "RSAES-OAEP Encryption. PKCS# 1: RSA Cryptography Specifications Version 2.2, PKCS# 1", RSA Laboratories, ~ (2016)
  4. Gallagher, "Digital signature standard (DSS), FIPS PUB 186-3", ~ (2013)
  5. Messerges, "Power analysis attacks of modular exponentiation in smartcards", CHES, pp.144~157 (1999)
  6. 박호중, "진난수발생기용 난수성 검정 방법 AIS.31에 대한 확률론적 분석 및 보안성 평가 적용 방법", 정보보호학회논문지, 26(1), pp.49~67 (2016), 한국정보보호학회[DOI]
  7. Barker, E., "Recommendation for Random Bit Generator (RBG) Constructions, NIST SP 800-90C,", US Department of Commerce, NIST, ~ (2012)
  8. Hennessy, "Computer architecture: a quantitative approach, 6th Ed" (2011), Elsevier
  9. Gutterman, "Analysis of the linux random number generator", IEEE Symposium on Security and Privacy, pp.370~385 (2006)
  10. Dorrendorf, "Cryptanalysis of the random number generator of the windows operating system", ACM Transactions on Information and System Security, 13(1) (2009)
  11. Shao, "Data Race Detection by Understanding Synchronization Relationships of Thread Segments", IEEE PDP, pp.229~232 (2017)
  12. Yang, "RaceTracker: Effective and efficient detection of data races", IEEE SNPD, pp.223~300 (2016)
  13. Ibing, "Efficient data-race detection with dynamic symbolic execution", IEEE FedCSIS, pp.1719~1726 (2016)
  14. "Portable Operating System Interface (POSIX) Base Specifications, Issue 7, ISO", IEC, pp.2009, ~
  15. Dagum, "OpenMP: an industry standard API for shared-memory programming", IEEE computational science and engineering, 5(1), pp.46~55 (1998)[DOI]
  16. Hall, "User's Guide to Running the Draft NIST SP 800-90B Section 9 Entropy Estimation Tests" (2015)
  17. Maes, "Secure key generation from biased PUFs", CHES, pp.517~534 (2015)
  18. Rukhin, Andrew, "A statistical test suite for random and pseudorandom number generators for cryptographic applications, NIST SP 800-22", Statistical Engineering Division and Computer Security Division, NIST, ~ (2010)
  19. "Method for entropy harvesting for random number generators in multi-core computing environments, patent application number 10-2014-0017136", ~ (2015)
  20. Lim, "Extracting secret keys from integrated circuits", IEEE Transactions on VLSI, 13(10), pp.1200~1205 (2005)[DOI]
  21. Voldman, "Method and system for generating actual random numbers within a multiprocessor system, U.S. Patent No. 6,487,571. 26", ~ (2002)
  22. Lin, "Low-power sub-threshold design of secure physical unclonable functions", IEEE ISLPED, pp.43~48 (2010)
  23. Marton, "Randomness in digital cryptography: A survey", Romanian Journal of Information Science and Technology, 13(3), pp.219~240 (2010)
  24. Suciu, "Unpredictable random number generator based on hardware performance counters", Digital Information Processing and Communications, 2011, pp.123~137 (2011)
  25. Goldberg, "Randomness and the Netscape browser", Dr Dobb's Journal-Software Tools for the Professional Programmer, 21(1), pp.66~71 (1996)
  26. Eastlake 3rd, D., "Randomness requirements for security, RFC 4086,", ~ (2005)
  27. Ellison, "Cryptographic random numbers, Draft P1363", ~ (2007)
  28. Walker, "HotBits: Genuine random numbers, generated by radioactive decay" (2001)
  29. Chindris, "Bipolar junction effects for high entropy data harvesters", IEEE SYNASC, pp.449~452 (2008)
  30. Stefanov, Andre, "Optical quantum random number generator", Journal of Modern Optics, 47(4), pp.595~598 (1999)
  31. Simka, Martin, "Model of a true random number generator aimed at cryptographic applications", IEEE ISCAS, pp.21~24 (2006)
  32. Colesa, "Software random number generation based on race conditions", IEEE SYNASC, pp.439~444 (2008)

이 간행물의 다른 논문 (22건)