Puntos principales

  • Prueba de trabajo (PoW) es un mecanismo de consenso que previene el problema del doble gasto en los sistemas de pago digitales.

  • La prueba de trabajo es un vínculo clave en el proceso de minería, que implica agregar nuevos bloques de transacciones a la cadena de bloques y crear nuevas unidades de criptomonedas.

  • Bitcoin y muchas otras criptomonedas utilizan un mecanismo de prueba de trabajo para proteger sus redes y datos de blockchain.

Introducción

En pocas palabras, la Prueba de Trabajo (PoW) es un mecanismo que previene el problema del doble gasto en los sistemas de pago digitales. Bitcoin y muchas otras criptomonedas utilizan un mecanismo de prueba de trabajo para proteger sus redes y datos de blockchain. Este mecanismo significa que varias partes llegan a un consenso sin confiar entre sí y, a menudo, se denomina "algoritmo de consenso" o "mecanismo de consenso".

La prueba de trabajo es el algoritmo de consenso más antiguo que surgió y todavía se encuentra en la corriente principal junto con la prueba de participación (PoS) en la actualidad. Satoshi Nakamoto propuso el concepto de prueba de trabajo en el libro blanco de Bitcoin en 2008, pero la tecnología en sí ya había sido concebida antes.

Antes de que existieran las criptomonedas, HashCash de Adam Back fue un ejemplo temprano de un algoritmo de prueba de trabajo. HashCash alivia el problema del spam que afecta a los destinatarios al requerir que el remitente realice una pequeña cantidad de cálculos antes de enviar el correo electrónico. Estos cálculos son casi sencillos para los remitentes habituales, pero para aquellos que envían grandes cantidades de correo electrónico, la carga aumenta rápidamente.

¿Cuál es el problema del doble gasto?

El doble gasto ocurre cuando los mismos fondos se utilizan varias veces. Este término es básicamente exclusivo del mundo de las monedas digitales, al fin y al cabo, en la vida real no se puede pagar dos veces la misma cantidad de efectivo.​

Por ejemplo, después de pagarle al cajero por su café, éste queda bloqueado en la caja registradora. Es imposible que un cliente compre otra taza de café en la cafetería de enfrente por la misma cantidad de dinero. Sin embargo, esto puede suceder si se utiliza un sistema de efectivo digital.​

Sin duda, todos hemos copiado archivos de computadora usando comandos de copiar y pegar y hemos enviado fácilmente el mismo documento a docenas de personas. La moneda digital es esencialmente datos, por lo que debemos tener cuidado de que otros creen problemas de doble gasto, es decir, copiar la misma moneda y gastarla en otra parte. Sin la capacidad de evitar el doble gasto, los sistemas de pago digitales pronto colapsarán.

Si desea obtener más información sobre el problema del doble gasto, lea "Explicación detallada del problema del doble gasto".

¿Por qué es necesaria la prueba de trabajo?

Si ha leído nuestros artículos sobre tecnología blockchain, sabrá que los usuarios de criptomonedas publican constantemente transacciones en la red, pero estas transacciones no entran en vigor de inmediato. Una transacción sólo es válida después de que se confirma y se agrega a la cadena de bloques.

Por ejemplo, la cadena de bloques de Bitcoin es una base de datos de transacciones pública (libro mayor) que todos los usuarios pueden ver. Imagine que alguien comparte un bloc de notas con otros tres amigos para registrar sus transacciones de Bitcoin. Cada vez que uno de ustedes haga una transferencia de valor, anote:

Alice le paga a Bob 5 BTC; Bob le paga a Carol 2 BTC, etc.

Sin embargo, cada transacción debe indicar el origen de los fondos. Entonces, si Bob le paga a Carol 2 BTC, la entrada del registro debería verse así:

Bob le paga a Carol 2 BTC, que provienen de la transacción anterior de Bob con Alice.

De esta manera tenemos una manera de rastrear las cantidades de BTC anteriores. Si Bob intenta realizar otra transacción utilizando los 2 BTC que le pagó anteriormente a Carol, todos lo sabrán de inmediato. Debido a que antes se gastaron 2 BTC, los miembros del grupo de intercambio no permitirán que esta transacción se registre en el bloc de notas.

Para grupos pequeños, este enfoque puede funcionar muy bien. Todos se conocen y pueden llegar a un acuerdo sobre qué amigo anotará la transacción en el bloc de notas. ¿Qué pasaría si fuera un grupo de 10.000 participantes? En este punto, el Bloc de notas no se puede expandir de manera efectiva; después de todo, nadie confiaría en que un extraño esté a cargo del libro mayor.

