Uno dei progetti su Ethereum che sta rapidamente guadagnando importanza nel mondo delle criptovalute è Ethereum Name Services (ENS).
EL'obiettivo di questo progetto è costruire un sistema di registrazione del dominio (DNS) e un'identità sovrana completamente decentralizzati. Per fare ciò, ENS utilizza la tecnologia Ethereum e i token ERC-721 per creare un'unica directory di identità e dati che può essere consultata e verificata pubblicamente.
Pero ¿Qué hay detrás de todo esto? ¿En qué nos puede ayudar y come puede cambiar este proyecto la forma en que interactuamos con blockchain e servicios fuera de la misma?
Al via il progetto Ethereum Name Services (ENS).
Prima di approfondire l'ENS, è necessario prima sapere cos'è un DNS. Il sistema DNS è una delle tecnologie fondamentali nel funzionamento di Internet. Grazie a questo sistema possiamo trovare velocemente l'indirizzo IP di un servizio o di una pagina web a cui vogliamo accedere.
Ricordiamoci che ci sono miliardi di dispositivi connessi su Internet e ognuno di questi dispositivi comunica con un altro attraverso un indirizzo possibile utilizzando il protocollo TCP/IP. TCP è un protocollo di trasmissione dati, ovvero consente al computer di sapere come, quando e in quale forma inviare dati a un altro computer connesso a Internet. Mentre IP (Internet Protocol Address), è una serie di numeri che identificano in modo univoco ogni computer su quella rete.
Questi indirizzi IP (almeno nella versione 4 o IPv4, poiché IPv6 sono completamente diversi), sono scritti come quattro serie di numeri che vanno da 0 a 255, utilizzando il formato xxxx Quindi, ad esempio, un IP valido per un computer sarebbe il Indirizzo IPv4, 142.250.64.142, che appartiene a YouTube.
Ma com'è possibile che "youtube.com" diventi 142.250.64.142? Ebbene, è qui che entrano in azione i DNS, poiché agiscono come se fosse un elenco telefonico o una piattaforma dedicata a tradurre i nomi di un sito web in un IP con cui localizzare il server web. Ciò consente agli utenti di accedere rapidamente e facilmente ai servizi ospitati su server collegati a Internet. E, proprio come i numeri di una rubrica telefonica, gli IP devono essere registrati in modo da poter essere localizzati e consegnati a chi li richiede. Ecco che il DNS è la "rubrica Internet", una guida molto pratica, perché se non esistesse dovremmo ricordarci tutti quei numeri per poter accedere ai nostri siti preferiti.
Ora, questa cosa del DNS e degli indirizzi IP che memorizzano è molto simile alle reti blockchain. Pensaci un attimo: quando invii criptovalute a un indirizzo, questo potrebbe essere tradotto in "ricevi i soldi che invii a X dato indirizzo". E sebbene non si tratti di inviare dati da un nodo a un altro nodo specifico, il concetto può essere estrapolato per esserci utile in altri modi. Ad esempio, un protocollo DeFi è composto da centinaia di smart contract, smart contract che interagiscono tra loro, ognuno con il proprio indirizzo. Ciò rende un compito complesso mantenere questo intero sistema, perché dopotutto siamo abituati a leggere semplicemente parole, ma non indirizzi di criptovaluta come sarebbero: 0x9d74a588ee218ce229becb41bcca40b38a96d836, figuriamoci centinaia di essi.
In tal caso, perché non registrare nomi leggibili e associarli a un indirizzo specifico per facilitare questo compito? Questo è esattamente ciò che fa l'ENS. Ethereum Name Service (ENS) nasce come un grande sistema decentralizzato che funziona su Ethereum e la sua funzione è la stessa di un DNS. Fondamentalmente, funge da ottimo taccuino o contenitore per qualsiasi informazione. Un'informazione che è memorizzata nella blockchain di Ethereum e a cui possiamo fare riferimento e cercare liberamente e senza censure.
Ethereum Name Service è un progetto iniziato nel 2016 promosso da Nick Johnson e Alex Van de Sande. Tuttavia, non è stato fino ad aprile 2018, quando il servizio è stato lanciato pubblicamente. Da allora ENS è diventato uno dei più grandi servizi di identità sovrana e DNS nel mondo delle criptovalute.
Obiettivo del progetto Ethereum Name Services (ENS).
L'obiettivo principale di Ethereum Name Services (ENS) è fornire l'infrastruttura necessaria per la costruzione di servizi Web 3.0 molto più accessibili e facili da usare, insieme alla costruzione di un'infrastruttura che serva a controllare l'identità sovrana, gli indirizzi blockchain personali o affari.
Così, proprio come il DNS è diventato una parte fondamentale di Internet, ENS vuole diventare una parte fondamentale per la costruzione del Web 3.0 e dei suoi servizi, essendo un hub decentralizzato che consente la connessione di diverse parti della rete per sfruttare tutte le potenzialità della tecnologia Web 3.0, migliorandone la sicurezza e la facilità d'uso.
Perché abbiamo bisogno di DNS su blockchain?
Tuttavia, questo obiettivo di ENS ci porta a porci la domanda: perché abbiamo bisogno di servizi DNS su blockchain? Sappiamo che una blockchain è una struttura dati accessibile, verificabile e decentralizzata. Pertanto, i dati di rete vengono replicati su ciascun nodo di rete senza la necessità di un'autorità centrale. Tutti hanno la possibilità di leggerne il contenuto, aggiungere dati e persino unirsi alla rete.
Nell'attuale sistema DNS funziona in modo più o meno simile, tranne per il fatto che il sistema non è completamente centralizzato, ma federato. Pertanto, ogni rete (formata da ISP o provider di servizi Internet) è in grado di eseguire servizi DNS da cui dipendono i suoi utenti. In poche parole, gli ISP hanno il pieno controllo del DNS e quindi di ciò che i loro utenti possono o non possono accedere dalle loro reti.
Quindi, in molti governi o aziende, il modo più semplice per censurare qualcosa di "fastidioso" è riscrivere i record DNS a cui gli utenti possono accedere per negare loro l'accesso al sito o al servizio che stanno cercando. Questo è un bug nel sistema DNS di Internet, un bug noto che non ha soluzione, tranne cambiare il DNS o eseguire il proprio, sebbene questa non sia una soluzione completa, poiché:
- Nel primo caso, continui a dipendere da una terza parte.
- L'esecuzione di un server DNS completamente autorevole è complesso e non ti salva da un determinato governo o azienda che vieta semplicemente il tuo accesso al servizio di replica DNS che utilizzi.
È qui che entra in gioco il DNS su blockchain. Poiché tutte le informazioni DNS sono registrate nella blockchain, è sufficiente eseguire un nodo completo della rete, per avere accesso a tutti i record DNS che sono archiviati in detta blockchain. Puoi esplorare e utilizzare quei registri quando vuoi e mantenerli aggiornati dipende solo dal mantenere connesso il tuo nodo. Inoltre, puoi utilizzare una VPN, servizi come Tor o I2P, SSH Socks5, Proxy o qualsiasi altro mezzo per mantenere attiva la sincronizzazione in ogni momento, anche se l'azienda o il governo utilizza mezzi attivi e passivi per evitarlo.
Dopotutto, la tecnologia blockchain soddisfa diverse esigenze DNS, tra le quali segnaliamo:
- Disponibilità. Una rete peer-to-peer decentralizzata non può essere fermata. Potrebbe sostituire o integrare le infrastrutture Anycast.
- Integrità. Il protocollo di consenso di una Blockchain garantisce, per sua natura, l'integrità dei dati. Inoltre, i dati non possono essere modificati. Queste proprietà eliminerebbero la necessità di DNSSEC e della sua famosa cerimonia di rinnovo delle chiavi.
- Riservatezza. Le richieste fatte per leggere i dati Blockchain possono essere incapsulate in un canale HTTPS. Funziona allo stesso modo del protocollo DNS over HTTPS (DoH). Oggi ci sono pochi risolutori DoH, quindi il traffico è centralizzato attorno a un numero limitato di attori. L'utilizzo di una Blockchain offrirebbe la possibilità di interrogare qualsiasi nodo della rete, limitando così centralizzazione e SPF (single point of failure).
- I dati contenuti nei file di zona DNS, ovvero le configurazioni dei nomi a dominio, potrebbero quindi essere distribuiti su blockchain. Pertanto, ogni attore (registri, registrar) potrebbe interagire direttamente con questa blockchain per gestire i nomi di dominio. Questa è l'idea del DNS in Blockchain.
- Possibilità di creare nuove zone e domini e lavorare in modo complementare all'attuale sistema DNS. Utilizzando questa tecnologia è possibile associare nomi di dominio aggiuntivi a quelli esistenti ed è anche possibile che il sistema integri il DNS attuale. I nomi di dominio (TLD) come .bit, .zil, .crypto, .eth, sono solo un esempio di questa capacità. Inoltre, per garantire l'adeguatezza dei dati e dei servizi possono essere utilizzate anche tecnologie equivalenti a DNSSEC o DoH.
Come funziona Ethereum Name Services (ENS)?
Ethereum Name Services (ENS) funziona grazie a una serie di smart contract sulla blockchain di Ethereum. Il sistema è abbastanza semplice: gli smart contract ENS consentono agli utenti di interagire con il sistema attraverso una potente DApp in cui possono acquisire tutti i dati che vogliono registrare all'interno del sistema.
Quindi, in poche parole, ENS è autonomo dalla propria base operativa. ENS consente l'interazione diretta tra gli utenti e il sistema di registrazione, consentendo la registrazione di nomi a dominio, indirizzi e altri dati, direttamente, e traducendo tutti questi dati in linguaggio naturale.
La struttura dell'Ethereum Name Service (ENS)
ENS deve il suo funzionamento a tre punti, che sono:
- Registro ENS
- Resolver
- registrar
L'obiettivo del Registro ENS è di mantenere un elenco dei domini e sottodomini registrati nel sistema. Fondamentalmente, ha il compito di controllare la memorizzazione delle informazioni per evitare l'esistenza di due domini che utilizzano lo stesso nome, ma puntano a due indirizzi diversi. Fondamentalmente, questo sistema è un gestore di dominio ed è responsabile del mantenimento della prima linea di sicurezza all'interno del sistema.
D'altra parte, il Resolver è una serie di contratti intelligenti. La sua funzione è quella di cercare risorse associate ai nomi di dominio. In altre parole, un Resolver ha il compito di ricevere la richiesta di ricerca di un nome a dominio, di effettuare tale ricerca e di conferire i dati che sono stati memorizzati nel sistema. Pertanto, i resolver cercano di dirigere il traffico e portarci alle risorse che desideriamo. Queste risorse associate ai nomi di dominio possono provenire da un indirizzo di contratto, un hash o indirizzi IP, tra gli altri.
Infine, abbiamo i Registrar, che sono gli smart contract che possiedono i domini ed emettono sottodomini dei domini agli utenti seguendo una serie di regole definite in detti contratti.
Come utilizzare Ethereum Name Services (ENS)?
Utilizzare ENS è abbastanza semplice, basta avere configurato un wallet MetaMask ed entrare nella DApp ENS.
Da lì, se vuoi registrare un dominio o un'identità, devi semplicemente indicare l'identità da registrare (es: bit2meacademy.eth) e apparirà:
In questo caso, come puoi vedere, è disponibile l'indirizzo per registrarsi e il costo di una registrazione. Ad esempio, per 1 anno, tale costo è di $ 16,52 e deve essere pagato in ETH. Da qui puoi registrare il nome che desideri, devi solo inserire il nome e fare clic su "Richiedi registrazione". Questo inizia l'inizio della registrazione del dominio che desideri registrare.
A questo punto dovrai solo completare il pagamento della commissione e il pagamento della registrazione per completare il processo.