Transacciones pequeñas, privacidad y contratos inteligentes en bitcoin: MAST

por David A. Harding, traducción AulaBitcoin.com

Los árboles de sintaxis abstracta de Merkel (MAST) son una propuesta a Bitcoin que permite tamaños de transacción más pequeños, más privacidad y contratos inteligentes más grandes. En este artículo, exploraremos los fundamentos del MAST y describiremos sus beneficios potenciales.

El problema: datos de script no utilizados

Satoshi Nakamoto dio a Bitcoin una característica interesante que no estaba descrita en el whitepaper original. En lugar de exigir que los bitcoins se reciban en una clave pública y sean gastados por una firma digital, Nakamoto dio a los usuarios la posibilidad de escribir programas (llamados scripts) que actuaran como claves públicas dinámicas y firmas.

Cuando se especifica un script -que es lo predeterminado en cada billetera- el protocolo de Bitcoin, aplicado por consenso, no permite que nadie gaste sus bitcoins a menos que el script devuelva «True» (Verdadero). Esto permite especificar restricciones, tales como exigir que la transacción de gastos esté firmada por su clave privada.

También son posibles restricciones más complejas, como el siguiente ejemplo: Alicia quiere poder gastar sus bitcoins en cualquier momento, pero si sus bitcoins no se gastan en tres meses (quizás porque está muerta o incapacitada), quiere que sus hermanos Bob y Charlie tengan sus bitcoins siempre y cuando se pongan de acuerdo sobre dónde gastarlos.

El script de restricciones a continuación, que especifica la política descrita anteriormente, incluye no sólo la clave pública de Alicia (necesaria para verificar una firma de su clave privada), sino también cierta lógica condicional, una especificación de tiempo y las claves públicas tanto para Bob como para Charlie.

En el actual Protocolo de Bitcoin, todos los datos anteriores deben añadirse a la cadena de bloques (blockchain) cuando se gasten las bitcoins de Alice. Esto incluye las partes del script que no se utilizan en un gasto en particular, como las llaves públicas de Bob y Charlie cuando Alice gasta sus propios bitcoins.

Los datos de las restricciones no utilizados aumentan el tamaño de las transacciones, reducen la privacidad al revelar públicamente más información de la necesaria, y limitan principalmente los contratos inteligentes por su tamaño en lugar de por sus costes de validación. MAST busca mejorar esta situación eliminando la necesidad de incluir directamente partes no utilizadas de un script en la cadena de bloques.

Los orígenes de MAST

La idea detrás de MAST proviene de dos conceptos preexistentes, los árboles de sintaxis abstracta (AST por sus siglas en inglés) y los árboles de Merkle. Los Árboles de Sintaxis Abstracta (AST) son una forma de describir un programa dividiéndolo en sus partes individuales, lo que puede facilitar su análisis y optimización.

Por otro lado, los árboles de Merkle permiten verificar que un elemento individual es miembro de un conjunto sin que todo el conjunto esté presente. Por ejemplo, las carteras SPV de Bitcoin utilizan árboles de merkle para ahorrar ancho de banda al verificar que las transacciones individuales recibidas son miembros de un bloque sin descargar el bloque completo.

En resumen, la técnica detrás de los ASTs nos permite dividir un programa en sus partes individuales, y los árboles de Merkle nos permiten verificar que las partes individuales pertenecen a un programa completo sin que el programa entero esté presente. Esta es la base de MAST, que permite a los usuarios sustituir las partes no utilizadas de los gravámenes por una prueba de mercado, reduciendo el tamaño de las transacciones, aumentando la privacidad y haciendo posibles contratos inteligentes de mayor envergadura.

El futuro de bitcoin: Firmas Schnorr

Las firmas digitales proporcionan una prueba criptográfica de que una transacción ha sido autorizada por el propietario de una clave privada determinada. La mayoría de los usuarios individuales de Bitcoin envían transacciones con una firma que proviene del propietario de la clave privada de la dirección de envío. Estas firmas necesariamente ocupan espacio en los bloques de la cadena de bloques.

Esto se convierte en un problema cuando se desea enviar transacciones de varias direcciones a una, ya que cada una de estas transacciones requiere su propia firma.

Todas estas firmas aumentan el tamaño de la transacción, y por lo tanto la tarifa (fee) que se paga a los mineros para procesarla, ya que se está reclamando espacio que podría ser utilizado para otras transacciones.

Si se trata de una sola persona que envía esa transacción desde múltiples fuentes, debería haber alguna forma de hacerlo con una sola firma, o al menos esto es lo que se propone con las firmas Schnorr.

Se estima que con esta actualización se reduciría el uso de almacenamiento y el ancho de banda en al menos un 25%. En términos de tecnología, es una ganancia enorme.

Otro beneficio importante de las firmas Schnorr, es el aumento de la privacidad. En los casos de MultiSig (firmas múltiples para una transacción) donde varias personas firman para efectuar la operación, solo una firma sería utilizada, y no podria distinguirse de una firma común.

Proyectos sociales sobre blockchain

En el marco de Coalition 4 Good, se presentaron en Buenos Aires, Madrid y Ginebra, diferentes proyectos sobre blockchain con impacto social.

El evento de Buenos Aires tuvo lugar en Espacio Bitcoin, lugar emblemático del ecosistema argentino ya que varias empresas desarrolladoras de soluciones sobre blockchain tienen sus oficinas allí. Y también hogar de la ONG Bitcoin Argentina.

En esta oportunidad se presentaron 5 proyectos:

