* * *Mecanismo de conocimiento de blockchain
¿Qué es blockchain? En pocas palabras, blockchain es una base de datos descentralizada o se le puede llamar un libro mayor distribuido. Tradicionalmente, todas las bases de datos han estado centralizadas. Por ejemplo, las libretas bancarias se almacenan en el servidor central del banco. La desventaja de una base de datos centralizada es que la seguridad y exactitud de los datos dependen del operador de la base de datos (es decir, el banco), porque cualquiera que tenga acceso a la base de datos centralizada (como empleados del banco o piratas informáticos) puede destruirla. o modificar los datos que contiene.
La tecnología Blockchain permite almacenar bases de datos en miles de computadoras en todo el mundo y los libros de todos se sincronizan a través de una red de igual a igual. Una vez que cualquier usuario de la red agrega una transacción, la información de la transacción se notificará a otros usuarios a través de la red para su verificación y se registrará en su propio libro mayor. Blockchain recibe su nombre porque es una estructura de datos en la que los bloques que contienen información de transacciones están vinculados secuencialmente de atrás hacia adelante.
La pregunta de mucha gente sobre blockchain es: si cada usuario tiene un libro de contabilidad independiente, ¿significa que se puede agregar cualquier información de transacción a su libro de contabilidad? ¿Qué pasa con miles de libros de contabilidad? Resolver el problema de coherencia contable es el objetivo del mecanismo de reconocimiento blockchain * *. El mecanismo de conocimiento blockchain * * * está diseñado para garantizar que todos los nodos de un sistema distribuido tengan exactamente los mismos datos y puedan acordar una propuesta (como un registro de transacción). Sin embargo, debido a la introducción de múltiples nodos en el sistema distribuido, a medida que aumenta el número de nodos, ocurrirán varias situaciones muy complejas en el sistema, la falla o falla del nodo y la interferencia o incluso el bloqueo de la comunicación de red entre nodos se convierten en problemas comunes. El problema distribuido Varias condiciones de contorno y emergencias en el sistema también aumentan la dificultad de resolver problemas de consistencia distribuida.
Blockchain se puede dividir en tres tipos:
Cadena pública: cualquier persona en el mundo puede ingresar al sistema en cualquier momento para leer datos, enviar transacciones confirmables y competir por la contabilidad. Las cadenas públicas a menudo se consideran "completamente descentralizadas" porque ninguna persona u organización puede controlar o alterar la lectura y escritura de datos dentro de ellas. Las cadenas públicas generalmente alientan a los participantes a competir por la contabilidad a través de un mecanismo simbólico para garantizar la seguridad de los datos.
Cadena de consorcio: Cadena de consorcio se refiere a una cadena de bloques gestionada por varias instituciones. Cada institución ejecuta uno o más nodos, y los datos que contienen solo permiten que diferentes instituciones dentro del sistema lean, escriban y envíen transacciones, * * * para registrar datos de transacciones juntas. Este tipo de blockchain se considera "parcialmente descentralizada".
Cadena privada: se refiere a una cadena de bloques donde los permisos de escritura están controlados por organizaciones e instituciones. La elegibilidad para los nodos participantes será estrictamente limitada. Dado que los nodos participantes son limitados y controlables, las cadenas privadas a menudo pueden tener velocidades de transacción extremadamente rápidas, mejor protección de la privacidad, menores costos de transacción, son menos susceptibles a ataques maliciosos y pueden cumplir con los requisitos necesarios de la industria financiera, como la autenticación de identidad. En comparación con las bases de datos centralizadas, las cadenas privadas evitan que los nodos individuales de una organización oculten o alteren intencionalmente los datos. Incluso si se produce un error, la fuente se puede encontrar rápidamente, por lo que muchas grandes instituciones financieras prefieren actualmente utilizar tecnología de cadena privada.
2. Clasificación de blockchain * * * mecanismos de reconocimiento
La dificultad de resolver el problema de la consistencia distribuida ha dado lugar a varios * * * mecanismos cognitivos, cada uno de los cuales tiene sus propias características. propias fortalezas y debilidades y es aplicable a diferentes entornos y problemas. Los * * * mecanismos de conocimiento generados por el sentido común incluyen:
L PoW (Prueba de Trabajo) Mecanismo de Prueba de Trabajo
L PoS (Prueba de Equidad) Equidad/Mecanismo de Prueba de Equidad
L DPoS (Prueba de participación delegada) Mecanismo de prueba de autorización compartida
Lpbft (Tolerancia práctica a fallas bizantinas) Algoritmo práctico de tolerancia a fallas bizantinas
Ldbft (Falla bizantina delegada) Tolerancia) Algoritmo delegado de tolerancia a fallos bizantinos
L SCP (Protocolo de consenso estelar) Protocolo de conocimiento estelar.
Lrpca (algoritmo de consenso del protocolo de ondulación) ripple * * * algoritmo de identificación
l grupo de autenticación grupo * * * mecanismo de conocimiento
(A) PoW (prueba de trabajo ) mecanismo de prueba de trabajo
1. Introducción básica
En este mecanismo, cada nodo de la red utiliza la función hash SHA256 para calcular el hash del encabezado del bloque cambiante. y. * * *El conocimiento requiere que el valor calculado sea igual o menor que el valor dado. En una red distribuida, todos los participantes deben calcular continuamente valores hash utilizando diferentes números aleatorios hasta alcanzar el objetivo. Cuando un nodo calcula un valor exacto, todos los demás nodos deben confirmar que el valor es correcto. Posteriormente, se verificarán las transacciones en el nuevo bloque para evitar fraudes.
En Bitcoin, los nodos que calculan los valores hash se denominan "mineros", y el proceso PoW se llama "minería". La minería es un proceso que requiere mucho tiempo, por lo que también se han propuesto los mecanismos de incentivo correspondientes (como otorgar a los mineros una pequeña cantidad de Bitcoin). La ventaja de PoW es que está completamente descentralizado. Las desventajas son el desperdicio de recursos causado por el consumo de mucha potencia informática, el largo ciclo para alcanzar el * * conocimiento y la baja eficiencia del * * * conocimiento, que no es adecuado. para uso comercial.
2. Ejemplos de aplicación de criptomonedas
Bitcoin y Litecoin. Las primeras tres etapas de Ethereum (Borderland, Homeland y Metropolis) utilizan el mecanismo PoW, y la cuarta etapa (Tranquilidad) utilizará el mecanismo de Prueba de participación. PoW es adecuado para cadenas públicas.
Aunque el mecanismo PoW ha demostrado con éxito su estabilidad a largo plazo y su relativa equidad, bajo el marco existente, adoptar la forma "minera" de PoW consumirá una gran cantidad de energía. La energía que consume es solo para seguir realizando operaciones SHA256 para garantizar una carga de trabajo justa y no tiene otro significado. La eficiencia de transacción actual que BTC puede lograr es de aproximadamente 5TPS (5 transacciones por segundo). Actualmente, Ethereum está limitado por el límite superior del consumo total de gas de un solo bloque, y la frecuencia de transacciones que puede alcanzar es de alrededor de 25 TPS, lo que está lejos de la eficiencia de procesamiento de VISA y MASTERCARD, que promedian 1.000 transacciones por segundo y alcanza un máximo de 10.000 transacciones por segundo.
3. Modo de comprensión del boceto
(ps: entre ellos, el proceso de calcular los valores hash de A, B, C y D es "minería". En orden para recompensar el costo de tiempo, el mecanismo utilizará una cierta cantidad de Bitcoin como incentivo)
(PD: en el modo POS, sus ingresos "mineros" son directamente proporcionales a la antigüedad de su moneda (cantidad de monedas * número de días), y es proporcional a la antigüedad de la computadora. El rendimiento computacional no tiene nada que ver con eso. Podemos pensar que la acumulación de cualquier evento de probabilidad es una prueba de la carga de trabajo, como la extracción de oro. El mineral es p en masa, cuando obtienes una cierta cantidad de oro, podemos pensar que debes haber extraído 1. /p mineral y cuanto más oro obtengas, más confiable será esta prueba)
<. p>(B) PoS (Prueba de participación) Equidad/Mecanismo de prueba de equidad1. Introducción básica
PoS requiere que las personas demuestren la propiedad del dinero, creyendo que las personas tienen más. Es menos probable que el dinero ataque la red. La selección basada en el saldo de la cuenta es muy injusta, ya que la persona más rica seguramente dominará la red, por lo que se han propuesto muchas soluciones.
En el mecanismo de certificación de acciones, cada vez que se crea un bloque, los mineros deben crear una transacción llamada "derechos de monedas". Esta transacción emitirá algunas monedas a los mineros por adelantado de acuerdo con una cierta proporción. Luego, según la proporción y el tiempo (edad de la moneda) de los tokens que posee cada nodo, el mecanismo de prueba de participación reduce la dificultad de extracción del nodo proporcionalmente según el algoritmo, acelerando así la búsqueda de números aleatorios por parte del nodo y acortando el tiempo. requerido para lograr * * * reconocimiento.
En comparación con PoW, PoS ahorra más energía y es más eficiente. Pero debido a que el costo de la minería es cercano a cero, es posible que se la ataque. Además, PoS esencialmente todavía requiere nodos en la red para realizar operaciones mineras, por lo que es difícil aplicarlo al campo comercial.
2. Ejemplos de aplicación de moneda digital.
Las monedas digitales más maduras bajo el mecanismo PoS son Peercoin y Future Coin (NXT).
En comparación con PoW, el mecanismo PoS ahorra energía e introduce el concepto de "día de la moneda" para participar en operaciones aleatorias. El mecanismo PoS permite que más tenedores de divisas participen en el trabajo contable sin comprar equipos adicionales (máquinas de minería, tarjetas gráficas, etc.). ). La potencia de cálculo de cada token unitario está relacionada positivamente con su tiempo de retención, es decir, cuantos más tokens tenga un poseedor y mayor sea el tiempo de retención, mayor será la probabilidad de que pueda cerrar sesión en el siguiente bloque. Una vez que firme el siguiente bloque, se borrará la cantidad de días que el titular ha tenido la moneda y comenzará nuevamente un nuevo ciclo.
PoS es adecuado para cadenas públicas.
3. Método de generación de firmantes grupales
Bajo el mecanismo PoS, dado que los firmantes de bloques se generan aleatoriamente, algunos titulares de divisas conservarán grandes cantidades de tokens durante mucho tiempo. para obtener una mayor probabilidad de generar bloques, limpiando así sus "días de monedas" tanto como sea posible. Por lo tanto, la circulación de tokens en toda la red se reducirá, lo que no favorece la circulación de tokens dentro de la cadena, y será más probable que los precios fluctúen. Debido a que puede haber algunos jugadores grandes que posean la mayoría de los tokens en toda la red, a medida que aumenta el tiempo de ejecución, toda la red puede volverse cada vez más concentrada. En comparación con PoW, el costo de hacer el mal bajo el mecanismo PoS es muy bajo, por lo que se necesitan más mecanismos para garantizar el conocimiento de bifurcaciones o ataques de doble pago. En condiciones estables, se pueden generar alrededor de 12 transacciones por segundo, pero debido a la latencia de la red y * problemas de reconocimiento, se necesitan unos 60 segundos para transmitir completamente el * * bloque. A largo plazo, la velocidad de generación de bloques (es decir, liquidación de "días de moneda") es mucho menor que la velocidad de transmisión y transmisión de la red. Por lo tanto, es necesario "limitar la velocidad" de los bloques generados bajo el mecanismo PoS para garantizar la velocidad. funcionamiento estable de la red principal.
4. Modo de comprensión del boceto
(PD: cuantas más "acciones" tenga una persona, más fácil será obtener derechos contables. Esto significa que la cantidad de dinero que obtiene depende de su interés en la minería La contribución realizada Cuanto mejor sea el rendimiento de la computadora, más minas se le entregarán)
(En un sistema POS puro, como NXT, no hay proceso de minería, la asignación de capital inicial. es fijo, y luego solo hay flujo de capital entre los comerciantes, que es muy similar a las acciones reales)
(C) Mecanismo de prueba de autorización de acciones DPoS (Prueba delegada de capital)
1. Introducción básica
p>Debido a las desventajas de PoS, surgió DPoS (Prueba de participación delegada) iniciada por Bit Shares. Un elemento central del mecanismo de organización de las personas con discapacidad son las elecciones. Los poseedores de tokens nativos de cada sistema pueden participar en las elecciones de blockchain, y el saldo de los tokens que poseen es el peso de la votación. A través de la votación, los accionistas pueden elegir miembros de la junta directiva y expresar sus actitudes sobre cuestiones relacionadas con la dirección de desarrollo de la plataforma, que forman la base de la autonomía de la comunidad. Además de votar en las elecciones, los accionistas también pueden votar en su nombre delegando sus votos electorales a otras cuentas en las que confían.
Específicamente, DPoS fue inventado por el equipo del proyecto Bitshares. Los propietarios de participaciones tienen derecho a elegir a sus representantes para generar y verificar bloques. DPoS es similar al sistema moderno de junta directiva corporativa. En el sistema BitShares, los poseedores de tokens se denominan accionistas, quienes eligen a 101 representantes, quienes luego son responsables de generar y validar los bloques. Si un poseedor de una moneda desea ser llamado representante, debe registrarse en la cadena de bloques con su clave pública para obtener un identificador único de 32 bits de longitud. Los accionistas pueden votar sobre el logotipo mediante una transacción, y los primeros 101 votos son elegidos como representantes.
Los delegados se turnan para generar bloques y las ganancias (tarifas de transacción) se dividen en partes iguales. La ventaja de DPoS es que reduce en gran medida la cantidad de nodos que participan en la verificación de bloques y la contabilidad, lo que acorta el tiempo requerido para la verificación y mejora en gran medida la eficiencia de las transacciones. Desde cierta perspectiva, DPoS puede entenderse como un sistema policéntrico, que tiene ventajas tanto descentralizadas como centralizadas. Ventajas: la cantidad de nodos que participan en la verificación y la contabilidad se reduce considerablemente y se puede lograr la autenticación de segundo nivel. Desventajas: el entusiasmo por votar no es alto y la mayoría de los poseedores de tokens no participaron en la votación. Además, todo el mecanismo de conocimiento todavía depende de tokens y muchas aplicaciones comerciales no requieren tokens;
El mecanismo DPoS requiere que antes de generar el siguiente bloque se verifique que el bloque anterior ha sido firmado por un nodo de confianza.
En comparación con el "tesoro nacional" de PoS, DPoS utiliza un sistema similar al "Congreso" para seleccionar directamente nodos confiables. Estos nodos confiables (es decir, testigos) ejercen poder en nombre de otros poseedores de dinero. Los nodos testigos deben estar en línea durante un tiempo. durante mucho tiempo, resolviendo así el problema. Esto elimina una serie de problemas, como retrasos por congestión que pueden ser causados por los firmantes de PoS que no están en línea con frecuencia. El mecanismo DPoS generalmente puede alcanzar una velocidad de transacción de 10,000 transacciones por segundo y puede alcanzar el nivel de 100,000 segundos con baja latencia de red, lo cual es muy adecuado para aplicaciones de nivel empresarial. Dado que el intercambio de datos de Gongxinbao tiene altos requisitos en cuanto a la frecuencia de las transacciones de datos y la estabilidad a largo plazo, DPoS es una muy buena opción.
2. Instituciones y sistemas bajo el mecanismo de autenticación de autorización compartida
La junta directiva es la autoridad de la red blockchain. Los candidatos a la junta directiva son elegidos por los accionistas del sistema (es decir, los tenedores de dinero), y los miembros de la junta tienen derecho a presentar propuestas y votar sobre ellas.
Una de las responsabilidades importantes de la Junta Directiva es ajustar los parámetros variables del sistema según sea necesario, incluyendo:
l Relacionado con los costos: tarifas para varios tipos de transacciones.
lRelacionados con la autorización: Parámetros relacionados con el cobro y subsidio para plataformas de terceros que acceden a la red.
l Relacionado con la producción de bloques: intervalo de producción de bloques, recompensa de bloques.
lRevisión de identidad relacionada: revise y verifique información anormal de la cuenta institucional.
Asimismo, las cuestiones relativas a los intereses del Consejo de Administración no serán fijadas por el Consejo de Administración.
En el sistema Finchain, los testigos son responsables de recopilar diversas transacciones transmitidas durante el funcionamiento de la red y empaquetarlas en bloques. Su trabajo es similar al de los mineros de la red Bitcoin. En la red Bitcoin con PoW (Proof of Work), qué nodo minero genera el siguiente bloque se determina mediante un método de lotería, donde la probabilidad de ganar depende del cálculo del hash. En una red de cadena financiera con un mecanismo DPoS, el número de testigos se determina mediante votación de la junta directiva, y los candidatos a testigos se determinan mediante votación de los titulares. El testigo activo seleccionado empaqueta transacciones secuencialmente y genera bloques. Después de cada ronda de producción de cubos, el testigo barajará las cartas al azar y decidirá un nuevo orden, y luego pasará a la siguiente ronda de producción de cubos.
3. Ejemplos de aplicación de DPOS
Bitshares utiliza dpo. DPoS es principalmente adecuado para cadenas de alianzas.
4. Modo de comprensión de bocetos
(D) PBFT (Tolerancia práctica a fallas bizantinas) Algoritmo práctico de tolerancia a fallas bizantinas.
1. Introducción básica
PBFT es un algoritmo basado en pruebas matemáticas estrictas, que requiere tres etapas de interacción de información y conocimiento local para lograr un resultado final consistente. Las tres etapas de preparación: preparar, preparar y presentar. El algoritmo PBFT demuestra que siempre que haya más de 2/3 de nodos normales en el sistema, se puede garantizar un resultado final de conocimiento consistente * *. En otras palabras, en un sistema que utiliza el algoritmo PBFT, la cantidad de nodos fallidos (incluidos los nodos que engañan deliberadamente, dañan intencionalmente el sistema, agotan el tiempo de espera, envían mensajes repetidamente, falsifican firmas, etc., también conocidos como nodos "bizantinos"). puede ser tolerado como máximo.
2. Ejemplos de aplicación de PBFT
La famosa cadena de alianza Hyperledger Fabric v0.6 adopta PBFT y la v1.0 introduce una versión mejorada de SBFT PBFT. PBFT se aplica principalmente a cadenas privadas y cadenas de alianzas.
3. Modo de comprensión de boceto
La figura anterior muestra el modo de comunicación de protocolo simplificado de PBFT, donde C es el cliente, 0–3 son nodos de servicio, 0 es el nodo maestro. y 3 es nodo defectuoso.
El proceso básico de todo el protocolo es el siguiente:
(1) El cliente envía una solicitud para activar la operación del servicio del nodo maestro
(2) Cuando el nodo maestro; recibe la solicitud, inicia el protocolo de tres fases. Transmite la solicitud a todos los nodos esclavos;
(a) En la fase de asignación del número de secuencia, el nodo maestro asigna un número de secuencia n a la solicitud, transmite el mensaje de asignación de número de secuencia y el mensaje de solicitud del cliente m, y asigna un número de secuencia a cada nodo esclavo Construir un mensaje preparado previamente;
(b) En la fase de interacción, recibir el mensaje preparado previamente del nodo y transmitirlo a otros nodos de servicio;
(c) En la fase de confirmación del número de secuencia, después de verificar la solicitud y el orden en la vista, cada nodo transmite un mensaje de confirmación y ejecuta la solicitud recibida del cliente. , y responde al cliente.
(3) El cliente espera respuestas de diferentes nodos. Si m 1 respuestas son iguales, la respuesta es el resultado de la operación.
(5) DBFT (bizantino delegado); Fault Tolerance) autorización Algoritmo bizantino tolerante a fallas.
1. Introducción básica
DBFT se basa en PBFT. En este mecanismo, hay dos tipos de participantes, uno es el "supernodo" que se especializa en contabilidad y el otro son los usuarios comunes del sistema que no participan en la contabilidad. Los usuarios comunes votan por los supernodos en función de su índice de capital. Cuando es necesario transferir un * * * conocimiento (contabilidad), se selecciona aleatoriamente un portavoz de estos supernodos para formular un plan, y luego otros supernodos hacen declaraciones de acuerdo con el algoritmo bizantino tolerante a fallas (ver arriba), es decir , el principio de que la minoría obedece a la mayoría. Si más de dos tercios de los supernodos están de acuerdo con el plan del hablante, entonces se logra * * *. Esta propuesta se convierte en el bloque final publicado. El bloque es irreversible y todas las transacciones en él están confirmadas. Si no se llega a una propuesta unánime dentro de un cierto período de tiempo, o se descubren transacciones ilegales, otros supernodos pueden reiniciar propuestas y repetir el proceso de votación hasta que se alcance un consenso.
2. Ejemplos de aplicaciones de DBFT
NEO, una plataforma nacional de criptomonedas y blockchain, es el desarrollador y adoptante del algoritmo DBFT.
3. Modo de comprensión de bocetos
Supongamos que solo hay cuatro supernodos seleccionados por usuarios comunes en el sistema. Cuando es necesario transferir un conocimiento * * *, el sistema lo hará de forma aleatoria. Seleccionar entre los representantes. Designar un portavoz para elaborar un plan. El orador entregará el plan propuesto a cada representante. Cada representante primero juzgará si los resultados del cálculo del orador son consistentes con sus propios registros y luego discutirá con otros representantes para verificar si los resultados del cálculo son correctos. Si dos tercios de los delegados están de acuerdo en que los cálculos del plan del orador son correctos, se adopta el plan.
Si menos de dos tercios de los delegados llegan a un acuerdo sobre ***, se seleccionará un nuevo orador al azar y se repetirá el proceso. Este sistema está diseñado para proteger el sistema de un líder inoperable.
La figura anterior supone que todos los nodos son honestos, alcanzando 100***, se verificará el esquema A (bloque).
Dado que el orador es un representante elegido al azar, puede ser deshonesto o estar roto. La figura anterior supone que el hablante envía un mensaje malicioso a dos de los tres representantes (escenario B) y un mensaje correcto a un representante (escenario A).
En este caso, la información maliciosa (Opción B) no puede pasar. Los resultados de los cálculos de los representantes del centro y de la derecha no coincidieron con los enviados por el portavoz, y no pudieron verificar el plan elaborado por el portavoz, lo que provocó que las dos personas se negaran a adoptar el plan. Debido a que el representante de la izquierda recibió la información correcta, que era consistente con sus propios cálculos, pudo confirmar el esquema y luego completó con éxito 1 verificación. Sin embargo, el plan aún no logró aprobarse ya que menos de dos tercios de los delegados alcanzaron un consenso. Luego se selecciona aleatoriamente un nuevo hablante y el proceso de *conocimiento* comienza de nuevo.
La figura anterior supone que el hablante es honesto, pero 1 representa un pervertido; el representante de la derecha ha enviado información incorrecta a otros representantes (B).
En este caso, la información correcta (a) formulada por el hablante aún se puede verificar, porque tanto los representantes honestos de la izquierda como del centro pueden verificar el plan formulado por el hablante honesto, logrando * * * conocimiento Dos tercios.
El representante también puede determinar si el hablante miente sobre el nodo correcto o es deshonesto sobre el nodo correcto.
(6) SCP (Stellar Consensus Protocol) Protocolo de Identificación Estelar.
1. Introducción básica
SCP es un * * * algoritmo de identificación desarrollado y utilizado por Stellar (un protocolo de pago global descentralizado basado en Internet), basado en el Acuerdo Bizantino Federado. Los protocolos bizantinos tradicionales no federados (como PBFT y DBFT anteriores) son sistemas centralizados, aunque el conocimiento y la tolerancia a fallas bizantinas se pueden garantizar mediante métodos distribuidos (se puede tolerar hasta 1/3 del número total de nodos del sistema). El número y la identidad de los nodos de la red deben conocerse y verificarse de antemano. La diferencia entre el Acuerdo Bizantino Federado y el Acuerdo Bizantino Federado es que puede descentralizarse y lograr tolerancia a fallas bizantinas.
[…]
(7) RPCA (Algoritmo de consenso de protocolo Ripple) Ripple * * *Algoritmo de identificación
Introducción básica
< p. >RPCA es un algoritmo desarrollado y utilizado por Ripple (un protocolo de pago de código abierto basado en Internet que permite el cambio, el pago y la compensación de divisas descentralizados). En la red de Ripple, las transacciones las inician los clientes (aplicaciones) y se transmiten a toda la red a través de nodos de seguimiento o nodos de validación. La función principal del nodo de seguimiento es publicar información de transacciones y responder a las solicitudes del libro de cuentas de los clientes. El nodo de verificación no solo contiene todas las funciones del nodo de seguimiento, sino que también puede agregar nuevos datos de instancia del libro de cuentas al libro de cuentas a través del protocolo de conocimiento * * *.El * * * logro de conocimiento de Ripple ocurre entre nodos de verificación, y cada nodo de verificación está preconfigurado con una lista de nodos confiables, llamada UNL (Lista de nodos únicos). Los nodos de la lista pueden votar sobre transacciones. * * *El proceso de conocimiento es el siguiente:
(1) Cada nodo de verificación recibirá continuamente las transacciones enviadas por la red. Después de la verificación con los datos del libro mayor local, las transacciones ilegales se descartarán directamente, mientras que las transacciones legítimas se agregarán en un conjunto de candidatos. El conjunto de candidatos a transacciones también incluye transacciones no confirmadas que quedaron de procesos de conocimiento anteriores.
(2) Cada nodo de verificación envía su propio conjunto de candidatos a transacciones como recomendaciones a otros nodos de verificación.
(3) Después de recibir una propuesta de otros nodos, si la propuesta no es de un nodo en UNL, el nodo de verificación ignora la propuesta; si es de un nodo en UNL, entonces la propuesta La transacción; se comparará con el conjunto de candidatos de transacciones locales y, si hay una transacción idéntica, la transacción recibirá un voto. Dentro de un cierto período de tiempo, cuando una transacción recibe más de 50 votos, la transacción avanza a la siguiente ronda. Las transacciones que no excedan 50 serán confirmadas en el próximo * * proceso de conocimiento.
(4) El nodo de verificación envía transacciones con más de 50 votos como propuestas a otros nodos y al mismo tiempo aumenta el umbral de los votos requeridos a 60, repitiendo los pasos (3) y (4). hasta que se alcance el umbral 80.
(5) El nodo de verificación escribe formalmente la transacción confirmada por el nodo 80UNL en los datos del libro mayor local, lo que se denomina la última liquidación del libro mayor, es decir, el último (último) estado de el libro mayor.
En el algoritmo de autenticación de Ripple, las identidades de los nodos de votación se conocen de antemano, por lo que la eficiencia del algoritmo es más eficiente que los algoritmos de autenticación anónimos como PoW, y el tiempo de confirmación de la transacción solo toma unos segundos. . Esto también determina que el algoritmo de conocimiento * * * solo es aplicable a cadenas de alianza o cadenas privadas. La capacidad de tolerancia a fallas bizantinas (BFT) del algoritmo de conocimiento de Ripple*** es (n-1)/5, lo que significa que 20 nodos en toda la red pueden tolerar fallas bizantinas sin afectar el conocimiento correcto.
2. Modo de comprensión del boceto
* * *Diagrama de interacción del nodo del proceso:
* * *Proceso del algoritmo:
(8) Verificación del grupo de talentos Grupo de talentos* * *Mecanismo de conocimiento
El mecanismo de conocimiento del grupo de verificación del grupo es un mecanismo desarrollado sobre la base de algoritmos de consenso distribuidos tradicionales (Paxos y Raft).
El algoritmo Paxos es un algoritmo de coherencia altamente tolerante a fallos basado en el paso de mensajes propuesto en 1990. Paxos ha sido el estándar para los protocolos distribuidos en el pasado, pero Paxos es difícil de entender y aún más de implementar. Raft es un algoritmo de consenso lanzado en 2013. Es más simple que Paxos y puede implementar los problemas resueltos por Paxos. El proceso mediante el cual Parks y Rafter se conocieron fue como una elección. El candidato necesita convencer a una mayoría de votantes (servidores) para que voten por él y, una vez seleccionado, seguir su ejemplo. La diferencia entre Paxos y Raft radica en el proceso específico de elección. El mecanismo de conocimiento del grupo de verificación del grupo se basa en estos dos algoritmos de consenso distribuidos maduros, complementados con un mecanismo de verificación de datos.