La cadena de bloques Bitcoin no es conocida por su capacidad para habilitar contratos inteligentes. De hecho, la mayoría de los desarrolladores que crean contratos inteligentes usan una cadena de bloques diferente, como Ethereum.
Pero la verdad es que el protocolo de Bitcoin se puede usar para crear contratos inteligentes. Particl.io, la plataforma de eCommerce de blockchain, está haciendo justamente eso mediante el uso de contratos inteligentes basados en Bitcoin para administrar fondos en su fideicomiso sin garantía: Mutually Assured Destruction (MAD), o fideicomiso de Destrucción Mutua Asegurada.
Para particl, Bitcoin ofrece la combinación ideal de funcionalidad de contrato inteligente, lo suficiente para hacer que los contratos inteligentes sean fáciles de implementar, pero sin los riesgos de seguridad y privacidad de una plataforma más compleja como Ethereum.
Contratos inteligentes
Un contrato inteligente es un acuerdo que puede hacerse cumplir a través de una cadena de bloques. En lugar de confiar en un marco legal para garantizar que cada parte que celebra un contrato cumpla sus términos, puede usar blockchain para crear un contrato que se aplique automáticamente, entre dos personas, de forma descentralizada.
Ethereum se ha convertido en la cadena de bloques más popular para crear contratos inteligentes. Desde el principio, esto diferenció a Ethereum de Bitcoin, que se creó ante todo como una plataforma de moneda digital.
Contratos inteligentes en base al código de Bitcoin
A medida que el protocolo Bitcoin ha evolucionado, ha ganado soporte para contratos inteligentes. La funcionalidad de contrato inteligente no es tan programable y extensible en Bitcoin como lo es en Ethereum. Sin embargo, al usar características agregadas a Bitcoin a través de propuestas de mejora, se puede lograr cierta funcionalidad de contrato inteligente a través de scripts de Bitcoin.
Para particl, la característica de contrato inteligente más importante en Bitcoin es OP_CHECKLOCKTIMEVERIFY, que fue introducido por Peter Todd como Propuesta de Mejora para Bitcoin (BIP) 65. El opcode permite escribir scripts que evitan que los fondos en una billetera multi-firma sean gastado hasta que se implemente un cierto patrón de firma o pase una cierta cantidad de tiempo.
Particl, contratos inteligentes y el fideicomiso MAD
El fideicomiso MAD es una técnica que previene efectivamente el fraude en una transacción sin requerir la supervisión de un tercero. En un contrato MAD, un comprador y un vendedor depositan los fondos en el depósito en garantía. El vendedor comienza depositando una cantidad que desea que el comprador iguale para simbolizar un apretón de manos virtual.
Esto podría ser entre 0 y 100 por ciento del precio de compra del artículo. Luego, el comprador deposita una cantidad igual al monto del apretón de manos, más el precio del artículo que está comprando. Los fondos custodiados no se entregan a nadie hasta que ambas partes confirmen que la transacción se ha completado satisfactoriamente. La técnica evita que cualquiera de las partes haga trampas en una transacción.
Particl utiliza el código de operación BIP 65 para habilitar los contratos de custodia MAD bloqueando los fondos en una billetera multi firma hasta que todas las partes firmen la transacción. Con este enfoque, los compradores y vendedores en la plataforma de comercio electrónico de particl pueden operar sin preocuparse por el fraude o el pago de tarifas innecesarias.
Tampoco tienen que sacrificar la privacidad, porque ningún tercero está involucrado en la transacción. Además, y quizás lo más significativo, ya que sólo hay secuencias básicas de comandos involucradas, las preocupaciones de seguridad son mínimas.
El enfoque de particl a los contratos inteligentes MAD es posiblemente mejor que la construcción de contratos inteligentes en una plataforma como Ethereum. Si bien Ethereum ofrece un soporte más extensible para contratos inteligentes, esa flexibilidad conlleva un mayor riesgo de amenazas de seguridad y privacidad. Cuantos más códigos se incluyen en un contrato inteligente, mayor es el riesgo de introducir una vulnerabilidad que podría permitir una intrusión.
Ethereum podría ser una base sólida para escribir contratos inteligentes muy complejos, o en los que la seguridad y la privacidad no son prioridades, pero Bitcoin proporciona un marco de scripting más simple y más confiable para los depósitos privados que requiere particl.