github.com/nitinawathare/ethereumassignment3@v0.0.0-20211021213010-f07344c2b868/go-ethereum/contracts/ens/README.md (about)

     1  # Swarm ENS interface
     2  
     3  ## Usage
     4  
     5  Full documentation for the Ethereum Name Service [can be found as EIP 137](https://github.com/ethereum/EIPs/issues/137).
     6  This package offers a simple binding that streamlines the registration of arbitrary UTF8 domain names to swarm content hashes.
     7  
     8  ## Development
     9  
    10  The SOL file in contract subdirectory implements the ENS root registry, a simple
    11  first-in, first-served registrar for the root namespace, and a simple resolver contract;
    12  they're used in tests, and can be used to deploy these contracts for your own purposes.
    13  
    14  The solidity source code can be found at [github.com/arachnid/ens/](https://github.com/arachnid/ens/).
    15  
    16  The go bindings for ENS contracts are generated using `abigen` via the go generator:
    17  
    18  ```shell
    19  go generate ./contracts/ens
    20  ```
    21  
    22  ## Fallback contract support
    23  
    24  In order to better support content resolution on different service providers (such as Swarm and IPFS), [EIP-1577](https://eips.ethereum.org/EIPS/eip-1577)
    25  was introduced and with it changes that allow applications to know _where_ content hashes are stored (i.e. if the
    26  requested hash resides on Swarm or IPFS).
    27  
    28  The code under `contracts/ens/contract` reflects the new Public Resolver changes and the code under `fallback_contract` allows
    29  us to support the old contract resolution in cases where the ENS name owner did not update her Resolver contract, until the migration
    30  period ends (date arbitrarily set to June 1st, 2019).