Me imagino que has escuchado hasta el cansancio como el bitcoin sigue subiendo sin parar y las diversas opiniones sobre expertos si esta criptomoneda es una burbuja o no.
Además también debes haber escuchado sobre la tecnología detrás del bitcoin y las demás criptomonedas, el blockchain. Yo al igual que tú he escuchado estos términos bastante, pero quería entender realmente de qué tratan estas tecnologías así que comencé con mi búsqueda.
Hasta que encontré este artículo de Mohit Mamoria que explica cómo funciona el Blockchain de una manera bastante sencilla, y que me he permitido traducir para que los que no comprenden muy bien el inglés lo puedan leer también y de esta manera, entender (por fin), qué es el blockchain.
(Si prefieres leer el artículo original en inglés, aquí te dejo el enlace)
Qué diablos es el Blockchain
A menos que estés escondido debajo de una roca, estoy seguro de que habrás oído hablar de Bitcoins y Blockchain. Después de todo, son tendencia y los favoritos de los medios en estos días: las palabras de moda del año. Incluso las personas que nunca han minado una criptomoneda o que no entienden como funcionan, están hablando de ello. Tengo más amigos no técnicos que técnicos. Me han estado molestando durante semanas para explicarles esta nueva palabra de moda. Supongo que hay miles por ahí que sienten lo mismo. Y cuando eso sucede, llega el momento de escribir algo para que todos puedan entenderlo escrito en español simple para que cualquier usuario regular de Internet pueda entenderlo.
Por cierto, soy curador de un newsletter semanal llamado Unmade, que ofrece una idea del futuro en tu bandeja de entrada.
Blockchain: ¿por qué necesitamos algo tan complejo?
Para cada problema complejo hay una respuesta que es clara, simple e incorrecta -H. L. Mencken
A diferencia de cualquier otro post en Internet, en lugar de definir primero qué es Blockchain, entenderemos el problema que resuelve.
Imagina que Joe es tu mejor amigo. Está viajando al extranjero, y el quinto día de sus vacaciones, él te llama y te dice: “Amigo, necesito algo de dinero. Me he quedado sin nada”.
Tú respondes: “Te estoy enviando algo de dinero de inmediato” y cuelgas.

A continuación, llamas a tu gerente de cuenta de tu banco y le dices “Por favor, tranfiere US$ 1,000 de mi cuenta a la cuenta de Joe”.
Tu gerente de cuenta responde “Sí, señor”.
El abre el registro, verifica el saldo de tu cuenta para ver si tienes saldo suficiente para transferir US$ 1,000 a Joe. Porque eres un hombre rico, tienes mucho; por lo tanto, hace una entrada al registro como la que sigue:

Nota: no estamos hablando de computadoras solo para mantener las cosas simples.
Llamas a Joe y le dices: “He transferido el dinero. Ya puedes ir a tu banco a retirar los US$ 1,000 que te acabo de transferir”.

