01 diciembre 2017

Blockchains, Bitcoins y otras cosas (para dummies)



Centralizado versus distribuído
En sus inicios la computación se pensó principalmente centralizada: un gran computador central atendiendo de manera simultánea a muchos usuarios que hacen sus diferentes tareas o procesos, de manera simultánea, compartiendo la capacidad de la máquina. En el libro "El Desafío Americano" (1967) Jean Jcques Servan-Schreiber imaginaba un enorme computador IBM al que estarían conectados todos los hogares del mundo, el pronóstico acertó a que todos los hogares tendrían poder de computación y a que estarían conectados, pero se equivocó en que habría un solo computador central gigantesco.

Internet es semi distribuída
Durante los primeros años la comunicación entre computadores era centralizada, hasta que apareció el protocolo TCP/IP -uno de los conceptos más maravillosos de finales del Siglo XX- y con él el modelo cliente-servidor. En Internet buena parte de los procesos se hace distribuído, o sea en el computador de la casa de cada uno, pero también existen "servidores" que actúan como grandes repositorios a los que tienen acceso millones de clientes (o sea nosotros). El acceso a los servidores no es simultáneo, pero lo parece por el hecho que las señales electrónicas viajan a velocidades cercanas a la velocidad de la luz. En la realidad, nuestros equipos mandan mensajes a los servidores y estos los responden.

Este modelo cliente-servidor, donde los servidores tienen bases de datos inmensas y son usadas por millones de clientes (por ejemplo el buscador de Google o aplicaciones como Facebook, Twitter o Blogger) ha dado muy buenos resultados, sin embargo desde hace unos años, gracias a los piratas, empezó a surgir la idea de distribuir los datos en porciones, en miles de equipos, en lugar de tener una sola base de datos gigantesca.

Gracias a los piratas
Pocos recuerdan hoy cuando, si querías escuchar una canción tenías que pagar por ella, comprando un disco, CD, casssete o lo que fuera y que los programas de computación también había que comprarlos. El OS/2 Warp debe ser el único programa que yo he comprado en mi vida, creo que fue en 1995, así puse mi granito de arena a la fortuna de Bill Gates, porque me costó casi 400 dólares, claro que en esos años yo era un maldito millonario. Dios me castigó, porque jamás funcionó como esperaba, los que tienen mi edad sabrán de lo que hablo.

Los piratas
Entonces comenzó a florecer la piratería, pero las productoras musicales y de software perseguían a los dueños de los servidores. Entonces a un ingenioso pirata se le ocurrió fragmentar los archivos y alojar partes en millones de computadores que después se recompondrían, así cada equipo en casa sería cliente y servidor a la vez. De ese modo nació Napster y Bit Torrent, un avance gigantesco que recién está comenzando a mostrar su potencia. Ya no se necesitaba almacenar los archivos enteros en los servidores, bastaba con publicar un índice, con punteros hacia donde están los frgmentos. El ejemplo más famoso de estos índices es la página The Pirate Bay.

Esto de fragmentar las bases de datos se llama "tecnologías peer-to-peer" o sea de colega a colega, donde no hay un servidor y cliente fijos o un amo y esclavo, todos los equipos de la red hacen ambos papeles según se requiera.

Bases de datos distribuídas
El siguiente desarrollo se debe presuntamente a Craig Steven Wright, el supuesto inventor de la tecnología Bitcoin, se trata de una planilla general o libro de registro distribuído. Creo que el concepto más importante es la importancia de generar un libro mayor o planilla, que deje registro de cada transferencia y que estos registros no puedan ser modificados de ninguna manera, lo que se conoce como la "inmutabilidad de los datos" almacenaados en un blockchain.

Aterricemos tres conceptos importantes: (i) un "blockchain" es solo un pequeño archivo de texto que tiene los datos de la transacción, la fecha (timestamp) y datos del bloque inmediatamente anterior a él, para poder reconstruir la secuencia de manera parecida a como la información en Internet se fragmenta en "packets" que el equipo receptor los reconstruye, (ii) la inmutabilidad de su contenido se basa en que es extremadamente difícil de modificar sin que exista colusión y (iii) cuando hay colusión es sumamente fácil de descubrir.

