July 11, 2021, 11:22 p.m.
En un post pasado hablamos del conseso, si no lo haz leido es importante que lo revises primero antes de continuar, puedes encontrarlo aqui. El mecanismo que hoy presentaremos es el mas conocido, Proof Of Work.
Proof Of Work es un algoritmo de consenso, el concepto fue inventado por primera vez por Cynthia Dwork y Moni Naor en 1993 como una manera de evitar ataques de denegacion de servicio (DoS attack) y otros abusos, como el correo no deseado en una red, al requerirle al solicitante realizar algun trabajo, lo que generalmente significa tiempo de procesamiento por una computadora y por lo tanto electricidad. El concepto fue adaptado posteriormente para asegurar dinero digital por Hal Finney en 2004 a través de la idea de "prueba de trabajo reutilizable" utilizando el algoritmo de hash SHA-256. Tras su introducción en 2009, Bitcoin se convirtió en la primera aplicación ampliamente adoptada de la idea de PoW de Finney (Finney también fue el destinatario de la primera transacción de bitcoin). La prueba de trabajo también forma la base de muchas otras criptomonedas, lo que permite un consenso seguro y descentralizado.
Si aun no lees nuestro articulo sobre la funcion hash, te invitamos a leerla primero antes de continuar.
La prueba de trabajo implica la busqueda de un valor que cuando se aplica la funcion hash, como con SHA-256, el hash comience con un número predefinidos de 0. El trabajo promedio requerido es exponencial en el número de ceros necesarios y se puede verificar ejecutando un solo hash, esto ultimo es muy importante porque se necesita una cantidad considerable de energia computacional para encontrar el hash requerido, pero comprobarlo para los demas nodos es relativamente sencillo. En el caso de Bitcoin se implementa el PoW incrementado un valor conocido como nonce en el bloque hasta que se encuentra un valor que le da al hash del bloque los ceross requeridos. Como los bloques posteriores se encadenan después de él, el trabajo para cambiar el bloque incluiría rehacer todos los bloques posteriores. PoW se necesita para que criptomonedas como Bitcoin y Ethereum funcionen sin la necesidad de una entidad centralizada.
Los pasos para ejecutar la red son los siguientes:
1) Las nuevas transacciones se transmiten a todos los nodos.
2) Cada nodo recopila nuevas transacciones en un bloque.
3) Cada nodo trabaja para encontrar una prueba de trabajo para su bloque.
4) Cuando un nodo encuentra una prueba de trabajo, transmite el bloque a todos los nodos.
5) Los nodos aceptan el bloque solo si todas las transacciones en él son válidas.
6) Los nodos expresan su aceptación del bloque trabajando en la creación del siguiente bloque en la cadena, utilizando el hash del bloque aceptado como hash anterior.
Tus donaciones nos ayudan a seguir dando lo mejor, para traerte la mejor información y las mejores herramientas. ¡Todas las donaciones reciben un NFT de Coinsmos! Aceptamos donaciones en: BTC | ETH | MATIC | BSC | LTC | DOT