Después de ingresar a la era Web3.0, necesitamos urgentemente una forma de moneda que sea creada, propiedad y controlada por los usuarios.
Existe un mecanismo de respaldo de "crédito", que permite a las personas llegar a un "consenso" sobre esta moneda a nivel de transacción.
A medida que la gente gasta más en línea, aún debería poder satisfacer la demanda de transacciones digitales.
Debería estar descentralizado y los datos almacenados deberían pertenecer a todos los que los crearon.
Debe ser seguro y verificable. El sistema de comercio debe poder seguir funcionando sin problemas. Nadie puede cambiar la cantidad de moneda que tiene en sus manos a voluntad.
Firmas electrónicas y libros de contabilidad distribuidos.
Para facilitar la comprensión de una serie de conceptos posteriores sobre Bitcoin y blockchain, crearemos una escena virtual, simularemos el funcionamiento real de la moneda y pensaremos en los problemas y soluciones existentes.
Escenario: Xiao Ming, Xiao Hong, Xiao Gang y Xiao Li son cuatro buenos amigos. Tienen intercambios de dinero frecuentes, por lo que establecieron un libro de contabilidad electrónico público para registrar las transacciones entre las cuentas de cada uno y liquidarlas de manera uniforme al final del período. mes.
Ahora veamos qué problemas surgen con un sistema de transacciones tan simple y cómo Bitcoin los resuelve.
Firmas electrónicas: claves públicas y privadas
La primera pregunta es ¿cómo garantizar que los registros de transacciones sean precisos?
Debido a que el libro de contabilidad electrónico es público, cualquiera puede agregarle registros en secreto. ¿Qué pasa si Xiao Ming agrega un registro inexistente al libro mayor público sin el permiso de Xiao Gang, diciendo "Xiao Gang quiere transferir 10 yuanes a Xiao Ming"?
La idea más simple es que cada transacción requiere la firma electrónica infalsificable de la persona para confirmar que autorizó la transacción. (Firma de clave privada, firma de verificación de clave pública)
¿Pero cómo conseguir una firma electrónica infalsificable? Se trata de los resultados de la investigación de la criptografía: claves públicas y claves privadas. La cuenta de cada persona tiene un par de cadenas, una llamada clave pública y la otra llamada clave privada. La clave pública es una dirección de cuenta pública que todos pueden ver, mientras que la clave privada es equivalente a la contraseña de la cuenta. Solo usted conoce esta cadena de números. Cada clave pública solo corresponde a una clave privada única. Para implementar la firma electrónica se necesitan dos funciones:
Función de firma y función de verificación.
Función de firma (registro de transacción, clave privada) = firma electrónica de la transacción
Función de verificación (registro de transacción, firma, clave pública) = Verdadero/Falso
dificultad de crack
Debido a que la función es irreversible, no hay otra manera de obtener una firma falsificada emparejando la clave pública con la clave privada excepto intentar la enumeración una por una, y una enumeración completa requeriría 2256 intentos. En otras palabras, si desea encontrar este número mediante enumeración, suponiendo que utilice 1000 billones de supercomputadoras chinas "Tianhe-1" con un rendimiento máximo de 1,206 petaflops por segundo, incluso si lleva 1000 billones de años, incluso una fracción de esto. La enumeración es mucho menor que esto. Esta enorme cantidad de cálculo garantiza fundamentalmente la infalsificación de las firmas electrónicas.
Libros de contabilidad electrónicos y criptomonedas
Para evitar esta situación, es necesario permitir que todos los participantes en este sistema depositen una cierta cantidad de fondos en la cuenta y la registren en el libro mayor antes de realizar transacciones, tal como se usa Alipay. Por ejemplo, "Xiao Ming depositó 100 yuanes en su cuenta". Cada vez que agrega un registro de transacción, debe determinar si hay tanto dinero en la cuenta de la otra parte. Si el dinero depositado no es suficiente, debe declararlo. la transacción no es válida.
Hasta ahora, las anteriores son las funciones más básicas de un sistema de pago.
Libro mayor distribuido y red de transmisión
Las firmas electrónicas y los libros de contabilidad electrónicos han resuelto con éxito el problema de cómo permitir que los mecanismos realicen endosos de crédito y transacciones digitales. Sin embargo, para hacer realidad el concepto de "creación de usuarios, propiedad de usuarios y control de usuarios" en la era Web3.0. Necesitamos hacer que el libro mayor se distribuya y se almacene en cada usuario de la red.
Y debido a que "la suma de la información histórica de las transacciones es moneda", el libro de contabilidad en manos de todos también debería ser el mismo. En este caso, se necesita una red de transmisión.
Por ejemplo, si Xiao Ming quiere darle 100 yuanes a Xiao Gang, Xiao Ming debe "gritar" a lo largo del cable de red y enviar la noticia a Xiao Hong, Xiao Gang y Xiao Li, y pedirles que agreguen esta información a sus libros de cuentas. para garantizar que todos los libros de contabilidad del Pueblo se mantengan coherentes. Por supuesto, esto es sólo una metáfora, y este proceso en realidad lo completa el propio sistema de criptomonedas.
Mecanismo de consenso y blockchain
mecanismo de consenso
Cuando utilizamos firmas electrónicas y libros de contabilidad distribuidos, utilizamos un sistema de mecanismos para resolver el problema del respaldo crediticio. Sin embargo, con un sistema así, ¿podemos realmente alcanzar un consenso completo a nivel de transacción?
Imagine un escenario en el que Xiao Ming quiere darle a Xiao Gang 100 yuanes. Xiao Ming "grita" a lo largo del cable de red y transmite el mensaje a todos. Pero en ese momento, la red de Xiaohong falló y perdió el registro del mensaje. El libro de cuentas de Xiaogang tiene esta información, por lo que cree que puede usar estos "100 yuanes" para transacciones. Pero cuando se acercó a Xiaohong, no había tal registro en el libro de cuentas de Xiaohong, por lo que, naturalmente, no reconoció el valor de los "100 yuanes" y no pudo llegar a un "consenso" sobre la transacción.
Por lo tanto, para lograr un "consenso" a nivel de transacción, es necesario establecer un mecanismo para garantizar que todos reciban los mismos registros de mensajes en el mismo orden. Esto se denomina "mecanismo de consenso". El mecanismo de consenso diseñado por Bitcoin al comienzo de su establecimiento se llama prueba de trabajo. Además, existen prueba de participación, prueba de participación delegada (DPoS), tolerancia práctica a fallas bizantinas (PBFT) y prueba de participación (PoP). y otras formas de mecanismos de consenso. La siguiente es una descripción de la imagen bizantina:
Prueba de trabajo (PoW)
La idea central de la prueba de trabajo es que si necesita obtener un "consenso" reconocido por todos, debe trabajar lo suficiente. En el mundo de Internet, esta carga de trabajo es la informática. En este caso, la potencia informática y los recursos de tiempo consumidos por el cálculo son la base de la confianza de todos.
Entonces, ¿cómo demuestras tus cálculos? En este momento, debe tomar prestada una famosa función hash de herramienta de cifrado (también conocida como función hash). La naturaleza de este tipo de función es muy peculiar. Puede ingresar caracteres de cualquier longitud y generará una cadena de caracteres en un formato fijo. Curiosamente, aunque sólo hay una salida para cualquier tipo de entrada, la disposición de las salidas parece completamente aleatoria. Cualquier ligero ajuste en la entrada puede provocar grandes cambios en la salida.
Por ejemplo, si ingresa "Xiao Ming le dio a Xiao Gang 100 yuanes", el resultado es 256 ceros, pero si ingresa "Xiao Ming le dio a Xiao Gang 101 yuanes" o "Xiao Ming le dio a Xiao Gang 101 yuanes" (elimine la palabra " Le"), pueden cambiar docenas o cientos de dígitos aleatorios. Esto significa que esta función es similar a la función de firma mencionada anteriormente. Es casi imposible desde el punto de vista computacional inferir la entrada a través de la salida. La única forma de descifrarla es intentar enumerarla una por una. Tome la función hash "SHA256" como ejemplo. Para cualquier entrada, generará una secuencia binaria de 256 bits, lo que significa que debe probar 2 elevado a 256 para completar la enumeración. esto es. . Debido a esta propiedad única, las funciones hash también se utilizan ampliamente en el campo de la criptografía. Las contraseñas que las personas suelen completar al registrarse en sitios web y las contraseñas para depósitos bancarios pueden cifrarse mediante este tipo de función.
Con esta función, se puede establecer un mecanismo de "prueba de trabajo" y todos pueden plantear una pregunta a la persona que quiera comprobar su carga de trabajo. Por ejemplo, especifique una cadena binaria de 20 bits de 0 a 1 y pídale al interrogador que encuentre un valor de entrada tal que 20 bits del valor de salida de 256 bits sean exactamente iguales a la cadena especificada. Para aquellos que quieran demostrar su carga de trabajo, solo pueden intentarlo uno por uno, y solo después de enumerar unas 220 veces (aproximadamente 1 millón de veces) podrán calcular el resultado. El método de verificar los resultados es muy simple para quien formula la pregunta. No es necesario repetir el trabajo de enumeración. Solo necesita ingresar la respuesta en la función hash y ver si los primeros 20 dígitos son exactamente iguales a la pregunta. De esta manera se puede demostrar que el que responde ha realizado una carga de trabajo de aproximadamente "220".
Ejemplo
Un ejemplo clásico de Prueba de Trabajo es el proceso de minería de la red Bitcoin. Aquí hay una descripción simplificada paso a paso:
Se produce una transacción: cuando alguien realiza una transacción en la red Bitcoin, por ejemplo, Alice quiere transferir 1 Bitcoin a Bob.
Difusión de transacciones: esta información de transacción se cifra y se transmite a todos los nodos de toda la red Bitcoin.
Confirmación de la transacción: después de que los mineros de la red reciban esta información de la transacción, la empaquetarán en un nuevo bloque junto con otras transacciones que esperan confirmación.
Carga de trabajo computacional: cada minero comienza tratando de encontrar un nonce digital específico combinando este nonce con otra información para el nuevo bloque (incluido el hash del bloque anterior, la nueva lista de transacciones, etc.) y pasándolo a través de SHA-256 Hash. se realiza la función.
Cumplir con el objetivo de dificultad: la red Bitcoin ajustará dinámicamente la dificultad de la minería, de modo que, en promedio, los mineros deben pasar por una cierta cantidad de operaciones hash (generalmente millones o miles de millones) para encontrar un nonce que cumpla con las condiciones. Esta condición generalmente requiere que los primeros dígitos del resultado hash sean cero.
Descubrir el nonce: cuando un minero encuentra un nonce que satisface las condiciones a través de una gran cantidad de intentos de cálculo, ha completado la prueba de trabajo.
Nueva generación de bloques: los mineros transmiten nuevos bloques que contienen el nonce correcto a toda la red.
Verificación y confirmación: después de recibir el nuevo bloque, otros nodos verificarán de forma independiente si todas las transacciones y el nonce realmente cumplen con los requisitos de la prueba de carga de trabajo. Si se pasa la verificación, aceptan el nuevo bloque y lo agregan a su propia copia de la cadena de bloques.
Recompensas y tarifas: los mineros que generen con éxito un nuevo bloque recibirán una cierta cantidad de Bitcoins como recompensa (actualmente 6,25 BTC) y también podrán cobrar tarifas de manejo por todas las transacciones en el bloque.
A través de este proceso, la prueba de trabajo garantiza que solo los mineros que gastan recursos informáticos reales puedan crear nuevos bloques y, dado que la manipulación de bloques históricos requiere volver a completar toda la prueba de trabajo anterior, esto hace que la red Bitcoin sea altamente segura. Sin embargo, esto también resulta en un consumo de energía significativo, ya que los mineros necesitan constantemente ejecutar computadoras de alto rendimiento para competir y resolver estos complejos problemas matemáticos.
2024-2025 está destinado a ser un año extraordinario para blockchain
💸Si está interesado en la tecnología comercial y desea tener su propio sistema comercial como yo, puede operar con facilidad, ya sea a largo plazo o a corto plazo. Ven a mi comunidad a comunicarnos y tener más Bitcoins juntos💸
💕 Recuerda seguirme💕 ¡Tu atención me da más motivación para compartir información útil con todos! Compartiré la contraseña de riqueza en cualquier momento💸Recuerde verificarla💰#热门话题 >#Web3Wallet >#Web3Pay >$BTC