以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads
首頁 > 萊特幣 > Info

DEF:一個示例來解釋EIP-712

Author:

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

EIP-712是一種更高級、更安全的交易簽名方法。我們可以在Uniswap V2的Periphery 合約中看到EIP-712的實現。

但對于EIP-712卻很難被我們普通人所理解,本文就是根據一個示例來具體體驗EIP-712,以達到對其的更好理解。

在GitHub中有許多文章和示例解釋和展示了如何使用EIP-712,但在理解它作為一個整體是如何工作的以及前端代碼和智能合約是如何關聯的方面有很多困難。這是EIP712的一個示例(不是解釋)。先決條件和使用的版本。

Solidity基礎知識

npm 7.19.1

節點 16.2.0

Metamask 9.8.4

truffle 5.4.0

EIP-712是一種更高級、更安全的交易簽名方法。使用該標準不僅可以簽署交易并且可以驗證簽名,而且可以將數據與簽名一起傳遞到智能合約中,并且可以根據該數據驗證簽名以了解簽名者是否是實際發送該簽名的人要在交易中調用的數據。

Vyper漏洞導致另一個去中心化交易所成為攻擊的受害者:金色財經報道,據CertiK官方推特發布消息稱,Vyper漏洞導致另一個去中心化交易所成為攻擊的受害者。據悉:該攻擊者已獲益約1.4萬美金。[2023/8/13 16:23:29]

EIP-712提出了數據的標準結構和從結構化消息生成散列的定義過程。然后使用此散列生成簽名。通過這種方式,為發送交易生成的簽名與為驗證身份或任何其他目的生成的簽名之間就有了明顯的區別。EIP-712草案將簽名方案背后的動機表述為:

提高鏈上使用的鏈下消息簽名的可用性。我們看到越來越多的人采用鏈下消息簽名,因為它節省了gas,減少了區塊鏈上的交易數量。

EIP-712是類型化結構化數據的哈希和簽名的標準,而不僅僅是字節字符串。它包括一個

編碼函數正確性的理論框架,

自薩爾瓦多宣布開始每天購買一個BTC以來,BTC價格上漲了62%以上:金色財經報道,據Bitcoin Magazine發文表示,自薩爾瓦多宣布開始每天購買一個BTC以來,BTC價格上漲了62%以上。[2023/3/19 13:12:32]

與solid結構相似并兼容的結構化數據規范,

安全哈希算法用于這些結構的實例,

在可簽名消息集中安全包含這些實例,

一個可擴展的域分離機制,

新的RPC調用eth_signTypedData,

EVM中哈希算法的優化實現。

EIP-712的實現可以在Uniswap V2的Periphery 合約中看到,它通過許可移除流動性,最終調用Uniswap V2 Core中的方法來完成這一操作。

美聯儲主席:美國沒有必要成為第一個發行CBDC的國家:今日,美聯儲主席鮑威爾在普林斯頓大學線上活動中表示,美國沒有必要成為第一個發行CBDC的國家,美國已擁有先發優勢,因為美元是儲備貨幣。鮑威爾估計,美聯儲發布CBDC需要“數年而不是數月”時間。他補充稱,美聯儲正在大舉投資以了解CBDC技術,并研究CBDC相關政策問題。(CoinDesk)[2021/1/15 16:12:09]

前端的簽名被傳遞給Periphery 中的方法,簽名被用來代表Core中使用該方法的用戶批準Router合約。

我們的示例將使用EIP-721提案用數據(地址、storedData的值和截止日期)簽署交易,這些數據用于更改合約中變量的值。

如果簽名和散列給出了簽署人的地址,并且沒有超過截止日期,則更改storedData的值。

Raoul Mihado:DeFi是金融體系的下一個演變:今日,Elitium首席執行官在cointelegraph發布文章,對于DeFi的未來發表了看法。文中提到,DeFi是金融體系的下一個演變,但有許多因素影響 DeFi 的未來。例如,一個是以太坊2.0及其解決以太坊可伸縮性的嘗試。它的成敗將影響與以太坊區塊鏈相關的一切。

另一個因素是銀行和監管機構對DeFi的反應。目前,DeFi必須作為一個行業來監管自己。必須以合乎道德的方式行事,并制定解決方案,如保險,為人們提供保障。除非我們制定并滿足這些標準,否則 DeFi 將無法與傳統銀行系統競爭。

還有就是加密行業從業者應該教育公眾了解 DeFi,幫助他們理解為什么這項新技術可以造福于人們的日常生活。此外,單靠 DeFi 不太可能大規模采用。有些人根本不想處理完全分散的技術。[2020/9/20]

這是一個無用的例子,但理解了它將確保您可以在其他地方使用該標準。正確使用 EIP-712 是創建一個 ERC20 許可證,就像 Uniswap 團隊所做的那樣。

