公平結果驗證

網上博彩最容易被大眾標籤的地方是結果產生欠透明度,公平性成疑。如何有效建立彼此的信任,是長遠經營成功的關鍵!這裡會分享一下,一個非常有趣而且聰明的數學方法去針對這方面需要。

首先,在數學層面,有一項加密方式叫SHA256,它是由美國國家安全局於2008年所發表的,詳細資料可按這裡。它的特色是,可以把任何字串句子,加密成一串長32個字母混合數字的字串,例如:

把"Hello"加密成:

"185f8db32271fe25f561a6fc938b2e264306ec304eda518007d1764826381969"

但如果我們輕輕把"Hello"改成"Hella",那結果將會是完全不同:

"62197ce641a17c96cf39ed51e72e86fd486f3de7b0135f8b8f0f7364dc010e54"

試嘗加密其他可到這裡

而且,有一個非常重要的特性,就是這個加密是單向的!即是說,如果我們只有加密後的結果,是無法運算出原本的字串,唯一方法是隨機撞中,但那需要極多的時間,或極大的hashing power,這大概是不可行。

正正應用以上特性,遊戲的結果可以結合伺服器方的秘密種子(即"Hello")及由玩家提供的輸入/隨機字串所產生,而在下注及結果產生之前,伺服器方會把已加密的結果字串("185f8db32271fe25f561a6fc938b2e264306ec304eda518007d1764826381969"),傳給玩家作記錄。當結果公怖後,伺服器方的秘密種子("Hello")也隨之公開,那玩家就可以利用SHA256加密工具去驗證一次,那秘密種子加密後,是不是跟"185f8db32271fe25f561a6fc938b2e264306ec304eda518007d1764826381969"一致。如果是,那代表,"Hello"是在結果產生及下注前已經存在,而不是針對自己的下注決定所產生出來欺騙玩家。






留言

這個網誌中的熱門文章

Smart Contract and Random Number

Blockchain-based Provably Fair Betting

Adding Vanil tokens to your wallet