Author

Topic: Libro de Bitcoin en español (Read 94 times)

newbie
Activity: 2
Merit: 0
March 23, 2024, 01:23:46 PM
#1
Hola Bitcoiners! Estoy en el proceso de escribir un libro en español y con sabor latino para aquellos que quieran profundizar mas allá del precio, ahorita está a un 60% pero estoy empezando a publicar algunas partes en redes para hacer publicidad conseguir retroalimentación.

Así que cualquier comentario es bienvenido.


Esto es del capítulo 5 que está en proceso de ser terminado y es un poco técnico pero si gustan luego podemos retroceder y les comparto algo más teórico:





Prueba de Trabajo

Como analizamos en la primera parte, el dinero fiduciario que se crea de la nada sin ningún esfuerzo, y genera una deuda que requiere que en el futuro personas (que no tuvieron nada que ver en la decisión de crear las monedas ni se beneficiaron de la creación de estas) trabajen y comercien para que estas adquiera valor en el mercado. El bitcoin por otro lado es emitido libre de deuda por que el trabajo se hace antes de que la moneda sea emitida y por lo tanto esta emitida con valor intrínseco, el trabajo llevado a cabo por los nodos mineros es además fácilmente verificable.

Nakamoto, el inventor del sistema que regula el ritmo al que se acuñan los bitcoin de manera descentralizada lo llamó “Proof of Work” (PoW) literalmente “Prueba de Trabajo”. Este mecanismo ajusta la dificultad del problema matemático que los mineros tienen que resolver para que alguno de estos logre verificar un nuevo bloque de transacciones y simultáneamente acuñar nuevo bitcoin aproximadamente cada 10 minutos. El ajuste de dificultad se lleva a cabo cada 2,016 bloques (o aproximadamente cada dos semanas), si los bloques están siendo minados más rápido, la dificultad aumenta. Si el minado es más lento, la dificultad disminuye.

Hash

Los ciclistas pedalean, los reggetoneros perrean, los mineros hashean, buscan el Hash.
Para comprender lo que los mineros están haciendo con el hardware de las computadoras tenemos que tener claro dos conceptos fundamentales en la informática, primero el algoritmo, este término se refiere simplemente a una serie de instrucciones o pasos en un orden específico para completar una tarea o en este caso resolver un problema matemático. El segundo concepto es el “bit”.

Un bit es la unidad más básica de información en informática; la palabra "bit" es una abreviatura de "binary digit" (dígito binario), y representa la cantidad mínima de información que una computadora puede almacenar o procesar. Un bit puede tener uno de dos valores posibles: 0 o 1.
Si tenemos 2 bits hay 4 posibles valores, 00, 11, 01, 10
Si tenemos 3 bits hay 8 posibles valores 000, 001, 010, 011, 100, 101, 110 y 111
La cantidad de valores posibles aumenta exponencialmente con la cantidad de bits, osea, la relación matemática entre la cantidad de bits “n” y la cantidad de posibles valores “V” que pueden representarse con esos bits es:    V=2n   
Con 10 bits por ejemplo tenemos 1024 posibles valores, con 30 bits mas de diez millones de posibles valores y con 100 bits la cantidad de valores es tan grande que escribir el número con todos sus dígitos abarcaría varias paginas y sería casi incomprensible como cantidad, es el tipo de números que se usan para contar las estrellas o los granos de arena en las playas, números que parecen  absurdos, como la cantidad de dólares que llegarían a existir si no fuera por que pronto vamos a adoptar el Bitcoin como dinero.

PoW utiliza la función SHA-256 o Secure Hash Algorithm 256 bits o Algoritmo de Hash Seguro de 256 bits. Esta función tiene la capacidad de tomar cualquier cantidad de datos como un mensaje o un archivo y producir una huella digital o Hash único de 256 bits lo cual para fines prácticos funciona como una cantidad infinita de posibles valores, aunque esta cantidad no es en realidad infinita en próximos capítulos exploraremos que tan cercana al infinito lo es para fines criptográficos.

Un hash de 256 bits se ve así:
1010101010100101010100101010010101110101010101001010101001010101001011110101001 0101010101010100101010100101010100101011101010101010010101010101010101010010101 0100101010010101110101010101001010010101101010100101101010101010010101010010101 001010111001010100101011101010101010010101

Para hacer una serie de 256 unos y ceros sea legibles para los humanos y mas fáciles de escribir estas cifras generalmente se convierten en códigos al sistema hexadecimal, lo que se significa que se utilizan 16 símbolos: los números del 0 al 9 para representar valores de cero a nueve, y las letras a, b, c, d, e, y f para representar los valores del 10 al 15.

