Nekoniumに於けるENS(NNS)の概要

Home » 未分類 » Nekoniumに於けるENS(NNS)の概要
未分類 コメントはまだありません    [この記事を編集する]

               

ENSとは

ENSはEthereumコミュニティーによって作成されたDNSのような名前解決サービスをブロックチェーンで実現するサービスです。

ENSを実現するコントラクト群の関係

Ethreumのメインチェーンでデプロイされているコントラクトのソースコードは以下Githubレポジトリに公開されています。

https://github.com/ensdomains/ens

https://github.com/ensdomains/resolvers

また、公式の資料が以下に公開されています。

https://github.com/ensdomains/docs/

コントラクトは複数の方法で実装がなされており、一部はEthereumVMにおけるアセンブリ言語のようなもので書かれています。それらは、名前解決を行うクライアントや、ネットワークへの負担、またトランザクションのガスを低減するように記述されていると思われます。

コントラクトは大きく分けてレジストラとリゾルバの機能を持つものに分かれます。

レジストラは、名前解決のための適切なリゾルバを所有権を考慮して管理します。

リゾルバは、実際にドメインの名前解決を行います。

レジストラ

レジストラは以下のものが実装されています。

ENS.sol

ENSサービスの中核をなすコントラクトであり、ドメイン名に対応した複数のレジストラへの参照を持っています。

名前解決時は、最上位のENSコントラクトがクライアントのすべての名前解決に(プログラムの関数の様に)応答します。

実装としてENS.IIIとENSRegistry.solの二つがあります。

コントラクトをデプロイしたアドレスがオーナーとなり、この直下のドメインの管理権を管理します。管理権はそのオーナー以外は行使できません。

FIFSRegistrar.sol

先にドメインの所有権を宣言した者がそのオーナーとなるレジストラです。

HashRegistrar.sol

オークションで所有権を獲得するレジストラです。オークションについてはよく分かりません。

HashRegistrarSimplified.sol

上の単純なバージョンです。

Nekoniumに於ける公開ENSコントラクトアドレス

Nekoniumメインネットワークに於けるENS.IIIコントラクトのアドレスは以下です。

0x331414dc3f6af20c74433db88ca76e2bfe5240f7

バイトコードはすべてEthereumのメインネットワークにデプロイされているものと同じになっています。

NNS(Nekonium Name Service)の構造

root – ENS.III(0x331414dc3f6af20c74433db88ca76e2bfe5240f7)

dev – ENSRegistry.sol – (一般登録募集、デベロッパーである必要有り)
karikarigohan – FIFSRegistrar.sol – (一般FIFS登録)
retorutogohan – FIFSRegistrar.sol – (一般FIFS登録)
reverse
addr – (アドレスの所有権を主張できる)

NNSを利用するアプリケーションの注意事項

NNSを利用するアプリケーションは、ENSを利用するアプリケーションと違って、次の条件を満たす必要があります。

ENSを利用するアプリケーションは、ドメイン全体のASCII文字列の長さが63以下で動作を保証する必要がある

ENSをデプロイするまでの経緯

以下参照。

https://github.com/nekonium/nekonium.github.io/issues/3

LEAVE A COMMENT