3
36

Así se crean los Bitcoins (+Análisis Detallado)

¿Cómo crear Bitcoin?

Las personas utilizan sus ordenadores para muchas tareas diferentes, pero lo último que se podía pensar hace unos años atrás, es que usaríamos nuestro PC en labores de minería.

Las monedas criptográficas, como el Bitcoin, se generan usando ciertos algoritmos, y para conseguirlas, así como para gestionar las transacciones, se necesita potencia de proceso. Poner a tu ordenador a trabajar para crear nuevos bloques y aprobar transacciones es lo que se conoce como minar Bitcoins.

Las transacciones en la red bitcoin se propagan en un modelo “broadcast” sobre internet, donde cada cliente (el de la PC o el del celular) anuncia a todos los nodos en la red su transacción deseada, pero éstas no se “reconocen” oficialmente hasta que son registradas en un “bloque”.

Análisis detallado del Bitcoin

Estos bloques son un conjunto de todas las transacciones que ocurrieron en aproximadamente los 10 minutos anteriores. Estas transacciones van firmadas digitalmente con las llaves privadas de los dueños de las cuentas origen para garantizar que verdaderamente fueron ellos quienes las iniciaron. Un bloque es un “paquete” de transacciones.

Estos paquetes tienen un número de folio y una referencia hacia el bloque anterior a ellos mismos, al que se refieren no sólo por su número, sino también por la suma de verificación del bloque anterior por si hay do o más bloques compitiendo a ese nivel, explicaré adelante. ¿Quién es el responsable de compilar las transacciones y anexarlas a la historia oficial de transacciones Bitcoins? ¡Los mineros!

Pero, ¿todos y cada uno de ellos? Aquí está la parte interesante: cada bloque, además de empaquetar las transacciones de los aproximadamente los 10 minutos anteriores, va también firmado digitalmente por el minero que lo creó, quien además agrega una transacción más donde se auto asigna como premio un cierto número de Bitcoins “nuevos”. Como obviamente todos los mineros quisieran ser el o la privilegiada con recibir estas monedas como compensación a sus esfuerzos, el sistema los pone a todos a competir. ¿Cómo?

Al compilado de transacciones le deben de agregar, al final, una pequeña cadena al azar de forma que la suma de verificación del paquete completo tenga por lo menos una cierta cantidad de ceros al principio (el número de ceros que debe tener se conoce como “nivel de dificultad”). El algoritmo usado para estas sumas de verificación (SHA-256) no tiene una reversa determinada conocida (esto es a propósito), por lo que buscar esa cadenita mágica -el “nonce”- se vuelve básicamente una búsqueda de fuerza bruta entre millones de posibles combinaciones, con cada minero buscando por su lado esperando encontrarla primero que los otros.

Importancia de las transacciones

Eventualmente un minero descubre un nonce adecuado y anuncia su descubrimiento a la red. Los demás mineros validan que el nuevo bloque, digamos, el #2 sea válido. Y cuando es válido tienen dos opciones: reconocerlo como el siguiente bloque en la historia oficial de transacciones y ponerse a buscar el bloque #3 con las transacciones más recientes, o quedarse en la necia buscando producir su propio bloque #2.

Si al menos el 51% de la red reconoce como válido el primer bloque #2, las probabilidades de que produzcan el bloque #3 antes que el minero “necio” encuentre su propio bloque #2 son muy altas. Y si esto ocurre, el minero terco está perdiendo tiempo y electricidad en seguir buscando crear su propio bloque #2 cuando la mayoría de los demás mineros ya están buscando crear el bloque #4 – así que los mineros tienen un incentivo para reconocer la opinión de la mayoría y no obcecarse.

Pero ocasionalmente pasa que 2 mineros en puntos opuestos del planeta encuentran su propio bloque #2 casi al mismo tiempo, y por el retraso en la propagación de información, aproximadamente la mitad de los nodos reconocen como válido uno y la otra mitad al otro. ¿Qué pasa en ese caso?

Entramos en una competencia informal entre ambos grupos de mineros por ver quien extiende la cadena más rápido: si ambas mitades hallan su propio bloque #3 más o menos al mismo tiempo el problema persiste, pero si una lo encuentra un poco más rápido que la otra entonces los mineros de la mitad que perdió se olvidan del bloque #2 que habían reconocido originalmente y pasar a reconocer como oficial al bloque #2 que viene con el nuevo bloque #3, el bloque #2 que habían reconocido originalmente queda “huérfano” y es borrado de la lista oficial de transacciones de Bitcoin.

Observa que la creación de paquetes no está fija a cada 10 minutos: puede darse un poco antes o un poco después. El sistema Bitcoin toma en cuenta el tiempo promedio en que están creándose los nuevos bloques y, si este es demasiado rápido (digamos, uno cada cinco minutos) eleva el nivel de dificultad. Si por el contrario los bloques están apareciendo mucho más lento que cada 10 minutos (digamos, aparecen cada 15 o cada 20 minutos) entonces baja el nivel de dificultad, buscando siempre acercarse al ideal de 10 minutos lo más posible.

Así se crean los Bitcoins (+Análisis Detallado)
Valora este artículo

Opiniones y comentarios de los lectores

No hay opiniones

Deja tu opinión