隨機&命運
如果現在有一群極其富有但極其無聊的的BTC巨鯨,決定每年共同拿出1000個BTC舉辦一次俄羅斯輪盤。他們會準備一把左輪手槍,在可裝6發子彈的彈夾中只裝入一顆子彈,然后對準你的腦袋扣動扳機。每次扣動扳機所產生的結果可以視為一種平行宇宙,由此在這個單一事件下,總共有對應著6種不同結局的平行宇宙,而每種平行宇宙產生的概率相同。這其中的5個平行宇宙會使你一夜暴富,甚至榮登《Forbes》封面,而剩下的唯一一個平行宇宙則會讓你死相難看,貽笑大方。
你愿意參與這個賭局嗎?愿意參與一屆?兩屆?還是每年都來碰碰運氣?
玩這個游戲需要勇氣,當然也需要動一些腦筋。83%是一個很高的勝率,確定性達到83%的事情在生活中也并不多見。但如果有些貪婪的傻瓜選擇一直玩下去,那20年后他們中的絕大多數應該都可以在報紙的訃聞一欄找到。在這個假設的俄羅斯輪盤游戲里,規則制定得非常清楚,賠率可以計算,風險也可以衡量,所有條件信息都已提前披露,但在現實世界中,我們往往面臨的都是非對稱信息的動態博弈(AsymmetricInformationGameTheory)。左右我們命運的并不是一把左輪手槍,或是一副撲克牌。我們不知道有多少彈夾中有多少枚子彈,也不知道這副牌有多少花色。在無限多重平行宇宙和無窮大的風險條件下,我們的命運不可預知。
而這正昭示著我們生活在一個充滿隨機的世界中。
動態 | EOS競猜游戲EOS Royale遭隨機數攻擊:今天下午1:47-3:20之間,PeckShield安全盾風控平臺DAppShield監測到,黑客向EOS競猜類游戲EOS Royale發起連續攻擊,獲利上萬個EOS。安全人員初步研究發現,此次攻擊是黑客通過不斷發起Onerror獲取游戲計算隨機數方法,從而能夠提前計算或者阻塞游戲合約開獎。PeckShield安全人員在此提醒,開發者應在合約上線前做好安全測試,特別是要排除已知攻擊手段的威脅,必要時可尋求第三方安全公司協助,幫助其完成合約上線前攻擊測試及基礎安全防御部署。[2019/8/4]
如費曼所言,自然界允許我們計算的只是概率。一旦我們具備了計算「概率振幅」的超能力,我們就可以成為先知,預測甚至改變未來。換句話說,誰掌握了隨機性,誰就拿到了命運的骰子,成為了上帝。
隨機&安全
將這種思維平移至加密世界中,生成隨機數的機器就可以被視為是傳達上帝神諭的使者。也正是因為扮演著這樣的角色,預言機(oracle)才由此得名。在過去關于預言機的文章中,我們已經指出由于區塊鏈系統的透明性,其鏈上生成的一切算法、輸入、輸出都會被暴露給系統參與者。因此在鏈上直接生成的隨機序列實際是可以被預測的。
一些典型的鏈上隨機數生成方法,比如未來區塊哈希,都存在很大的作弊空間和安全漏洞。舉一個簡單的例子,如果礦工在玩一個游戲,這個游戲的中獎金額是10ETH,而區塊獎勵的金額卻只有3ETH,那么礦工當然有明顯動機去作弊。他可以通過丟棄和不發布區塊來影響隨機序列的生成(BlockWithholdingAttacks),從而為自己贏得在游戲中優勢。這相當于是你和礦工打同樣一局撲克,但人家可以換底牌。而如果將這種可以被篡改和預測的偽隨機序列應用到Web3各個場景中,我們不難想象其背后的巨大安全風險和不公平性:一旦黑客或攻擊者找到隨機算法,并測算出了隨機序列的初始輸入值,那么無論是NFT的空投發放,GameFi中的極品裝備爆出,還是用戶個人錢包的私鑰地址生成,都有可能被操縱和篡改。
動態 | EOS競猜游戲OnePlay遭隨機數破解:今天凌晨00:22~01:02之間,PeckShield安全盾風控平臺DAppShield監測到黑客向EOS競猜類游戲OnePlay發起連續攻擊,不正當獲得游戲合約的幾乎全部EOS。并用同樣的攻擊手段投注游戲代幣ONE,獲利近百萬游戲代幣,隨后轉入newdex交易所售賣。PeckShield安全人員初步研究發現,此次是因游戲合約隨機數問題被攻破,值得注意的是,此次攻擊者和3月2日攻擊另一知名EOS游戲的是同一人。[2019/3/5]
那究竟怎樣的隨機數才是真正可信和安全的呢?這里我們就需要先對隨機數的分類做一個簡單了解。
一般地,我們將隨機數分成兩種:真隨機數
其中,偽隨機數又可以被細分為:弱偽隨機數和強偽隨機數。?
正如「偽」這個詞所暗示的那樣,偽隨機數不是真正的隨機。所有在區塊鏈上生成的隨機數也都是「偽」的。本質上,PRN是計算機軟件根據既定的數學公式和算法指令所輸出的看似隨機的數字序列,需要外部輸入一個初始值來充當seed。并且和許多人天然的認知相反,計算機其實很難被用來生成一些偶然的條件,因為它本身就是可預測的設備。元器件是確定的,線路是預設的,代碼和算法命令是明確的,在種種固定的外界條件下,我們完全可以通過某些途徑定位出序列結果。而能夠被算出的結果,emm怎么不算……偽隨機呢?
動態 | PeckShield: EOS競猜游戲HotDice今晨遭隨機數破解:據 PeckShield 態勢感知平臺01月04日數據顯示:今日凌晨02:10-02:24之間,黑客向EOS競猜類游戲HotDice游戲發起攻擊,并不當獲利轉至交易所。我們注意到, 該HotDice游戲剛剛于1月2日下午上線,不到兩天時間就被攻破。PeckShield安全人員認為目前的EOS競猜類游戲屢遭黑客攻破,在于開發者沒能對合約類高危賬戶及已標為黑名單的賬戶缺乏有效檢測、阻斷和隔離舉措。[2019/1/4]
真正的TRN,是從噪音,混亂現象,量子隨機過程等物理現象中提取出來隨機性,引入計算機才得以生成的。直白一點講,就是把鏈下的一個大骰子接到了計算機。
在性質上,TRN需要同時具備隨機性,不可預測性和不可重現性三重特質:
隨機性:數列完全雜亂無章,不存在統計學偏差,但不代表不會被看穿
不可預測性:在知道過去數列的前提下,依然無法預測接下來生成的數列
不可重現性:無法重現完全相同的數列,除非將原本的數列保存下來
強PRN只具備前兩者,而弱PRN只具備隨機性這一個性質,很容易被看穿。
動態 | 安比(SECBIT)實驗室預警FOMO3D游戲隨機數漏洞:經Reddit 用戶 karalabe 爆料 ,安比(SECBIT)實驗室審計后確認,FOMO3D 游戲的智能合約存在隨機數漏洞可被利用,FOMO3D 合約及所有抄襲源碼的山寨合約均存在該安全漏洞。原本設計上隨機性較大的空投游戲可通過特殊手段操縱,大大提高中獎概率。漏洞細節為:以太坊智能合約環境中難以生成無法預測的隨機數,FOMO3D 開發者在其合約中增加了判斷調用者是普通人類還是合約的判斷邏輯來嘗試規避,但此邏輯實現存在漏洞。攻擊者利用借助合約提前預測隨機數,從而大大增加自身中獎概率。
評級機構Tokeninsight之前曾提示,FOMO3D存在合約安全風險可能性,且后進場玩家有較大投資風險。[2018/7/24]
我們說一個隨機數可信,安全,最起碼的就是指它不會被看穿。因此具有不可預測性的TRN和強PRN都可以被用作可信隨機數引入智能合約。弱PRN是不能被應用到比如生成密鑰,生成口令密碼等等密碼學相關的場景中的。
至于如何生成可信安全的隨機數,目前來看最直接高效的方法就是通過預言機鏈接外部API并生成加密認證。比如Chainlink的可驗證隨機函數服務,就是通過在測試網絡中接入外部API,再用公鑰和智能合約的seed來驗證生成的強PRN,然后將其傳輸至智能合約。Chainlink的VRF服務主要采取訂閱賬號的收費方式,用戶在將足夠的LINK代幣存入賬戶后即可通過發送訂閱請求來獲取其提供的隨機數。
BM解答EOS區塊鏈中隨機數的問題:據金色財經合作媒體IMEOS報道:今天,BM在EOS開發者群回答了EOS區塊鏈的安全性問題,因為有人對基于生成隨機數的智能合約是否安全可靠,節點是否容易作弊提出了質疑。他回答道,保證安全性最簡單的方法是讓參與雙方共同承擔責任。如果用戶信任區塊生產者,那么他就可以獲取區塊生產者在記錄交易的特定時機獲取某些信息的哈希值,這些哈希值將作為“隨機數”以確保安全性。[2018/4/25]
再比如,API3最近選擇通過和澳大利亞國立大學量子光學團隊合作,為dApp和Web3各類產品提供量子隨機數生成服務,將其基于量子現象的生成TRN驗證上鏈交付給請求者。QRNG也是目前唯一一個生成TRN的服務機制,根據其白皮書的相關論述,QRNG能在最大程度上防止女巫攻擊,并且這一功能完全免費使用。
隨機&Web3
在理解了可信隨機數的定義與來源后,我們來談談一個更實際的問題:隨機數在Web3到底有什么用?
事實上,隨機數在幾乎所有的Web3場景和用例中都不可或缺。
1.GameFi??
在游戲中需要用到概率分配的情況比比皆是,RPG游戲便是一個典型的例子。有些角色非常稀有,具有罕見的屬性,而有些角色就極為平常。通常越是稀有的角色,就價值越高,越能幫助用戶獲得高額的經濟回報。比如Axie,每個精靈角色都有六個組成部分,每個部分都有不同的屬性和能力。游戲廠商想要為用戶創造個性化的游戲體驗,就必須把角色的分配機制做好,把分配概率設置得盡量公平。
在PVP對戰中,玩家獲勝的幾率和贏得獎賞的多少都取決于他們在對戰中被分配到的對手。如果游戲配對機制不公平,很有可能直接導致玩家的流失。而在世界探索類游戲中,玩家在探索地圖過程中獲得稀有物品和裝備的幾率也需要一個保證公平的概率模型。在卡牌類游戲中,玩家使用卡牌的順序很大程度上充當著比賽的勝負手。在射擊類游戲中,射擊的命中率,角色復活地點的選擇都會對玩家的游戲體驗造成一定影響。
上述提到的種種游戲歸根結底,本質都是需要通過注入一定的不可預測性來增強游戲的可玩度。而不可預測性的產生,就必然需要引入可信的隨機數。
2.NFT
和GameFi中角色屬性具有不同構成一樣,NFT的細節也由不同的屬性組成。比如BAYC的NFT,就包括背景、衣著、耳飾、眼睛、毛發、帽子和嘴七個不同的屬性,而屬性的稀有度實際就決定了該NFT的價值。對于稀有度分配和屬性總量上限的制定,都可以通過利用可信隨機數來解決。
此外,隨著越來越多NFT社區的建立和成長,項目方也經常會在特殊節日里或是達成某些里程碑時,通過發放隨機的NFT空投獎勵來激發成員的忠誠和活躍度。而空投哪些地址,怎樣保證空投的公平性,都是需要項目方謹慎地根據一定發放機制來執行。可信隨機數在這類情景下就可以被視為一種良好的解決方案。事實上如今大部分NFT的空投激勵活動也都是集成ChainlinkVRF等服務開展的。
3.DeFi
類似Olympus這樣的DeFi協議和算法穩定幣協議中,其質押機制通常會設有變基質押流程來解決份額稀釋問題,或是激勵特定的市場行為,比如保持算穩的價格錨定。而rebase機制的一個「敏感性」強變量就是其周期時間。
設定的rebase周期時間如果長期不變,就很可能會被短期套利者利用。因此rebase機制設計可以應用可信隨機數,來決定一個變更調整的大致周期。
在一些創新型的YieldFarming協議中,其獎勵機制也會引入一定的波動性來提高用戶的參與度。參與度高貢獻大的用戶的年化收益率會區別于普通或是參與度較低的用戶。因而資金池中獎勵大小的分配和收益幅度的增減,都會需要使用隨機數來調節和建立模式。
4.DAO
在DAO的治理中經常需要成員為組織做出一些關鍵決策,一個龐大的DAO社區往往可能通過設立董事會等核心管理層來更高效地執行日常決策。這些董事會和管理人員的選擇和增補需要一個公平透明的機制來進行,而引入可信隨機數對于這類機制的設立可以被認為是一個最優及最便捷的選擇。
此外,在一些涉及到大量資金管理或是專門進行投資的DAO中,隨機數也可被用以提高成員身份認證系統的安全性,防止黑客或惡意攻擊者逆向工程身份認證的過程,保證DAO內資金庫的安全。
5.L1共識機制中VRF的運用
新型公鏈需要面對的一個很大問題就是分片后安全性的降低。在未分片前,網絡中所有的驗證者共同驗證所有交易;但在分片后,這些驗證者被平均分配到每個分片上的進行驗證,這就使得每個分片被fork的幾率大大提升。解決這個安全性問題的一個良好方案就是讓攻擊者無法提前預知每個分片的驗證者,而這就需要引入一定的隨機性和不可預測性。NEAR就是通過VRF服務對驗證者進行隨機分配,從而隱藏驗證者具體驗證的分片信息。
寫在最后
隨機性之所以令人著迷,是因為它意味著不確定,意味著一種可能性。可能性能為我們帶來希望,也會為我們帶來恐懼,所以決定論與非決定論的爭執綿延至今。而上帝究竟擲不擲骰子其實也沒有那么重要。也許世間萬物都在無可挽回地走向大數定律,也許所有宿命般的相識都不過是概率上的偶然,也許你、我、他都只是在Web3隨機漫步的傻瓜。
但不知道答案,總是比得到一個錯誤的答案有意思得多。正如卡洛?羅威利在書中提到的那樣:「What’snonapparentismuchvasterthanwhat’sapparent(看不清的比看得清的更廣闊)」。
保持愚蠢,敬畏隨機。
這是一個關于個體在DAO中積極做出有意義貢獻的過程中所經歷的特定時間點的討論。ThestrengthofaDAOcomesfrommanycontributors.積極的貢獻者是DAO的命脈.
1900/1/1 0:00:00編者薦語: 觀察歷史,是為了最大程度地理解未來,這篇文章給了一個很好的復盤角度。筆者也曾見證過幾輪周期,所有具備波動性質的市場,很多時候都在走極端,要么走向一個極端,要么走向另一個極端.
1900/1/1 0:00:00從傳統公司到去中心化自治組織,組織形式的變化伴隨著權力結構的調整。如果你在公司的工作中感到自己像個機器,沒有自我亦沒有自由,或許你該給自己和DAO一個機會.
1900/1/1 0:00:00頭條 ▌阿根廷因電力短缺打壓加密貨幣礦工金色財經報道,阿根廷加密采礦公司BitPatagonia工業總監表示,最近該公司的電費上漲了400%,這是影響當地礦工的政策變化的結果.
1900/1/1 0:00:00本文整合自Twitter大V對當前加密市場行情的觀點言論,其中有苦水、有雞湯、也有強心劑,僅供參考,請各位讀者切勿作為交易依據,DYOR.
1900/1/1 0:00:00話說寫這篇文真的是情緒復雜!因為上個月才剛剛寫了Terra的7武器系列,這個月便發生了可以記錄在區塊鏈史冊的Luna崩盤事件,臉打的那叫一個啪啪作響…任你七武器再強,我依然一劍破萬法!短短幾天.
1900/1/1 0:00:00