Einführung in ENS

Der Ethereum Name Service (ENS) ist ein verteiltes, offenes und skalierbares Namenssystem, das auf der Ethereum-Blockchain basiert. Die Kernfunktion von ENS besteht darin, für Menschen lesbare Namen (wie „alice.eth“) in computererkennbare Identifikatoren wie Ethereum-Adressen, andere Kryptowährungsadressen, Inhalts-Hashes, Metadaten usw. zu analysieren. Darüber hinaus unterstützt ENS auch die „Reverse Resolution“, wodurch es möglich ist, Metadaten (wie kanonische Namen oder Schnittstellenbeschreibungen) mit Ethereum-Adressen zu verknüpfen.

ENS-Funktion und Architektur

Das Ziel von ENS ähnelt dem Internet Name Service (DNS), aber aufgrund der funktionalen Merkmale und Einschränkungen der Ethereum-Blockchain unterscheidet sich die Architektur von ENS stark von der von DNS. ENS ist ein hierarchisches Benennungssystem mit Punkten als Trennzeichen zwischen den Ebenen, und jede Ebene wird als Domäne bezeichnet. Der Inhaber einer Domain hat die volle Kontrolle über seine Subdomains.

Die Eigentümer von Top-Level-Domain-Namen (wie „.eth“ und „.test“) sind intelligente Verträge, die „Registrare“ genannt werden. Die Regeln für die Subdomainvergabe werden in diesen Verträgen festgelegt. Jeder kann den Besitz eines Domainnamens übernehmen und ihn nach Bedarf konfigurieren, indem er die in diesen Verträgen festgelegten Regeln befolgt. ENS unterstützt auch die Verbindung vorhandener DNS-Domänennamen mit dem ENS-System, um dessen Funktionen zu erweitern.

Aufgrund der hierarchischen Struktur von ENS kann jeder, der eine Domain auf einer bestimmten Ebene besitzt, Subdomains für sich selbst oder andere erstellen und konfigurieren. Wenn Alice beispielsweise „alice.eth“ besitzt, kann sie „pay.alice.eth“ erstellen und nach Bedarf einrichten.

ENS-Bereitstellung und -Nutzung

ENS wird im Ethereum-Hauptnetzwerk und in mehreren Testnetzwerken eingesetzt. Wenn Sie die ensjs-Javascript-Bibliothek oder eine Endbenutzeranwendung verwenden, erkennen diese Tools automatisch das entsprechende Netzwerk und interagieren mit ihm.
 

ENS-Architektur

ENS besteht aus zwei Hauptkomponenten: Registrierung und Parser.
 

Einführung in die ENS-Registrierung

Das ENS-Register ist ein intelligenter Vertrag, der eine Liste aller Namen und Unternamen verwaltet und drei wichtige Informationen zu jedem Namen speichert:

  1. Namensinhaber

  2. Namensparser

  3. Die Cache-Lebensdauer (TTL) aller Datensätze unter dem Namen

Der Inhaber des Namens kann ein externes Konto (Benutzer) oder ein Smart Contract sein. Der Registrar fungiert als intelligenter Vertrag, der einen Namen der obersten Ebene enthält und den Benutzern gemäß den Regeln im Vertrag Unternamen dieses Namens zuweist.

ENS-Registrierungsfunktionen

Namensinhaber in der ENS-Registrierung haben die folgenden Berechtigungen:

  1. Resolver und TTL festlegen: Besitzer können einen Resolver angeben und eine TTL für ihren Namen festlegen.

  2. Eigentum übertragen: Der Eigentümer kann das Eigentum an dem Namen auf eine andere Adresse übertragen.

  3. Besitz von Unternamen ändern: Besitzer können den Besitz von Unternamen verwalten und ändern.

Der Hauptzweck der ENS-Registrierung besteht darin, Namen den Resolvern zuzuordnen, die für die Auflösung dieser Namen verantwortlich sind. Resolver sind intelligente Verträge, die für die Umwandlung von Namen in Adressen verantwortlich sind. Jeder Smart Contract, der parserbezogene Standards erfüllt, kann als Parser in ENS verwendet werden. Für Benutzer, deren Anforderungen einfach sind und die Adressen nicht häufig ändern, kann ein universeller Resolver verwendet werden.

Parser-Funktion