BitGive

  • Recaudación de fondos para emprendimientos benéficos
  • Enfocados en reducir los tiempos y los costos desde el donante y el emprendimiento benéfico
  • Se desarrolló una plataforma específica llamada GiveTrack
  • https://www.givetrack.org/

Blockchain for Humanity

  • Se dedican a identificar proyectos con impacto social y ayudar a su desarrollo
  • Explicaron que en un mundo centralizado, con corrupción y burocracia, la revolución viene de la mano de Internet, blockchain & bitcoin 
  • Algunos proyectos que están ejecutando hoy son: Shelpin, ethichub, monedapar, Didi, La Bitcoineta 
  • https://www.b4h.world/

Didi

  • Es un proyecto de identidad digital
  • Enfocados en solucionar problemas en barrios de bajos recursos (titulación de propiedades, préstamos, etc.)
  • Desarrollan una aplicación que facilite la solución de los problemas, incluyendo wallet para envíos par a par
  • Financiado por el BID

Monedapar

  • Es una moneda comunitaria
  • Otros casos de éxito de monedas comunitarios: wir en Suiza, sardex.net en Cerdeña, bartercard
  • Se presentó un video realizado en la localidad de Moreno, Gran Buenos Aires
  • http://www.monedapar.com/

Circles of angels

  • Es un proyecto fondeado por UNICEF
  • Se trata de una plataforma que une a inversores y emprendedoras de impacto social
  • Se realiza una interacción entre las partes para definir el proyecto y el plan de trabajo
  • www.circlesofangels.com

Puedes encontrar más información en los links de los proyectos.

Como probar Lightning Network

¿Qué es Lightning Network?

Lightning Network es una red de segunda capa para la blockchain de Bitcoin, que elimina algunas restricciones de la red de Bitcoin, como ser los micropagos, las transacciones instantáneas y escalabilidad.

Veamos los problemas que Lightning Network pretende resolver:

  1. Micropagos: debido al costo de enviar bitcoins, el uso de micropagos (0.05 USD por ejemplo) ha quedado marginado de la red de bitcoin, ya que se puede estar pagando de comisión lo mismo o más de lo que se quiere enviar.
  2. Transacciones instantáneos: posibilidad de efectuar pagos de forma inmediata sin preocuparse por los tiempos de confirmación (cada bloque tarda en promedio 10 minutos en la red de bitcoin).
  3. Escalabilidad: capacidad de procesar millones e incluso billones de transacciones por segundo (la red de bitcoin puede procesar entre 7 y 10 transacciones por segundo).

¿Cómo se usa Lightning Network?

Lightning Network necesita de una billetera que soporte, precisamente, Lightning Network. La billetera va a permitir crear canales de pago con otros usuarios. Esto significa que abres un canal de pago asignando una cantidad de bitcoins, y ya le puedes enviar al otro usuario instantáneamente el monto que desees, por más pequeño de que sea.

Y si quieres enviar a otro usuario, podrías hacerlo sin necesidad de crear otro canal, siempre y cuando la transacción pueda llegar a través de canales ya creados, al usuario final. Todo en forma inmediata, y a costo de 1 satoshi o similar (incluso menos).

¿Cómo puedo probar sin riesgo de perder plata?

Ya se puede descargar una billetera como Zap en https://github.com/LN-Zap/zap-desktop/releases, buscas la que corresponde a tu sistema operativo, y listo. Solo queda ejecutarla, anotar las 24 palabras de seguridad, darle un nombre a la billetera, decidir si quieres que te conecte a algún canal automáticamente con el 60% de tus fondos (pongan que NO en Autopilot), transferir algún monto a la nueva billetera creada y listo. La billetera va a estar funcionando en la Testnet, que es la red de pruebas de Bitcoin, por lo que no necesitas usar dinero real. Solo consigue algunos bitcoins (de prueba, en Tesnet) en https://coinfaucet.eu/en/btc-testnet/ . Los bitcoins de Testnet no tienen valor, y enviar bitcoins reales a Tesnet puede hacer que desaparezcan!

¿Qué es un token?

Los tokens se crean en cadenas de bloques existentes. De hecho, gracias a la creación y facilitación de contratos inteligentes, la plataforma de tokens más común es Ethereum. Los tokens construidos sobre la plataforma Ethereum se conocen como tokens ERC-20.

La definición de una moneda digital es un activo que es nativo de su propia cadena de bloques. Ejemplos como Bitcoin, Litecoin o Ether. Cada una de estas monedas existe en su propia cadena de bloques.

Así que, para que esto quede un poco más claro:

  • Bitcoin opera y funciona en la cadena de bloques Bitcoin
  • Ether opera y funciona en la cadena de bloques Ethereum
  • Los tokens se crean sobre las cadenas de bloques de Bitcoin / Ethereum

Las transacciones de monedas digitales pueden realizarse de una persona a otra. Sin embargo, ninguna moneda física se mueve cuando usted la envía y la recibe. Todas las «monedas» existen como datos en una base de datos global gigante. Esta base de datos (o blockchain) mantiene un registro de todas las transacciones y es comprobada y verificada por ordenadores de todo el mundo.

Se lanza Flyp.me, el intercambio instantáneo de criptos, con participación en las ganancias

Londres, Reino Unido – Flyp.me, el sitio intercambio de criptomonedas instantáneo – se lanza con 13 cripto-conversiones y 169 pares de operaciones. El nuevo servicio es construido y administrado por el equipo de HolyTransaction, la primera cartera web que soporta Ethereum, una de las primeras carteras multi-moneda y la más antigua aún activa.

Leer más

1 2 3 10