En la parte anterior, describimos la idea básica de una moneda digital descentralizada y su implementación práctica en forma de Bitcoin. Como cualquier concepto nuevo, Bitcoin en la práctica se ha enfrentado a muchos problemas relacionados con el protocolo de operación de la red y la protección de la integridad de la base de datos. En este artículo discutiremos las limitaciones actuales de la red, monedas alternativas con soluciones a uno u otro problema de Bitcoin, y por qué las grandes empresas se interesaron en blockchain.
Parte 1. Bitcoin
Parte 2. Otros (no) tipos populares de Bitcoin, blockchain
Parte 3. Ethereum
Bloques
Bitcoin mostró no solo la coherencia de la idea del sistema de pago p2p, sino que también propuso una solución al problema del consenso público (descentralizado). Para el lector, en la etapa inicial, la arquitectura de Bitcoin puede parecer demasiado complicada. Por ejemplo, si hay reglas generales y simplemente podemos ignorar las transacciones incorrectas / fraudulentas, ¿por qué necesitamos bloques y minería? Para hacer esto, debemos entender cómo se implementan la transacción y la prevención del doble gasto.
Transacción
En Bitcoin, cuando se forma una transacción en la entrada, se combinan muchas transacciones anteriores y, en la salida, se realizan transferencias a otras cuentas (ver figura). Las transferencias que resultan de la salida se denominan transacciones no gastadas (UTXO) hasta que ingresan otra transacción.
Al crear una nueva transacción, UTXO se gasta como un todo, pero si necesita gastar solo una parte, solo se agrega otra transferencia con el resto a su propia cuenta.
Si no confiamos en la validez de la transacción anterior, tendremos que volver a verificar toda la cadena de transacciones cada vez, hasta el momento de la emisión. Para evitar esto, las transacciones se empaquetan en un bloque, que, a su vez, está sellado con un hermoso hash y está vinculado por otros bloques en ambos lados. Esto nos da una cierta garantía de que la transacción que cayó en el bloque es válida y ya puede ser referenciada.
Después de resumir todos los UTXO dirigidos a una cuenta determinada, podemos averiguar su saldo, por lo tanto, en cualquier momento, la suma de todos los UTXO es igual a la cantidad total de dinero en el sistema.
Doble gasto
En los sistemas descentralizados, es difícil sincronizar los registros de todos los usuarios, hay problemas con la secuencia de transacciones y el doble gasto. Imagine una situación en la que un usuario inicia (casi) simultáneamente varias transacciones utilizando el mismo UTXO. Debido a retrasos en la red, los participantes recibirán estos mensajes con un orden diferente, o incluso pueden saltarse parte (ver diagrama).
Por supuesto, si tuviéramos un sistema que proporcionara a todos los participantes el tiempo exacto universal, podríamos evitar esta confusión, pero esto es la centralización inversa, que inicialmente rechazamos. Para resolver este problema, se inventaron bloques y minería, que determinan la secuencia y la confirmación de estas transacciones. Se extraen varias sucursales al mismo tiempo, pero la complejidad de la minería se ajusta de modo que dentro de 3-4 bloques se abre una rama, lo que asegura todas las transacciones en la historia para siempre.
Prueba de trabajo
Como recordamos del artículo anterior, PoW protege la integridad de la base de datos. Pero qué es un ataque del 51% y qué acciones en teoría se pueden realizar si alguien (llamémosle atacante) tiene recursos impresionantes.
Un atacante podrá construir la cadena más rápido que otros (y tomar la mayor parte de la recompensa), pero solo de manera honesta. La exactitud del bloque es fácil de verificar, y tan pronto como se detecte dicha actividad, los participantes de buena fe ignorarán dichos bloques y transacciones.
- Un atacante puede cancelar una transacción y devolver su dinero (ver diagrama).
En general, tal estado de cosas por un corto período de tiempo no hará mucho daño, excepto para revertir sus propias transacciones y bloquear otras. Pero debido al hecho de que la mayor parte de la recompensa será tomada por un participante, otros mineros se dispersarán, y esto también significa el fin de la red.
En 2014, el grupo Ghash.io acumuló el 51% de la energía durante varias horas, y algunos mineros abandonaron el grupo por su cuenta para no socavar la confianza en Bitcoin.
Otros mecanismos de consenso descentralizados
Una de las principales desventajas de PoW son los costos de energía. Como alternativa de eficiencia energética, se desarrolló el protocolo de consenso de Prueba de Participación, donde el participante con una participación más alta tiene más probabilidades de crear el siguiente bloque. Este mecanismo y otros tipos de consenso se describen muy bien aquí .
Problemas actuales de Bitcoin
De acuerdo con las reglas de la red, en promedio, se crea 1 bloque en 10 minutos. Se recomienda esperar unos seis bloques para que la transacción se considere explícitamente fija en la cadena de bloques, y esto ya es una hora de tiempo. En comparación con las transferencias interbancarias, esto es, por supuesto, muy rápido, pero aún no es adecuado para las pequeñas empresas.
El tamaño del bloque está limitado a un megabyte, dado el momento en que se creó el bloque, es más rentable para los mineros atender las transacciones con una alta comisión. Recientemente, hubo un intento de actualizar el protocolo cambiando la estructura y el tamaño del bloque, lo que finalmente llevó a la red a ramificarse en Bitcoin clásico (BTC) y BitcoinCache (BCH).
Otro inconveniente es el alto umbral de entrada para los mineros, no tiene sentido participar en la minería sin máquinas ASIC. Además de esto, los mineros se están uniendo para obtener un beneficio estable, y esto es una especie de centralización.
Variedades
Namecoin es la primera bifurcación de Bitcoin, que le permite registrar nombres escribiéndolos en la cadena de bloques. Hay d / espacios para nombres de dominio en la zona .bit e id / para registrar un nombre con información relacionada. Gracias al consenso público, dentro de la red, se le garantiza la posesión de un nombre específico, mientras lo paga regularmente. Tal modelo es una alternativa digna al actual sistema de ICANN, y en teoría eliminará los problemas con los registradores.
Litecoin es uno de los tenedores populares. La transacción es 4 veces más rápida y baja comisión en comparación con Bitcoin. Además, se eligió un algoritmo para PoW que complicaría la extracción en tarjetas GPU y máquinas ASIC.
PeerCoin es la primera moneda con un modelo híbrido PoW y PoS.
Zerocoin es una moneda completamente anónima que le permite rastrear el movimiento del dinero.
Ethereum es una plataforma que sirve como máquina virtual para aplicaciones descentralizadas. Por ejemplo, se está desarrollando algún tipo de contrato inteligente, lo están reabasteciendo de combustible (como una comisión, aquí se llama combustible) y lo envían a la red. Los mineros, a su vez, procesan los bloques ejecutan el código de bytes de estas aplicaciones y eliminan el combustible de estas aplicaciones como pago por el trabajo.
¿Qué pasa con blockchain?
La forma en que Bitcoin almacena datos, junto con los métodos de consenso, se ha convertido en un tema independiente. Las perspectivas para la implementación pueden estar en cualquier área donde haya una necesidad de consenso y una base transparente:
- Finanzas, comercio;
- Seguros, negocios de apuestas;
- Bases de datos públicas, registros;
- Votación, gobierno electrónico.
Cada área tiene sus propios requisitos para el modelo de seguridad, la privacidad de los datos, los mecanismos de consenso según los participantes y la naturaleza de los objetos que circulan en la cadena de bloques.
Un ejemplo es una blockchain interbancaria privada, donde se excluye el anonimato y los participantes inicialmente confían entre sí. En consecuencia, los mecanismos de protección de red se simplifican y los bancos simplemente tendrán una herramienta para sincronizar la base y la gestión conjunta de ciertos activos. Otros requisitos necesarios pueden ser el intercambio de datos privados entre los participantes, la conexión de las autoridades de supervisión, etc.
Inicialmente, la cadena de bloques abordó el tema de los activos digitales de doble gasto, pero en áreas como el seguimiento de productos y los seguros, existe la necesidad de un método efectivo para serializar objetos físicos que evite varios tipos de fraude.
Aquí puede obtener más información sobre la descripción general de las plataformas blockchain.
La siguiente parte describirá la plataforma Ethereum y verá ejemplos de contratos inteligentes.