TogetheRand : the Collaborative Random Number Generator
0
조회
0
다운로드
0
인용
0
참고문헌
키워드
초록
Pseudorandom is widely used in video games. Loot box, a set of game items, which can be received by a chance factor including specific type, effect, or performance etc, which is bought for real mone y by a user, is one of its use cases in video games and used as an important part of game business model. In existing games, since pseudorandom number is provided one-sidedly by game provider, it is hard for user to verify provided random number, whether there is game provider’s intervention or no t. In this paper, we propose a collaborative pseudorandom number generator named as TogetheRand. TogetheRand is a smart contract which is executed on blockchain network of Ethereum. Proposed alg orithm collects inputs which is provided by participants, initializes pseudorandom number generator us ing Keccak256 hash function, and generates sequence of pseudorandom numbers using WELL512a ge nerator. Randomness of proposed algorithm is tested using Dieharder tests. Proposed algorithm let bot h user and game provider trust the outputs, generated pseudorandom numbers, since users contribute r andom number, users can check all inputs, and correct execution of pseudorandom number generator i s ensured by blockchain network due to smart contract. Proposed algorithm can be used widely in ap plications, where secure and reliable pseudorandom number is needed. Code is publicly available at ht tps://github.com/TyeolRik/TogetheRand
Abstract
Pseudorandom is widely used in video games. Loot box, a set of game items, which can be received by a chance factor including specific type, effect, or performance etc, which is bought for real mone y by a user, is one of its use cases in video games and used as an important part of game business model. In existing games, since pseudorandom number is provided one-sidedly by game provider, it is hard for user to verify provided random number, whether there is game provider’s intervention or no t. In this paper, we propose a collaborative pseudorandom number generator named as TogetheRand. TogetheRand is a smart contract which is executed on blockchain network of Ethereum. Proposed alg orithm collects inputs which is provided by participants, initializes pseudorandom number generator us ing Keccak256 hash function, and generates sequence of pseudorandom numbers using WELL512a ge nerator. Randomness of proposed algorithm is tested using Dieharder tests. Proposed algorithm let bot h user and game provider trust the outputs, generated pseudorandom numbers, since users contribute r andom number, users can check all inputs, and correct execution of pseudorandom number generator i s ensured by blockchain network due to smart contract. Proposed algorithm can be used widely in ap plications, where secure and reliable pseudorandom number is needed. Code is publicly available at ht tps://github.com/TyeolRik/TogetheRand
참고문헌 (20)
- S. Lee, "All Amendments to the Game Indust ry Promotion Act", The 21st National Assembly (2020)
- 황성기, "인터넷게임 관련 주요 규제 현황 및 개선방향", 언론과 법, 17(3), pp.1~35 (2018), (사)한국언론법학회[DOI]
- A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptogr aphic Applications, "A. Rukhin", NIST, ~ (2010)
- A. Schiffler, "Physical Entropy in Computer G ames", Technoetic Arts a Journal of Speculativ e Research, 8(1), pp.40~ (2010)
- 최성락, "확률형 아이템 자율규제의 적정성에 대한 연구", 한국사회와 행정연구, 30(3), pp.153~174 (2019), 서울행정학회
- J. Von Neumann, "Various Techniques Used in Connection with Random Digits, in Monte Car lo Method, in National Bureau of Standards Applied Mathematics Series", pp.36~38 (1951), US G overnment Printing Office
- O. Taussky, "Generation and Testi ng of Pseudo-random Numbers", National Bureau of Standards, ~ (1954)
- ISO, "IEC", Programming languages — C(N1570), 2011
- S. K. Park, "Random numbe r generators : good ones are hard to find", Communications of the ACM, 31(10), pp.1192~1201 (1988)
- M. Matsumoto, "Mersenne t wister : a 623-dimensionally equidistributed unif orm pseudo-random number generator", ACM Transactions on Modeling and Computer Simulat ion, 8(1), pp.3~30 (1998)
- "random - Genera te pseudo-random numbers" (2021)[URL]
- "rdrr.io, Random: Random Number Generation"[URL]
- F. Panneton, "Improved long-period generators based on linea r recurrences modulo 2", ACM Transactions on Mathematical Software, 32(1), pp.1~16 (2006)
- A. Gholipour, "A Pseudor andom Number Generator with KECCAK Hash", International Journal of Computer and Electrical Engineering, 3(6), pp.896~899 (2011)
- "dieharder" (2020)[URL]
- J. Chen, "Defining Smart Contract Defects o n Ethereum", IEEE Transactions on Software Engineering, pp.1~ (2020)
- C. Techapanupreeda, "Bl ockchain : Challenges and applications", 2018International Conference on Information Networking (ICOIN) (2018)
- "randao.org, Randao: Verifiable Random Numbe r Generation" (2017)[URL]
- D. E. Knuth, "Art of Computer Programming -Volume 2 (Seminumerical Algorithms)" (1997), Addison-Wesley
- P. Galka, "How Randomness Affects Player Ability to Predict the Chance to Win at PlayerUnknown’s Battlegrounds(PUB G)", The Computer Games Journal, 10(1), pp.1~18 (2021)
