亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ERC777規范內容是什么

發布時間:2021-12-24 16:55:36 來源:億速云 閱讀:146 作者:iii 欄目:互聯網科技

這篇文章主要講解了“ERC777規范內容是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“ERC777規范內容是什么”吧!

1、使用ERC820進行合約注冊

有別于ERC20的自由散漫,ERC777利用了新的ERC820標準提供的集中式的智能合約注冊表和合約接口實現查詢功能,以實現某種程度的內省。中心化的注冊機制有助于后向兼容性以及更好的功能擴展。一個期望調用ERC777的DApp或智能合約,就可以利用EIP-820返回的ITokenReceipt接口來確定目標合約是否實現了期望的接口。

2、ERC777概述

ERC777改進了ERC20代幣中存在的很多不足,例如,ERC777支持操作員白名單,提供以太幣兼容的send()接口,利用ERC20實現后向兼容等。下圖展示了ERC777代幣的轉賬實現流程:

ERC777規范內容是什么

要快速掌握以太坊區塊鏈應用開發,推薦匯智網的在線互動教程:

以太坊DApp開發入門 | 以太坊電商DApp實戰 | ERC721以太坊通證實戰 Web3j以太坊開發詳解 | Php以太坊開發詳解 | Python以太坊開發詳解 | C#以太坊開發詳解 | Flutter以太坊開發詳解 |

與ERC20相比,ERC777有以下方面的優勢:

  • 采用與以太幣一致的哲學發送代幣,即采用接口send(dest,value,data)

  • 任何合約都可以定義收到代幣時觸發的tokensReceived事件,這避免了在ERC20代幣 中存在的雙重調用問題。

  • 合約和常規地址都可以通過注冊一個tokensToSendtokensReceivedFunction 函數來控制或拒絕發送或接收的代幣,避免ERC20代幣中存在的代幣卡死問題。

  • 代幣持有者可以授權或回收管理其代幣的操作員權限。這些操作員通常是交易所 合約或自動收費系統中的支付處理器。

  • 每個代幣交易都包含userData數據字段,在操作員操作時也有類似的operatorData 字段,從而可以自由地將數據傳遞給接收方。

  • 可以后向兼容那些不支持tokensReceived函數的錢包。

3、ERC777規范

下面是ERC777規范的內容,完整描述可以到官網查看:

interface ERC777Token {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function totalSupply() external view returns (uint256);
    function balanceOf(address holder) external view returns (uint256);
    function granularity() external view returns (uint256);

    function defaultOperators() external view returns (address[] memory);
    function isOperatorFor(
        address operator,
        address holder
    ) external view returns (bool);
    function authorizeOperator(address operator) external;
    function revokeOperator(address operator) external;

    function send(address to, uint256 amount, bytes calldata data) external;
    function operatorSend(
        address from,
        address to,
        uint256 amount,
        bytes calldata data,
        bytes calldata operatorData
    ) external;

    function burn(uint256 amount, bytes calldata data) external;
    function operatorBurn(
        address from,
        uint256 amount,
        bytes calldata data,
        bytes calldata operatorData
    ) external;

    event Sent(
        address indexed operator,
        address indexed from,
        address indexed to,
        uint256 amount,
        bytes data,
        bytes operatorData
    );
    event Minted(
        address indexed operator,
        address indexed to,
        uint256 amount,
        bytes data,
        bytes operatorData
    );
    event Burned(
        address indexed operator,
        address indexed from,
        uint256 amount,
        bytes data,
        bytes operatorData
    );
    event AuthorizedOperator(
        address indexed operator,
        address indexed holder
    );
    event RevokedOperator(address indexed operator, address indexed holder);
}

ERC777代幣合約必須通過ERC820標準注冊ERC777Token接口。基準單位必須是101?。

Logo

ERC777規范內容是什么

ERC777代幣logo采用Creative Commons Attribution-ShareAlike 4.0授權,并且不可以用于廣告、推廣或其他任何不兼容ERC777的技術。

后向兼容性

ERC777沒有引入后向不兼容問題,因此可以兼容之前的ERC20代幣標準。

在這個RIP中,沒有使用transfertransferFrom進行代幣轉賬,而是使用sendoperatorSend來避免混淆與潛在的錯誤。與此同時,ERC777允許你實現ERC20中的transfertransferFromapproveallowance以便兼容ERC20。

因此一個代幣合約可以同時實現ERC20和ERC777。只讀函數例如namesymbolbalanceOftokenSupply以及內部數據例如余額映射表等都可以毫無問題的重疊使用。但是需要注意的是,以下函數是ERC777規范強制要求的:namesymbol,不過decimal并非ERC777標準中的要求。

兩個標準中的寫操作函數都是解耦的,可以彼此獨立的操作。注意ERC20函數應當僅限于既有合約的調用。

如果代幣合約實現了ERC20,那么它必須通過ERC820注冊ERC20Token接口。如果合約支持切換啟用或禁止ERC20的方法,那么每次進行切換時,該代幣合約必須通過ERC820注冊或解除RC20Token接口的注冊。

對于實現ERC20的新合約而言,唯一的區別在于ERC777TokensSender和ERC777TokensRecipient通過ERC820的注冊必須早于ERC20的注冊。這意味著即使是對ERC20的transfer方法的調用,代幣合約也必須通過ERC820檢查fromto是否實現了tokensToSend/tokensReceived接口并在可用時進行調用。注意當調用合約的ERC20的transfer方法時,如果合約沒有實現tokensReceived接口,那么transfer也應當被接受,這意味著代幣可能會被鎖定。

感謝各位的閱讀,以上就是“ERC777規范內容是什么”的內容了,經過本文的學習后,相信大家對ERC777規范內容是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

erc
AI

乐业县| 彝良县| 林甸县| 五华县| 九江市| 黄冈市| 麻江县| 连江县| 仁化县| 安仁县| 吴旗县| 和静县| 阳谷县| 视频| 攀枝花市| 鸡东县| 西峡县| 淳化县| 林州市| 那曲县| 辉南县| 常宁市| 庄浪县| 外汇| 武乡县| 伊吾县| 吴桥县| 盐津县| 西充县| 台北县| 平凉市| 澄江县| 绿春县| 泌阳县| 宁城县| 永城市| 岢岚县| 长岭县| 抚松县| 博爱县| 新建县|