Go-Ethereum
如何添加自定義預編譯合約?
我想在乙太坊中實現一些功能作為預編譯合約。我閱讀了一些文章和契約程式碼,但我仍然不知道該怎麼做。
有從零開始的教程嗎?
這是一個很好的參考,為乙太坊下一個名為的硬分叉做一個新的預編譯合約
Istanbul
https://github.com/keep-network/go-ethereum/pull/4/files
基本上只需要實現預編譯合約介面的兩種方法
- requiredGas ():定義呼叫預編譯合約時使用者需要支付多少gas。
- run ():編寫你的程式碼來做你想讓預編譯合約做的事情。
順便說一句,我們的問題是官方的solidity編譯器可能不支持我們的預編譯函式,那麼使用者可以使用我們的預編譯函式的唯一方法是在solidity智能合約中使用內聯彙編程式碼。
希望這會給你一些開始的線索!