Aquí es donde entra en juego la prueba de trabajo. La prueba de trabajo garantiza que los usuarios no puedan gastar fondos a los que no tienen acceso. El algoritmo de prueba de carga de trabajo combina la teoría de juegos y la criptografía para permitir que todos actualicen la cadena de bloques de acuerdo con las reglas del sistema.

¿Cómo funciona la prueba de trabajo?

Supongamos que el bloc de notas en el ejemplo anterior es la cadena de bloques. Ahora no agregamos transacciones una por una, sino que las empaquetamos en bloques. Publicamos transacciones en la red y el usuario que creó el bloque cuenta la transacción en un bloque candidato. La transacción sólo tendrá efecto cuando el bloque candidato se convierta en un bloque confirmado. Es decir, la transacción se agrega a la base de datos de blockchain.

El proceso de validar transacciones y agregar nuevos bloques se llama "minería". La minería es cara y difícil, pero las recompensas también son sustanciales. Las recompensas en bloque se componen de las tarifas de transacción de los usuarios y de los nuevos Bitcoins creados por el protocolo.​

La prueba de trabajo requiere que los mineros (usuarios que crean bloques) inviertan recursos como electricidad y potencia informática para analizar los datos de los bloques candidatos hasta que encuentren una solución al rompecabezas.

La operación hash de datos de bloque se refiere a incorporar datos a una función hash para generar un valor hash de bloque. El hash del bloque actúa como una “huella digital”, una identificación de los datos de entrada y es único para cada bloque.

En otras palabras, los mineros deben verificar y recopilar transacciones pendientes, organizar estas transacciones en un bloque candidato y llevar los datos del bloque a una función hash para generar un valor hash válido. Una vez que un minero encuentra con éxito un hash válido de un bloque candidato, lo publica en la red, agrega el bloque a la cadena de bloques y recibe la recompensa minera.

Después de que el minero publica el bloque candidato y el valor hash en la red, otros participantes de la red repiten el proceso de hash para verificar que la salida sea realmente válida.​

Un valor hash válido se debe aplicar innumerables veces para calcularlo, pero cualquiera puede confirmar fácilmente que el valor hash generado es correcto. Siempre que se envíe la misma entrada (datos de bloque) a la función hash, se puede verificar que la salida sea consistente.

Los datos proporcionados a la prueba de trabajo, el valor hash, deben cumplir ciertas condiciones. Pero los usuarios no saben cómo hacerlo. Lo único que pueden hacer es pasar los datos a una función hash para verificar que cumplan con los criterios. Si no coincide, modifique ligeramente los datos y obtenga un valor hash diferente. Cambiar incluso un carácter en los datos puede producir resultados tremendamente diferentes, por lo que el resultado no se puede predecir en absoluto.

Entonces, la creación de bloques es un juego de adivinanzas. En términos generales, los usuarios deben agregar toda la información de la transacción y algunos otros datos importantes para agregarlos, y luego realizar un hash simultáneamente. Dado que el conjunto de datos no cambia, es necesario agregar información variable. De lo contrario, el valor hash de salida siempre será coherente. Estos datos variables se denominan "número aleatorio". Cada vez que intentes cambiar el nonce, obtendrás un valor hash diferente.

Con todo, la minería es el proceso de recopilar datos de blockchain y aplicarles hash con la ayuda de números aleatorios hasta que se encuentra un valor hash específico. Si el valor hash resultante cumple con las condiciones establecidas por el protocolo, se puede publicar un nuevo bloque en la red. Al mismo tiempo, otros participantes de la red pueden actualizar sus propias cadenas de bloques para incluir nuevos bloques.

Para las principales criptomonedas actuales, cumplir las condiciones es todo un desafío. Cuanto mayor sea la tasa de hash de una red, más difícil será encontrar hashes válidos. Esto es para reducir la velocidad de generación de bloques.

Puede imaginarse el alto costo de adivinar valores hash masivos usando una computadora personal. Esto consume mucho tiempo y energía de computación. Pero siempre que se encuentre un hash válido, el protocolo te recompensa con criptomonedas.

Repasemos lo que sabemos hasta ahora:

  • La minería es difícil y costosa, pero mantiene segura la red.

  • Cuando los mineros generan con éxito bloques válidos, reciben una recompensa, que consiste en criptomonedas recién emitidas y tarifas de transacción.

  • Generar un hash válido lleva mucho tiempo, pero otros usuarios pueden verificar fácilmente la validez del hash repitiendo el proceso de hash.

Hasta ahora todo es normal. Pero ¿qué pasa si alguien intenta hacer trampa? ¿Cómo podemos detener la práctica de ingresar grandes cantidades de transacciones fraudulentas en bloques para generar hashes válidos?

