Menu

  • Home
  • Trending
  • Recommended
  • Latest

分類

  • #2021 新年特輯
  • 100天區塊鏈挑戰
  • 2019 台灣區塊鏈產業指南
  • 2020 台灣區塊鏈產業年鑑
  • 2022 台灣年度最影響力人物榜
  • 2023 台灣年度影響力人物榜
  • 2023 新春特輯
  • 2024 TON Hacker House
  • 2024新春特輯
  • ABS 2018 專題報導
  • AI
  • CBDC是什麼?為何全球都在積極研究、有什麼優點與隱憂
  • Cefi
  • dao
  • dApps
  • defi
  • DePIN 如何開啟去中心化物理網路革命?
  • Entertainment
  • EOS
  • EOS insights
  • Gaming
  • Howto & Style
  • ICO
  • JiaJia
  • Layer 2
  • Libra
  • Movie
  • Music
  • News
  • nft
  • Plurality 多元宇宙
  • Starknet 空投落地,後續帶來什麼影響?
  • TON的崛起之路》背靠 Telegram 如何實現 Web3 大規模應用?
  • Uncategorized
  • Web3.0
  • 中國
  • 亞太
  • 交易所
  • 人物專訪
  • 以太坊
  • 以太坊
  • 以太坊 Dencun 坎昆升級將臨,你需要知道的所有事
  • 以太坊再質押協議為何成為最熱門賽道?
  • 供應鏈
  • 保險
  • 債券
  • 元宇宙
  • 全台最大詐騙案!Ace交易所涉垃圾幣詐騙
  • 全球加密貨幣監管最新動態統整
  • 其他國家
  • 其他幣別
  • 分散式帳本技術
  • 創投
  • 加密貨幣「詐騙手法」整理,學習如何保護你的資產
  • 加密貨幣市場
  • 區塊鏈平台
  • 區塊鏈新手全攻略,你需要知道的加密貨幣基礎
  • 區塊鏈新手教學
  • 區塊鏈活動
  • 區鍵禧
  • 即時新聞
  • 台灣
  • 哈希派
  • 國際組織報告
  • 多元宇宙Plurality有多重要?未來20年人類躍進關鍵
  • 央行
  • 娛樂平台
  • 安全
  • 專欄作者
  • 巴拉區塊事
  • 市場分析
  • 幣安與美國司法部達成 43 億美元和解,CZ認罪
  • 影片測試的分類
  • 快訊
  • 技術
  • 抓住空投爆擊!值得埋伏的項目、互動教學總整理
  • 投資分析
  • 挖礦
  • 推薦閱讀
  • 搶先看
  • 支付
  • 政府報告
  • 數位產權
  • 數據報告
  • 概念
  • 歐洲
  • 比特幣
  • 比特幣現貨ETF上市,真帶來了增量資金?
  • 比特幣第四次減半將臨,行情怎麼走?
  • 比特幣銘文大爆發,Oridinal 如何改變 BTC 生態?
  • 比特彭
  • 汪彪
  • 法規
  • 測試網
  • 灰度
  • 物聯網
  • 犯罪
  • 獨立觀點
  • 瑞波
  • 環境永續
  • 社交
  • 私人機構報告
  • 稅務
  • 穩定幣
  • 管制
  • 美國
  • 肺炎
  • 能源
  • 訴訟
  • 評級報告
  • 財金哥 & 區塊妹
  • 身份驗證
  • 遊戲
  • 鄧庶杭
  • 金融市場
  • 銀行
  • 錢包

Subscriptions

  • 零壹財經 01 binary
    01 Binary
  • 0xdt
  • 0xJigglypuff
  • aaaaYYYY
  • ABCDELabs

Recent News

  • 圖解多元宇宙》V神、Glen力推的Plurality是什麼?為何協作技術是人類社會進步關鍵
  • 精選文章搶先看!動區登入Access質押訂閱服務,解鎖寶貴資訊快人一步
  • ABS獨家專訪》Gitcoin共同創辦人Scott:台灣是現實與Web3治理的重要交匯點
動區動趨-最具影響力的區塊鏈新聞媒體
  • Home
    • Home Layout 1
    • Home Layout 2
    • Home Layout 3
  • Browse
    • News
    • Movie
    • Music
    • Technology
    • Howto & Style
    • Entertainment
    • Gaming
  • Features
    • Youtube Video
    • Vimeo Video
    • Dailymotion Video
    • Self-hosted Video
    • User Profile
    • Playlists
    • User-created Playlist
    • Favorite Playlist (Private)
    • Watch Later Playlist (Private)
    • All JNews Features
No Result
View All Result
  • Login
  • Register
UPLOAD
動區動趨-最具影響力的區塊鏈新聞媒體
No Result
View All Result
Home 專欄作者

慢霧|做市商Wintermute被盜,推導Vanity生成器Profanity私鑰破解

