Blockchain simplificado: ¡21 preguntas con respuestas relativamente simples!
Publicado: 2023-04-04Estuve en ITB recientemente (conferencia de viajes) y después de una sesión sobre blockchain, uno de los miembros de la audiencia dijo que todavía no entendía blockchain.
El presentador trató de explicarlo pero dejó más confundida a la audiencia.
Entonces…..
…Voy a probar en lo que falló el presentador. Hay 21 preguntas que vale la pena responder al respecto...
1. ¿Qué es blockchain en términos simples?
Mucha información se almacena en bases de datos. Por lo general (no siempre) tiene una copia maestra de esta base de datos y las bases de datos no son demasiado difíciles de piratear.
Para blockchain, las transacciones se almacenan en bloques. Puede tener muchas transacciones en un bloque. Un bloque es parte de muchos bloques que están vinculados entre sí... de ahí... ¡el nombre blockchain!
Cuando usa blockchain, se crea una copia de todas las transacciones (almacenadas en bloques) en muchos lugares diferentes y la forma en que está configurada significa que es muy difícil (no imposible) piratearlo y crear transacciones fraudulentas.
Piense en blockchain como una hoja de cálculo con una lista de todas las transacciones y hay muchas copias idénticas de esta hoja de cálculo en muchos lugares. Para agregar una transacción a una hoja, no es solo una autoridad (es decir, un banco) la que decide si una transacción es válida, sino que es validada por cientos o miles de computadoras y todas guardan una copia exacta de las transacciones. La forma en que se configura blockchain es muy difícil de crear transacciones fraudulentas.
Algunas palabras que escuchará a menudo cuando se habla de blockchain:
Minería: estas son las computadoras que se recompensan por validar transacciones y se les paga por hacerlo.
Libro mayor público: el libro mayor son las transacciones y el público significa que ninguna autoridad central controla todo.
Distribuido: cuando se verifican las transacciones, podría estar utilizando computadoras en todo el mundo y no en un centro central.
Sí, hay más que eso, pero sigue leyendo...
2. ¿Cuál es la secuencia básica para una transacción de blockchain?
- Alguien plantea una transacción solicitada.
- Esto se representa en un bloque.
- Los nodos de una red (es decir, las computadoras) están buscando nuevos bloques.
- Todos los nodos intentan resolver un rompecabezas matemático (que explicaré más adelante)
- El primero en resolver el rompecabezas es recompensado y el resto de los nodos validan la transacción. Ahora es parte de la cadena de bloques.
- La transacción se completa
3. ¿Qué tipo de transacciones puede procesar en blockchain?
Una transacción se refiere a un contrato, acuerdo, transferencia o intercambio de activos entre dos o más partes.
Por ejemplo:
Transfiere algo de bitcoin de una persona a otra... o...
La propiedad de un automóvil se transfiere en función de ciertas condiciones que se cumplan de acuerdo con el 'contrato'. Entonces, lo que se almacena en blockchain es prueba de propiedad.
4. ¿Por qué se llama 'Blockchain'?
El Bloque es donde almacena la información de la transacción y cuando el bloque está lleno, se crea otro bloque que está vinculado al otro bloque... y listo, tenemos una cadena... ¡¡¡una Blockchain!!!
5. ¿Cuál es la estructura de un bloque?
Aquí está la estructura de un bloque que también muestra la conexión con bloques anteriores.
Encabezado de bloque
Este contiene lo siguiente:
- Hash del bloque anterior: este es básicamente un número de referencia para el bloque anterior. Cuando un bloque anterior se llena de transacciones, el siguiente conjunto de transacciones relacionadas se agrega a un nuevo bloque y se hace referencia al anterior (es decir, Blockchain... ¡obténgalo!)
- Marca de tiempo: esta es la hora exacta en que se creó el bloque
- Nonce: esta es una abreviatura de número que se usa una vez. En blockchain, este es un número aleatorio que solo se puede adivinar y no se puede calcular. Cuando es necesario verificar una transacción, se crea el nonce y, para verificar la transacción, las computadoras en la misma red deben adivinar cuál es el nonce.
- Merkle root: cada transacción que ocurre en la red blockchain tiene un hash asociado. Sin embargo, estos hash no se almacenan en un orden secuencial en el bloque, sino en forma de una estructura similar a un árbol, de modo que cada hash está vinculado a su padre siguiendo una relación similar a un árbol padre-hijo.
Cuerpo
Aquí es donde se almacenan todas las transacciones.
6.¿Qué es un validador de blockchain?
Un validador es cómo se verifican las transacciones. Hay un par de métodos diferentes para validar transacciones, aquí hay 2 populares:
- Prueba de trabajo
- prueba de participación
7. ¿Qué es la prueba de trabajo?
Cuando se inician las transacciones, se ponen en cola en la red para ser validadas. Los validadores están atentos a las transacciones y agrupan algunas en un bloque.
En una red de cadena de bloques, podría tener miles de validadores y todos ellos están tratando de validar transacciones. Sin embargo, lo que desea es que uno valide y luego los otros verifiquen.
Entonces, ¿cómo se valida…?
Un nonce es un número que solo se usa una vez.
Dentro del bloque hay un nonce y todos los validadores tienen que intentar adivinar este nonce. Están resolviendo un rompecabezas matemático.
Esto consume mucha potencia computacional (y electricidad) ya que todos los nodos están compitiendo.
Cuando un nodo descubre el nonce, recibe una recompensa y puede agregar el bloque a la cadena de bloques.
Pero la mayoría de los demás nodos de la red deben confirmar que están contentos con este nuevo bloque. Esto se llama consenso.
Este diagrama muestra este proceso. Más adelante explicaré el cifrado.
8. ¿Por qué existe un acertijo matemático para que el validador agregue un bloque a la cadena de bloques?
La razón principal de esto es evitar que los spammers, falsificadores, etc. establezcan y validen transacciones.
Validar una transacción lleva tiempo y cuesta dinero (hardware, electricidad, etc.). Si un spammer desea obtener transacciones en la cadena de bloques, debe poseer suficientes computadoras en la cadena de bloques para lograr el consenso (por ejemplo, al menos el 51%). Esto sería extremadamente costoso.
Podrían configurar una máquina y resolver el rompecabezas, pero todos los demás nodos deben aceptar que se confirma como parte de la cadena de bloques.
Este método de validación se creó inicialmente para ralentizar el envío de correo electrónico para que los spammers no pudieran enviar cantidades masivas de spam muy rápidamente.
9. ¿La prueba de trabajo es escalable?
¡No absolutamente no!
El sistema de prueba de trabajo no tiene sentido porque si las transacciones en la cadena de bloques pública crecieran masivamente, ¡estaríamos tomando un porcentaje notable de la electricidad disponible en todo el mundo!
Bitcoin es, con mucho, la criptomoneda más grande que todavía usa prueba de trabajo y probablemente seguirá siendo así.
Pero Bitcoin nunca tendrá una gran cantidad de transacciones. No es una moneda que se usa típicamente para comprar y vender cosas, almacenar títulos de propiedad, arte digital, etc. Por lo general, solo las personas apuestan por bitcoins comprándolos y vendiéndolos.
La prueba de trabajo es totalmente inescalable y es un sistema bastante tonto cuando quieres algo a largo plazo que crezca a medida que se produzcan más transacciones en blockchain.
Etheruem es la segunda criptomoneda más grande y acaba de pasar de la prueba de trabajo a la prueba de participación. ¡¡Ahorrarán un 99,95% de electricidad!!
10. ¿Cuántas transacciones por segundo se pueden procesar en bitcoin utilizando una prueba de trabajo?
La cantidad promedio de transacciones que se pueden procesar para bitcoin en una red de cadena de bloques es de 5 por segundo.
El número promedio de transacciones que se pueden procesar para Visa (no blockchain): entre 1500 y 2000.
Euthereum procesó alrededor de 30 transacciones por segundo utilizando la prueba de trabajo, pero su reciente cambio a Euthereum 2.0 significa que pueden procesar 100 000 transacciones por segundo. Este aumento masivo se debe principalmente a la prueba de participación y fragmentación. Apuesto a que ahora quieres saber cuáles son ambos...
11. ¿Qué es la prueba de participación?
La prueba de participación es un enfoque más sensato para validar y almacenar transacciones en la cadena de bloques.
Para participar como validador, debe colocar alguna criptomoneda que esté bloqueada y no pueda tocarla. Esto detiene a todos los estafadores.
Cuando hay una transacción en la cadena de bloques, se selecciona un nodo en función de múltiples factores, uno de los cuales es cuánto han apostado (es decir, puesto como garantía). Si resulta que son estafadores, pueden perder todo el dinero que apostaron.
Entonces, en lugar de tener miles de nodos que intentan competir para procesar una transacción, la prueba de participación selecciona uno.
La prueba de trabajo es tan tonta para ofrecer una solución escalable...
12. ¿Qué es fragmentación?
La mayoría de las criptomonedas ahora usan prueba de participación para procesar transacciones. Pero Euthereum también introdujo fragmentación que les permite procesar aún más transacciones por segundo.
La fragmentación consiste en dividir la cadena de bloques en fragmentos más pequeños, lo que mejora el rendimiento. Cada fragmento se llama 'Fragmento'.
SHARD es un antiguo término de base de datos que significa sistema para datos replicados de alta disponibilidad.
13. ¿Cuáles son los 3 tipos de blockchain?
Aha... esa es una buena pregunta!!!
No todas las cadenas de bloques son públicas. Así que hay los 3 tipos:
Cadena de bloques pública : cualquiera puede participar en una cadena de bloques pública.
Blockchain privado : solo puede participar si tiene permiso para unirse. Por ejemplo, una empresa podría ejecutar una cadena de bloques privada para su propio negocio.
Blockchain de consorcio (o federado) : aquí es donde el proceso de consenso (es decir, quién valida las transacciones) está controlado por un grupo preseleccionado de nodos
14. ¿Qué es un pool de minería?
Bajo prueba de trabajo, los validadores se llaman mineros. Un grupo de minería es donde un grupo de mineros reúne sus recursos computacionales (es decir, todas sus computadoras son parte de un grupo) para que tengan una mejor oportunidad de ser el primer validador de un bloque y, por lo tanto, ganar más dinero.
15. ¿Qué encriptación se usa para enviar transacciones de blockchain?
hash
Hashing se toma cualquier entrada de cualquier tamaño (por ejemplo, un bloque con muchas transacciones) y produce una cadena alfanumérica que siempre tiene la misma longitud.
Entonces, hay un hash único que identifica de manera única el bloque.
Dentro de un bloque, contiene el hash del bloque anterior, por lo que si hay alguna manipulación de cualquier bloque que sea parte de la cadena de bloques, uno de los validadores lo detectará. Esto se debe a que si hay algún cambio en cualquier bloque de la cadena de bloques, el hash de ese bloque cambiará.
Firma digital
Este es un tipo de firma electrónica que se utiliza para autenticar al remitente de un mensaje. Cuando un usuario quiere realizar una transacción en blockchain debe firmarla con su clave privada. Luego, la clave pública está disponible para que los nodos descifren este mensaje para verificar el autor del mensaje.
Piensa en una cuenta bancaria. Está bien compartir los datos de su cuenta bancaria con alguien para que pueda transferirle dinero (clave pública), ¡pero no compartirá sus datos de inicio de sesión con esa misma cuenta bancaria! (llave privada).
16. ¿La cadena de bloques es tan segura que nunca puede ser pirateada?
Ah, sí... ¡eso es bueno!
Hay un fuerte énfasis en la seguridad, pero eso no quiere decir que no pueda ser pirateado. He aquí algunos ejemplos:
Ataques de phishing: los usuarios reciben correos electrónicos no deseados en busca de sus credenciales y luego las entregan sin saber que se trata de un ataque de phishing.
Ataques del 51 %: si un grupo de mineros se reúne y tiene más del 51 % del poder de minería de la cadena de bloques, puede apoderarse de la cadena de bloques.
Ataques de enrutamiento: aquí es donde se interceptan las transferencias de datos en tiempo real.
17. ¿Qué es inmutable?
Inmutable significa que los datos no han sido manipulados, reemplazados o falsificados. Es un registro permanente de transacciones que no se puede modificar.
18. ¿Qué es un contrato inteligente?
Estos son contratos digitales almacenados en blockchain que se ejecutan automáticamente cuando se cumplen los términos y condiciones predeterminados.
Por ejemplo:
Si se transfiere x dinero de A a B para comprar un automóvil, el documento de propiedad del automóvil se actualiza con el nuevo propietario.
19. ¿Qué es un bloque de génesis?
Este es el primer bloque en una cadena de bloques y, por lo tanto, no tendrá una referencia a un bloque anterior... porque... ¡no hay ninguno!
Como es el primer bloque, tiene información adicional, como configuraciones y reglas para el buen funcionamiento de la cadena de bloques.
20. ¿Qué es un grupo de transacciones?
Esta es una lista de transacciones pendientes que esperan ser validadas en la red blockchain.
Una vez que se toma una transacción del grupo y se verifica, es importante que todos los nodos sean conscientes para que puedan validar y esto mantendrá todos los nodos sincronizados.
21. ¿Hay futuro para blockchain?
Creo que la mayoría de las monedas criptográficas fallarán porque la mayoría no ofrece ningún valor.
Creo que blockchain ha realizado algunas mejoras en la validación que aumentarán significativamente sus posibilidades de éxito (por ejemplo, prueba de participación y fragmentación).
Pero creo que se requieren más mejoras y hay un gran problema con la gente que no puede entender la tecnología.
Entonces, sí, hay un futuro, pero asegúrese de separar la cadena de bloques y las criptomonedas. Las monedas digitales proporcionadas por el Gobierno reemplazarán a la mayoría de las criptomonedas y estas monedas digitales se intercambiarán a través de blockchain.
Me encantaría escuchar tus pensamientos en LinkedIn. Por favor comparte y etiquétame.