加密貨幣交易所 加密貨幣交易所
Ctrl+D 加密貨幣交易所
ads
首頁 > 屎幣 > Info

為什么 DApp 經常會遭遇隨機數攻擊?_APP:玩區塊鏈掙的錢合法嗎

Author:

Time:1900/1/1 0:00:00

9 月 14 日,一款名為“EOSPlay”的 DApp 游戲遭遇了新型隨機數攻擊,一共損失了數萬個 EOS。

或許很多人對「隨機數攻擊」這個詞已經司空見慣了,因為在 DApp 遭遇黑客攻擊的事件中,隨機數攻擊占了很大一部分,很多 DApp 的隨機數被黑客破解了。

你或許會問,隨機數不是隨機的嗎?隨機意味著不可預測,為什么還會被黑客破解呢?

這還得從隨機數說起。

隨機數可以分為真隨機數和偽隨機數。真隨機數需要同時滿足隨機性、不可預測性、不可重現性,而偽隨機數只需要滿足隨機性,或者是隨機性和不可預測性即可。

比特小鹿二季度財報:比特幣產量為758枚,同比增長45.5%:8月11日消息,比特小鹿(Bitdeer)公布截至2023年6月30日第二季度財報,第二季度總收入為9380萬美元,同比增長5%;第二季度凈虧損為4040萬美元,主要來自上市費用與合并的股份支付費用,2022年同期凈虧損1560萬美元;第二季度調整后利潤為230萬美元;第二季度調整后EBITDA為1870萬美元;截至6月30日,Bitdeer持有現金于現金等價物為1.302億美元。2023年第二季度總算力為18.8EH/s,礦機數為199,000臺;2023年第二季度,Bitdeer自挖礦業務產出758枚BTC,同比增長45.5%。[2023/8/11 16:21:17]

真隨機數只存在于物理世界中,一般需要通過物理手段(包括量子過程)獲得,比如我們日常見到的拋硬幣、擲骰子,生成的隨機數就是真隨機數。但是,拋硬幣、擲骰子這種隨機數生成方法的缺點非常明顯,那就是耗時、耗力,而且也無法滿足現代的計算機世界對隨機數的需求。

Unisat:將于今日上線NFT交易市場:7月12日消息,比特幣生態錢包Unisat發推稱,將于今日上線NFT交易市場。

據此前報道,該市場將支持超過1500個NFT系列。為慶祝銘文NFT系列交易上線,UniSat計劃下調整個市場的服務費。[2023/7/12 10:50:03]

因為效率的緣故,現代的計算機軟件主要依賴偽隨機數。最早的偽隨機數生成器由 20 世紀最重要的數學家之一馮·諾依曼創造,通過一個確定的隨機數種子,由確定的算法生成偽隨機數序列。現在的主流計算機編程語言,默認的是將 1997 年發明的梅森旋轉算法作為生成偽隨機數的方法。

SEC的訴訟導致近9.96億美元的以太坊和比特幣撤出:金色財經報道,距離幣安面臨美國證券交易委員會(SEC)的訴訟已經過去了六天,而Coinbase也在五天前遇到了類似的法律挑戰。在這些事件發生后,大量的比特幣和以太坊從交易所中撤出,數據顯示,近9.96億美元的以太坊和比特幣已經從中心化交易平臺上撤出。[2023/6/12 21:31:00]

偽隨機數最大的缺陷是,只要種子不變,生成的偽隨機數序列也不會變。換句話說,只要你能拿到種子,你就可以破解隨機數。

計算機生成偽隨機數的過程,或多或少與這臺計算機的物理狀態或運算狀態有關。也就是說,同一套隨機數算法,不同的計算機,或是同一臺計算機在不同的時刻,生成的隨機數是不一樣的。

Fuse Network集成Web3存儲和隱私協議Arcana:金色財經報道,Fuse Network宣布集成Web3存儲和隱私協議Arcana Network。通過這一集成,項目團隊可以在錢包中添加社交賬號登錄方式,還可以完全在鏈上存儲數據,允許用戶擁有自己的數據并對其擁有完全的控制權。Arcana的去中心化存儲、身份和訪問管理以及私鑰管理堆棧現可用于任何基于Fuse構建的應用程序和產品。[2022/6/5 4:02:41]

然而,這種傳統的計算機偽隨機數生成方法雖然足夠安全,卻并不適用于區塊鏈。區塊鏈是一個分布式的系統,同一個 DApp 在不同的節點上運行,采用的隨機數必須要一致,這樣才能讓各個節點進行驗證。所以,DApp 的隨機數來源,不能是運行這個 DApp 的計算機自動生成的,因為這樣的話,不同的節點計算機運行的結果就不一樣了。

那么,區塊鏈上的 DApp 隨機數從哪里來呢?主要有以下三種方法:

