Namecoin es un proyecto cuyo objetivo es crear un sistema DNS y de identidades descentralizado y seguro usando tecnología blockchain.
¿Qué es Namecoin?
Con la salida del Bitcoin, muchas personas vieron que el mundo se encontraba frente a una tecnología que podía revolucionar todo. La capacidad de crear sistemas completamente descentralizados, seguros y no censurables abría la posibilidad para creaciones únicas. Todas ellos interconectando y abriendo servicios a los usuarios de todo el mundo de forma segura.
Como resultado de esto, en abril de 2011 nació Namecoin. Un proyecto derivado del Bitcoin que tuvo un objetivo más allá de crear otra criptomoneda. Namecoin fue ideado con la finalidad de crear un servicio de nombres de dominio (DNS) basado en blockchain. El resultado del proyecto fue todo un éxito. Esto llevó a la publicación del código fuente y la posterior mejora y evolución del mismo. Lo que ha permitido que Namecoin cuente con una activa comunidad. Además ha demostrado que la tecnología blockchain tiene capacidad de atender distintos casos de uso y evolucionar más allá de los sistemas económicos.
Uno de sus principales desarrolladores en la actualidad es Daniel Kraft. Kraft es el encargado de mantener el Core de Namecoin junto con el desarrollo de la utilidad de identidad soberana, NameID.
Orígenes de Namecoin
Tras la salida del Bitcoin en 2008, Satoshi Nakamoto y Gavin Andresen propusieron transformar al Bitcoin en un efectivo servicio de nombres de dominio o DNS. Esta propuesta recibió en principio el nombre de BitDNS. Con ella buscan crear un sistema DNS completamente descentralizado y seguro.
Con el fin de entender un poco más el impacto de lo que Nakamoto y Andresen proponían, debemos conocer un poco más sobre los DNS.
Los servidores DNS, son los responsables de toda la infraestructura que facilita el acceso a recursos de Internet. Estos funcionan como una especie guía telefónica relacionando las direcciones IP de los servidores, con un nombre fácil de recordar. De esta manera, para acceder a una web, por ejemplo Facebook, solo hay que poner su dirección (facebook.com) y no su dirección IP (157.240.14.35). Esto facilita el uso de Internet a los usuarios en todo el mundo. Sin embargo, estos servidores funcionan de forma centralizada por lo que son susceptibles a la censura, espionaje u otros ataques informáticos. De hecho, es la forma más sencilla utilizada por los gobiernos para censurar o espiar a los ciudadanos.
Frente a este hecho, la estructura descentralizada propuesta en BitDNS cambiaba radicalmente esta situación. BitDNS aseguraba que ningún gobierno o persona pudiera censurar o atacar este servicio. Ello se traducía en una mejora de la calidad del servicio, brindando seguridad y privacidad.
La primera propuesta
La primera propuesta para la construcción de este sistema provino del usuario appamatto del foro Bitcointalk. Su primera intervención hablando sobre un sistema DNS descentralizado se dio el 15 de noviembre de 2010. En ese entonces, appamatto sentó las primeras bases teóricas reales de este nuevo sistema. En ese punto, su idea principalmente quería abordar el problema de la «autoridad» o el control centralizado.
Entre las ideas iniciales de appamatto resaltan:
- Cada bloque tenía una carga útil que estaba relacionada con el nombre del dominio. De esta forma, una vez creado un dominio, este se resguardaba en un bloque y era imposible manipularlo.
- No se permitía la duplicación de nombres en la cadena. Esto evitaba ataques de spam, pero también manipulaciones al sistema de enrutamiento, quitando la posibilidad de hacer ataques de phishing.
- Existe una clara separación entre los datos del dominio y el funcionamiento de las aplicaciones. De esta manera, se crea un sistema transparente de uso tal cual como existe en la infraestructura DNS actual.
- Los mineros obtenía ganancias, no solo por el minado sino también por crear dominios que pudieran vender a un buen precio.
«A pesar que han habido intentos de abordar de manera distribuida el DNS en el pasado, no creo que estas soluciones hayan eliminado completamente la autoridad de la ecuación».
El anuncio de Namecoin
Luego de la presentación de las teorías de appamatto, el usuario kira, inició un programa de recompensa por el desarrollo de BitDNS. En el programa, lograron recaudar más de 3500 BTC para la realización de este sistema (unos 7000 $ USD en ese momento).
Lo que no estaba en conocimiento para la comunidad, es que el trabajo ya estaba en marcha. Gracias a esto, el 18 de abril de 2011, el usuario vinced anunció el lanzamiento de Namecoin. Este anuncio tomó por sorpresa a la comunidad criptográfica, pues nadie había respondido positivamente al programa de recompensa. De hecho, el mismo vinced declaró que estaba dispuesto a solicitarla si la comunidad estaba de acuerdo en revisar y probar la funcionalidad de Namecoin.
Desde entonces, Namecoin ha evolucionado como proyecto permitiendo construir un sistema de identidad y nombres de dominio completamente descentralizado.
«Estaré encantado de solicitar la recompensa después de que las personas hayan revisado el diseño y el código.»
Características técnicas
Técnicamente Namecoin es un clon de Bitcoin en todo sentido. Por ejemplo, Namecoin utiliza el protocolo de consenso de Proof of Work (PoW) junto al algoritmo SHA-256 en su minería. En este punto, los mineros de Bitcoin puede minar también Namecoin, utilizando una función llamada minería conjunta.
En cuanto a la limitación de emisión de monedas, Namecoin cumple igualmente con el límite de 21 millones, que tiene el Bitcoin. Además, Namecoin también utiliza el mismo sistema de sincronización y de envío de mensajes en red. En este punto podemos decir que, Namecoin y Bitcoin son dos gotas de agua técnicamente hablando.
Sin embargo, hasta acá llegan sus parecidos, pues Namecoin tiene su propia blockchain y criptomoneda, el Namecoin. Esto es así, porque Namecoin implementa una serie de campos en su bloques que no son del todo compatible con la blockchain de Bitcoin. Esta fue la razón por la que el sistema no se aplicó directamente sobre la blockchain de Bitcoin como Nakamoto y Andresen sugirieron.
Estos nuevos campos son los que se dedican a almacenar la información de los dominios e identidades resguardadas en Namecoin. Permitiéndole brindar una infraestructura DNS descentralizada que escapa de las posibilidades de Bitcoin y de muchas otras opciones como OpenNIC o EmerDNS.
Funcionalidades de Namecoin
Como ya hemos mencionado las funcionalidades de Namecoin son: brindar un sistema DNS descentralizado y manejar identidades criptográficamente seguras. Para comprender ambas funciones, explicaremos cada una de ellas y daremos algunos sencillos ejemplos:
DNS sobre Namecoin
Esta es la funcionalidad principal de Namecoin y el origen de su nacimiento como proyecto. Las razones para crear un sistemas DNS descentralizado de estas características son:
- Evitar la censura por parte de proveedores de Internet, empresas o gobiernos.
- Amenazas como el phishing, el intercambio de DNS o el envenenamiento DNS, pueden ser evitadas con este sistema.
- Crear una estructura descentralizada y controlada por sus usuarios para registrar de forma sencilla, rápida y económica nuevos dominios. Con ello se busca crear una estructura descentralizada y seguro complementable con servicios como TOR o I2P.
Para lograr todos estos puntos, el funcionamiento DNS de Namecoin es muy sencillo y seguro. Los usuarios pueden registrar el nombre de dominio que deseen, siempre y cuando no esté en uso. A estos nombres de dominios, le es asignada la terminación .bit. Estos registros cuentan con toda la estructura de datos de un dominio DNS normal, con el plus de que se crea una identidad criptográfica para dicho dominio. Esta marca única, sirve para diferenciar los distintos dominios registrados y evita duplicaciones.
Una vez creado el dominio, este se transmite a toda la red para que se descentralice su ubicación. De esta forma, se asegura que el dominio siempre estará disponible en la red, sin importar bloqueos o censura aplicada.
Para que los usuarios puedan usar estos DNS, basta con solo apuntar a servicios proxys o contar con un nodo cliente de Namecoin para buscar los dominios registrados de forma exitosa.
Identidad Soberana sobre Namecoin
Este es un proyecto reciente de Namecoin y que aún está bajo desarrollo. Se aprovecha de la capacidad de Namecoin de manejar nombres de dominios (que son identidades digitales) para crear un sistema de identidad soberana de simple funcionalidad. Para entender un poco más sobre esta funcionalidad de Namecoin, debemos saber lo que es la identidad soberana. La identidad soberana, es una forma de identidad digital en la que el usuario tiene pleno control de sus datos y la forma en como los comparte con terceros.
Para lograr esto, sus desarrolladores crearon un nuevo tipo de registro para almacenar identidades. Estos registros, pueden almacenar de forma segura datos como el nombre del usuario, nickname, claves públicas para GPG o PGP, dirección de Bitmessage u otros servicios OTR, entre otras cosas en su campo de valor. De esta forma, el usuario que ha creado una identidad sólo debe compartir su nickname para darle a otros acceso a dichos datos de forma segura.
Sin embargo, esta es la utilidad más sencilla del sistema de identidad que Namecoin puede desplegar. Con el fin de probar su flexibilidad, los desarrolladores crearon NameID, un proyecto para unir las identidades de Namecoin con las identidades de OpenID. OpenID, es un servicio de identificación federado muy usado en la actualidad en Internet.
Con NameID, los desarrolladores querían crear, el primer sistema de identificación soberana para acceder a servicios web, sin necesidad de loguearse usando un usuario y contraseña. Basta solo con usar la identidad criptográfica de Namecoin para acceder al servicio. Este esquema agrega un nivel de seguridad superior al otorgado por el par usuario y contraseña que estamos acostumbrado a usar en estos servicios.
¿Cómo registrar dominios DNS en Namecoin?
Para registrar dominios DNS en Namecoin, los usuarios tienen dos opciones:
- Crear un nodo completo de Namecoin y minar para pagar las tarifas de registro. Esta es la opción más costosa de todas, pues minar Namecoin es costoso debido a su alta dificultad, requiriendo equipos ASIC para realizarla.
- Utilizar servicios web de registro de dominios Namecoin. Estos servicios garantizan el registro y manejo de tus nombres de dominios. Es la opción más barata y sencilla de usar para personas que solo les preocupa registrar su dominio. Entres estos servicios están Peername y Blockchain-DNS.
Ventajas y Desventajas de Namecoin
Ventajas
- Es un sistema de dominio e identidad completamente descentralizado. Detrás del proyecto no hay empresas o grupos de poder impulsando el proyecto.
- Cuenta con un nivel de seguridad muy alto, algo especialmente relacionado a su capacidad de minería conjunta con el Bitcoin. Con ello se asegura, que la red no pueda ser vulnerada por medio de ataques de 51% de forma sencilla.
- Ofrece altos niveles de tolerancia a fallos, de bloqueos y contra la censura.
- Puede ser usado en conjunto con protocolos de privacidad y anonimato como TOR, I2P y Freenet. Con ello, se garantiza la capacidad de crear una Internet privada, segura y anónima sobre la Internet que estamos acostumbrados a interactuar.
- Ofrece capacidades para crear sistemas de identidad soberana robustos y sencillos de utilizar por parte de los usuarios.
Desventajas
- El proyecto cuenta con pocos desarrolladores, lo que se traduce en un lento desarrollo de sus capacidades.
- La comunidad interesada en el proyecto no es muy amplia. Esto puede verse por ejemplo en el bajo nivel de intercambio que registra el proyecto o la poca diversidad de espacios de discusión y difusión. Sin embargo, esto no significa que el proyecto esté muerto. Namecoin desde sus inicios no era una blockchain pensada en economía, sino en resolver un problema en la estructura de los DNS. Esa es su tarea y lo ha hecho muy bien.