makoto_inoue
Jan 31 · 3 min read

Introduction

One of the most frequently asked questions we hear at ENS has been “How do you integrate IPFS/swarm into ENS?”. In addition to setting your domain to resolve to an Ethereum address, we have a functionsetContent(bytes32 node, bytes32 hash) to set content, but we haven’t standardised the format for this field, and it’s limited to 32 bytes — rendering it unsuitable for use with IPFS.

A few proposals were made, and the final version came up as EIP1577, proposed by Dean Eigenmann and Nick Johnson.

We are now pleased to announce that you can use the new protocol via our new ENS Manager.

With the new contenthash protocol, you do not have to encode an IPFS hash by yourself; the manager will take care of it on your behalf.

How do you start using contenthash?

The contenthash format is supported in the newly deployed Resolver contract which is set under resolver.eth (yes, we are eating our own dog-food). You can set the new resolver by clicking “Use Public Resolver”.

For testing on Ropsten, we don’t own the same domain so you need to set the address 0xde469c7106a9FBC3fb98912bB00be983a89bDDca manually (sorry).

When migrating to a new resolver, you will need to set any existing fields such as address again on the new resolver contract.

What about the existing content?

If you have already set Resolver into existing ENS name to resolve an Ethereum address, chances are you are using the old Resolver which does not have contenthash support. Changing the Resolver of existing names is time consuming so we continue to support the old Resolver.

What you will notice is a few warning signs, and you will have to convert content to hex format by yourself (as it used to be).

Does that make all sense? If it’s not clear yet, here is the brief walk-through video.

Open contribution from pldespaigne

With the new EIP 1577, we were going to start writing a library to encode/decode the new format.

We had a pleasant surprise when pldespaigne joined our github issue conversation from nowhere with his own implementation so that I was able to concentrate on just integrating it into our app!

Thank you so much, pldespaigne! We are looking for more open contribution like this.

The Ethereum Name Service

The official source for news related to the Ethereum Name Service (ENS). Follow this publication for the latest ENS developments.

makoto_inoue

Written by

http://makoto.github.io/me

The Ethereum Name Service

The official source for news related to the Ethereum Name Service (ENS). Follow this publication for the latest ENS developments.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade