Dogethereum. El puente entre la blockchain de Dogecoin y Ethereum

Hace unos días se ha dado un evento que ha pasado bastante desapercibido por parte de la comunidad y es la implementación en fase beta de Dogethereum, un puente operativo entre Dogecoin y Ethereum. Este puente no se ha realizado en una testnet, sino en la mainnet o lo que es lo mismo, en vivo y en directo. Concretamente este proceso se realizó el 5 de septiembre de 2018 y se retransmitió en directo en YouTube (vídeo más abajo)

Lo que se pretende con esto es hacer que la blockchain de Dogecoin y Ethereum puedan interactuar usándose en este caso los Doge dentro de la blockchain de Ethereum, aunque en un futuro se podrán sacar ethers y usarlos en la blockchain de Doge. Sería algo bastante similar a Atomic Swap pero con algunos puntos intermedios que dan garantías.

Este proyecto se ha denominado Dogethereum, pero existe el problema de que ya hay otro proyecto con el mismo nombre, aunque son bastante diferentes entre ellos. El primer Dogethereum es un token, sin más. El segundo Dogethereum, que es el que nos ocupa, es un Smart Contract complementado con otras herramientas de apoyo para la transferencia de valor entre la blockchain de Dogecoin y la blockchain de Ethereum, y lo más importante, de Etereum a Dogecoin.

Poder utilizar Dogecoin dentro de los Smart Contracts de Ethereum nos ofrece una gran cantidad de posibilidades, generando un mundo nuevo de funcionalidades. Esto se consigue gracias a que los contratos en Ethereum permiten el desarrollo y uso de tokens, usando un Doge Token como puente entre ambas blockchain (de ahí el nombre del proyecto)

Las wallet multinivel, los contratos de recompensa (como el puente entre Dogecoin y Ethereum) etc., son accesibles para el ecosistema Doge. Realizar este trabajo bajo Ethereum está motivado porque es una criptomoneda a largo plazo bien establecida con menor volatilidad, haciéndola ideal para este tipo de operaciones.

¿Cómo funciona este proceso?

Debemos imaginar que vamos a un casino. Cuando accedemos a un casino iremos a la ventanilla y cambiaremos nuestro dinero fiduciario por una cantidad igual fichas (tokens) y podremos acceder al casino y jugar. Si al final de nuestra velada nos quedan fichas podemos ir a la ventanilla y cambiaremos las fichas por dinero fiduciario, de nuevo.

El puente entre las dos blockchain funciona de un modo bastante similar: cambiamos los Dogecoin por un token en la blockchain de Ethereum, donde lo podremos usar como cualquier otro token ERC-20. Una vez ya hayamos realizado todas las operaciones que consideramos lo podemos pasar de su estado actual en forma de token al equivalente en Dogecoin.

¿Por qué en Ethereum?

Los intercambios entre blockchains son complejos de realizar, pero completamente necesarios en el caso de las exchange descentralizadas. La dificultad se presenta en el momento en que no existe una figura que maneja el intercambio entre las blockchains al no existir una relación de confianza. En cambio, tenemos un Smart Contract en Ethereum que tiene la propiedad de emitir un token.

info dogethereum

Un Smart Contract en Ethereum es similar a uno en Bitcoin, pero implementar esto en Bitcoin supone un problema debido a que Dogecoin hace uso de Scrypt para sus hash lo que implica que son muy caros de validar en la blockchain de Bitcoin. Pero el mayor inconveniente está en la imposibilidad de recuperar las criptomonedas que se mueven entre blockchains.

Bitcoin en los Smart Contracts que permitirán mandar bitcoins a la blockchain de Ethereum obligan que estos bitcoins se quemen mandandolos a una dirección irrecuperable. Esto implica que se pierden los bitcoins quedándose de manera perpetua en el limbo.

La solución desarrollada en Dogethereum es una medida que bloquea los Doge durante el tiempo que estos se están usando en Ethereum, impidiendo que estos Doge sigan en circulación hasta que no se realiza la conversión de Ethereum a Doge. Esto plantea la necesidad de un gestor de este proceso de bloqueo y para ello se ha desarrollado la figura del operador.

Un operador en Dogethereum tiene la función de mantener almacenados los Doge mientras están ‘bloqueados’. El usuario para obtener los Doge Token debe mandar al operador los Doge que considere oportunos, para que este mande la prueba al Smart Contract de Ethereum que tiene la misión de emitir los tokens. Para realizar un retiro, se debe solicitar al operador el retiro quien mandara los Dogecoin equivalentes según el saldo de Doge Tokens.

Nota: esto es una explicación simplificada del proceso que emite como el Smart Contract de Ethereum verifica las transacciones.

Principales actores de Dogethereum

A continuación vamos a describir de manera muy simplificada que cosas puede hacer cada uno de los diferentes actores del puente Dogethereum:

  • Usuario
    • Bloqueo (DOGE -> ETH)
    • Transferencia token Doge (ETH -> ETH)
    • Desbloqueo (ETH -> DOGE)
  • Operador
    • Registro como operador
    • Agregar/eliminar depósito de garantía de ETH
    • Almacenar los DOGE bloqueados
    • Crear, firmar y difundir los DOGE desbloqueados
  • Remitente superbloque
    • Propone los superbloques
    • Defiende los superbloques
  • Superblock Challenger
    • Desafía a los superbloques
  • Oráculo del precio DOGE/ETH
    • Informa del precio de DOGE/ETH

¿Qué es un superbloque?

Un superbloque es la representación o combinación de varios bloques generando una única raíz del Árbol de Merkle a partir de varios bloques. Estos contienen:

  • El hash raíz del Árbol de Merkle a partir de diversos hash de un conjunto ‘X’ de bloques.
  • La dificultad acumulada de los bloques
  • El hash del último bloque del superbloque.
  • El timestamp del último bloque del superbloque.
  • El hash de los datos del superbloque padre.

La agrupación de los bloques en un superbloque permite reducir los costes. En vez de estar enviando, validando y almacenando 60 bloques de 700 bytes cada uno, solamente se necesita almacenar un superbloque de 200 bytes.

Dogethereum bloquea los Doge durante el tiempo que estos se están usando en Ethereum, impidiento su circulación hasta que no se realice la conversión Ethereum en Doge Clic para tuitear

Se validan mediante un proceso denominado desafío/respuesta que permite que no sean necesarias las validaciones de la blockchain de superbloques. El superbloque además incluye el hash del superbloque anterior que permite crear una blockchain de superbloques lo cual facilita la confirmación de los superbloques anteriores e ignorando todos los superbloques de pequeñas bifurcaciones que se puedan considerar atacantes.

Nota: la información completa y detallada está en el whitepaper de los superbloques.

Tipos de incentivos según función

  • Presentación de un superbloque: Los usuarios de superbloques reciben una tarifa cuando el superbloque que envían se usa para transmitir una transacción

    infovisual_dogethereum

  • Generador: Cada vez que se realiza un bloqueo o desbloqueo, el operador recibe una comisión
  • Envío de Dogecoin a Doge Token: Cada usuario enviará sus propios Dogecoins para obtener Doge Token
  • Desafío del superbloque: los retadores que encuentren superbloques no válidos obtendrán algo de Ether después de que finalice el juego de desafío/respuesta.

Puente Dogethereum en fase demo

Los desarrolladores han querido dejar claro que esto solo es un test preliminar para ver su funcionalidad y que no tienen un roadmap sobre cuando esta función estará disponible para todos los usuario. Pese a esto cualquiera con los conocimientos puede trastear con el código debido a que es de código abierto bajo licencia MIT.

Desde que se anunció el test para el 5 de septiembre han surgido muchos rumores en cuanto a una bifurcación de la blockchain debido a este test, algo que se ha desmentido rotundamente y que no ha sucedido en la práctica.

Se está trabajando en el desarrollo de una interfaz de usuario que simplifique esta tarea y está previsto implementar un oráculo descentralizado para el precio Dogecoin/Ethereum. Además hay que destacar que todos aquellos operadores que tengan un comportamiento incorrecto serán penalizados, aunque se está estudiando cómo implementar estas sanciones y en que se basaran.

Documentación

Blog de Ross Nicoll: Demo puente Doge/Ethereum

Blog de Ross Nicoll: Avance del puerte Doge/Ethreum

Github Dogethereum

 

 

Dogethereum. El puente entre la blockchain de Dogecoin y Ethereum
5 (100%) 1 vote
(Visited 93 times, 1 visits today)

Deja un comentario