Endless Game
Endless는 EOS 기반 Gambling Dapp 중 하나로 Dapp Loader에 따르면 Endless는 Gambling Dapp 내 7위에 랭크되어 있다. 그리고 Dice, Lottery, WWE 등의 다양한 게임을 제공한다. 현재 Endless에서는 새로운 게임 포커와 모바일 스튜디오로 개발한 다른 게임을 개발하고 있으며 사용자를 위해 CPU 사용량을 감소시킬 수 있는 솔루션 또한, 개발 중에 있다고 한다.
기술적으로 Endless는 블록체인을 이용해 어떻게 게임을 구성했는지 간략히 설명한다. (참고 1.)
주사위, 룰렛, 포커 등과 같은 확률 게임은 무작위성이 공정하고 편향되지 않는 메커니즘으로 생성되는 것이 가장 중요하다. 블록 체인이 나오기 전에는 하우스라고 불리는 중앙 집중식 게임 메커니즘을 신뢰할 수 밖에 없었다. 공정하지 않더라도 우리는 알 수 없었겠지.. 그렇기 때문에 Endless는 블록체인을 접목시켜 최적화된 솔루션을 제공한다. 그 방법은 다음과 같다.
0. 플레이어는 원하는 번호에 베팅을 하고, 웹 사이트에서 롤 버튼을 누른다.
1. 사용자 액션 후 사용자의 요청이 referral 정보와 함께 서버에 전송된다.
2. house는 각 플레이어와 각 게임에 대한 random seed를 생성하고 hash를 계산한다.
3. 게임을 하는 동안, house는 house seed를 변경할 수 없게 하기 위해 사용자가 제공한 정보와 house seed의 hash를 사용해 서명(signature)을 만들고 다시 플레이어에게 반환한다. - Scatter Memo에 모든 정보가 기록된다.
4. 트랜젝션에 대해 플레이어가 승인하면, 모든 정보는 스마트 계약과 함께 플레이어의 시드의 plaintext가 전송된다.
5. 그 다음, house는 plaintext에 있는 최종 lucky number 보기 위해 house seed를 스마드 계약에 전송한다.
6. Lucky number은 사용자 제공 seed와 house가 생성한 seed 두 개를 사용해 생성된다.
참고
1. https://medium.com/endless-game/dev-blog-1-안provable-fairness-on-eos-blockchain-e144d50a7d6e