DOI QR코드

DOI QR Code

비정형 빅데이터를 이용한 난수생성용 블록체인 오라클

Blockchain Oracle for Random Number Generator using Irregular Big Data

  • 정승욱 (건양대학교/사이버보안공학과)
  • 투고 : 2020.04.23
  • 심사 : 2020.06.26
  • 발행 : 2020.06.30

초록

블록체인 2.0은 프로그래밍 가능한 스마트계약을 사용하여 다양한 DApp(Distributed Application) 개발을 지원한다. 하지만 스마트계약이 동작하는 환경은 블록 높이, 블록 해쉬, 트랜잭션 해쉬 등 결정된 데이터만 접근할 수 있어서 블록체인 기반 복권, 배팅, 키 생성 등 난수를 필요로 하는 응용은 블록체인 외부에서 데이터를 가져 올 수 있는 오라클 서비스를 이용해야 한다. 본 논문에서는 난수 생성 오라클 서비스를 개발하였다. 또한 난수 생성을 위해 비정형 빅데이터를 entropy source로 사용하였다. 이렇게 생성된 난수를 NIST SP800-22 난수 테스트하여 난수로 사용할 수 있음을 확인하였다. 또한, 물리적 세계를 entropy source로 사용하는 기존의 진성난수 생성기에 비해서 비용측면에서 유리함을 설명한다.

Blockchain 2.0 supports programmable smart contract for the various distributed application. However, the environment of running smart contract is limited in the blockchain, so the smart contract only get the deterministic information, such as block height, block hash, and so on. Therefore, some applications, which requires random information, such as lottery or batting, should use oracle service that supply the information outside of blockchain. This paper develops a random number generator oracle service. The random number generator oracle service use irregular big data as entropy source. This paper tests the randomness of bits sequence generated from oracle service using NIST SP800-22. This paper also describes the advantages of irregular big data in our model in perspective of cost comparing hardware entropy source.

키워드

참고문헌

  1. 신동진, 박창섭, "Hyperledger Fabric을 이용한 중첩형 무한 해시체인 기반의 클라이언트 인증기법", 융합보안논문지, 제18권제4호, pp. 3-10, 2018.
  2. 지승원, 이원기, 고태광, 박소희, 오구연, 김종민, 김동민, "블록체인 기반의 SCADA 시스템 보안", 융합보안논문지, 제19권제5호, pp. 55-61, 2019. https://doi.org/10.33778/kcsa.2019.19.5.055
  3. 지승원, 이원기, 고태광, 박소희, 오구연, 김종민, 김동민, "블록체인 기반의 SCADA 시스템 보안", 융합보안논문지, 제19권제5호, pp. 55-61, 2019. https://doi.org/10.33778/kcsa.2019.19.5.055
  4. G. Wood, "Ethereum: A secure decentralised generalised transaction ledger.Ethereum Project," Yellow Paper, 2014.
  5. N. Szabo, "Smart Contract," http://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinterschool2006/szabo.best.vwh.net/smart.contracts.html, 1994.
  6. A. M. Antonopoulos and G. Wood, "Mastering Ethereum," O'Reilly, Dec. 2018.
  7. Quanta, www.quanta.im
  8. Katz, J., Menezes, A. J., Van Oorschot, P. C., & Vanstone, S. A. "Handbook of applied cryptography," CRC press, 1996.
  9. Instagram, https://www.instagram.com/
  10. R. Andrew, et al. "A statistical test suite for random and pseudorandom number generators for cryptographic applications," Booz-Allen and Hamilton Inc Mclean Va, 2001.
  11. POA, https://en.wikipedia.org/wiki/Proof_of_authority
  12. Oraclize, http://provable.xyz/
  13. Prusty, Narayan. "Building Blockchain Projects," Packt Publishing Ltd, 2017. pp203-208.
  14. TLSNotary, https://tlsnotary.org/TLSNotary.pdf
  15. Oraclize bridge, https://github.com/provable-things/ethereum-bridge
  16. Pub, NIST FIPS. "180-2." Secure Hash Standard, National Institute of Standards and Technology, US Department of Commerce, 2004.
  17. A python implementation of the SP800-22 Rev 1a PRNG test suite https://github.com/dj-on-github/sp800_22_tests
  18. Who Scales It Best? Blockchains' TPS Analysis, https://hackernoon.com/who-scales-it-best-blockchains-tps-analysis-pv39g25mg
  19. Ranking Ethereum Smart Contractshttps://medium.com/@vikati/ranking-ethereum-smart-contracts-a27e6f622ac6
  20. Ethereum Smart-Contracts: Most of them are rarely used !, https://hackernoon.com/ethereumsmart-contracts-most-of-them-are-rarelyused-f45749730d3e
  21. randao.org, "RANDAO : A DAO working as RNG of Ethereum," Feb. 2019, https://github.com/randao/randao.
  22. Chatterjee, Krishnendu, Amir Kafshdar Goharshady, and Arash Pourdamghani. "Probabilistic Smart Contracts: Secure Randomness on the Blockchain." arXiv preprint arXiv:1902.07986 (2019).
  23. Randomness and Integrity Services, "True random number services," https://www.random.org