慢霧科技 Slow Mist by 慢霧科技 Slow Mist
2022-09-22
in 專欄作者, 技術, 錢包
486 15
0
慢霧|做市商Wintermute被盜,推導Vanity生成器Profanity私鑰破解
689
SHARES
3.1k
VIEWS
Share on FacebookShare on Twitter

Wintermute 錢包遭攻擊損失約 1.6 億美元,被盜原因是 Wintermute 為了節省 Gas 費使用了 Profanity 來創建Vanity 錢包(開頭 0x0000000),慢霧安全對此事件深入分析,發現 Profanity 工具創出的私鑰有安全疑慮。
(前情提要:Wintermute遭駭丟了1.6億美元,知名做市商的私鑰是如何泄露的?)
(背景補充:Wintermute未償DeFi債務逾2億鎂;CEO : 駭客若歸還1.6億鎂「願付10%賞金」)

本文目錄

  • RelatedPosts
  • 圖解多元宇宙》V神、Glen力推的Plurality是什麼?為何協作技術是人類社會進步關鍵
  • 6 Sci-fi Gadgets in Movie We Wish Actually Existed
  • Tesla’s Chinese factory just delivered its first cars

 

RelatedPosts

圖解多元宇宙》V神、Glen力推的Plurality是什麼?為何協作技術是人類社會進步關鍵

6 Sci-fi Gadgets in Movie We Wish Actually Existed

Tesla’s Chinese factory just delivered its first cars

近日,Wintermute 錢包遭攻擊損失約 1.6 億美元,被盜原因是 Wintermute 為了節省 Gas 費使用了Profanity 來創建 Vanity 錢包(開頭 0x0000000) 。

此前去中心化交易所聚合器 1inch 發布了一份安全披露報告,聲稱通過名為 Profanity 的工具創建的某些以太坊地址存在嚴重漏洞。慢霧安全團隊對此事件進行了深入分析,並分享給大家。

橢圓曲線加密(ECC )是區塊鏈領域最常用的加密算法,ECC 是一個加密算法大類,它包含了多種不同的曲線和加密算法,例如 secp256k1/secp256r1/ed25519/schnorr 等,比特幣和以太坊都是使用 secp256k1 加密。

在使用以太坊時,我們首先會生成一個私人帳號(以0x 開頭+ 40 字母),具體過程如下:

  1. 生成一個不可預測的隨機數種子,通常基於系統的/dev/urandom 隨機發生器;
  2. 利用隨機種子生成一個私鑰(256 位,32 字節)
  3. 通過私鑰生成公鑰(64 字節)
  4. 公鑰使用 keccak-256 hash 算法,取 hash 值十六進制字符串後 40 個字母,開頭加上 0x 生成最終的以太坊地址。

特別記一下這些公私鑰的大小,因為它關乎我們後面要做的計算量。

這裡需要提的一個關鍵公式:

Q = kG

這是私鑰推導出公鑰的核心算法,私鑰推出公鑰計算很簡單,但反向推導幾乎不可能。

Q 是公鑰,k 是私鑰,k 由有限域內的大整數構成,相當相當大,以致於幾乎不可能去猜測,G 是橢圓曲線上的一個點,默認是一個固定的值,kG 就是 k 個 G 點相加(橢圓曲線的點相加不是簡單的實數相加,計算方法這裡不展開討論)。

如果我們想要窮舉以太坊帳號,找到 Vitalik 的私鑰,那麼在知道他的公鑰後,最多需要進行 2^256 (2 的256 次方)次的 Q = kG 計算,對大數位我們天然不敏感,所以我把它換算成工作量,就是目前一台蘋果 M1 電腦大概 40M/s 的速率,那麼大概需要的年份是 8 後面跟上 62 個零。一萬年太久,只爭朝夕。

有一些錯誤的私鑰生成方法,會導致私鑰的取值範圍變成更小範圍內的數值,變得可猜解。常見的原因有:

  1. 隨機數種子不夠隨機,例如使用了時間戳做為隨機數種子,那麼我們只要窮舉過去一段時間所有的時間戳就能找到生成公鑰所用的種子和私鑰;
  2. 軟體算法存在缺陷,導致隨機強度不夠(Profanity 正是存在這樣的缺陷);

Profanity 的設計目的,是幫助人們生成一個具有特殊視覺效果的帳號,比如以特殊字符開頭或者結尾的帳號,另一方面,一些開發者使用它來生成開頭為很多個 0 的帳號,如0x00000000ae347930bd1e7b0f35588b92280f9e75,它可以在調用智能合約時達到節省 Gas 的效果。

Profanity 為了更快地爆破出 Vanity Address,只在程式的開頭獲取了一次隨機數,後續所有的私鑰都是基於這個隨機數迭代擴展而來,我們來看一下它的隨機數生成算法:

這裡使用了 rando m_device 來獲取系統提供的隨機數,這個隨機數源是滿足加密所需要的強度的。

