specs/spec/8.html

2 lines
28 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html> <html lang="en-US"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=Edge"> <title>8/EIPS - Status Specification</title> <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon"> <link rel="stylesheet" href="/assets/css/just-the-docs-default.css"> <script type="text/javascript" src="/assets/js/vendor/lunr.min.js"></script> <script type="text/javascript" src="/assets/js/just-the-docs.js"></script> <meta name="viewport" content="width=device-width, initial-scale=1"> <!-- Begin Jekyll SEO tag v2.7.1 --> <title>8/EIPS | Status Specification</title> <meta name="generator" content="Jekyll v4.2.1" /> <meta property="og:title" content="8/EIPS" /> <meta property="og:locale" content="en_US" /> <link rel="canonical" href="https://specs.status.im/spec/8" /> <meta property="og:url" content="https://specs.status.im/spec/8" /> <meta property="og:site_name" content="Status Specification" /> <meta name="twitter:card" content="summary" /> <meta property="twitter:title" content="8/EIPS" /> <script type="application/ld+json"> {"@type":"WebPage","url":"https://specs.status.im/spec/8","headline":"8/EIPS","@context":"https://schema.org"}</script> <!-- End Jekyll SEO tag --> </head> <body> <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <symbol id="svg-link" viewBox="0 0 24 24"> <title>Link</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link"> <path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path> </svg> </symbol> <symbol id="svg-search" viewBox="0 0 24 24"> <title>Search</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search"> <circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line> </svg> </symbol> <symbol id="svg-menu" viewBox="0 0 24 24"> <title>Menu</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-menu"> <line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line> </svg> </symbol> <symbol id="svg-arrow-right" viewBox="0 0 24 24"> <title>Expand</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-right"> <polyline points="9 18 15 12 9 6"></polyline> </svg> </symbol> <symbol id="svg-doc" viewBox="0 0 24 24"> <title>Document</title> <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file"> <path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline> </svg> </symbol> </svg> <div class="side-bar"> <div class="site-header"> <a href="https://specs.status.im/" class="site-title lh-tight"> Status Specification </a> <a href="#" id="menu-button" class="site-button"> <svg viewBox="0 0 24 24" class="icon"><use xlink:href="#svg-menu"></use></svg> </a> </div> <nav role="navigation" aria-label="Main" id="site-nav" class="site-nav"> <ul class="nav-list"><li class="nav-list-item active"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="https://specs.status.im/spec/" class="nav-list-link">Stable specs</a><ul class="nav-list "><li class="nav-list-item "><a href="https://specs.status.im/spec/1" class="nav-list-link">1/CLIENT</a></li><li class="nav-list-item "><a href="https://specs.status.im/spec/10" class="nav-list-link">10/WAKU-USAGE</a></li><li class="nav-list-item "><a href="https://specs.status.im/spec/11" class="nav-list-link">11/WAKU-MAILSERVER</a></li><li class="nav-list-item "><a href="https://specs.status.im/draft/15" class="nav-list-link">15/NOTIFICATIONS</a></li><li class="nav-list-item "><a href="https://specs.status.im/spec/2" class="nav-list-link">2/ACCOUNT</a></li><li class="nav-list-item "><a href="https://specs.status.im/spec/3" class="nav-list-link">3/WHISPER-USAGE</a></li><li class="nav-list-item "><a href="https://specs.status.im/spec/4" class="nav-list-link">4/WHISPER-MAILSERVER</a></li><li class="nav-list-item "><a href="https://specs.status.im/spec/5" class="nav-list-link">5/SECURE-TRANSPORT</a></li><li class="nav-list-item "><a href="https://specs.status.im/spec/6" class="nav-list-link">6/PAYLOADS</a></li><li class="nav-list-item active"><a href="https://specs.status.im/spec/8" class="nav-list-link active">8/EIPS</a></li><li class="nav-list-item "><a href="https://specs.status.im/spec/9" class="nav-list-link">9/ETHEREUM-USAGE</a></li></ul></li><li class="nav-list-item"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="https://specs.status.im/draft/" class="nav-list-link">Draft specs</a><ul class="nav-list "><li class="nav-list-item "><a href="https://specs.status.im/draft/12" class="nav-list-link">12/IPFS gateway for Sticker Pack</a></li><li class="nav-list-item "><a href="https://specs.status.im/draft/13" class="nav-list-link">13/3RD-PARTY-USAGE</a></li><li class="nav-list-item "><a href="https://specs.status.im/draft/14" class="nav-list-link">14/Dapp browser API usage</a></li><li class="nav-list-item "><a href="https://specs.status.im/draft/16" class="nav-list-link">16/Keycard Usage for Wallet and Chat Keys</a></li><li class="nav-list-item "><a href="https://specs.status.im/draft/3" class="nav-list-link">3/WHISPER-USAGE</a></li><li class="nav-list-item "><a href="https://specs.status.im/draft/6" class="nav-list-link">6/PAYLOADS</a></li><li class="nav-list-item "><a href="https://specs.status.im/draft/7" class="nav-list-link">7/GROUP-CHAT</a></li></ul></li><li class="nav-list-item"><a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a><a href="https://specs.status.im/raw/" class="nav-list-link">Raw specs</a><ul class="nav-list "><li class="nav-list-item "><a href="https://specs.status.im/raw/16" class="nav-list-link">16/PUSH-NOTIFICATION-SERVER</a></li></ul></li><li class="nav-list-item"><a href="https://specs.status.im/development" class="nav-list-link">DEVELOPMENT</a></li><li class="nav-list-item"><a href="https://specs.status.im/style-guideline" class="nav-list-link">STYLE-GUIDELINE</a></li></ul> </nav> <footer class="site-footer"> This site uses <a href="https://github.com/pmarsceill/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll. </footer> </div> <div class="main" id="top"> <div id="main-header" class="main-header"> <div class="search"> <div class="search-input-wrap"> <input type="text" id="search-input" class="search-input" tabindex="0" placeholder="Search Status Specification" aria-label="Search Status Specification" autocomplete="off"> <label for="search-input" class="search-label"><svg viewBox="0 0 24 24" class="search-icon"><use xlink:href="#svg-search"></use></svg></label> </div> <div id="search-results" class="search-results"></div> </div> </div> <div id="main-content-wrap" class="main-content-wrap"> <nav aria-label="Breadcrumb" class="breadcrumb-nav"> <ol class="breadcrumb-nav-list"> <li class="breadcrumb-nav-list-item"><a href="https://specs.status.im/spec/">Stable specs</a></li> <li class="breadcrumb-nav-list-item"><span>8/EIPS</span></li> </ol> </nav> <div id="main-content" class="main-content" role="main"> <h1 id="8eips"> <a href="#8eips" class="anchor-heading" aria-labelledby="8eips"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> 8/EIPS </h1> <blockquote> <p>Version: 0.2</p> <p>Status: Stable</p> <p>Authors: Ricardo Guilherme Schmidt <a href="mailto:ricardo3@status.im">ricardo3@status.im</a></p> </blockquote> <h2 id="abstract"> <a href="#abstract" class="anchor-heading" aria-labelledby="abstract"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Abstract </h2> <p>This specification describes how Status relates with EIPs.</p> <h2 id="table-of-contents"> <a href="#table-of-contents" class="anchor-heading" aria-labelledby="table-of-contents"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Table of Contents </h2> <ul> <li><a href="#abstract">Abstract</a></li> <li><a href="#table-of-contents">Table of Contents</a></li> <li><a href="#introduction">Introduction</a></li> <li><a href="#components">Components</a></li> </ul> <h2 id="introduction"> <a href="#introduction" class="anchor-heading" aria-labelledby="introduction"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Introduction </h2> <p>Status should follow all standards as possible. Whenever the Status app needs a feature, it should be first checked if there is a standard for that, if not, Status should propose a standard.</p> <h3 id="support-table"> <a href="#support-table" class="anchor-heading" aria-labelledby="support-table"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Support table </h3> <div class="table-wrapper"><table> <thead> <tr> <th> </th> <th>Status v0</th> <th>Status v1</th> <th>Other</th> <th>State</th> </tr> </thead> <tbody> <tr> <td>BIP32</td> <td>N</td> <td>Y</td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>BIP39</td> <td>Y</td> <td>Y</td> <td>Y</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>BIP43</td> <td>N</td> <td>Y</td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>BIP44</td> <td>N</td> <td>Y</td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP20</td> <td>Y</td> <td>Y</td> <td>Y</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP55</td> <td>Y</td> <td>Y</td> <td>Y</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP67</td> <td>P</td> <td>P</td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP137</td> <td>P</td> <td>P</td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP155</td> <td>Y</td> <td>Y</td> <td>Y</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP165</td> <td>P</td> <td>N</td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP181</td> <td>P</td> <td>N</td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP191</td> <td>Y?</td> <td>N</td> <td>Y</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP627</td> <td>Y</td> <td>Y</td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP681</td> <td>Y</td> <td>N</td> <td>Y</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP712</td> <td>P</td> <td>P</td> <td>Y</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP721</td> <td>P</td> <td>P</td> <td>Y</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP831</td> <td>N</td> <td>Y</td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP945</td> <td>Y</td> <td>Y</td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP1102</td> <td>Y</td> <td>Y</td> <td>Y</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP1193</td> <td>Y</td> <td>Y</td> <td>Y</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP1577</td> <td>Y</td> <td>P</td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP1581</td> <td>N</td> <td>Y</td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">stable</code></td> </tr> <tr> <td>EIP1459</td> <td>N</td> <td> </td> <td>N</td> <td><code class="language-plaintext highlighter-rouge">raw</code></td> </tr> </tbody> </table></div> <h2 id="components"> <a href="#components" class="anchor-heading" aria-labelledby="components"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Components </h2> <h3 id="bip32---hierarchical-deterministic-wallets"> <a href="#bip32---hierarchical-deterministic-wallets" class="anchor-heading" aria-labelledby="bip32---hierarchical-deterministic-wallets"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> BIP32 - Hierarchical Deterministic Wallets </h3> <p>Support: Dependency.<br /> Reference: https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki<br /> Description: Enable wallets to derive multiple private keys from the same seed.<br /> Used for: Dependency of BIP39 and BIP43.</p> <h3 id="bip39---mnemonic-code-for-generating-deterministic-keys"> <a href="#bip39---mnemonic-code-for-generating-deterministic-keys" class="anchor-heading" aria-labelledby="bip39---mnemonic-code-for-generating-deterministic-keys"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> BIP39 - Mnemonic code for generating deterministic keys </h3> <p>Support: Dependency.<br /> Reference: https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki<br /> Description: Enable wallet to create private key based on a safe seed phrase. Used for: Security and user experience.</p> <h3 id="bip43---purpose-field-for-deterministic-wallets"> <a href="#bip43---purpose-field-for-deterministic-wallets" class="anchor-heading" aria-labelledby="bip43---purpose-field-for-deterministic-wallets"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> BIP43 - Purpose Field for Deterministic Wallets </h3> <p>Support: Dependency.<br /> Reference: https://github.com/bitcoin/bips/blob/master/bip-0043.mediawiki<br /> Description: Enable wallet to create private keys branched for a specific purpose.<br /> Used for: Dependency of BIP44, uses “ethereum” coin.</p> <h3 id="bip44---multi-account-hierarchy-for-deterministic-wallets"> <a href="#bip44---multi-account-hierarchy-for-deterministic-wallets" class="anchor-heading" aria-labelledby="bip44---multi-account-hierarchy-for-deterministic-wallets"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> BIP44 - Multi-Account Hierarchy for Deterministic Wallets </h3> <p>Support: Dependency.<br /> Reference: https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki<br /> Description: Enable wallet to derive multiple accounts in top of BIP39.<br /> Used for: Privacy.<br /> Sourcecode: https://github.com/status-im/status-react/blob/develop/src/status_im/constants.cljs#L240 <br /> Observation: BIP44 dont solve privacy issues regarding the transparency of transactions, therefore directly connected addresses through a transactions can be identifiable by a “network reconnaissance attack” over transaction history, this attack together with leakage of information from centralized services, such as exchanges, would be fatal against the whole privacy of users, regardless of BIP44.</p> <h3 id="eip20---fungible-token"> <a href="#eip20---fungible-token" class="anchor-heading" aria-labelledby="eip20---fungible-token"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP20 - Fungible Token </h3> <p>Support: Full.<br /> Reference: https://eips.ethereum.org/EIPS/eip-20<br /> Description: Enable wallets to use tokens based on smart contracts compliant with this standard.<br /> Used for: Wallet feature.<br /> Sourcecode: https://github.com/status-im/status-react/blob/develop/src/status_im/ethereum/tokens.cljs</p> <h3 id="eip55---mixed-case-checksum-address-encoding"> <a href="#eip55---mixed-case-checksum-address-encoding" class="anchor-heading" aria-labelledby="eip55---mixed-case-checksum-address-encoding"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP55 - Mixed-case checksum address encoding </h3> <p>Support: Full.<br /> Reference: https://eips.ethereum.org/EIPS/eip-55<br /> Description: Checksum standard that uses lowercase and uppercase inside address hex value.<br /> Used for: Sanity check of forms using ethereum address.<br /> Related: https://github.com/status-im/status-react/issues/4959 https://github.com/status-im/status-react/issues/8707<br /> Sourcecode: https://github.com/status-im/status-react/blob/develop/src/status_im/ethereum/eip55.cljs</p> <h3 id="eip67---standard-uri-scheme-with-metadata-value-and-byte-code"> <a href="#eip67---standard-uri-scheme-with-metadata-value-and-byte-code" class="anchor-heading" aria-labelledby="eip67---standard-uri-scheme-with-metadata-value-and-byte-code"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP67 - Standard URI scheme with metadata, value and byte code </h3> <p>Support: Partial.<br /> Reference: https://github.com/ethereum/EIPs/issues/67<br /> Description: A standard way of creating Ethereum URIs for various use-cases.<br /> Used for: Legacy support.<br /> https://github.com/status-im/status-react/issues/875</p> <h3 id="eip137---ethereum-domain-name-service---specification"> <a href="#eip137---ethereum-domain-name-service---specification" class="anchor-heading" aria-labelledby="eip137---ethereum-domain-name-service---specification"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP137 - Ethereum Domain Name Service - Specification </h3> <p>Support: Partial.<br /> Reference: https://eips.ethereum.org/EIPS/eip-137<br /> Description: Enable wallets to lookup ENS names.<br /> Used for: User experience, as a wallet and identity feature, usernames.<br /> Sourcecode: https://github.com/status-im/status-react/blob/develop/src/status_im/ethereum/ens.cljs#L86</p> <h3 id="eip155---simple-replay-attack-protection"> <a href="#eip155---simple-replay-attack-protection" class="anchor-heading" aria-labelledby="eip155---simple-replay-attack-protection"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP155 - Simple replay attack protection </h3> <p>Support: Full.<br /> Reference: https://eips.ethereum.org/EIPS/eip-155<br /> Description: Defined chainId parameter in the singed ethereum transaction payload.<br /> Used for: Signing transactions, crucial to safety of users against replay attacks.<br /> Sourcecode: https://github.com/status-im/status-react/blob/develop/src/status_im/ethereum/core.cljs</p> <h3 id="eip165---standard-interface-detection"> <a href="#eip165---standard-interface-detection" class="anchor-heading" aria-labelledby="eip165---standard-interface-detection"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP165 - Standard Interface Detection </h3> <p>Support: Dependency/Partial.<br /> Reference: https://eips.ethereum.org/EIPS/eip-165<br /> Description: Standard interface for contract to answer if it supports other interfaces.<br /> Used for: Dependency of ENS and EIP721.<br /> Sourcecode: https://github.com/status-im/status-react/blob/develop/src/status_im/ethereum/eip165.cljs</p> <h3 id="eip181---ens-support-for-reverse-resolution-of-ethereum-addresses"> <a href="#eip181---ens-support-for-reverse-resolution-of-ethereum-addresses" class="anchor-heading" aria-labelledby="eip181---ens-support-for-reverse-resolution-of-ethereum-addresses"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP181 - ENS support for reverse resolution of Ethereum addresses </h3> <p>Support: Partial.<br /> Reference: https://eips.ethereum.org/EIPS/eip-181<br /> Description: Enable wallets to render reverse resolution of Ethereum addresses.<br /> Used for: Wallet feature.<br /> Sourcecode: https://github.com/status-im/status-react/blob/develop/src/status_im/ethereum/ens.cljs#L86</p> <h3 id="eip191---signed-message"> <a href="#eip191---signed-message" class="anchor-heading" aria-labelledby="eip191---signed-message"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP191 - Signed Message </h3> <p>Support: Full.<br /> Reference: https://eips.ethereum.org/EIPS/eip-191<br /> Description: Contract signature standard, adds an obligatory padding to signed message to differentiate from Ethereum Transaction messages.<br /> Used for: Dapp support, security, dependency of ERC712.</p> <h3 id="eip627---whisper-specification"> <a href="#eip627---whisper-specification" class="anchor-heading" aria-labelledby="eip627---whisper-specification"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP627 - Whisper Specification </h3> <p>Support: Full.<br /> Reference: https://eips.ethereum.org/EIPS/eip-627<br /> Description: format of Whisper messages within the ÐΞVp2p Wire Protocol.<br /> Used for: Chat protocol.</p> <h3 id="eip681---url-format-for-transaction-requests"> <a href="#eip681---url-format-for-transaction-requests" class="anchor-heading" aria-labelledby="eip681---url-format-for-transaction-requests"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP681 - URL Format for Transaction Requests </h3> <p>Support: Partial.<br /> Reference: https://eips.ethereum.org/EIPS/eip-681 Description: A link that pop up a transaction in the wallet.<br /> Used for: Useful as QR code data for transaction requests, chat transaction requests and for dapp links to transaction requests.<br /> Sourcecode: https://github.com/status-im/status-react/blob/develop/src/status_im/ethereum/eip681.cljs<br /> Related: <a href="https://github.com/status-im/status-react/issues/9183">Issue #9183: URL Format for Transaction Requests (EIP681) is poorly supported</a> https://github.com/status-im/status-react/pull/9240 https://github.com/status-im/status-react/issues/9238 https://github.com/status-im/status-react/issues/7214 https://github.com/status-im/status-react/issues/7325 https://github.com/status-im/status-react/issues/8150</p> <h3 id="eip712---typed-signed-message"> <a href="#eip712---typed-signed-message" class="anchor-heading" aria-labelledby="eip712---typed-signed-message"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP712 - Typed Signed Message </h3> <p>Support: Partial.<br /> Reference: https://eips.ethereum.org/EIPS/eip-712<br /> Description: Standardize types for contract signature, allowing users to easily inspect whats being signed.<br /> Used for: User experience, security.<br /> Related: https://github.com/status-im/status-react/issues/5461 https://github.com/status-im/status-react/commit/ba37f7b8d029d3358c7b284f6a2383b9ef9526c9</p> <h3 id="eip721---non-fungible-token"> <a href="#eip721---non-fungible-token" class="anchor-heading" aria-labelledby="eip721---non-fungible-token"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP721 - Non Fungible Token </h3> <p>Support: Partial.<br /> Reference: https://eips.ethereum.org/EIPS/eip-721<br /> Description: Enable wallets to use tokens based on smart contracts compliant with this standard.<br /> Used for: Wallet feature.<br /> Related: https://github.com/status-im/status-react/issues/8909<br /> Sourcecode: https://github.com/status-im/status-react/blob/develop/src/status_im/ethereum/erc721.cljs https://github.com/status-im/status-react/blob/develop/src/status_im/ethereum/tokens.cljs</p> <h3 id="eip945---web-3-qr-code-scanning-api"> <a href="#eip945---web-3-qr-code-scanning-api" class="anchor-heading" aria-labelledby="eip945---web-3-qr-code-scanning-api"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP945 - Web 3 QR Code Scanning API </h3> <p>Support: Full.<br /> Reference: https://github.com/ethereum/EIPs/issues/945<br /> Used for: Sharing contactcode, reading transaction requests.<br /> Related: https://github.com/status-im/status-react/issues/5870</p> <h3 id="eip1102---opt-in-account-exposure"> <a href="#eip1102---opt-in-account-exposure" class="anchor-heading" aria-labelledby="eip1102---opt-in-account-exposure"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP1102 - Opt-in account exposure </h3> <p>Support: Full.<br /> Reference: https://eips.ethereum.org/EIPS/eip-1102<br /> Description: Allow users to opt-in the exposure of their ethereum address to dapps they browse.<br /> Used for: Privacy, DApp support.<br /> Related: https://github.com/status-im/status-react/issues/7985</p> <h3 id="eip1193---ethereum-provider-javascript-api"> <a href="#eip1193---ethereum-provider-javascript-api" class="anchor-heading" aria-labelledby="eip1193---ethereum-provider-javascript-api"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP1193 - Ethereum Provider JavaScript API </h3> <p>Support: Full.<br /> Reference: https://eips.ethereum.org/EIPS/eip-1193<br /> Description: Allows dapps to recognize event changes on wallet.<br /> Used for: DApp support.<br /> Related: https://github.com/status-im/status-react/pull/7246</p> <h3 id="eip1577---contenthash-field-for-ens"> <a href="#eip1577---contenthash-field-for-ens" class="anchor-heading" aria-labelledby="eip1577---contenthash-field-for-ens"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP1577 - contenthash field for ENS </h3> <p>Support: Partial.<br /> Reference: https://eips.ethereum.org/EIPS/eip-1577<br /> Description: Allows users browse ENS domains using contenthash standard.<br /> Used for: Browser, DApp support.<br /> Related: https://github.com/status-im/status-react/issues/6688<br /> Sourcecode: https://github.com/status-im/status-react/blob/develop/src/status_im/utils/contenthash.cljs https://github.com/status-im/status-react/blob/develop/test/cljs/status_im/test/utils/contenthash.cljs#L5</p> <h3 id="eip1581---non-wallet-usage-of-keys-derived-from-bip-32-trees"> <a href="#eip1581---non-wallet-usage-of-keys-derived-from-bip-32-trees" class="anchor-heading" aria-labelledby="eip1581---non-wallet-usage-of-keys-derived-from-bip-32-trees"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP1581 - Non-wallet usage of keys derived from BIP-32 trees </h3> <p>Support: Partial.<br /> Reference: https://eips.ethereum.org/EIPS/eip-1581<br /> Description: Allow wallet to derive keys that are less sensible (non wallet).<br /> Used for: Security (dont reuse wallet key) and user experience (dont request keycard every login).<br /> Related: https://github.com/status-im/status-react/issues/9088 https://github.com/status-im/status-react/pull/9096<br /> Sourcecode: https://github.com/status-im/status-react/blob/develop/src/status_im/constants.cljs#L242</p> <h3 id="eip1459---node-discovery-via-dns"> <a href="#eip1459---node-discovery-via-dns" class="anchor-heading" aria-labelledby="eip1459---node-discovery-via-dns"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> EIP1459 - Node Discovery via DNS </h3> <p>Support: - Reference: https://eips.ethereum.org/EIPS/eip-1459 Description: Allows the storing and retrieving of nodes through merkle trees stored in TXT records of a domain. Used for: Finding Waku nodes. Related: - Sourcecode: -</p> <h2 id="copyright"> <a href="#copyright" class="anchor-heading" aria-labelledby="copyright"><svg viewBox="0 0 16 16" aria-hidden="true"><use xlink:href="#svg-link"></use></svg></a> Copyright </h2> <p>Copyright and related rights waived via <a href="https://creativecommons.org/publicdomain/zero/1.0/">CC0</a>.</p> </div> </div> <div class="search-overlay"></div> </div> </body> </html>