聲音 | OK區塊鏈工程院首席研究員:央行數字貨幣的正式發行和推出只等待一個時機:OK區塊鏈工程院首席研究員李霽月也對《國際金融報》記者表示,中國研究數字貨幣比較早,近兩年也不斷有成熟的理論和技術進展向外公布,而近日更有央行數字貨幣架構設計的消息披露,央行數字貨幣的正式發行和推出只等待一個時機,或將不遠。現在的區塊鏈是一個競速戰爭,是標準制定和話語權的戰爭,誰最先開發出最厲害的公鏈,并讓世界上絕大多數應用和絕大多數人使用,或許就能掌握規則的制定權。數字貨幣并不完全是技術先進性的戰爭,也是金融話語權的戰爭,哪個國家最先讓與本國法定貨幣錨定的穩定幣占領最大份額的市場,就掌握了國際市場上一定的金融主導權。央行錨定的數字貨幣就是一種信用的體現,也可以說是金融軟實力和國力的體現。[2019/11/18]

繼續克隆 truffle 的react box。

我們將根據需要簡單地調整和添加代碼,以使EIP-712正常工作。

數據是EIP-712中最關鍵的部分。這些要簽名的數據必須符合預定義的格式。它必須有一個EIP712Domain和要簽名的數據(在我們的示例中設置)。兩者的組合將被簽名并發送給智能合約進行驗證。

在EIP-712下簽名的每個數據必須有一個EIP712Domain和另一個數據。這兩者的結構可以是任何東西,但必須在JS代碼和SC代碼上相同。

當使用該提案時,EIP712Domain的結構是一個被廣泛接受的標準。

 EIP-712 數據標準

EIP712Domain有一些參數,這些參數指定在哪個網絡和哪個特定合約上將用于驗證簽名。另一份具有相同代碼的合同將無法驗證該簽名。

讓我們添加一個按鈕,當單擊該按鈕時,將彈出元掩碼,使用eth_signTypedData_v3方法對數據進行簽名。

一旦簽署了上面定義的數據使用eth_signTypedData_v3方法我們得到了簽名和簽名分割成其r, s,和v組件并將其發送到智能合約將使用ercrecover這些參數和數據哈希恢復簽名者的公鑰。

拆分簽名

編寫智能合約。

就像我們定義了包含EIPdomain和要簽名的數據的JS代碼一樣,智能合約也需要兩個變量來表示每個EIPdomain的散列數據和我們的數據(在本例中是設置數據)。

使用 ercrecover

在UI端,我們對數據進行簽名,并將r、s和v發送給智能合約。

上面的代碼做了兩件事,首先它散列數據并生成它們的散列。接下來,它使用該數據的散列(在SC中稱為散列)和簽名,使用ercrecover方法生成簽名者的公鑰。

上面顯示的數據的兩個kecak哈希值應該類似于在out JS代碼中定義的數據結構。如果兩者不同,則無法恢復簽名者的地址。

簽名數據的結構

將infura中的助記符添加到truffle-config.js文件(第3行),并指定部署者的地址(第18行)。上面的例子使用了rinkeby testnet,但是任何測試都可以使用,并查看truffle文檔來部署到其他測試網。

然后部署合同。部署后復制simplestorage的地址,替換為verifyingContract下app.js第76行的地址。

部署代碼片段

進入client目錄,運行npm run start啟動react應用。

按下' Press to sign '按鈕,然后在元掩碼彈出的簽名請求上簽名。接下來,確認交易以設置智能合約上的值。

交易完成后,刷新webapp以查看所反映的變化。

Tags:EFIDEFDEFIAINPEET DeFiDefigramEco DeFi最新版blockchain錢包

萊特幣
區塊鏈:金色硬核|《財富》:加密行業精明投資者下一步投資什么?

金色財經推出金色硬核(Hardcore)欄目,為讀者提供熱門項目介紹或者深度解讀。2021年8月/9月刊《財富》雜志發表系列文章特別報道了加密貨幣,本文為其中的一篇.

1900/1/1 0:00:00
區塊鏈:以太坊的 PoS 冒險之路

隨著加密貨幣成為主流以及越來越多的人了解它的實際運作方式,該領域中最大的參與者比特幣和以太坊面臨著越來越多的批評,指責其為了保持區塊鏈運行而實施的挖礦操作對環境的破壞.

1900/1/1 0:00:00
比特幣:美國已積壓多個比特幣ETF申請 一旦通過能帶來期待已久的效果嗎?

自從 2013 年 Winklevoss 兄弟首開比特幣 ETF 的濫觴, 9年間每年美國都有不同的機構提出比特幣 ETF 申請,但都無一例外,均以失敗告終(或被美國 SEC 拒絕.

1900/1/1 0:00:00
DEFI:DeFi大潮下 加密金融機構應如何穩健掘金?

體量和種類不斷增長的 DeFi 項目,為對收益極為敏感且操作方式極為靈活的加密金融機構提供了非常好的生息資產.

1900/1/1 0:00:00
RAN:黑客大揭秘|掃碼轉賬即可控制你的數字錢包

簡介 近期丟幣盜幣事件頻發,各種盜幣手法層出不窮,無所不用其極,不得不說這些攻擊者手段高明,零時科技安全團隊收到大量客戶的求助,稱其錢包資產被盜,這無疑給幣圈的朋友敲響了警鐘.

1900/1/1 0:00:00
FIL:分布式認知工業互聯網平臺如何賦能企業數字化轉型?

由萬向區塊鏈實驗室舉辦的第七屆區塊鏈全球峰會,以“數字化轉型”為主題,將于9月14日-15日在上海外灘W酒店舉行.

1900/1/1 0:00:00
ads