但是當我們注意到變量類型時,我們發現 rd() 返回的是一個 32 位長度的隨機值,上文我們提到一個私鑰是2 56 位長度,那麼一次獲取隨機數的過程並不能填充整個私鑰,於是 Profanity 使用 mt19937_64 產生隨機數來填充整個私鑰。

mt19937_64 和 random_device 的隨機算法有著本質的區別,mt19937_64 是確定性的,它的隨機性依賴於輸入的隨機數,並不產出新的隨機性。

也就是說,如果 rd() 傳遞給 mt19937_64 的值在某個範圍,那麼 distr(eng) 的值也在對應的某個範圍,createSeed 函數返回的 r 值自然也是在某一個範圍。

關鍵點來了: rd() 的所有可能性是 2^32,離私鑰的安全性(2^256)相差了 224 個數量級,但是 2^32 這個數量級也挺大的,那麼它需要多少計算量才能破解出私鑰?

Profanity 在獲取到第一個私鑰 SeedPrivateKey 以後,為了碰撞出需要的帳號地址,會通過一個固定的算法不斷跌代這個私鑰,最多 200 萬次(數值來源於1inch 披露的文章),這個公鑰的計算方式可表示為:

PublicKey = kG = (SeedPrivateKey + Iterator)*G

Iterator 是一個遞增的數位,當 PublicKey 已知時,我們可以通過窮舉 SeedPrivateKey 和 Iterator 來得到SeedPrivateKey,計算量大概為 2^32 乘以 200 萬次,在 1 台 M1 電腦上需要 60 多年時間,看上去這輩子有希望:D。

如果我用大量算力更大的顯卡進行並行計算,那麼在幾天甚至幾個小時碰撞出想要的結果也完全可以。

剛好最近以太坊轉 PoS 共識,存在大量的閒置的顯卡算力,如果礦工拿顯卡來破解這個私鑰,那不是分分鐘就能成功?當然這個陰謀論沒有意義,我們只想研究破解的可能性。我們更希望能用不那麼暴力的方法來解開私鑰。

我們稍微移動一下等式兩邊,對上面的公式進行變換,可得:

SeedPrivateKey*G = PublicKey – Iterator*G

我們可以思考另一種攻擊方法,如果首先預計算 SeedPrivateKey*G,需要最多256 G 左右的內存空間去儲存計算結果,在一台普通的伺服器上完全可以做到,所需要的計算是 2^32 次,大概幾十分鐘就可以完成。

然後我們再把需要破解的 PublicKey 代入等式右邊,然後對 Iterator 跌代碰撞,所需要的計算量大概是 200 萬次,還有 200 萬次的查表,所需要的時間是秒級。這,就有意思了,原來 32 位的隨機數是這麼的微不足道,任何人都有可能在幾十分鐘內還原出私鑰。

至此,我們總結出了Profanity 的漏洞成因,是由於未對 256 位私鑰進行足夠隨機播種,導致私鑰取值範圍嚴重降低。同時也分析了對這類隨機性問題的破解可能性,希望能給大家一些啟發。

📍相關報導📍

Wintermute遭駭丟了1.6億美元,知名做市商的私鑰是如何泄露的?

Solana生態8千錢包遭駭》疑私鑰受到外洩!專家籲用戶轉資產至新錢包

MetaMask宣布棄用 2 種生成私鑰 API 方式,打算推出更安全方法



Tags: ProfanityVanityWintermute慢霧科技

Recommended videos

4:31

Only Beyoncé Could Make Opera Gloves Cool

2.5k Views
2024-07-12
    ABS獨家專訪》Gate.io CEO韓林:無懼銀行進軍加密服務,台北特別有人情味

    ABS獨家專訪》Gate.io CEO韓林:無懼銀行進軍加密服務,台北特別有人情味

    2.5k Views
    2024-09-04
      動區獨家專訪|中本聰最堅定的信仰者——Charlie Lee,沒有之一

      動區獨家專訪|中本聰最堅定的信仰者——Charlie Lee,沒有之一

      5.3k Views
      2019-10-13
        3:27

        NIKI – La La Lost You (Official Music Video)

        2.5k Views
        2024-07-28
          Show More
          Copyright (c) 2019 by Jegtheme.
          • About
          • Buy JNews
          • Request A Demo
          • Contact
          No Result
          View All Result
          • Account
          • BlockTempo Beginner – 動區新手村
          • Change Password
          • Forgot Password?
          • Home 1
          • Home 2
          • Home 3
          • Jin-homepage
          • Latest
          • Login
          • Profile
          • Register
          • Reset Password
          • Trending
          • Users
          • Users List Item
          • 不只加密貨幣,談談那些你不知道的區塊鏈應用|動區新手村
          • 所有文章
          • 關於 BlockTempo

          © 2025 JNews - Premium WordPress news & magazine theme by Jegtheme.

          Welcome Back!

          Login to your account below

          Forgotten Password? Sign Up

          Create New Account!

          Fill the forms below to register

          All fields are required. Log In

          Retrieve your password

          Please enter your username or email address to reset your password.

          Log In

          Add New Playlist