09 Ago Bitcoin o el triunfo del dinero electrónico distribuido
Introducción
La importancia del dinero en una sociedad es tan alta, que a través de los siglos y en todas las latitudes no hubo gran civilización que no lo utilizara. Para que algo funcione eficazmente como dinero, debe ser fácil de estandarizar, permitiendo que su valor sea una tarea simple por determinar; debe ser intercambiable entre individuos, divisible, resistente, fácil de portar pero al mismo tiempo difícil de falsificar.
En el siglo XIII el emperador chino Kublai Khan decretó que en su enorme imperio protegido por la magnífica muralla, el dinero tomaría la forma de certificados de papel, impresos con el sol imperial, como sello de garantía. Esta insólita decisión conllevó un cambio cualitativo en el grado de abstracción representado por el dinero, pues hasta entonces, diversas civilizaciones habían explotado la idea de intercambiar materias primas con un valor social objetivo, por otros objetos llamados monedas, las cuales habían sido acuñadas usando metales preciosos o, entre nuestros antepasados, de una manera que hoy, con la cómoda distancia que nos brinda más de medio milenio de distancia, podría calificarse como romántica: utilizando semillas de cacao y plumas de quetzal (1).
El concepto y uso del dinero común ha ido evolucionando con el paso del tiempo, siendo cada vez mayor el grado de abstracción que éste proporciona.
En el siglo XIX, Karl Marx presentó en su afamado El Capital la teoría del valor-trabajo en la que propuso que el valor de un bien o servicio está determinado por la cantidad de trabajo necesario para producirlo (en vez de que éste esté fijado por la utilidad que le encuentre el propietario). Desde entonces los economistas han definido de manera general al dinero como un medio de intercambio socialmente aceptado, y como una representación abstracta de un valor, el cual es respaldado por una autoridad y admitido sin cuestionamientos para la realización de intercambios comerciales.
En nuestros días, la economía gira alrededor de pagos que aunque todavía en muchos contextos suelen hacerse en papel moneda, cada vez en mayor medida, se hacen a través de transferencias bancarias digitales. Pues en efecto, para muchos trabajadores ocurre que su salario es depositado en cuentas bancarias y buena parte de su dinero es intercambiado por bienes tales como pagos de impuestos, préstamos hipotecarios, etc. de manera exclusivamente digital. Un ejemplo paradigmático ocurre cuando una familia típica compra una casa. En ese caso, los interesados firman una serie de documentos legales que acreditan el compromiso de pagar una cantidad fija mensual a una cierta entidad crediticia a cambio del bien inmueble que desean adquirir. Lo que ocurre entonces es que la información digital es actualizada tanto en la cuenta bancaria del acreedor como en la del prestatario, sin que ninguna de las dos partes vea nunca el dinero constante y sonante que de una manera tan indeleble ha sido grabado en nuestro imaginario colectivo.
El uso cada vez más decidido de transacciones digitales y las ventajas que éstas representan para diversos gobiernos con respecto a la fiscalización de la manera exacta en que cada uno de los ciudadanos y organizaciones hacen uso de su dinero (y por consiguiente de cómo y cuánto incurren en pagos de impuestos de valor agregado, de transacciones, de utilidades de empresas y muchos otros más), ha hecho cada vez más atractivo para dichos gobiernos formular políticas que fomenten la reducción gradual del valor y uso del papel moneda. En este sentido, la comunidad europea es la región del mundo donde más agresivamente se están implementando medidas para reducir las transacciones comerciales que utilizan dinero en efectivo. Particularmente atrevido resulta ser el caso de Dinamarca, donde el gobierno se ha propuesto como meta eliminar el uso del papel moneda para el año 2030 (2).
Sin importar cuál sea su materialización, el dinero cumple con tres funciones principales en la economía de una sociedad:
- El dinero como un medio de cambio. El dinero permite pagar bienes, servicios y cancelación de deudas. Su uso como medio de cambio promueve la eficiencia económica, porque minimiza el tiempo utilizado para intercambiar bienes y servicios.
- El dinero como unidad de medida. En general, el dinero se emplea para medir el valor de la economía. Cuantificamos el valor de los bienes y servicios, de la economía de los individuos, de las organizaciones y de los países, utilizando como unidad de medida monedas internacionales (pesos, euros, dólares, yuanes, etc.)
- El dinero como depósito de valor. El depósito de valor se emplea para guardar el poder adquisitivo, desde el momento en que se recibe el dinero hasta el momento en que se gasta en la adquisición de un bien.
Cuando el dinero se materializa como papel moneda, tanto para el vendedor como para el comprador, se obtienen las siguientes ventajas: las transacciones se realizan inmersas en un anonimato total; dentro del contexto de su validez, el papel moneda es aceptado en cualquier lugar y; admite un manejo relativamente simple. Sin embargo, también presenta ciertas desventajas: el propietario del papel moneda es quien lo porta, por lo que las transacciones tienden a tener un carácter irrevocable, la portabilidad de grandes cantidades es peligrosa y difícil, y se requiere que las transacciones sean llevadas a cabo en persona.
Dinero plástico vs. dinero electrónico.
En la actualidad, el pago electrónico tradicional se hace utilizando tarjetas de crédito/débito, que en la jerga del gremio se denomina a veces con el nombre de dinero plástico. Incluso si la transacción se efectúa a través de algún portal de Internet mediante el envío de datos confidenciales de la tarjeta del cliente, la validación y la realización última del pago se realiza a través de los circuitos tradicionales de procesamiento de las operaciones del dinero plástico, esto es, los muy socorridos puntos de venta.
Sin embargo, uno de los más importantes temores de los usuarios de este sistema es la (in)seguridad asociada con el envío por la red de datos confidenciales de las tarjetas de crédito/débito.
Más aún, al enviar el número de tarjeta en cada compra, se va dejando un rastro fácil de seguir, permitiendo que entidades no autorizadas y/o que abusen de nuestra confianza, recaben información acerca de nuestros hábitos de consumo y de compra, poder adquisitivo, gustos personales, etc.
El uso del dinero plástico en sistemas de pago presenta las siguientes ventajas: permite transacciones de sumas de dinero muy grandes; su portabilidad y forma de uso es fácil y segura; para realizar la transacción no es necesario la presencia del comprador; se puede obtener dinero en efectivo a partir de éste y las transacciones pueden ser revocadas ante la presencia de errores. Asimismo presenta las siguientes desventajas: no permite el anonimato del comprador; su validez depende de que el vendedor tenga los medios para realizar la transacción; y requiere que se verifique el saldo del cliente en línea para la autorización de la transacción.
El dinero electrónico constituye una solución mucho más ambiciosa para sistemas de pago y, aunque las características propias de este dinero podrían hacer pensar que puede ser trivialmente duplicado, los sistemas de dinero electrónico propuestos a lo largo de los últimos treinta y cuatro años han demostrado que es posible diseñar elegantes mecanismos criptográficos que permiten que la entidad financiera cuente con garantías de seguridad razonables de que sus usuarios no podrán hacer mal uso del sistema y de que, en caso de que a pesar de todo así lo intentaran, el sistema estaría equipado con los mecanismos necesarios para identificar unívocamente al usuario malicioso/tramposo.
El uso del dinero electrónico como modelo de pago digital presenta las siguientes ventajas, las cuales no suelen estar presentes en el dinero plástico: mantiene el anonimato del comprador; y en ciertos modelos no requiere que el vendedor esté en línea en el momento de la transacción. Sin embargo también presenta problemas que aún no se resuelven del todo y que no están presentes en pagos con dinero plástico. Por ejemplo, ciertos elementos de su operación requieren de ingentes medios electrónicos para su operación y puede emplearse para negocios turbios tales como el lavado de dinero, entre otros.
En la parte restante de este ensayo se describen varios de los intentos criptográficos más importantes para ofrecer las elusivas características del dinero electrónico realizadas desde los primeros ensayos reportados por David Chaum en 1982, hasta su culminación veintiséis años después en 2008, con la propuesta de la cripto-moneda Bitcoin por parte del genial criptógrafo Satoshi Nakamoto (3).
Dinero electrónico: características deseables
En las décadas de los años ochentas y noventas del siglo pasado, conforme el sistema de pago en muchos países desarrollados cambiaba del dinero en efectivo a tarjetas de crédito, David Chaum y otros criptógrafos pioneros intentaron establecer los cimientos de lo que más tarde se convertiría en un medio de pago para la incipiente industria del comercio electrónico. Sin embargo, como veremos, intentar alcanzar los requerimientos básicos del dinero electrónico constituía un desafío formidable.
Los objetivos más importantes planteados en los primeros años de su propuesta fueron que el dinero electrónico debería exhibir las siguientes características deseables:
1. Independencia.
-
- La seguridad del dinero electrónico no debe ser condicionada por elementos externos. Frecuentemente, el dinero electrónico será enviado a través de la red, por lo que su seguridad no podría depender de que dicha red fuese o no segura.
2. Seguridad.
-
- No debe ser posible copiar ni reutilizar el dinero electrónico. Esta característica es particularmente difícil de alcanzar dado que al tratarse de una moneda electrónica, ésta estarı́a constituida de bytes, los cuales pueden ser trivialmente duplicados y reutilizados. Para prevenir esta situación, el cripto-sistema a ser diseñado debe contar con mecanismos que permitan prevenir de manera efectiva la reutilización de dichas monedas. Este fenómeno es una debilidad inherente del dinero electrónico conocida como el problema del doble gasto.
3. Anonimato.
-
- Se debe garantizar el anonimato del comprador. Cuando un comprador use monedas electrónicas no debe ser posible conocer su identidad a través del rastreo de sus compras.
4. Transferibilidad.
-
- El dinero puede ser transferido a otros. Esta propiedad permite que un usuario transfiera la propiedad de sus monedas a terceros, quienes desde ese momento podrán hacer uso de su dinero de manera irrestricta.
5. Divisibilidad.
-
- Una moneda puede ser dividida en otras de menor denominación. Esto permite que los pagos no requieran un número exacto de monedas electrónicas, con lo que se logra disminuir tanto el tráfico como la cantidad de operaciones que se deben de hacer para validar cada una de las monedas.
6. Eficiencia.
-
- La infraestructura de pago debe ser eficiente, rápida y relativamente sencilla, sin requerir de un hardware costoso para su implementación.
A primera vista podría parecer que los seis requisitos arriba enumerados son no únicamente difíciles, sino más bien mutuamente excluyentes, pues como se menciona arriba, el problema de prevenir la copia irrestricta de las monedas electrónicas luce en principio como un reto imposible. Más aún, dado que la moneda electrónica garantiza anonimato e impide rastrear la identidad de los clientes a través de su historial de compras, ¿cómo se podría entonces determinar si alguien intenta gastar fraudulentamente la misma moneda en dos transacciones diferentes?
De manera notable, el conjunto de características arriba descrito no es un desafío insuperable, tal y como demostraron un par de generaciones de criptógrafos, quienes idearon soluciones matemáticas que permitieron resolver este puzzle de una manera que linda entre lo mágico y lo maravilloso.
Dinero electrónico centralizado
Las primeras construcciones de sistemas monetarios electrónicos fueron planteadas por David Chaum en los años ochentas del siglo pasado. Para evitar la reutilización de las monedas electrónicas, Chaum propuso que cada moneda tuviera un identificador único y que una entidad Banco, fuera responsable de mantener una lista de todas el dinero gastado y de verificar en tiempo real si alguna de las monedas involucradas en cada nueva transacción pudieran estar incluidas en dicha lista. A través de esta vigilancia bancaria constante, Chaum quiso evitar el problema del doble gasto.
Para lograr esta función, como se ilustra en la figura 3, el Banco, debería de estar en línea en el momento en que se efectuara cualquier transacción entre una entidad Comprador y otra entidad Vendedor, pues de lo contrario la entidad Vendedor no podría estar cierta de que las monedas recibidas no hubieran sido utilizadas anteriormente. Es importante resaltar que en el protocolo de depósito que se menciona en la figura 3, la entidad Vendedor canjea sus monedas electrónicas por dinero real. De esta manera, el esquema propuesto por Chaum no crea una moneda diferente al dinero fiduciario tradicional.
El hecho de que el Banco tuviera que estar forzosamente conectado al momento de realizar el protocolo de pago/compra, resultó ser una restricción onerosa, la cual sería corregida por Chaum, Fiat y Naor en una segunda propuesta, en la que se permitía que la transacción de pago/compra entre un cliente y una tienda utilizando monedas electrónicas, pudiera realizarse en una instancia de tiempo diferente a la del protocolo de depósito, evitando así la necesidad de que el Vendedor tuviera que estar conectada al Banco para verificar la validez de la moneda.
Otra característica importante que aportaron Chaum, Fiat y Naor en su protocolo, fue la garantía del anonimato. En el protocolo de retiro mostrado en la figura 3, los autores sugirieron que las monedas electrónicas fueran tomadas del Banco utilizando un factor de opacidad digital que tendría el propósito de ocultar al Banco la verdadera identidad del Comprador. Para garantizar que las monedas utilizadas fuesen legítimas, estás deberían ser firmadas digitalmente a ciegas (4), mediante una primitiva criptográfica que puede implementarse utilizando una variante del criptosistema RSA. Pocos años después, Okamoto y Otha propusieron una versión del sistema de Chaum, Fiat y Naor que admitía las propiedades de transferibilidad y divisibilidad de monedas electrónicas, pero que al mismo tiempo presentaba enormes dificultades para solventar el problema del doble gasto.
Críticas al dinero electrónico centralizado
El dinero electrónico centralizado recibió objeciones a lo largo de su corta historia, tanto desde el punto de vista técnico como desde el punto de vista sociológico.
El primer problema que se percibe en este esquema es el de que el anonimato ofrecido permite el florecimiento de actividades ilícitas tales como la del lavado de dinero, actividades terroristas y el comercio electrónico de pornografía infantil, entre otras. Debido a esas objeciones, se propuso que los sistemas de dinero electrónico debían equiparse con una autoridad que inspeccionara si en alguna transacción se habían realizado actividades delictivas, y en tal caso, que esta autoridad pudiera actuar vulnerando de manera excepcional el anonimato ofrecido por el sistema. Este orden de ideas se ilustra en la figura 4.
Una segunda crítica al sistema de dinero electrónico centralizado es la de que la cualidad de permitir transferencias de monedas electrónicas entre varias entidades Comprador, hace extremadamente difícil localizar al usuario del sistema que pudiese haber cometido fraude al utilizar dos veces alguna de sus monedas electrónicas. En efecto, si esta situación se llegase a presentar, sería necesario que el sistema reconstruyera toda la cadena de transferencias que la moneda hubiera sufrido para poder determinar el culpable del fraude informático cometido.
Pero posiblemente la crítica más fuerte al sistema centralizado recae en el enorme rol y poder asociado a la entidad Banco. En caso de adoptarse este sistema de pago a una escala comercial internacional, entonces las entidades Banco tendrían la posibilidad de imponer tarifas con un costo arbitrario por cada transacción comercial que se realizara bajo sus auspicios. De hecho, éste es precisamente el problema que se presenta en el caso del dinero plástico, donde poderosas corporaciones se reservan el derecho de cobrar un determinado porcentaje fijo por cada transacción realizada. Esta tarifa es en principio cobrada a las tiendas que venden productos al público, pero en definitiva, es el cliente final quien paga este cargo adicional pues los vendedores tienden a subir los precios de sus mercancías para poder solventar este gasto extra sin incurrir en pérdidas para ellos.
Resultado de las críticas al dinero electrónico centralizado
Como resultado de las objeciones al dinero electrónico centralizado, este sistema de pago nunca logró consolidarse como una alternativa real en el sistema monetario mundial. Hubo muchas razones para este fracaso comercial, pero quizás la más importante de todas fue el poco interés de los bancos comerciales en promover el concepto del dinero electrónico. Es probable que sus estudios de mercado les hayan mostrado a los bancos que sus clientes estarían muy poco dispuestos a pagar un arancel extra por un producto exótico llamado dinero electrónico. Por otro lado, la característica de anonimato del dinero electrónico imposibilitaba realizar perfiles de las preferencias de consumo de los usuarios, un giro de trabajo que ya desde finales del siglo pasado resultaba ser un suculento y lucrativo negocio.
Un motivo de rechazo social de procedencia radicalmente distinta provino de organizaciones activistas tales como el movimiento ciberpunk, y otras organizaciones informáticas de corte anarquista. A estas voces les preocupaba que el enorme poder que el sistema de dinero electrónico centralizado le otorga a las entidades Banco (véanse figuras 1 y 2), pudiera ser objeto de manipulación política para negarle servicio a organizaciones sociales juzgadas como “incómodas” por algunos gobiernos.
Curiosamente, este temor de los movimientos anarquistas (que muchos críticos no dudaron de calificar en su momento como de paranoico), se materializó tal y como había sido predicho por ellos, cuando en el año 2010 el enorme nivel de influencia del gobierno de EUA fue utilizado para que las principales compañías de tarjetas de crédito y pagos electrónicos (tales como VISA, MasterCard, Western Union, PayPal, etc.), ejercieran una acción coordinada para impedir que los múltiples donativos que diversas organizaciones e individuos ofrecieron a la organización WikiLeaks, pudieran concretarse.
WikiLeaks logró salir adelante de esta precaria situación financiera gracias a los donativos recibidos a través de la recientemente creada cripto-moneda Bitcoin, que en el año 2010 ya había iniciado su cabalgata en el mundo digital, pero que era todavía relativamente poco conocida.
Bitcoin y el dinero electrónico distribuido
Como hemos discutido hasta este punto, todos los modelos de dinero electrónico propuestos hasta antes de 2008 fueron centralizados, es decir, los esquemas exigían la presencia de una entidad encargada de expedir el dinero, verificar las transacciones y llevar el registro de los pagos. Memorablemente, en 2008 Satoshi Nakamoto publica el artículo parteaguas: “Bitcoin: A Peer-to-Peer Electronic Cash System”, donde combina varios conceptos desarrollados por propuestas previas de sistemas de dinero electrónico para lograr una versión distribuida inédita hasta ese momento.
Desde la irrupción de Bitcoin en 2008, cientos de otras monedas electrónicas con modelos similares han sido propuestas y lanzadas al mercado con diversos niveles de éxito.
Sin embargo, en este artículo nos enfocaremos a analizar a Bitcoin que es, con mucho margen, la criptomoneda más usada en la actualidad, con una capitalización de mercado de varios miles de millones de dólares estadounidenses.
La innovación revolucionaria del sistema Bitcoin descansa en el uso de un sistema descentralizado que emplea un algoritmo de prueba de trabajo, en el que aproximadamente cada 10 minutos se lleva a cabo una elección. Este mecanismo permite que la red distribuida de Bitcoin alcance un consenso global acerca del estado de las transacciones del sistema y determine cuáles de estas transacciones son legítimas. Las características de las primitivas criptográficas utilizadas por Bitcoin hacen extremadamente difícil alterar cualquier transacción una vez que ésta ha sido oficialmente aceptada por su red distribuida, que en la parte restante de este ensayo llamaremos red Bitcoin.
Desde una perspectiva técnica, la aportación más significativa que Bitcoin brinda con respecto a su contraparte centralizada, es que el problema del doble gasto de una moneda electrónica es prevenido mediante un mecanismo de consenso que se establece entre los (cientos de miles de) participantes del sistema. Notablemente, esta solución descarta la necesidad de designar ninguna autoridad central. Aún más significativamente es el hecho de que Bitcoin crea, acaso por la primera vez en la milenaria historia del dinero, una moneda que no necesita ser acuñada ni certificada por ningún gobierno de ningún reino, imperio, confederación, estado o país.
Ingredientes criptográficos de Bitcoin
Los dos ingredientes criptográficos principales de Bitcoin son las funciones picadillo y las firmas digitales, cuyos funcionamientos se explican de manera somera en seguida.
Una función picadillo es una proyección H, la cual toma una cadena arbitraria de bits M, y produce un digesto (conocido en la literatura en inglés como fingerprint), tal que: h = H(M). Una función picadillo produce siempre digestos de longitud fija, independientemente del tamaño en bits del mensaje original. En Bitcoin se usa la función picadillo SHA-256 con una longitud de salida de 256 bits.
Idealmente, una función picadillo H debe exhibir las siguientes características: La función H debe aceptar cadenas de entrada con longitud arbitraria. El digesto h no tiene que revelar nada acerca del mensaje de entrada que lo originó, por lo que debe de lucir como un número aleatorio uniformemente distribuido en el espacio de la imagen (2256 picadillos diferentes para el caso de SHA-256). Además, debe ser computacionalmente intratable producir un digesto pre-determinado y también imposible hallar dos cadenas diferentes M y M’ que produzcan el mismo digesto h. La figura 5 ilustra el resultado de aplicar SHA-256 en la cadena que se escogió como epígrafe de este ensayo y algunas variaciones triviales del mismo. Como se explicó arriba, la salida de la función SHA-256es siempre de 256 bits, o 64 dígitos hexadecimales, o 32 bytes.
La firma digital de un documento M se produce utilizando el paradigma de criptografía de llave pública que fuera inventado en los años setentas del siglo pasado. En la criptografía de llave pública, a cada usuario se le asignan un par de llaves pública/privada (véase figura 6). Un usuario signatario utiliza su propia llave privada para firmar documentos, mientras que otro usuario verificador utiliza la llave pública del signatario y el mensaje signado para verificar que la firma producida por este último sea legítima. El modelo de seguridad de este paradigma presupone que la llave para firmar sólo es conocida por el signatario del mensaje, razón por la cual se le denomina llave privada. Por otro lado, se considera que todo usuario del sistema tiene acceso franco a la llave pública de cualquier usuario del sistema.
Para firmar un mensaje M, el signatario procede primero a calcular el digesto h de dicho documento, utilizando para ello la función picadillo de su preferencia así que, h = H(M). En seguida, el signatario utiliza su propia llave privada Kpriv y el algoritmo de firma para producir la firma s tal que, s = Firma(h, Kpriv). Para cada par (M, Kpriv), la firma s es única. Inclusive el cambio de un solo bit en el mensaje M (o el uso de la llave privada de cualquier otro signatario), producirá forzosamente una firma diferente.
La firma s puede ser verificada por una tercera entidad mediante el siguiente cálculo. Dado el mensaje M’ (posiblemente idéntico al mensaje original M), y su supuesta firma s, producida por la entidad signataria dueña de la llave privada Kpriv, dicha firma puede ser verificada por otra entidad si acaso el procedimiento, Verifica(H(M’), Kpub), regresa ‘verdadero’ cuando se coloca como su parámetro de entrada la llave pública del signatario y una copia incorrupta del mensaje original, esto es, siempre que M = M’.
En resumen, a diferencia de la firma autógrafa tradicional donde sólo se verifica la autenticidad del signatario, para un esquema de firma digital el proceso de verificación regresa un valor verdadero si y sólo si se verifican las siguientes dos condiciones:
1. Autenticidad del signatario. El proceso de verificación se lleva a cabo utilizando precisamente la llave pública del signatario del mensaje y,
2. Autenticidad del documento. Se cuenta con una copia legítima del mensaje M original que fuera firmado por el signatario.
En el caso de Bitcoin, Satoshi Nakamoto escogió utilizar el estándar de firmas digitales ECDSA (el cual hace uso de la criptografía de curvas elípticas), como el algoritmo de firma/verificación de documentos en Bitcoin.
La identidad de un usuario de Bitcoin está restringida a su llave pública ECDSA, pues es ésta toda la información que los demás usuarios del sistema necesitan saber para interactuar con él/ella. Sin embargo, si un usuario desea minimizar la probabilidad de que su identidad en el mundo real sea revelada a partir de los indicios que sus compras con Bitcoin pudieran generar, es altamente recomendable que este usuario genere un nuevo par de llaves pública/privada por cada transacción que registra en el sistema.
Bloques básicos del sistema Bitcoin
Bitcoin es una colección de conceptos y tecnologías que forman la base de un sistema internacional de dinero electrónico. A continuación se describen brevemente los bloques principales que conforman este sistema de pago.
Moneda: Bitcoins y satoshis
Las unidades de esta criptomoneda se denominan Bitcoins y se emplean para almacenar y hacer pagos entre participantes de la red (5). La abreviatura preferida para los Bitcoins es BTC y su símbolo se muestra en la figura 7.
La bitácora de bloques blockchain
La bitácora de bloques blockchain, es el nombre con el que se conoce a la bitácora global de Bitcoin. En el blockchain se encuentran almacenadas de forma ordenada y con marcas de tiempo, todas las transacciones realizadas desde la puesta en marcha del sistema de pagos Bitcoin en enero de 2009. Su principal función es la de prevenir el problema del doble gasto, esto es, la situación en que algún individuo trate de gastar más de una vez una moneda electrónica. El blockchain también evita que alguien trate de modificar transacciones ya realizadas. Cada cliente de la red Bitcoin (en su versión completa), almacena de forma independiente una copia del blockchain, la cual puede ser verificada de manera individual. Cuando varios nodos de la red tienen en su blockchain los mismos bloques se dice que los nodos están en consenso. Hacia finales de septiembre de 2016, la bitácora blockchain de Bitcoin alcanzó un tamaño de unos 85 Gigabytes (6).
Direcciones y llaves
La posesión de bitcoins se acredita a través de pares de llaves pública/privada, direcciones, y firmas digitales. Las llaves no son almacenadas por la red de Bitcoin, sino más bien por los usuarios del sistema en archivos o bases de datos, llamadas carteras (wallets en inglés). Las llaves son independientes del protocolo de Bitcoin, por lo que pueden ser generadas de manera arbitraria por los usuarios. Como se discute más adelante, cada transacción en Bitcoin requiere de una firma válida para poder ser incluida en el blockchain.
Carteras
La cartera más general de Bitcoin es capaz de realizar todas las operaciones necesarias en el sistema, esto es: generar llaves privadas y públicas, crear las direcciones de depósito (las cuales se derivan a partir de los picadillos de las llaves públicas), verificar si se han realizado transacciones hacia las direcciones administradas, crear y firmar transacciones desde las direcciones administradas, y finalmente, comunicar a la red Bitcoin las transacciones que ya hayan sido firmadas. La principal ventaja de este tipo de carteras es que son fáciles de usar, pues la aplicación lleva al cabo todas las tareas informáticas que el usuario necesita efectuar para recibir y gastar satoshis y bitcoins. Por otro lado, su principal desventaja es el osado riesgo asociado con el almacenamiento de llaves privadas en la memoria de un dispositivo que está conectado a Internet.
Generación de bloques y transacciones en Bitcoin
A estas alturas de este ensayo acaso el lector atento, pero un tanto cansado, y un tanto abrumado, estará preguntándose: ¿Cuánto material más debo de procesar antes que se me explique la manera en que el dinero de Bitcoin se transfiere entre usuarios?
Las buenas noticias son que una vez que hemos concluido la descripción de los principales ingredientes criptográficos y bloques básicos del criptosistema Bitcoin, podemos proceder a explicar la forma puntual en la que se efectúan sus transacciones comerciales.
Transacciones en Bitcoin
El dinero se transfiere de un usuario de Bitcoin a otro a través de una secuencia de transacciones. Por ejemplo, suponga que el usuario U desea comprar alguna mercancía a la tienda V, y suponga que ese bien cuesta un millón de satoshis, equivalente a un centavo de Bitcoin, que de manera abreviada se escribe: 0.01 BTC. Entonces, U debe construir la entrada para una nueva transacción, la cual consiste de una o más transacciones anteriores T1, T2, …, Tm, en las cuales el usuario U recibió pagos que tuvieron un valor de b1, b2, …, bm BTCs, tal que,
b = Σbi ≥ 0.1 BTC.Note que Ti es la información que identifica la transacción i-ésima, la cual es construida esencialmente como el picadillo de los datos empleados en dicha transacción. Suponga por ejemplo que b = 0.5 BTC, y por simplicidad, suponga también que U ha utilizado el mismo par de llaves pública/privada ECDSA para todas sus m transacciones anteriores.
En estas condiciones, U forma la salida de la transacción, la cual especifica que 0.1 BTC deben ser pagados a la tienda V, mientras que 0.3995 BTC deben regresarse a U en calidad de su cambio. La cantidad de 0.0005 BTC (equivalente a 50,000 satoshis), son deducidos en concepto de pago de tarifa por la transacción. Por último, U firma el mensaje M compuesto por la entrada seguido por la salida:
M = c1, T1, …, cm, Tm, 0.1, V, 0.3995, Udonde ci corresponde al índice de la salida en la transacción Ti, en la cual Urecibió previamente un pago. El mensaje M junto con la firma s de U a este mensaje, es la nueva transacción Tm+1, la cual quedaría definida como, Tm+1 = M || s. Finalmente, U envía Tm+1 a la red Bitcoin para su validación por sus pares, es decir, por el resto de los usuarios de la red.
Como resultado de esa acción, cada usuario en la red procede a verificar la validez de la transacción. Tal proceso de verificación implica revisar cuidadosamente que la transacción esté bien conformada, que referencie dinero que no ha sido gastado en transacciones anteriores y que la firma scontenida en la transacción verifique correctamente si se utiliza la llave pública de U en ese proceso de verificación.
Bloques y mineros en Bitcoin
La contribución más importante en el artículo seminal de Nakamoto fue proponer un método para establecer una secuencia cronológica de las transacciones que todos los usuarios del sistema han ido acordando. La idea clave de Nakamoto fue la de organizar las transacciones en bloques, cada uno de los cuales, a través de un cómputo extensivo, es validado y colocado inmediatamente después del último bloque confirmado. Un bloque típico contiene varios cientos de transacciones, y el proceso de validación para ser ingresado en la blockchain de Bitcoin toma aproximadamente 10 minutos.
Las primeras monedas de bitcoins fueron creadas por Satoshi Nakamoto el 3 de enero del 2009. Esta acción fue realizada mediante una transacción de 50 BTC a favor de una entidad representada por la llave pública de Nakamoto (y sin que a nadie se le hubiera cargado esa cantidad de dinero). Esta transacción constituye el primer bloque, el cual fue llamado el bloque génesis, que también fue creado por Nakamoto. La primera transacción y el bloque génesis están incrustados en el software de Bitcoin.
La organización de los bloques generados posteriormente al bloque génesis y los cálculos para confirmarlos, son llevados a cabo por los mineros. Nakamoto utilizó este termino como homenaje a los mineros de oro de tiempos pasados. Cuando un minero forma un bloque, la primera transacción que coloca en el bloque (conocida como la transacción base), es una transacción especial que le da al minero una recompensa de 25 BTC, lo cual debe sumarse a las tarifas correspondientes a todas las otras transacciones incluidas en ese bloque. La recompensa de 25 BTC se otorgará al minero sólo si su bloque es confirmado por la red Bitcoin. Este mecanismo es el único existente en Bitcoin para acuñar nuevas monedas.
Hasta el 5 de octubre de 2016 se han acuñado 15,915,225 monedas Bitcoin. Por disposición de Nakamoto, cuando se hayan creado 21 millones de monedas, el sistema ya no otorgará ninguna recompensa y a partir de entonces el único incentivo que tendrán los mineros para seguir minando será el de recibir las tarifas de las transacciones incluidas en los bloques (7).
Puesto que una parte importante de la compensación que recibe un minero recae en las tarifas correspondientes a las transacciones que estén en el bloque en construcción, se espera que éste procure incluir todas o casi todas las transacciones que estén pendientes de ser confirmadas.
Cuando un minero ha determinado la estructura de su bloque, calcula los valores picadillo de cada una de las transacciones incluidas en dicho bloque y los organiza de acuerdo a una estructura de datos conocida como árbol Merkle de picadillos (8). Finalmente, el minero conforma el encabezado Fdel bloque, el cual contiene dos piezas esenciales de información:
- La raíz del árbol Merkle y;
- El picadillo del bloque más reciente que el nuevo bloque aspira a suceder.
El minero agrega al encabezado de bloque un nonce N, cuyo valor numérico puede ser cambiado arbitrariamente por el minero. Con ello el encabezado tiene la forma F||N. En seguida el minero calcula el picadillo H(F||N), con la esperanza de que el valor del picadillo interpretado como un valor entero, sea menor que un grado de dificultad de trabajo B, previamente establecido en el sistema (9). Las posibilidades de éxito son minúsculas, esencialmente la probabilidad de ganar es, B/2256.
El juego ahora consiste en que el minero incremente el valor de N y calcule un nuevo picadillo H(F||N), con la esperanza de que este nuevo valor sí sea menor que B. Probablemente este intento nuevamente fallará, pues típicamente un minero debe hacer miles de billones de intentos para poder aspirar a obtener una recompensa tan elusiva como intentar ganarse el premio gordo de la lotería.
Mientras tanto, miles de mineros más, también están ejecutando el mismo procedimiento. Claramente, cada minero organiza bloques diferentes, pues cada uno selecciona un conjunto distinto de transacciones; y aun si se diera el improbable caso de que dos mineros escogieran el mismo conjunto de transacciones, muy probablemente no escogerían estas transacciones en el mismo orden, por lo que generarían bloques diferentes.
El primer minero que logre encontrar un picadillo tal que la desigualdad H(F||N) < B se cumpla, envía su bloque a la red Bitcoin, con el propósito de que su bloque ganador sea agregado oficialmente a la blockchain. El valor del nonce N tal que H(F||N) < B se conoce como la “prueba de trabajo”. Todos los nodos de la red revisan cuidadosamente la validez de las transacciones incluidas en el nuevo bloque candidato y por supuesto, también revisan si acaso H(F||N) < B. Una vez que este protocolo de confirmación es completado, con muy alta probabilidad el minero recibirá su recompensa de 25 BTC más las tarifas correspondientes a las transacciones incluidas en su bloque.
Análisis crítico de Bitcoin
Podemos mencionar al menos tres ventajas que el sistema Bitcoin brinda:
·Desde la perspectiva de muchas organizaciones civiles, Bitcoin es una tecnología que permite liberar al ciudadano de a pie de los abusos de autoridad de gobiernos y bancos.
·Bitcoin establece un medio de pago que está libre de los gravámenes, en ocasiones onerosos, asociados a las tarifas bancarias
·Para las tiendas que venden bienes, la tecnología Bitcoin ofrece dos poderosos incentivos:
◦ Las tarifas transaccionales son muy pequeñas y en todo caso son absorbidas por los clientes, no por las empresas
◦ Las transacciones son irreversibles (tal y como ocurre con el dinero en efectivo), lo que permite que las tiendas se ahorren discusiones (para ellas engorrosas) con los clientes. Discusiones que buena parte de las veces pierden cuando se trata de disputas de transacciones con sus clientes en las que se utilizaron tarjetas de crédito o débito.
Sin embargo, se han señalado también reservas y reticencias importantes en el uso de la tecnología Bitcoin, pues:
·La tasa de cambio de Bitcoin ha fluctuado de una forma muy irregular en los últimos años. Por ejemplo, un Bitcoin costaba $91 dólares estadounidenses el 17 de julio de 2013, mientras que el 30 de noviembre de 2013 alcanzó un valor pico de $1,126.82 dólares estadounidenses (como puede consultarse en la figura 8).
·A pesar de que el diseño interno de Bitcoin es muy bueno, su éxito final dependerá de qué tan bien pueda interaccionar con el resto del mundo financiero. Por ejemplo, en 2013 la más grande casa de cambio de Bitcoins era la compañía japonesa Mt. Gox. Sin embargo, errores de manejo hicieron que esta empresa se declarara en bancarrota al perder 744,408 BTC de sus clientes con un valor en el mercado de ese entonces, de 400 millones de dólares. Mt. Gox se declaró en bancarrota en febrero de 2014.
·Aunque no fue uno de sus propósitos principales, el anonimato ofrecido por Bitcoin a sus clientes es relativamente limitado. Aunque la Blockchainno contiene ninguna información de identidad real de los compradores/vendedores, un estudio cuidadoso de las transacciones permite intuir con bastante precisión, la identidad real de la mayoría de los usuarios. Esta deficiencia ha sido subsanada con el diseño de otras monedas de Bitcoin que son mucho más discretas en la protección de la identidad de sus usuarios.
·En estos momentos los mineros calculan 260 picadillos por segundo lo cual consume enormes cantidades de electricidad y recursos computacionales que podrían destinarse a mejores usos (10).
·La idea original en el diseño de Bitcoin fue que el proceso de minado sería democrático. Sin embargo, cuando tras algunos años de uso fue evidente que había mucho dinero en esta tecnología, varias organizaciones profesionales integraron enormes clústers de circuitos integrados ASIC que permiten calcular miles de billones de picadillos por segundo, acción que de manera efectiva sacó del mercado a mineros sin poder adquisitivo, los cuales tienen actualmente una probabilidad desdeñable de ganar dinero.
·La tecnología Bitcoin ha sido utilizada para realizar transacciones comerciales ilícitas. El caso más famoso es el del temible pirata Roberts el cual se discute brevemente en el siguiente apartado.
Los videos en las referencias [5] y [6] muestran cómo utilizar un cajero automático que expide Bitcoins y la experiencia de sobrevivir durante veinticuatro horas utilizando únicamente Bitcoins, respectivamente.
La verdad en el caso del temible pirata Roberts
Por primera vez en la historia del planeta, una persona fue condenada a cadena perpetua (en realidad fueron dos cadenas perpetuas, cada una de ellas por encima de los veinticinco años), por crímenes cometidos detrás de una computadora. En efecto, el estadounidense Ross Ulbricht, quien tenía 29 años cuando fue capturado por el FBI en octubre de 2013 mientras se conectaba desde una biblioteca pública en San Francisco, California, fue condenado hace algunos meses a prisión de por vida. Su nombre de guerra en la red era el del “Dread Pirate Roberts”, un personaje a la vez curioso y temible tomado de una novela estadounidense escrita en 1973. Hasta el día de su captura, Ulbritch vivió una vida modesta, compartía departamento en San Francisco con un par de personas y era dueño de una camioneta tipo pickup del año 1995.
El FBI descubrió que Ulbritch (quien ostenta un titulo de maestría en ciencias de materiales otorgado por la Universidad estadounidense Penn State), es el fundador del sitio de Internet conocido como “Silk Road”, parecido en su modelo económico a lo que entre nosotros sería “Mercado libre”, pero con un giro diferente, pues en Silk Road, se vendían todo tipo de drogas, poderosos venenos, animales pertenecientes a especies en peligro de extinción, y en fin, un sitio desde donde se podía contratar a sicarios y asesinos a sueldo. Ulbritch se reservaba el 10% de comisión por cualquier operación de compra-venta realizada en su sitio y contaba con un pequeño grupo de colaboradores y administradores, a los que nunca había conocido en persona y con quienes se coordinaba a través de Internet.
Durante sus más de dos años de operación, en Silk Road se negociaron “mercancías” por valor en el mercado negro de unos 400 millones de dólares. Según el FBI, Ulbritch había acumulado una fortuna de unos 30 millones de dólares, pero de acuerdo al diario en el que anotaba sus actividades, la cifra correcta sería más bien unos 108 millones de dólares.
Para poder preservar tanto su anonimato como el de sus clientes, Ulbritch utilizó dos tecnologías criptográficas que fueron cruciales para sus fines: el navegador anónimo Tor, y la moneda electrónica Bitcoin. La ciencia criptográfica funcionó bastante bien para proteger al personaje del pirata Roberts por casi tres años, pero el FBI utilizó ingeniería social para aprovecharse de al menos 5 errores “estúpidos” cometidos por Ulbritch, los cuales dejaron rastros de su verdadera identidad en Internet.
Referencias
(1) El antiguo concepto del emperador Kublai Khan ha evolucionado en nuestros días hacia el concepto de dinero fiduciario o dinero de curso legal, esto es, papel moneda decretado por los gobiernos como moneda de curso legal, lo cual significa que debe aceptarse legalmente como pago de deudas, pero que no es convertible en metales preciosos.
(2) Véase por ejemplo: “This could be the first country to go cashless”,disponible en: http://tinyurl.com/Denmark-cashless
(3) Hasta el momento no está claro cuál es la verdadera personalidad de Satoshi Nakamoto, o de si se trata de una persona o de un grupo. Sin embargo, varias investigaciones periodísticas han intentado desvelar su identidad con un éxito muy limitado por decir lo menos. Un ejemplo notable es el artículo de la revista Newsweek de marzo de 2014: “The face behind Bitcoin”, en donde la periodista Leah Goodman creyó haber encontrado a Nakamoto en un ingeniero japonés con nombre homónimo, quien vive en el sur de California (véase figura 1).
Dos años después estamos prácticamente seguros que Goodman se equivocó estruendosamente. En mayo de 2016, Craig Wright, un oscuro empresario australiano, se autoproclamó en la BBC británica como el verdadero Satoshi Nakamoto (véase figura 2). Sin embargo las “pruebas” que ofreció para confirmar sus dichos no han sido consideradas como contundentes hasta la fecha. El misterio pervive.
(4) cf. con el apartado de firmas digitales que se incluye más adelante en este ensayo.
(5) Un satoshi equivale a 0.00000001 bitcoins y es la unidad más pequeña en el sistema Bitcoin.
(6) El rápido aumento de tamaño de la blockchain es tema de intenso debate en la comunidad de Bitcoin, pues algunos observadores señalan la necesidad de redefinir la estructura de la bitácora con el propósito de desacelerar su crecimiento.
(7) El criptosistema Bitcoin se auto regula para hacer cada vez más difícil acuñar monedas. De acuerdo a las proyecciones de Nakamoto, se espera alcanzar el número de veintiún millones de Bitcoins para el año 2140.
(8) El árbol binario Merkle de picadillos es una estructura de datos sumamente eficiente, que permite que un usuario averigüe rápidamente si una transacción realmente está incluida en el bloque al que el índice de transacción apunta.
(9) El software de Bitcoin actualiza el valor de B aproximadamente cada dos semanas. La actualización de B depende del tiempo promedio que toma confirmar un bloque, donde el promedio es calculado sobre el costo que tomó procesar los 2016 bloques anteriores. Al 8 de octubre de 2016, la probabilidad de que un minero encontrara H(F||N) < B al primer intento era aproxidamente 1/241.02.
(10) Se han propuesto varias soluciones para este problema tales como que la prueba de trabajo se cambie por el cómputo de problemas científicos altamente demandantes tales como ciertos problemas astronómicos difíciles.
Fuente: Revista C2
Disculpe, los comentarios están cerrados para esta publicación.