¿Qué acaba de suceder? Tú y Joe confiaron en el banco para administrar tu dinero. No hubo un movimiento real de billetes físicos para transferir el dinero. Todo lo que se necesitaba era una entrada en el registro. O más precisamente, una entrada en un registro que ni tú ni Joe controlan o poseen.
Y ese es el problema de los sistemas actuales.
Para establecer confianza entre nosotros, dependemos de terceros independientes.
Durante años, hemos dependido de estos intermediarios para confiar el uno en el otro. Tú podrías preguntar: “cuál es el problema de depender de ellos?”
El problema es que son singulares en número. Si se debe inyectar caos en la sociedad, todo lo que se requiere es que una persona u organización se corrompa, intencionalmente o no.
- ¿Qué pasa si ese registro en el que se registró la transacción se quema en un incendio?
- ¿Qué pasas si, por error, tu gerente de cuenta ha escrito US$ 1,500 en lugar de US$ 1,000?
- ¿Y si lo hizo a propósito?
Durante años, hemos estado poniendo todos nuestros huevos en una sola canasta y también en la de otra persona.
¿Podría haber un sistema donde aún podamos transferir dinero sin necesitar el banco?
Para responder a esta pregunta, necesitaremos profundizar más y hacernos una mejor pregunta (después de todo, solo mejores preguntas conducen a mejores respuestas).
Piénsalo un segundo, ¿qué significa transferir dinero? Solo es una entrada en el registro. La mejor pregunta sería entonces:
¿Hay alguna manera de mantener el registro entre nosotros en lugar de que alguien lo haga por nosotros?
Ahora, esa es una pregunta que vale la pena explorar. Y la respuesta es lo que ya habrás adivinado. El Blockchain es la respuesta a la pregunta profunda.
Es un método para mantener ese registro entre nosotros en lugar de depender de que alguien lo haga por nosotros.
¿Sigues conmigo? Bien. Porque ahora es cuando varias preguntas han comenzado a aparecer en tu mente, aprenderemos cómo funciona este registro distribuido.
Sí, pero dime, ¿cómo funciona?
El requisito de este método es que debe haber suficientes personas que deseen no depender de un tercero. Solo entonces este grupo puede mantener el registro por su cuenta.
“Puede tener sentido solo obtener un poco de Bitcoin en caso de que se haga popular. Si suficientes personas piensan de la misma manera, eso se convierte en una profecía autocumplida”. – Satoshi Nakamoto en 2009
¿Cuántos son suficientes? Al menos tres. Para nuestro ejemplo, supondremos que diez personas quieren renunciar a los bancos o a un tercero. De mutuo acuerdo, tienen detalles de las cuentas de los demás todo el tiempo, sin conocer la identidad del otro.
1. Una carpeta vacía
Todos tienen una carpeta vacía para empezar. A medida que avancemos, estas diez personas seguirán agregando páginas a sus carpetas actualmente vacías. Y esta colección de páginas formará el registro que rastrea las transacciones.
2. Cuando ocurre una transacción
Luego, todos en la red se sientan con una página en blanco y un bolígrafo en sus manos. Todos están listos para escribir cualquier transacción que ocurra dentro del sistema.
Ahora, si #2 quiere enviar US$ 10 a #9.
Para realizar la transacción, #2 grita y les dice a todos, “quiero transferir US$ 10 a #9. Entonces, todos, por favor, anótenlo en sus páginas”.

Todos verifican si #2 tiene saldo suficiente para transferir US$ 10 a #9. Si tiene suficiente saldo, todos anotan la transacción en sus páginas en blanco.

La transacción se considera completa.
3. Las transacciones continúan sucediendo
A medida que pasa el tiempo, más personas en la red sienten la necesidad de transferir dinero a otros. Cada vez que quieren hacer una transacción, la anuncian a todos los demás. Tan pronto como una persona escucha el (los) anuncio(s) lo escriben en su página.
Este ejercicio continúa hasta que todos se quedan sin espacio en la página actual. Suponiendo que una página tenga espacio para registrar diez transacciones, tan pronto como se realice la décima transacción, todo el mundo se queda sin espacio.

Es hora de guardar la página en la carpeta y sacar una nueva página y repetir el proceso desde el paso 2 anterior.
4. Guardando la página
Antes de guardar la página en nuestras carpetas, debemos sellarla con una clave única en la que todos los miembros de la red estén de acuerdo. Al sellarla, nos aseguraremos de que nadie pueda realizar ningún cambio una vez que sus copias hayan sido guardadas en la carpeta de todos, no hoy, ni mañana, ni siquiera después de un año. Una vez en la carpeta, siempre permanecerá en la carpeta, sellada. Además, si todos confiían en el sello, todos confían en el contenido de la página. Y este sellado de la página es el quid de este método.
[Explicación de concepto] Se llama “minería” de la página para asegurarla, pero por simplicidad, seguiremos llamándolo “sellado”.
Anteriormente, el tercero/intermediario nos dio la confianza de que todo lo que hayan escrito en el registro nunca será alterado. En un sistema distribuido y descentralizado como el nuestro, este sello proporcionará la confianza en su lugar.
¡Interesante! ¿cómo sellamos la página?
Antes de que sepamos como podemos sellar la página, sabremos como funciona el sello en general. Y como prerrequisito tenemos que aprender sobre algo que me gusta llamar…
La máquina mágica
Imagina una máquina rodeada de paredes gruesas. Si envías una caja con algo dentro por la izquierda, escupirá una caja que contiene algo más.
[Explicación de concepto] Esta máquina se llama “Función Hash”, pero no estamos de humor de ser demasiados técnicos. Entonces, por hoy, estas son “Las máquinas mágicas”.