第一種方法是通過可信第三方提供隨機數。比如說專門提供隨機數的網站 random.org,我們可以通過獨立于區塊鏈之外的 Oraclize 預言機為以太坊區塊鏈上的 DApp 獲取隨機數。當然,這種依賴可信第三方的方法有違區塊鏈去中心化的精神。

第二種方法是不同的參與者一起合作生成隨機數。比如以太坊區塊鏈上的 RANDAO,任何人都可以提交一個數字,RANDAO 將所有提交的數字集合作為種子,生成隨機數,其他 DApp 可以付費調取 RANDAO 生成的隨機數,這些費用會獎勵給那些提交了數字的用戶。因為以太坊的去中心化,你不知道別人提交了什么數字,所以要破解 RANDAO 的隨機數種子難度很大。

第三種方法是采集區塊鏈上的信息作為種子。這也是目前大部分 DApp 所采用的隨機數生成方法,缺陷是隨機數的種子“幾乎是”透明的。以本文開頭提到的 EOSPlay 為例子,這款游戲的隨機數采用的是未來某個區塊的 ID(哈希值)作為隨機數的種子。

那么,黑客是如何實現攻擊的呢?根據區塊鏈安全公司慢霧科技的分析,可能使用了以下的方法:

1、黑客為自己和項目方租用了大量的 CPU;2、黑客發起大量的延遲交易;3、由于以上兩點原因,導致 CPU 價格被拉高,從而導致其它用戶 CPU 不足;4、因為 CPU 不足的原因,其他用戶難以發送交易,黑客得以使用自己的交易占滿區塊;5、根據提前構造的交易內容,黑客可以成功預測出區塊哈希。

也就是說,雖然哈希算法不可逆,但是黑客可以通過控制輸入實現輸出的控制:控制區塊內的交易內容,從而控制區塊信息,進而控制區塊哈希值,最終達到預測開獎結果的目的。

最后,我們總結一下:

隨機數可以分為真隨機數和偽隨機數,真隨機數只存在于物理世界中,一般需要通過物理手段獲取。為了效率,計算機主要采用偽隨機數,然而由于區塊鏈的分布式特性,足夠安全的傳統計算機偽隨機數生成方法并不適用。大部分 DApp 采用的是收集區塊鏈上的信息作為偽隨機數的種子,而要想設計足夠安全的偽隨機數,難度非常大,這就是為什么很多 DApp 經常遭受隨機數攻擊的原因。

Tags:APPDAPDAPP區塊鏈Wrapped x42 Protocoldap幣是什么幣區塊鏈dapp開發合法嗎玩區塊鏈掙的錢合法嗎

屎幣
比特幣入門丨怎么保管你的數字貨幣?_比特幣:LFETH價格

在交易平臺買入你要的數字貨幣后,如果較長時間不賣的話,為了資產安全或轉帳操作便捷,建議把幣放在自己保管的錢包會更加穩妥.

1900/1/1 0:00:00
「科普」EOS到底是空氣還是機遇_EOS:eosreel

只要是進入幣圈一段時間的同學們,應該都聽過EOS(佳能相機發幣了?)的大名。那么EOS到底是什么呢?今天駝哥帶你了解一下? EOS是個底層公鏈項目,全稱是“Enterprise Operatin.

1900/1/1 0:00:00
商業模式及其 SubDAO 深入研究_YGG:區塊鏈

摘要: 本文以 Axie Infinity 為例探討了公會的意義及其運作方式,從參與者的故事可以看到低門檻的公會對于普通人生活的影響.

1900/1/1 0:00:00
我愛加密世界 但「她」現在真的令我失望_加密貨幣:DAO

撰文:amirbolous.eth 編譯:Amber 在最近一段時間里,我一直在與自己加密世界中經歷的某些挫折以及心中對加密貨幣未來持續累計的「疑慮」斗爭著,頭腦中的兩種聲音之間的爭斗愈發激烈.

1900/1/1 0:00:00
AMM自動做市機制下如何平緩價格滑點 規避無償損失?_AMM:LANC

AMM自動做市機制下的交易為什么會產生價格滑點,并帶來無償損失呢?理論上,公開市場上的任何一筆交易都會對標的物價格帶來影響,造成標的物價格變動,這種影響和變動或大或小,或直接或潛在.

1900/1/1 0:00:00
零知識證明:隱私問題的解決方案_ALLY:WAL

采用零知識證明最知名的技術就是匿蹤幣Zcash的zk-SNARKs。目前主流加密貨幣,不論是比特幣或以太幣都是匿名資訊公開,簡單來說就是不會有人知道錢包的主人是誰,但是大家都知道這錢包有多少錢、.

1900/1/1 0:00:00
ads