Por ejemplo si usamos SHA256 pare digerir la palabra “Empanada” el Hash resultante es: 74166879c434aa1869b6ba1b9dac86d4e947ddd8b4699887f5d48af6c544e726
La misma palabra escrita sin mayúsculas “empanada” genera un Hash totalmente diferente:
4987904d867521fbeb8fa014970b094ee000f78d5632fa37eed8861a4447bab5
El Hash resultante del abstracto inicial del 180 palabras en ingles en el papel blanco escrito por Nakamoto es:
fc9ca465198ced179ff6dad10e975134e6a95b193c8f5eedaa3616efd89c04d0

Un texto completo como “Cien años de Soledad” que contiene cerca de 144,000 palabras generaría un hash del mismo tamaño, también todos los libros y los ítems de la Biblioteca Nacional de Brasil podrían ser digitalizados para generar un hash de 256 bits, pero si una solo letra es cambiada o una coma agregada en cualquiera de los datos de entrada, el Hash también cambia totalmente.

Hash han permeado poco diferentes ámbitos de la sociedad ya por sus características es una herramienta increíblemente útil para mantener la confianza en los sistemas de información e infraestructuras críticas que operan basadas en sistemas digitales. Sus propiedades mas importantes son las siguientes:

    • Determinística: El mismo mensaje siempre resultará en el mismo hash, sin importar cuántas veces se calcule.
    • Rápida de calcular: Para cualquier mensaje dado, el hash se puede calcular rápidamente.
    • Irreversible: Es computacionalmente inviable revertir el hash para obtener el mensaje original, es decir, dada una salida hash, es prácticamente imposible encontrar el mensaje original.
    • Resistente a colisiones: Es computacionalmente inviable encontrar dos mensajes diferentes que produzcan el mismo hash.
    • Sensible a cambios: Incluso un cambio mínimo en el mensaje de entrada producirá un hash significativamente diferente.

SHA-256 es parte de la familia de funciones hash criptográficas SHA-2 (Secure Hash Algorithm 2) diseñadas por la Agencia Nacional de Seguridad (NSA) de Estados Unidos y este algoritmo ha sido ampliamente revisado por expertos en criptografía de todo el mundo usando estándares abiertos. Aunque este tipo de algoritmos en algún momento fueron secretos militares, movimientos como el de los criptopunks ayudaron a difundir sus fundamentos y principios matemáticos hasta que estos fueron de dominio común. Hoy en día de SHA-256 es de dominio público y uso común y regular en sistemas informáticos, su disponibilidad pública se basa en el principio de que la seguridad a través de la transparencia y el escrutinio público es más efectiva que la seguridad a través de la oscuridad, hay cosas que simplemente no pueden mantenerse en secreto.

Revertir el hash para obtener el mensaje original es como usar un el sabor de un jugo de un tomate licuado para crear el tomate original con su forma y color específico y único entre los tomates, el efecto de irreversibilidad es logrado por el algoritmo que utiliza funciones matemáticas de una sola dirección. Por lo general las formulas matemáticas tienen dos direcciones, por ejemplo:
2 + 3 = 5 en la dirección opuesta seria   5 – 3 = 2
2 x 3 = 6 que en su dirección opuesta seria 6 / 3 = 2 
Por el contrario en las funciones de una sola dirección y = f(x)
donde “y” (el Hash) es fácil calcular dado un “x” (el texto o la data), pero es difícil encontrar “x” dado “y”  o usando el ejemplo del tomate:   sabor del jugo del tomate =  f(tomate)
Volviendo a la data y las letras esto quiere decir que teniendo el texto a mano es posible y fácil verificar la integridad y la autenticidad de un mensaje para asegurarse que ninguna palabra haya sido cambiada utilizando su hash, pero teniendo unicamente hash es imposible obtener el texto original. El mecanismo ideado por Nakamoto utiliza las transacciones de bitcoin para alimentar el algoritmo y el hash resultante para asegurar la integridad y autenticidad de estas, luego la red de Bitcoin verifica que efectivamente el hash es el resultado correspondiente y de esta manera logra el consenso descentralizado sobre quien es el dueño de cada bitcoin y cada satoshi.

Pero ¿Como es que PoW logra que esta verificación ocurra cada 10 minutos aproximadamente para al mismo tiempo controlar el ritmo de la emisión de bitcoin?

Antes describimos al Bitcoin como un lego, otra a analogía que nos puede ayudar a entender este sistema es la de el nudo con el que nos amarramos los zapatos donde la acuñación o generación de nuevo bitcoin está entrelazada dentro del mismo mecanismo que verifica las transacciones. Ahora que sabemos que es un Hash y que son 256 bits, podemos profundizar el el sistema de minería que utiliza el algoritmo PoW que le dá las características monetarias al bitcoin.

Continuará…
Jump to: