近期區塊鏈領域黑客攻擊事件頻發,其中有一個很讓Cocoa感興趣的就是Wintermute錢包因靚號地址的問題損失約1.6億美元,具體說來話長,可以參見慢霧的這篇分析。
0.背景簡介
關于什么是靚號地址這里簡單解釋一下,以太坊錢包的地址是一個由0x開頭40個隨機字符的16進制字符串,比如V神的錢包地址就是0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B,很難記憶,也沒有個性特色。
因此有人就別出心裁,通過暴力枚舉的方式,試圖找到好看的靚號地址,比如0x888888開頭,或者為了節約合約部署的費用,使用0x00000開頭的地址。
Profanity就是這樣一個靚號地址生成工具。Profanity的特點就是使用了GPU,所以比其他工具更快地找到靚號地址。
Web3身份構建器Carv完成400萬美元融資,淡馬錫旗下Vertex Ventures領投:11月22日消息,針對游戲玩家的去中心化身份(DID)解決方案 Carv 以 4000 萬美元估值完成 400 萬美元融資,淡馬錫旗下風險投資公司 Vertex Ventures 領投,其他投資方包括 EVOS(ATTN Group)、SNACKCLUB(Loud Gaming)、Infinity Ventures Crypto、YGG SEA、UpHonest Capital、Lyrik Ventures、Lintentry Foundation、PAKADAO、7UpDAO 和天使投資人 Aliaksandr Hadzilin(NEAR 聯合創始人)等。
總部位于洛杉磯的 Carv 主要產品包括一個聚合來自 Web2 和 Web3 的游戲玩家數據引擎,并將這些信息集中在唯一的用戶 ID 下。Carv DID 系統兼容包括以太坊和 Solana 在內的 20 多個 Layer 1 網絡。(TechCrunch)[2022/11/22 7:56:29]
總之,原項目因為存在漏洞,目前倉庫已關閉,而且也不推薦使用,但發現漏洞的1inch幫人幫到底、送佛送上天,提供了船新版本的無漏洞Profanity2,繼續滿足大家的虛榮心。
Beosin:BSC鏈上的gala.games項目遭受攻擊事件簡析:金色財經報道,根據區塊鏈安全審計公司Beosin旗下Beosin EagleEye 安全風險監控、預警與阻斷平臺監測顯示,BSC鏈上的gala.games項目遭受攻擊,Beosin分析發現由于pNetwork項目的bridge配置錯誤導致pTokens(GALA) 代幣增發,累計增發55,628,400,000枚pTokens(GALA),攻擊者已經把部分pTokens(GALA) 兌換成12,976個BNB,攻擊者(0x6891A233Bca9E72A078bCB71ba02aD482A44e8C1)累計獲利約434萬美元。Beosin Trace追蹤發現被盜金額還存在攻擊者地址中。
第一筆攻擊交易:0x4b239b0a92b8375ca293e0fde9386cbe6bbeb2f04bc23e7c80147308b9515c2e
第二筆攻擊交易:0x439aa6f526184291a0d3bd3d52fccd459ec3ea0a8c1d5bf001888ef670fe616d[2022/11/4 12:17:00]
但個人感覺1inch安全功夫了得,文檔水平太爛,Cocoa貴為期末考試滿分的密碼學小王子,都看了5分鐘才理解到底怎么用。廢話少說,以下就是使用教程。
IMF:全球有超過一半的央行正在探索或開發CBDC:金色財經報道,國際貨幣基金組織(IMF)的一篇文章顯示,截至2022年7月,全球有近100種央行數字貨幣(CBDC)處于研究或開發階段,有兩種CBDC已經全面啟動。除了促進金融包容性之外,專家認為,中央銀行發行的貨幣可以為國內支付系統創造更大的彈性,并促進更多的競爭,這可能會更好地獲得資金,提高支付效率,并降低交易成本。但發行CBDCs央行也需要考慮相關風險。[2022/9/12 13:23:30]
1.編譯代碼
考慮到私鑰的安全性,這類項目建議從官方源碼編譯使用,不過Profanity2有個創新改進,下面會提。
1inch這次提供的是Linux下編譯的代碼,在Windows下編譯需要改一個地方,主要是把Dispatcher.cpp中的以下代碼修改掉。
Polygon推出適用于Gnosis Safe的PoS橋Gnosis Bridge,方便用戶安全轉移資產:8月12日消息,Polygon宣布推出適用于Gnosis Safe的Polygon PoS橋Gnosis Bridge,幫助用戶在Polygon和以太坊間轉移資產。
據悉,Gnosis Bridge目前支持MetaMask、Coinbase和Wallet Connect三個錢包。[2022/8/12 12:20:48]
#include<arpa/inet.h>改成#include<Winsock2.h>
另外還涉及到OpenCL的SDK以及編譯環境搭建的問題,總之這里就假設你已經拿到了可執行程序。
2.本地生成密鑰對
Profanity2的一大改進就是將原來直接生成私鑰、再計算公鑰的步驟,改成:
先生成密鑰對然后把公鑰A放到程序去跑,生成私鑰B最后把私鑰A和私鑰B數學相加,得到私鑰C這個私鑰C對應的公鑰C就是你想要的的靚號了。
其中的數學原理Cocoa還沒深入研究,大致猜測就是先用一個安全可靠的工具生成密鑰對,再通過程序暴力試出一個偏差量,使私鑰加上這個偏差量可以導出靚號公鑰。
這樣的一個好處就是Profanity2可以交由第三方或者云端來運行,因為最終的私鑰C,是由私鑰A和私鑰B相加得到的。
因此首先要生成私鑰A和公鑰A,官方提供了命令,在Linux下直接執行即可:
$opensslecparam-genkey-namesecp256k1-text-noout-outformDER|xxd-p-c1000|sed's/41534e31204f49443a20736563703235366b310a30740201010420/PrivateKey:/'|sed's/a00706052b8104000aa144034200/'$'nPublicKey:/'
上述命令執行完成后,屏幕上便會顯示出PrivateKey和PublicKey,分別就是私鑰A和公鑰A,請注意私鑰A一定要保管好。
3.使用公鑰A去跑出私鑰B
將上面步驟得到的PublicKey去掉開頭的04也就是公鑰A,放到Profanity2中去跑,命令如下:
profanity2--matchingc0c0aXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-z公鑰A
稍等一會就會跑出來一個私鑰B,過程和原版Profanity類似。
4.最終計算得到靚號地址對應的私鑰C
拿到私鑰B后,我們只要加上私鑰A,即可得出最終靚號地址對應的私鑰C了。
官方給了兩個命令,分別是shell的和python的,因為我的kali好像沒有bc,所以用了python的那個。其中私鑰A記得前面加上0x。
(echo'ibase=16;obase=10'&&(echo'(PRIVATE_KEY_A+PRIVATE_KEY_B)%FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F'|tr''''))|bc
$python3
hex((PRIVATE_KEY_A+PRIVATE_KEY_B)%0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFC2F)
最后就得到一個0x開頭的私鑰C,導入metamask等錢包就可以看到我們的靚號地址啦。
附贈章節:漏洞原理簡介
以太坊的私鑰是32字節的,但是原版Profanity在生成這個256位的私鑰時,僅采用了4字節的隨機數作為偽隨機數生成器的seed。
這是小弟第一篇區塊鏈安全文章,歡迎各位大佬批評指教。我的twitter:@featherye
2022年8月1日至9月17日,由清華大學學生區塊鏈協會學生發起的去中心化自治組織舉辦2022TSH夏季黑客松,共計60支項目參賽.
1900/1/1 0:00:00根據摩根大通最新發布的一項分析顯示,到2024年,瑞士信貸的資金缺口可能會達到80億美元——是的,你沒看錯,這家“百年金融老店”已經深陷窘境.
1900/1/1 0:00:00官方新聞 Celestia正在構建一個模塊化的共識和數據網絡,以便任何人都可以輕松地以最小的開銷部署自己的區塊鏈。Celestia的新模塊化區塊鏈架構旨在提高未來十年Web3創新的規模和速度.
1900/1/1 0:00:00在上次交流中,有朋友提到了我以前談過的一個現象:我曾經在文章中寫過,一些大風投不看好或者根本不在意的項目,有可能通過社區迅速崛起和爆發成長為某些細分領域的獨角獸.
1900/1/1 0:00:00原文作者:4rc.eth,由DeFi之道翻譯編輯。2022年5月,在沒有任何警告或理由的情況下,BanklessYouTube頻道一夜之間消失了.
1900/1/1 0:00:001.Devcon其實不是一個技術會議論壇Devcon是“開發者大會”的縮寫,自2014年Devcon0以來,它一直是以太坊的基礎會議。這是一個技術主題的大會,同時也對像我這樣的非開發人員開放.
1900/1/1 0:00:00