Aquí entra la criptografía
Para asegurar la inmutabilidad de los datos, es decir que nadie pueda cambiarlos una vez que se registraron en la planilla o libro mayor, se usa un invento de la criptografía que son las "funciones hash", no es complicado entender como funcionan, lo mostraré con un ejemplo: supongamos que yo escribo un documento, un contrato por ejemplo, de unas cinco mil páginas en un archivo de texto simple con el Block de Notas de Windows, cualquiera que tenga acceso al documento podría cambiar una letra, una palabra o un párrafo completo usando el mismo Block de notas ¿cierto?.

Bueno, existe un procedimiento matemático que se puede implementar fácilmente con varios programas que, a partir de ese documento genera una cadena relativamente pequeña de caracteres de largo fijo, por ejemplo de 512 caracteres que no tienen ningún sentido, pero que identifican de manera única al documento original, esa cadena de caracteres se llama usualmente Checksum (suma de verificación) o digest (resumen). La utilidad es que podemos hacer la reversa: ingresamos el checksum y el documento, entonces el programa nos denuncia de inmediato si se ha modificado siquiera un solo caracter en el documento, es una especie de "huella digital" de documentos grandes, que nos sirve para verificar que no han sido modificados. "La idea básica de un valor hash es que sirva como una representación compacta de la cadena de entrada" (Wikipedia, función hash)

 Así tenemos un sistema que nos permite enviar y mantener bloques de datos, que pueden ser registros de transacciones o cualquier otra cosa, con la seguridad que son inmutables, no se pueden falsificar, pese a que cualquiera podría interceptarlos y cambiar su contenido en Internet esto sería descubierto inmediatamente en el proceso de verificación de su función hash.

Bitcoins y pruebas de trabajo

En un principio la tecnología bitcoin -una de las muchas posibles aplicaciones de las planillas distribuídas- fue pensada como un sistema para hacer transferencias de dinero seguras y anónimas. El primer paso era entonces crear una "moneda digital" equivalente al dinero real que se deseaba transferir, que pudiese ser manipulada con seguridad, de manera parecida a como los bancos registran sus transferencias en planillas, que registran el dinero que se deposita y el que se retira.

De allí a considerar los bitcoin "criptomonedas" había un paso, que los especuladores no tardaron en dar. Esto ha creado la tendencia a considerar los bitcoins como activos financieros en si mismos, instrumentos de inversión y especulación. En todo caso las tecnologías de blockchain aparecieron con la invención del bitcoin, así es que suelen confundirse. Un block, que registra una transacción es euivalente a un billete o una moneda y contiene cuatro "etiquetas" o textos de información:

1. una referencia que apunta al block anterior (recuerden que la "cadena" es cronológica y registra las transacciones a medida que se van haciendo)
2. una "prueba de trabajo" o "nonce" que demuestra que el texto es un bitcoingenerado de manera legítima
3. un registro de fecha y hora exacta de la transacción (timestamp)
4. un hash criptográfico (Merkle Tree root) que impide que el block sea modificado

¿Como se generan los bitcoins?
Los billetes y monedas reales los imprimen o acuñan los gobiernos, según su conveniencia, para generar un nuevo bitcoin (que hoy está avaluado en alrededor de 11 mil dólares, aunque con enormes fluctuaciones) las transacciones se envían a los "mineros" que deben resolver un problema criptográfico, formando las cadenas de bloques con mucha stransaccciones (bloques) consecutivas y verificándolos. Para esto se requiere de enormes recursos de cálculo y mientras más bitcoin se generan, más difíciles se hacen los problemas que permiten obtener una "prueba de trabajo" y un nuevo bitcoin para el, o los, "mineros".