Nace la criptografía de clave pública. Este artículo no entrará en detalles aquí. Lea "¿Qué es la criptografía de clave pública?" 》Para una comprensión integral. En pocas palabras, la criptografía de clave pública utiliza ciertas técnicas de criptografía compatible para verificar si alguien tiene derecho a acceder a una determinada cantidad de dinero.

Cuando un usuario crea una transacción, la firma. Otros usuarios de la red compararán la firma con la clave pública del usuario firmante para verificar que coincidan. Al mismo tiempo, otros usuarios también pueden verificar si la persona tiene derecho a utilizar los fondos y si el monto total de entrada es mayor que el monto total de salida, es decir, el gasto no debe exceder el monto de tenencia.

La red rechaza automáticamente bloques que contienen transacciones no válidas. El coste de intentar hacer trampa es muy alto. No sólo es un desperdicio de recursos, sino que tampoco obtienes recompensas.

Aquí es donde surge el misterio de la prueba de trabajo, es decir, hacer trampa es costoso, mientras que las operaciones honestas son altamente rentables. Los mineros inteligentes buscarán el retorno de la inversión, por lo que procederán con cautela para garantizar las ganancias.

Prueba de trabajo (PoW) frente a prueba de participación (PoS)

Además de la prueba de trabajo, existen muchos algoritmos de consenso y la prueba de participación (PoS) es el más popular. El concepto se remonta a 2011 y se ha implementado en Ethereum y en muchos otros protocolos.

En un sistema de prueba de participación, los mineros son reemplazados por "validadores" y no hay competencia involucrada en la extracción y adivinación de hashes. En cambio, los usuarios seleccionados al azar deben proponer o "acuñar" bloques. Si el bloqueo es válido, el usuario recibirá una recompensa que consiste en tarifas de transacción en bloque.

Por supuesto, existen umbrales para el proceso de selección y el acuerdo considerará de manera integral varios factores para seleccionar a los usuarios. Para calificar, los participantes deben asegurar una apuesta, una cantidad predeterminada de la moneda nativa de la cadena de bloques. Una prenda funciona como una fianza. Por ejemplo, para evitar que los acusados ​​eludan el juicio, deben pagar grandes fianzas y los validadores deben asegurar “promesas” para evitar trampas. En caso de fraude, se confiscará total o parcialmente la prenda.

En comparación con la prueba de trabajo, la prueba de participación tiene ciertas ventajas. La más obvia es la reducción de la huella de carbono, ya que la Prueba de Participación no requiere granjas mineras de alta potencia y consume solo una fracción de la electricidad de la Prueba de Trabajo.​

Aun así, la Prueba de participación sigue siendo mucho menos popular que la Prueba de trabajo. La minería se considera un desperdicio de recursos, pero sigue siendo el único algoritmo de consenso reconocido como confiable desde hace más de una década. Una vez que se introdujo la prueba de trabajo de Bitcoin, protegió transacciones por valor de billones de dólares. Para saber si la seguridad de la Prueba de participación es comparable a la de la Prueba de trabajo, la participación aún debe someterse a una verificación real a largo plazo.

Conclusión

La prueba de trabajo fue la solución inicial al problema del doble gasto y se ha demostrado su confiabilidad y seguridad. Bitcoin demuestra que no necesitamos depender de una entidad centralizada para evitar que se gaste el mismo dinero dos veces. Los participantes en un entorno descentralizado pueden rastrear de manera coordinada el estado de las bases de datos financieras mediante el uso inteligente de la criptografía, las funciones hash y la teoría de juegos.

Otras lecturas

  • ¿Qué es la minería de criptomonedas y cómo funciona?

  • ¿Qué es la criptografía de clave pública?

  • ¿Qué es el algoritmo de consenso de blockchain?

Descargo de responsabilidad: El contenido de este artículo se proporciona "tal cual" solo para información general y fines educativos y no constituye ninguna representación o garantía. Este artículo no constituye asesoramiento financiero, legal ni profesional de otro tipo y no pretende recomendar la compra de ningún producto o servicio específico. Debe buscar su propio consejo en asesores profesionales adecuados. Si este artículo fue aportado por un tercero, tenga en cuenta que las opiniones expresadas en este artículo pertenecen al colaborador externo y no reflejan necesariamente las opiniones de Binance Academy. Para obtener más información, haga clic aquí para leer el descargo de responsabilidad completo. Los precios de los activos digitales pueden fluctuar. El valor de su inversión puede aumentar o disminuir y es posible que no recupere el capital invertido. Usted es el único responsable de sus propias decisiones de inversión y Binance Academy no es responsable de las pérdidas que pueda sufrir. Este artículo no constituye asesoramiento financiero, legal ni profesional de otro tipo. Para obtener más información, consulte nuestros Términos de uso y Advertencia de riesgos.