Jeder Datensatztyp (z. B. Ethereum-Adresse, Inhalts-Hash usw.) definiert eine Reihe von Methoden, die der Parser implementieren muss, um den entsprechenden Datensatz bereitzustellen. Durch den EIP-Standardisierungsprozess können jederzeit neue Datensatztypen definiert werden, sodass zur Unterstützung neuer Datensatztypen keine Änderungen an der ENS-Registrierung oder vorhandenen Parsern erforderlich sind.

Das Auflösen eines Namens in ENS erfordert zwei Schritte:

  1. Abfragen der Registrierung: Fragen Sie zunächst die Registrierung ab, um festzustellen, welcher Resolver für die Auflösung des Namens verantwortlich ist.

  2. Fragen Sie den Parser ab: Fragen Sie dann den Parser nach den Analyseergebnissen ab.

Vorteile und Anwendungen von ENS

Die ENS-Registrierung und der Parser sollen die Verwaltung komplexer Adressen vereinfachen und Benutzern die einfache Umwandlung von menschenlesbaren Namen in computerlesbare Bezeichner ermöglichen. Dieses Design verbessert nicht nur das Benutzererlebnis, sondern bietet auch große Flexibilität und Skalierbarkeit und macht ENS zu einem leistungsstarken Tool für Blockchain-Benennungssysteme.
 

Namehash-Mechanismus

Bei Smart Contracts ist die direkte Interaktion mit menschenlesbaren Namen aufgrund von Ressourcenbeschränkungen ineffizient. Daher verwendet ENS einen kryptografischen 256-Bit-Hash mit fester Länge, um Namen zu verarbeiten. Dieser Hashing-Algorithmus heißt Namehash und ist darauf ausgelegt, eindeutige Hashwerte mit einer hierarchischen Struktur zu generieren. Der Namehash von „alice.eth“ lautet beispielsweise 0x787192fc5378cc32aa956ddfdedbf26b24e8d78e40109add0eea2c1a012c3dec. Innerhalb von ENS wird Namehash zur Darstellung von Namen verwendet.

Der rekursive Prozess von Namehash

Namehash ist ein rekursiver Prozess, der für jeden gültigen Namen einen eindeutigen Hashwert generiert. Indem man mit dem Namehash eines Namens (wie „alice.eth“) beginnt, kann der Namehash eines beliebigen Unternamens (wie „iam.alice.eth“) abgeleitet werden, ohne sich mit dem ursprünglichen, für Menschen lesbaren Namen „alice“ auseinandersetzen oder ihn kennen zu müssen .eth" . Mit dieser Funktion kann ENS seine Hierarchie effizient verwalten, ohne intern mit menschenlesbaren Textzeichenfolgen umgehen zu müssen.

Normalisierungsprozess

Vor dem Hashing mit Namehash müssen Namen normalisiert werden. Dieser Prozess basiert auf dem UTS-46-Standard, der sicherstellt, dass bei Buchstaben in Namen die Groß-/Kleinschreibung nicht beachtet wird und ungültige Zeichen nicht zulässig sind. Jegliches Hashing und Parsen von Namen muss zunächst normalisiert werden, um konsistente Ergebnisse im gesamten ENS-System für alle Benutzer sicherzustellen.

Bedeutung von Namehash

Das Design von Namehash spielt in folgenden Aspekten eine wichtige Rolle:

  1. Effizienz: ENS ermöglicht eine effiziente Verarbeitung in Smart Contracts, indem es lesbare Namen in Hashes fester Länge umwandelt.

  2. Hierarchie: Namehash ermöglicht die rekursive Generierung von Hashes von Unternamen und unterstützt so die hierarchische Verwaltung von ENS.

  3. Konsistenz: Stellen Sie durch den Normalisierungsprozess sicher, dass alle Benutzer bei der Verarbeitung von Namen in ENS konsistente Ergebnisse erhalten.
    Anwendung von Namehash

Im ENS-System wird Namehash häufig verwendet:

  1. Namensregistrierung: Wenn ein Benutzer einen Namen registriert, verwendet ENS Namehash, um den Namen zur Speicherung und Verwaltung in einen Hash-Wert umzuwandeln.

  2. Namensauflösung: Bei der Namensauflösung führt ENS eine schnelle und effiziente Suche und Zuordnung basierend auf dem Namehash des Namens durch.

  3. Unternamenverwaltung: Durch die rekursive Natur von Namehash können Benutzer die Unternamen ihrer Namen einfach verwalten, ohne sich mit komplexen Textzeichenfolgen befassen zu müssen.

#ENS #ordi​​​ #zro #mln #ZEN $ENS $ORDI $ZRO