Me pregunto si esto no dará una ventaja inmensa a tipos como los dueños de gigantescas granjas de servidores: Google, Amazon o los que manejan el Laboratorio Nacional de Los Alamos, por nombrar solo a algunos, esa es solo una de las muchas dudas que me merece el sistema y que comentaré más adelante.

Bueno, creo que esos son -a grosso modo- los fundamentos del sistema según yo lo entiendo, de una tecnología que seguramente va a tomar muchos años en establecerse pero que puede ser de enorme importancia en el mediano y largo plazo. Y si me equivoqué en algo, que los sabios computines me corrijan nomas, así aprendemos todos.

P.D. Leído por la web "El término "nonce" se refiere a la "semilla" o "el estado actual" de un generador de números aleatorios. Un generador de números aleatorios producirá siempre la misma secuencia de números si se lo inicializa con la misma "semilla" o "nonce". Es importante (por motivos de seguridad) que la "semilla" del generador de números aleatoreos NO se repita cuando se encriptan los mensajes enviados"

16 comentarios:

  1. Estamos claros que los billetes y monedas van a desaparecer. Un dato: ya las monedas de 1 y 5 pesos no se fabrican y existe el redondeo..(ha pasado piola el tema). Ademas que para los bancos es muy ineficiente andar con un camion de valores a cada rato.

    Respecto del blockchain ya hay gobiernos y empresas que respaldan las criptomonedas solo topan en mejorar la tecnologia para que sea mas confiable. Ponerse a minar para cada persona es muy ineficiente y costoso.

    Lo peor es que con esta tecnologia desaparecen los bancos centrales y alli si que hay paño que cortar.

    ResponderBorrar
  2. Técnicamente el articulo es bien acertado, pero falla en el análisis economico del sistema.

    Es imposible separar un blockchain basado en proof of work de la moneda subyacente porque si no hay un incentivo monetario para los mineros, ¿para qué gastarían recursos en minar y asi asegurar la red?

    Desde mi perspectiva la gracia de Bitcoin no esta en las tecnologías subyacentes (como la criptografia de llave publica y funciones de hash y proof of work, que eran conocidas y publicas durante muchos años) si no en juntarlas en un sistema económico con un esquema de teorìa de juegos en el cual los distintos participantes de la red tienen incentivos a no hacer trampa.

    Por ejemplo: si minar no costara dinero (o recursos valiosos), entonces los mineros no tendrían ningún incentivo a minar bloques correctos puesto que el costo de no seguir el protocolo sería 0. En cambio como minar es muy costoso, nadie se arriesga a minar un bloque inválido porque el resto de la red lo rechazaría, no obtendría los bitcoins de recompensa y tendria un beneficio economico negativo por el gasto incurrido.

    Un video muy bueno de Andreas Antonopoulos al respecto es este: https://www.youtube.com/watch?v=HaJ1hvon0E0 . Recomiendo verlo entero pero en particular a partir de los 8:39

    ResponderBorrar
  3. El análisis económico de Antonopulus me parece bien superficial, creo que se centra en los posibles fraudes con bitcoin y ese no es el tema, no entiende las complicaciones que existen detrás del dinero y su uso en la economía, bueno, es un asunto tan complicado que probablemente nadie lo entiende bien y por eso resulta tan peligroso jugar con eso. La masificación del dinero fiat desde Bretton Woods nos metió en el lío que estamos ahora, los efectos de bitcoin como moneda de libre circulación probablemente darían espacio para abusos mucho mayores.

    El bitcoin se ha desnaturalizado, como medio para hacer transferencias anónimas de dinero real es excelente, aunque igual tiene la debilidad en los extremos, cuando tenemos que convertir dinero en bitcoins o viceversa. Algunos dirán ¿y para qué convertir si podemos comprar cosas con bitcoins? No precisamente, el bitcoin no es moneda de curso legal y solo sirve en la medida que circule en espacios más o menos reducidos, para que tenga éxito debería desaparecer la moneda de curso legal porque en el momento de convertir te aprietan el cogote y se pierde gran parte o todas las ventajas.

    El dinero es un concepto muy complicado, en la práctica es un consenso que solo puede ser impuesto y apoyado por el aparato represivo del estado. Si bitcoin empiezara a circular demasiado, hacer transacciones en criptomoneda se convertiría en un delito similar a la falsificación de moneda (es en realidad una especie de falsificación) que tiene penas enormes.

    La volatilidad mostrada por las criptomonedas es una de sus principales fallas para usarla como moneda de curso legal: el año 2010 creo, un tipo compró una pizza con 10.000 bitcoins, a precio de hoy eso sería como 110 millones de dólares. Claro que eso le pone los ojos en blanco a los ambiciosos que no cachan como funciona la economía, pero la estabilidad de la moneda es uno de sus características más deseadas, a nadie le haría maldita gracia vivir en un país con inflaciones de un millón por ciento, y eso no se resuelve con el hecho que la cantidad total de bitcoins sea limitada, no es la cantidad sino la divisibilidad infinita donde yo pienso que está el peligro.

    ResponderBorrar
  4. Es la explicación más clara que leí hasta ahora, Tomás. Ahora digo yo: el boom de su cotización a qué se atribuye?
    - Hay aquí una moneda fuera de los gobiernos, y siempre habrá evasores impositivos, mafias, etc... que las necesiten.
    - Es un nuevo oro.
    - La dificultad creciente de su "creación" garantiza su futura rareza ...
    - Es burbuja como tantas

    ResponderBorrar
  5. Interesante. Antes el Peer 2 Peer como Napster la llevaba (yo lo usé sus buenos años, hasta la llegada de ARES, pero ahora están demasiado cautos debido al material que se transfiere (sobretodo porno XD) la ultima vez que lo instalé intenté descargar una pelicula y no hubo caso.

    Antes no usaba Torrent por lo lento pero constante del sistema, pero ahora con Vuze solo me limito a decir: Torrent, no te mueras nunca! Grande The Pirate Bay!

    ResponderBorrar
  6. Hace un tiempo acá leí que VTR era el mejor proveedor de internet. En el último año me retiré de VTR, luego me retiré de Movistar y ahora estoy en el piloto de Entel hogar. Aquí va una mini evaluación.

    1. VTR lo tuve casi 20 años. El servicio siempre fue lo mismo. Cable coaxial, en que se conectaban todos los televisores que se quisiera al servicio de TV básico y con deco los canales especiales. Tenía plan con 120 megas de internet. Un desastre el servicio. Bloqueaban netflix, torrent, descargas directas y todo lo que sea distinto de leer la tercera y sitios básicos. Pagaba casi 80 lucas por los 120 megas de internet, 2 decos HD y teléfono ilimitado sin minutos a celular. Pienso que poco han invertido y siguen con tecnología vieja. Si movistar y otras proveedoras no tuvieran mala fama histórica VTR perdería muchos más clientes.

    2. Movistar. Me cambié a fibra óptica motivado por el mal y caro servicio que percibía por parte de VTR. Por 37 lucas ahora tenía 50 megas de internet, 3 decos sin canales HD y 300 minutos a celular. El servicio era espectacular. Netflix y torrent jamás fueron bloqueados. Los 50 megas de movistar se sentían mucho más rápidos que los 120 megas de VTR. Lo otro es la gran estabilidad del servicio. Para la fuerte nevazón de este invierno nunca se cortó ni internet, ni teléfono ni TV. VTR a los afortunados en mi barrio los tuvo 7 días sin servicio. A otros los tuvo hasta 15 días. Durante ese tiempo abrí mi router y fui la salvación de mis vecinos. Gran ventaja, router con acceso libre y completamente configurable por uno mismo. Movistar usaba el mismo cableado interno que dejó VTR y tenía una cajita conversora de fibra óptica a coaxial. Me pareció excelente para no tener que volver a cablear toda la casa. En cada deco podía conectar un router y sacar más conexiones.

    3. Entel. Estando bastante conforme con Movistar me cambié a Entel porque me ofrecieron ser parte del piloto de los nuevos servicios hogar de esta empresa. No soy sobrino ni amigo de nadie. Ni idea por qué me eligieron a mi. El servicio es más costoso que Movistar, 53 lucas para 3 decos, 300 megas internet, unos 50 canales HD y llamadas ilimitadas a fijo y celular. Recién esta semana me cobraron la primera cuota, 3 lucas por el arriendo de los decos, y ni idea cuándo me comenzarán a cobrar como un cliente regular. Espero que nunca. En principio el servicio era inestable. Tuve un corte de 2 días y varios cortes menores. Pero hace unos 2 meses que nada se cae. Acá los decos se conectan vía cable de red rj-45. Me cablearon todo la casa sin poner un peso. Siempre lo había querido hacer pero lo descartaba por lo costoso. Cada deco emite wifi y se puede usar netflix en los teles viejos HD que no son smart. Excelente servicio ahora. Lo único que no me gusta es que el router principal y los 3 deco vienen bloqueados y no me puedo meter y hacer cambios a mi gusto.

    ResponderBorrar
  7. Hola Tomás,

    Después de leer tu explicación y comentarios ya no me cabe la menor duda que invertir en Bit Coins es una locura y es comprar “oro del tonto”.

    Hace unos dias lei una entrevista en Bloomberg a Jack Bogle - fundador de Vanguard ETFs quien administra tres trillones de dólares en fondos de inversión - donde decía que por ningún motivo habia que invertir en Bit Coins y “que habia que arrancarles como a la plaga”.

    Ayer las Bit Coins cayeron 20% de precio en una horas. Lo supe por mis compañeros de trabajo, uno me dijo en la mañana que se estaba haciendo rico y en la tarde estaban todos deprimidos. Los veo todos los dias pegados a sus telefonos viendo el balance de sus “inversiones”. Asombroso lo que son las manias especulativas porque entre todos los nuevos “traders” con los que trabajo hay varios que son bastante inteligentes pero están completamente absobidos por la codicia y el deseo de plata fácil.

    Esta locura de los Bit Coins es idéntica en sus elementos básicos a la mania especulativa de los tulipanes que ocurrió en Holanda en el Siglo XVI. La historia se repite una y otra vez.

    Gracias por tu interesante artículo.

    Un abrazo,

    Andrés.



    ResponderBorrar
  8. Cuando algo sube de 1 a 10 en menos de un año, si ested es el vendedor: disfrutelo, pero no escape a Rumania, si es el comprador: mis condolencias.
    El sistema es razonablemente seguro, solo la muerte es seguridad total, la cadena de blooques auditadas publicamente llego para quedarse, incluso la comunidad mantiene una wiki, hay mas comercios que aceptan bitcoin, incluso bancos como BBVA lo publicitan, pero de pronto se alcanzo masa critica para la explosion. Algo paso que disparo el interes.
    Algo paso que disparo el interes.
    https://goo.gl/ezZUgM

    ResponderBorrar
  9. Anónimo 1, José, Andrés, los efectos económicos no los coloqué en la entrada pero los podemos ir viendo en los comentarios, después los podría resumir en otra entrada para que queden, porque yo creo que son muy importantes..

    En el bitcoin se treata de hacer una analogía con el oro, proponiéndolo como una especie de "oro digital", pero hay una diferencia importante: el minero que extrae oro corre enormes riesgos y puede perder miles de millones de su inversión si la veta se agota o baja su calidad, eso pasa con todos los negocios pero no con el bitcoin, donde la "minería" no tiene riesgos y es solo un cálculo de costos y benefiocios. Eso da una ventaja enorme a los que tienen grandes cluster de computadores y equipos (por ejemplo el Laboratorio Nacional de Los Alamos o Google) por sobre el resto, lo que les haría posible "controlar" la emisión. Esto no sería problema si solo se usaran como medio de transferir dinero real, pero cuando se especula no puedes tener uno o más actores que no corren riesgo, el par especulación/riesgo es inseparable y en eso se basatoda la economía.

    Este es solo uno de los aspectos que hace sospechosamente volátil la paridad bitcoin/dólares. En el programa ruso de RT, "Informe Kessler" defienden el bitcoin a brazo partido, no tengo duda que los gobiernos de rusia o China harán todo lo que puedan para controlar ellos las especulaciones, si es que ya no lo están haciendo.

    También se produce con el bitcoin el "efecto tarjeta de crédito" en las personas, porque al no tener representación física se elimina o se atenúa mucho el "dolor de pagar", esto lo explica muy bie Dan Ariely que muestra coo somos mucho más irresponsables cuando gastamos con tarjeta de crédito en lugar de efectivo. Eso también puede explicar la volatibilidad del bitcoin.

    Esa volatibilidad que se mantiene de manera consistente siempre al alza es señal de algo raro, probablemente una burbuja inducida de gente que está recogiendo dinero físico a cambio de bitcoins, que de la noche a la mañana pueden valer cero, es solo una cuestión psicológica, con todos los demás instrumentos financieros pasa lo mismo, pero esos están ligados a bienes tangibles, el bitcoin no, en 2010 uno compraba 5 dólares (más o menos) con 10.000 bitcoins y hoy compra 110 millones de dólares, eso no es normal ni sostenible.

    Anónimo 2, parece que todos los proveedores te dan una luna de miel de 6 meses o 1 año donde funcionan perfecto, después vienen los problemas, no se si será una ley pero es muy común. A mi Claro me funcionó muy bien hasta que tuvieron la primera falla, me cambié a VTR y es más rápido por la misma plata, todavía no empiezan los problemas pero ya vendrán.

    Para mi no serviría un proveedor que no me deje ccambiar parámetros del router porque tengo el servidor del Raspberry en casa, uso el router para abrir puertos y para dejar Ips privadas fijas, es muy útil hacerlo allí y no desde los equipos.

    LA dirección IP he notado que es muy estable, en Claro no cambió nunca y en VTR en varios meses cambió solo una vez, yo pensaba que las Ip dinámicas eran más... "dinámicas" pero son más flojas que yto!

    ResponderBorrar
  10. Wilson, lo que pasa es que la gente técnicamente orientada solo ve la seguridad en términos de si se puede o no falsificar, pero la confianza en el dinero depende de varias otras cosas, entre ellas que ningún actor individual o pequeño grupo de actores pueda manejar el precio, la incertidumbre, el lucro y el riesgo asociado es la regla cero de la economía, si algo sube en un 100.000% es porque alguien no está corriendo riesgo y eso es lo que arruina cualquier sistema financiero

    ResponderBorrar
  11. Pues como les decia...el gobierno de USA dandole apoyo al bitcoin...miren como habran derivados que usaran esta moneda.

    https://www.df.cl/noticias/mercados/divisas/bitcoin-frena-su-desplome-luego-de-que-eeuu-aprobara-los-futuros-sobre/2017-12-01/113119.html

    ResponderBorrar
  12. Menos mal que era para dummies. No entendí casi nada, sólo que no loco arriesgó mi poca plata en algo tan volátil

    ResponderBorrar
  13. Bueno, eso quiere decir que entendiste lo más importante jaja!

    ResponderBorrar
  14. yo tampoco arriesgaría mis lucas... es como pasarle a Garay mis finanzas, con la diferencia de que no tendré a quien reclamar en caso de perdida.

    ResponderBorrar
  15. que piensan del nuevo emprendimiento la chaucha?

    ResponderBorrar
  16. Los medios de pagos electrónicos son el futuro, en definitiva invertir en Bitcoin es probablemente lo mejor
    que se puede hacer, sigue escribiendo sobre este tema, Bitcoin es el futuro.

    ResponderBorrar

"Send me a postcard, drop me a line
Stating point of view
Indicate precisely what you mean to say
Yours sincerely, wasting away
Give me your answer, fill in a form
Mine for evermore
Will you still need me, will you still feed me
When I'm sixty-four"