Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ENS at WindingTree hackathon

ENS at WindingTree hackathon

1eecfce54b4f902784d046328935efd4?s=128

Makoto Inoue

November 05, 2019
Tweet

Transcript

  1. None
  2. - Dev at @ensdomains - Organiser @ London Ethereum Codeup

    - C-founder @wearekickback
  3. Show us what you hacked !! https://kickback.events/events

  4. Agenda - 1. What can you do with ENS? -

    2. ENS contracts and API overview - 3. ENS + IPFS = Decentralised Web!
  5. 1: What can you do with ENS?

  6. 0x5a384227b65fa093dec...

  7. matoken.eth

  8. ENS is your identity!

  9. ENS is your brand! https://medium.com/the-ethereum-name-service/ens-domain-rankings-the-most-subdomains-3b4fc8afe35b

  10. ENS is Asset (Non Fungible Token) https://opensea.io/rankings

  11. ENS is NFT https://opensea.io/rankings

  12. ENS has lots of data https://thegraph.com/explorer/subgraph/ensdomains/ens

  13. More than Ethereum Address

  14. More than Blockchain Address

  15. 2. ENS contract and API overview

  16. Read the doc! (https://docs.ens.domains )

  17. ENS Architecture

  18. Contract MyResolver { address me; function MyResolver() { me =

    msg.sender; } function addr(bytes32 node) constant returns (address) { return me; } } ENS by example: Resolvers
  19. Resolving a name

  20. Looking up names const address = await ens.resolver(‘arachnid.eth’).addr();

  21. Reverse resolution const addr = ‘0x112234455...’ const name = await

    ens.reverse(‘0x112234455...’).name() //for security const forward = await ens.resolver(name) if(addr === forward){ …. }
  22. Setting up reverse resolution reverseRegistrar.setName(‘jefflau.eth’)

  23. Putting them altogether

  24. 3: ENS + IPFS = Decentralised Web!

  25. FAQ: Can you host website on ENS?

  26. A: Ish...

  27. At ENS workshop 7/10: 13:45

  28. At ENS workshop 7/10: 13:45

  29. At ENS workshop 7/10: 13:45

  30. Dapp + ENS - Donation to a multisig account -

    Message is written into data field - Reveal your name with reverse lookup (address -> name) - Deploy to IPFS!
  31. Dapp + ENS + IPFS - Donation to a multisig

    account - Message is written into data field - Reveal your name with reverse lookup (address -> name) - Deploy to IPFS!
  32. Dapp + ENS + IPFS + DNS - Donation to

    a multisig account - Message is written into data field - Reveal your name with reverse lookup (address -> name) - Deploy to IPFS! https://medium.com/the-ethereum-name-service/ethdns-9d56298fa38a
  33. - Deploying your Dapp/Dweb to IPFS - Assigning ENS to

    IPFS - Setting URL with EthDNS
  34. 1. Deploying your Dapp/Dweb to IPFS

  35. yarn build

  36. Ipfs add -r build

  37. Pin the hash

  38. 2. Assigning ENS to IPFS

  39. - $5 / y - Commit & Reveal Buy a

    domain At app.ens.domains
  40. - Free - On Rinkeby/Ropsten/Goerli Claim a test domain At

    app.ens.domains
  41. Configure - Registrant - Controller - Resolver

  42. Setting up Ethereum Address

  43. Not just for Ethereum hex addresses

  44. Setting text

  45. Setting ipfs content

  46. Setting ipfs content

  47. Contenthash support (EIP1577) http://eips.ethereum.org/EIPS/eip-1577 • • •

  48. EIP1577

  49. Multicodec

  50. Accessing ipfs content

  51. Accessing ipfs content

  52. Accessing ipfs content

  53. None
  54. None
  55. Add message

  56. Query via graphQL

  57. Wedding message on the blockchain!

  58. How does it work?

  59. • • • Why EthDNS?

  60. None
  61. Automatic dnslink support • • •

  62. Public IPFS gateways • • •

  63. ifps.io/ipns/matoken.eth.link • • •

  64. ifps.jes.xxx/ipns/matoken.eth.link • • •

  65. eu.siderus.io/ipns/matoken.eth.link • • •

  66. ifps.ethereum.io/ipns/matoken.eth.link • • •

  67. For more info • https://www.wealdtech.com/articles/ethdns-an-ethereum-backend-for-the-domain-name-system/ • https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1577.md • https://github.com/mcdee/coredns •

    http://ensmanager.matoken.eth.link • https://medium.com/the-ethereum-name-service/how-to-host-your-dapp-with-ipfs-ens-and-access-it-via-ethdns-c96046059d87 • https://medium.com/the-ethereum-name-service/ethdns-9d56298fa38a • http://discuss.ens.domains • https://app.ens.domains/
  68. Show us what you hacked !!

  69. http://