Supongamos que envías el número 4 por la izquierda, y descubrimos que escupió la siguiente palabra por la derecha: “dcbea”.
¿Cómo convirtió el número 4 en esta palabra? Nadie sabe. Además, es un proceso irreversible. Dada la palabra “dcbea”, es imposible decir con qué se le alimentó a la máquina por la izquierda. Pero cada vez que alimentas el número 4 a la máquina, siempre escupirá la misma palabra, “dcbea”.

Probemos enviando un número diferente. ¿Qué tal 26?

Tenemos “94c8e” esta vez. ¡Interesante! Entonces, las palabras también pueden contener números.
¿Y si le hago la siguiente pregunta ahora?
“¿Puedes decirme qué debo enviar por el lado izquierdo de la máquina para que aparezca una palabra que comience con tres ceros por el lado derecho? Por ejemplo, 000ab ó 00098 ó 000fa o cualquier cosa similar”.

Piensa en la pregunta por un momento.
Te dije que la máquina tiene la propiedad de que no podemos calcular lo que debemos enviar por la izquierda una vez que recibamos el resultado esperado por la derecha. Con una máquina así, ¿cómo podemos responder a la pregunta que hice?
Puedo pensar en un método. ¿Por qué no probar cada número en el universo uno por uno hasta que obtengamos una palabra que comience con tres ceros?

Siendo optimistas, después de varios de miles de intentos, terminaremos con un número que arrojará el resultado requerido por la derecha.
Fue extremadamente difícil calcular el input dado el output. Pero al mismo tiempo, siempre será increíblemente fácil verificar si el input pronosticado produce el output requerido. Recuerda que la máquina escupe la misma palabra siempre para un número cada vez.
¿Cuán difícil crees que es la respuesta si te doy un número, digamos 72533, y te hago la pregunta “¿Este número, cuando se introduce en la máquina, arroja una palabra que comienza con tres ceros?”
Todo lo que necesitas hacer es arrojar el número en la máquina y ver qué obtuvo en el lado derecho de la misma. Eso es.
La propuesta más importante de tales máquinas es que: “Dado un output, es extremadamente difícil calcular el input, pero dado el output y el input, es bastante fácil verificar si el input conduce al output”.
Recordemos esta propiedad de las Máquinas Mágicas (o funciones hash) hasta el resto del post:
Dado un output, es extremadamente difícil calcular el input, pero dado el output y el input, es bastante fácil verificar si el input conduce al output
¿Cómo usar estas máquinas para sellar una página?
Usaremos esta máquina mágica para generar un sello para nuestra página. Como siempre, comenzaremos con una situación imaginaria.
Imagina que te doy dos cajas. La primera caja contiene el número 20893. Yo, entonces, te pregunto: “¿Puedes averiguar un número que cuando se le suma al número de la primera caja y se envía a la máquina nos dará una palabra que comienza con tres ceros?”.
Esta es una situación similar a la que vimos anteriormente y hemos aprendido que la única manera de calcular ese número es probando cada número disponible en todo el universo.
Después de varios miles de intentos, tropezamos con un número, digamos 21191, que cuando se le suma a 20893 (es decir, 21191 + 20893 = 42084) y se envía a la máquina, arrojará una palabra que satisfaga nuestros requisitos.
En tal caso, este número, 21191 se convierte en el sello para el número 20893. Supongamos que hay una página que lleva el número 20893 en él. Para sellar esa página (es decir, nadie pueda cambiar el contenido de la misma), pondremos una insignia con la etiqueta “21191” encima. Tan pronto como el número de sellado (es decir, 21191) queda atascado en la página, la página se sella.

[Explicación de concepto] El número de sellado se llama “Prueba de trabajo” (Proof Of Work), lo que significa que este número es la prueba de que se han realizado esfuerzos para calcularlo. Está bien llamarlo “número de sellado” para nuestros propósitos.
Si alguien quiere verificar si la página fue modificada, todo lo que tendría que hacer es sumar el contenido de la página con el número de sello y alimentar a la máquina mágica. Si la máquina da una palabra que empieza con tres ceros, los contenidos no se tocaron. Si la palabra que sale no cumple con nuestros requisitos, podemos tirar la página porque su contenido se vio comprometido y ya no sirve.
Utilizaremos un mecanismo de sellado similar para sellar todas nuestras páginas y, finalmente, organizarlas en nuestras respectivas carpetas.
Finalmente, sellamos nuestra página…
Para sellar nuestra página que contiene las transacciones de la red, necesitaremos encontrar un número que cuando se anexe a la lista de transacciones y se envíe a la máquina, recibiremos por la derecha una palabra que comience con tres ceros.
Nota: he estado usando la frase “palabra que comienza con tres ceros” solo como ejemplo. Ilustra cómo funcionan las funciones hash. Los verdaderos retos son mucho más complicados que este.
Una vez que ese número se calcula después de utilizar tiempo y electricidad en la máquina, la página se sella con ese número. Si alguna vez, alguien intenta cambiar el contenido de la página, el número de sellado permitirá a cualquier persona verificar la integridad de la página.
Ahora que sabemos sobre el sellado de la página, volveremos al momento en que terminamos de escribir la décima transacción en la página, y que nos quedamos sin espacio para escribir más.
Tan pronto a todos se les acaba la página para escribir más transacciones, se permite el cálculo del número de sellado de la página para que pueda guardarse en la carpeta. Todos en la red hacen el cálculo. El primero en la red que averigua el número de sellado lo anuncia a todos los demás.

Inmediatamente después de escuchar el número de sellado, todo el mundo verifica si produce el output requerid o no. Si lo hace, todos etiquetan sus páginas con este número y lo guardan en sus carpetas.
Pero, ¿y si alguien, digamos #7, el número de sellado que se anunció no le produce el output requerido? Tales casos no son inusuales. Las posibles razones para esto podrían ser:
- Es posible que haya oído mal las transacciones que se anunciaron en la red.
- Es posible que haya escrito mal las transacciones que se anunciaron en la red.
- Podría haber intentado engañar o ser deshonesto al escribir las transacciones, ya sea para favorecerse a sí mismo o a alguien más en la red.
No importa cuál sea el motivo, el #7 tiene solo una opción: descartar su página y copiar la de otra persona para que él también pueda ponerla en la carpeta. A menos que no coloque su página en la carpeta, no podría continuar escribiendo otras transacciones, prohibiéndole formar parte de la red.
Cualquiera que sea el número de sellado que la mayoría acuerde, se convierte en el número de sellado honesto.
Entonces, ¿por qué todos gastan recursos haciendo los cálculos cuando saben que alguien más los calculará y se los anunciará? ¿Por qué no quedarse sentando y esperar el anuncio?
Gran pregunta. Aquí es donde los incentivos aparecen en escena. Todos los que forman parte del Blockchain son elegibles para recibir recompensas. El primero en calcular el número de sellado es recompensado con dinero gratis por sus esfuerzos (es decir, trabajo de CPU y electricidad consumidas).
Simplemente imagina, si #5 calcula el número de sellado de una página, se le recompensa con algo de dinero gratis, digamos US$ 1, que se acuña de la nada. En otras palabras, el saldo de la cuenta de #5 se incrementa con US$ 1 sin disminuir el saldo de la cuenta de otra persona.
Así es como nació Bitcoin. Fue la primera moneda que se tramitó en un Blockchain (es decir, registros distribuidos). Y a cambio, para mantener el esfuerzo en la red, las personas recibieron Bitcoins.
Cuando suficientes personas poseen Bitcoins, crece en valor, lo que hace que otras personas quieran Bitcoins; haciendo que los Bitcoins crezcan en valor aún más; haciendo que cada vez más personas quieran Bitcoins; haciéndolos crecer en valor aún más, y así sucesivamente.
Las recompensas hacen que todos sigan trabajando en la red.
Y una vez que todos guardan la página en sus carpetas, sacan una nueva página en blanco y repiten todo el proceso una y otra vez, haciéndolo para siempre.
[Explicación de concepto] Piense en una sola página como un bloque de transacciones y la carpeta como la cadena de páginas (bloques), por lo tanto, convirtiéndola en una cadena de bloques (blockchain).
Y eso, mis amigos, es como funciona Blockchain.
Excepto que hay una pequeña cosa que no te he dicho. Aún.
Imagina que ya hay cinco páginas en la carpeta, todas selladas con un número de sello. ¿Qué sucede si vuelvo a la segunda página y modifico una transacción para favorecerme? El número de sellado permitirá que cualquier persona detecte la inconsistencia en las transacciones, ¿verdad? ¿Qué sucede si sigo adelante y también calculo un nuevo número de sellado para las transacciones modificadas y etiqueto la página con eso?
Para evitar este problema de que alguien regrese y modifique una página (bloque), así como el número de sellado, hay un pequeño giro en la forma en que se calcula el número de sellado.
Protección de modificaciones a los números de sellado
¿Recuerdas que te dije que te había dado dos cajas, una con el número 20893 y otra vacía para que puedas calcular? En realidad, para calcular el número de sellado en un Blockchain, en lugar de dos cajas, hay tres: dos precargadas y una para calcular.
Y cuando el contenido de todas esas tres cajas se suma y se alimenta a la máquina, la respuesta que sale del lado derecho debe cumplir las condiciones requeridas.
Ya sabemos que una caja contiene la lista de transacciones y otra caja contiene el número de sello. El tercer cuadro contiene el resultado de la máquina mágica de la página anterior.
Con este pequeño truco, nos hemos asegurado de que cada página dependa de su página anterior. Por lo tanto, si alguien quiere modificar una página histórica, también tendría que cambiar el contenido y el número de sellado de todas las páginas posteriores para mantener la cadena en consonancia.
Si un individuo, de los diez que imaginamos al principio, intenta engañar y modificar los contenidos del Blockchain (la carpeta que contiene las páginas con la lista de transacciones), tendría que ajustar varias páginas y también calcular los nuevos números de sellado para todas esas páginas. Sabemos lo difícil que es calcular los números de sellado. Por lo tanto, un tipo deshonesto en la red no puede vencer a los nueve tipos honestos.
Lo que sucederá es que, a partir de la página que el tipo deshonesto intenta engañar, crearía otra cadena en la red, pero esa cadena nunca sería capaz de ponerse al día con la cadena honesta, simplemente porque los esfuerzos y la velocidad de un tipo no puede superar a los esfuerzos acumulativos y a la velocidad de nueve. Y de esta manera, garantizando que la cadena más larga en una red es la cadena honesta.
La cadena más larga es la cadena honesta.

