Cos’è ENS? Ens è probabilmente ad oggi l’esempio del progetto decentralizzato già funzionante più riuscito su rete Ethereum!

Nel momento in cui scriviamo, sono stati registrati circa 190.000 domini unici, da oltre 8.500 indirizzi differenti. Il suo impiego è già stato implementato all’interno di diversi wallet per la risoluzione degli indirizzi, e si sta iniziando a sperimentarne l’utilizzo all’interno dei browser con Swarm.

Ma cosa permette di fare realmente ENS, quali sono i suoi reali obiettivi, e cosa prevede il suo sviluppo per il prossimo futuro? Vediamolo assieme.

Etichettare per organizzare

Una delle fasi iniziali e di primaria importanza, per mettere ordine all’interno di un sistema complesso, è sicuramente riuscire a dare un nome alle cose. Così accade per tutto, etichettare serve a mettere in ordine, a mappare ed organizzare. Serve a rendere riconoscibili e rintracciabili le informazioni, e questo, come per tutto ciò che riguarda l’esplorazione, fu il processo che seguì lo stesso Internet.

Quando ancora esisteva soltanto un insieme di indirizzi macchina da dover digitare a memoria, la nascita di DNS (Domain Name System) portò un nuovo sistema in grado di tradurre (mappare) un indirizzo macchina, in un indirizzo umanamente comprensibile.

In grado cioè di mettere chiunque in condizione di accedere ad un’informazione semplicemente accedendo alla sua etichetta, organizzando i sistemi non in una maniera topologica, implementativa della rete stessa, ma in una maniera umanamente accessibile e comprensibile da tutti.

Così ha fatto internet con DNS, così sta facendo Ethereum con il progetto ENS (Ethereum Name System), una versione più potente e decentralizzata di DNS stesso.

ENS vs. DNS

Per capire al meglio ENS, è necessario comprendere al meglio cos’è e come funziona il suo predecessore, DNS.

In breve e in maniera semplificata, oggi esiste un istituto chiamato ICANN (Internet Corporation for Assigned Names and Numbers), il quale contiene un registro strutturato enorme di tutti i domini Internet (es: www.ethereum.org). ICANN, in questo caso, agisce da garante, da ente centrale. Ciò che determina lui è legge.

Come è organizzato: un insieme di server DNS si suddividono geograficamente in una struttura ramificata, ed offrono i servizi di traduzione da dominio (www.ethereum.org) ad indirizzo IP (54.192.27.39) ai vari richiedenti sul territorio.

Quando eseguiamo una ricerca, immaginiamo di voler ottenere l’indirizzo IP del sito www.ethereum.org, il server DNS controlla nei suoi registri se ha memoria, da ricerche precedenti, del dominio richiesto. Se non lo possiede, chiede al suo diretto superiore, e così via.

Se arrivati in cima nessuno lo possiede, allora la richiesta passa direttamente in mano all’ICANN, in grado di aggiornare i registri sottostanti.

Lui, tramite una ricerca a discesa, chiede ad altri tipi di server DNS prima chi tratta i siti con il “.org”, quindi chi ha il nome “ethereum.org”, quindi qual’è l’indirizzo IP di “www.ethereum.org”. Sistema al quanto articolato, dal quale si deduce però che ICANN organizza tutto.

Ethereum, dall’altra parte, ha l’obiettivo generale di decentralizzare il potere ed il controllo. Si è quindi deciso di sviluppare un sistema basato su blockchain che semplificasse anche la complessa infrastruttura di server DNS, e che spostasse tutto all’interno di contratti eseguiti su blockchain.

Nasce così ENS: un registro globale e trasparente che raccoglie la registrazione di domini, ed autorizza i proprietari ad associare dei “risolutori” programmabili. Vediamo in seguito cosa questo significa.

Il dominio con una marcia in più

Attualmente ENS è in grado nativamente di emettere dei domini terminanti con “.eth”, del tipo ovvero ad esempio “vitalik.eth”, e dei sotto-domini del tipo “wallet.vitalik.eth”. ICANN non copre attualmente questo tipo di indirizzo, quindi non vi è alcun tipo di “sovrapposizione” tra i due sistemi.

Mentre dietro ai classici domini “.com”, “.it”, “.org” di DNS vi possono essere solamente dei record statici di testo, ed aggiornali richiede pesanti tempi di propagazioni dovuti alla complessità dell’infrastruttura, dietro ad un dominio “.eth” di ENS vi possono essere dei “risolutori” (resolver) che sono di fatto dei contratti anch’essi.

Programmi strutturati in maniera tale da avere un’interfaccia standard e comprensibile a tutti, e dietro al quale vi può però essere qualsiasi tipo di logica.

Potremmo infatti decidere di collegare un dominio ad un indirizzo Ethereum, un’altro ad un indirizzo su Swarm, un’altro ancora ad un record DNS classico, per puntare ad un vecchio sito web su infrastruttura server.

Ma potremmo decidere di pubblicare anche informazioni cifrate, accessibili solo a chi detiene una password.

Potremmo programmare regole particolari per aggiornare il riferimento in automatico, o per permettere a qualcheduno di aggiornarlo per noi. Il tutto on-chain, e senza tempi di propagazione. Essendo di fatto il risolutore un programma, i limiti stanno nella nostra immaginazione.

Quello a cui di fatto sta puntando ENS, è diventare il risolutore di domini definitivo, come base assoluta per l’utilizzo dei nomi di indirizzo nel web3.0.

Ovviamente, nonostante i presupposti per l’idea sia ottima, la tecnologia è attualmente in sviluppo ed è lungi dall’essere completata. Nei prossimi articoli andremo ad analizzare le novità presentate al Devcon3 di Cancun, e come queste andranno ad impattare sull’utilizzo di questa piattaforma del futuro.

Clicca qui per accedere alla guida gratuita su come comprare, vendere, trasferire e conservare in sicurezza gli Ether.