Ed25519 是一個基于橢圓曲線的數字簽名算法,它高效,安全且應用廣泛。TLS 1.3, SSH, Tor, ZCash, WhatsApp 和 Signal 中都使用了它。本文主要講解以下幾點:
1. 介紹一點群論知識,目的是讓大家對 Ed25519 和其可延展性問題的原理有一種直覺。若想深入理解,還需參考其他資料;
2. 針對 rust 庫 ed25519-dalek 的 1.0.1 版本講解 ed25519 的實現;
3. 針對該庫的延展性問題做出解釋。
數學要點回顧
群的定義與性質
群論是抽象代數研究的內容,但抽象代數的一些思想是程序員非常熟悉的。面向對象中的繼承就是一個很好的例子,我們都知道子類繼承了父類后,就能使用父類中定義的方法。可以將抽象代數理解為對一個抽象的數據結構定義了一些性質,由這些性質推導出來的定理對于所有的子類都成立。
慢霧:從Multichain流出的資金總額高達2.65億美元,分布在9條鏈:金色財經報道,自7月7日以來,從 Multichain 流出的資金總額高達 2.65 億美元,分布在 Ethereum、BNB Chain、Polygon、Avalanche、Arbitrum、Optimism、Fantom、Cronos、Moonbeam 鏈。其中 6582 萬美元已經被 Circle 和 Tether 凍結,1,296,990.99 ICE(約 162 萬美元) 被 Token 發行方 Burn。流出的資金中,包括:
1)從 Multichain: Old BSC Bridge 轉出的 USDT;
2)從 Multichain: Fantom Bridge 轉出的 USDC、DAI、LINK、UNIDX、USDT、WOO、ICE、CRV、YFI、TUSD、WETH、WBTC;
3)從 Anyswap: Bridge Fantom 轉出的 BIFI;
4)從 Multichain: Moonriver Bridge 轉出的 USDC、USDT、DAI、WBTC;
5)從 MultiChain: Doge Bridge 轉出的 USDC;
6)從 Multichain: Executor 轉出的 DAI、USDC、BTCB、WBTC、WETH、Dai.e、WBTC.e、Bridged USDC、BTC、fUSDT、ETH 等;
7)從被 Etherscan 標記為 Fake_Phishing183873 的 0xe1910...49c53 轉出的 WBTC、USDT、ETH,同時我們認為該標記(Fake Phishing183873)或許是 Etherscan 上的虛假標記,地址可能以前屬于 Multichain 官方賬戶。[2023/7/11 10:48:30]
沿用剛剛的比喻,來看看群(group)這個數據結構是如何定義的。
慢霧:蘋果發布可導致任意代碼執行的嚴重漏洞提醒,請及時更新:7月11日消息,慢霧首席信息安全官23pds發推稱,近日蘋果發布嚴重漏洞提醒,官方稱漏洞CVE-2023-37450可以在用戶訪問惡意網頁時導致在你的設備上任意代碼執行,據信這個已經存在被利用的情況,任意代碼危害嚴重,請及時更新。[2023/7/11 10:47:05]
由此可以推出許多有意思的定理:
舉幾個例子:
慢霧:警惕Web3錢包WalletConnect釣魚風險:金色財經報道,慢霧安全團隊發現 Web3 錢包上關于 WalletConnect 使用不當可能存在被釣魚的安全風險問題。這個問題存在于使用移動端錢包 App 內置的 DApp Browser + WalletConnect 的場景下。
慢霧發現,部分 Web3 錢包在提供 WalletConnect 支持的時候,沒有對 WalletConnect 的交易彈窗要在哪個區域彈出進行限制,因此會在錢包的任意界面彈出簽名請求。[2023/4/17 14:08:53]
拉格朗日定理
現在介紹一個非常有意思的定理,這個定理的推導在文末引用的視頻中。
慢霧:ERC721R示例合約存在缺陷,本質上是由于owner權限過大問題:4月12日消息,據@BenWAGMI消息,ERC721R示例合約存在缺陷可導致項目方利用此問題進行RugPull。據慢霧安全團隊初步分析,此缺陷本質上是由于owner權限過大問題,在ERC721R示例合約中owner可以通過setRefund Address函數任意設置接收用戶退回的NFT地址。
當此退回地址持有目標NFT時,其可以通過調用refund函數不斷的進行退款操作從而耗盡用戶在合約中鎖定的購買資金。且示例合約中存在owner Mint函數,owner可在NFT mint未達總供應量的情況下進行mint。因此ERC721R的實現仍是防君子不防小人。慢霧安全團隊建議用戶在參與NFTmint時不管項目方是否使用ERC721R都需做好風險評估。[2022/4/12 14:19:58]
“群的階能被子群的階整除。”
為什么說這個定理有意思呢,不僅僅因為它的證明過程串起了剛剛介紹的許多知識,還因為下面的結論:
Ed25519 的實現
現在我們來講 Ed25519,它是 EdDSA 算法的其中一種。EdDSA 有 11 個參數(https://datatracker.ietf.org/doc/html/rfc8032#autoid-3),這些參數的具體選擇對于算法的安全和性能有很大的影響。Ed25519 的具體選擇請參看鏈接(https://datatracker.ietf.org/doc/html/rfc8032#autoid-9)。
另外,值得一提的是這套算法用到了一個叫 Curve25519(https://datatracker.ietf.org/doc/html/rfc7748#autoid-5)的橢圓曲線。對于橢圓曲線,我們只需知道,它上邊有很多很多點,這些點相加能得到新的點,新的點還是在曲線上。這些點和這個加法能形成一個群。注意這里的橢圓曲線加法(https://www.wikiwand.com/en/Elliptic_curve_point_multiplication)是有特殊定義的。
我們約定如下記法:
這是個交互式的算法,但是沒關系,有一個技巧叫做 the Fiat – Shamir heuristic(https://link.springer.com/chapter/10.1007%2F3-540-47721-7_12),它可以把任意的交互式算法轉化成非交互式的算法。最終我們會用非交互式算法。
數字簽名算法都會給我們如下 API:
代碼地址(https://github.com/dalek-cryptography/ed25519-dalek/blob/97c22f2d07b3c260726b90c55cd45f34ec34a037/src/public.rs#L322-L355)
密碼學算法的實現和使用都有非常多要注意的地方。當我們說一個數字簽名算法是安全的,一般指的是即使在攻擊者能夠獲得任意消息的簽名(Chosen Message Attack)的情況下,攻擊者仍然不能偽造簽名。Ed25519 滿足這個性質,但不代表 Ed25519 是絕對安全的。在原始的論文中也提到,可延展性問題是可以接受的,且原始的算法就有這個問題。
慢霧科技
個人專欄
閱讀更多
區塊律動BlockBeats
Foresight News
曼昆區塊鏈法律
GWEI Research
吳說區塊鏈
西柚yoga
ETH中文
金色早8點
金色財經 子木
ABCDE
0xAyA
Tags:USDTICCHAULTusdk幣是什么意思Omega ParticleCHAMPZ價格MOONCAT Vault (NFTX)
作者:Blur;編譯:Felix, PANews今年2月,NFT市場Blur推出出價得空投(Bid for Airdrop)的空投激勵計劃,助其成為銷售額最高的NFT聚合器.
1900/1/1 0:00:00作者:Yogita Khatri,THE BLOCK;編譯:松雪,金色財經瑞士信貸與瑞士足協合作推出基于以太坊的 NFT 系列,以支持瑞士女足.
1900/1/1 0:00:00作者:Ronaldo Marquez,bitcoinist;編譯:區塊鏈騎士SEC宣布,前Coinbase產品經理Ishan Wahi及其兄弟Nikhil Wahi已就內幕交易指控達成和解.
1900/1/1 0:00:00前言:DeFi 正在慢慢擴大加密貨幣的業務邊界,并在現實世界中產生影響。被視為 DeFi 下一個增長引擎的 RWA(Real-World Assets)正在加密世界升溫,似乎有一絲20.
1900/1/1 0:00:00區塊鏈領域的迷人之處,就是總是能出現極小的,開始不被人注意的,不被人看得上的,瞧不起的項目突然變得很大,幾個月就成了巨獸,并且發展出無數個跟進的項目、形成了這個方向的生態系統.
1900/1/1 0:00:00作者:Eliza Gkritsi, Rosie Perper,CoinDesk;編譯:松雪,金色財經破產的加密貨幣對沖基金三箭資本 (3AC) 的兩位創始人將向去年破產后遭受損失的債權人捐贈“未.
1900/1/1 0:00:00