Cuando te dije que un tipo deshonesto no puede vencer a nueve tipos honestos, ¿sonó una campana en tu cabeza?
¿Qué pasa si, en lugar de uno, seis tipos se vuelven deshonestos?
En ese caso, el protocolo se estampará en sus caras. Y es conocido como “el ataque del 51%”. Si la mayoría de las personas en la red deciden ser deshonestas y engaña al resto de la red, el protocolo no cumplicará su propósito.
Y esa es la única razón vulnerable por la que los Blockchains podrían colapsar si lo hacen alguna vez. Sepa que es poco probable que suceda, pero todos debemos conocer los puntos vulnerables del sistema. Se basa en la suposición de que la mayoría de una multitud siempre es honesta.
Y eso, mis amigos, es todo lo que hay sobre Blockchains. Si alguna vez encuentras a alguien que se quede atrás y te pregunta: “¿Qué diablos es el Blockchain?”, ya sabes que indicarles. Graba este enlance.
¿Puedes pensar en alguien que debería leer esto ahora mismo? El botón “compartir” es todo tuyo.
Aquí termina la traducción, espero que haya sido clara para ti. Si ya has investigado bastante sobre el tema y deseas comprar criptomonedas, encontré esta página donde puedes comprar bitcoins con tarjeta de crédito. Como ya habrás escuchado la inversión en criptomonedas es de mucho riesgo así que si vas a invertir, debes hacerlo con un excedente de dinero que te puedes permitir arriesgar.
MBA de CENTRUM Católica Graduate Business School. Licenciado en Ingeniería Industrial de la Universidad de Lima. Gerente Comercial en Payet, Rey, Cauvi, Pérez Abogados. Especialista en Planeamiento Estratégico y Planeamiento Comercial.