Describa brevemente el flujo de trabajo de Hyperledger Fabric

También es una coincidencia decir que el verano pasado aprendí sobre Hyperledger Fabric solo en el dormitorio. Más tarde, por varias razones, dejé esta dirección y comencé a hacer algunos trabajos de CV con el maestro. Ahora he comenzado a mirar el bloque nuevamente. Cosas relacionadas con la cadena.
Cuando comencé a aprender blockchain el año pasado, muchas cosas aún no se dominaban, como PKI y criptografía, y la red de computadoras también estaba confundida en ese momento, por lo que desperdicié mucha energía en ese momento. Solo entiendo. En ese momento, también escribí alrededor de una docena de registros de blogs, pero no he mirado atrás por mucho tiempo, y no sé cuántos errores hay.
En mi tercer año, tomé cursos como PKI y criptografía nuevamente, sentí que tal vez no había ingresado a este campo en ese momento, así que tomé muchos desvíos. En realidad no es malo pensar en ello. He aprendido mucho de la prueba y error.
Hace unos días, el instructor entregó varios documentos para su visualización, uno de los cuales era "Desenfocar las líneas entre Blockchains y los sistemas de bases de datos: el caso de Hyperledger Fabric", que de repente fue brillante después de leer ayer, especialmente el flujo de trabajo de Hyperledger Fabric en el documento. Sección. Por supuesto, la parte central también es muy emocionante y fácil de leer. La parte del algoritmo ha dado ejemplos detallados para explicar, y no sentí ninguna dificultad para terminarlo rápidamente. A partir de esto, pienso en el SBFT que vi hace unos días, que es realmente ilegible = _ = ||

Arquitectura

FabricEs uno permissioned blockchain system, es decir, cada una de las redes de blockchain peerpuede conocer peerla existencia de otros en el tiempo. Más peerpuede estar compuesto organization, en el organizationinterior, peersentre la confianza entre sí, cada peer都mantener una ledgercopia ledgercontiene válido y no válido transaction, además de peertambién mantener el estado actual en la forma de un estado de la base de datos. Además peerde esto, hay otro papel importante que se ordering serviceutiliza para transactionclasificar.

Flujo de trabajo

FabricEl proceso básico se compone de cuatro etapas, a saber 模拟(simulate), 排序(order), 验证(validata), 提交(commit), como se muestra a continuación:
FLUJO DE TRABAJO

Simulación

Como su nombre lo indica, esta etapa es solo una simulación de negociación, y realmente no actualiza l edger.

clientInicie una solicitud de transacción, la solicitud se envía a endorsers( endorsement peerestas peerse endorsement policyseleccionan de acuerdo con ), estas transacciones se llevan a cabo de endorsersacuerdo con la ledger状态simulación paralela local actual , aunque el estado del libro mayor no se modifica, pero habrá read setun write setregistro único del impacto de esta transacción. Después de que se complete la simulación, Firme endorserla read setsuma y write setdevuélvala juntos client.

Si el clientrecibido read sety write setes coherente con la (posible presencia de endosante malicioso o algoritmo incierto contratos inteligentes llevan a inconsistente), entonces clientse generará una solicitud de transacción real, contener read set, write sety la firma correspondiente, y envía la solicitud a ordering service.

Ordenar

ordering serviceViniendo de clientla transacción especie debe tenerse en cuenta que este no comprueba el contenido de la transacción, el orden predeterminado de llegada transacción (este simple tipo de operación diera lugar a una gran cantidad de conflictos, reducir el rendimiento, si se pulsa un orden particular La clasificación puede reducir en gran medida los conflictos de transacción y mejorar el rendimiento, que también es el trabajo más importante propuesto en este documento, y no lo explicaré aquí).

ordering serviceDespués de que la transacción se clasifica y empaqueta block, se envía a la red peers. No hay garantía de que todos la peerreciban al mismo tiempo block, pero se garantiza que blockel orden de recepción sea ​​consistente (utilizado gossip协议).

Verificar

Cuando se peerrecibe block, comienza la fase de verificación.

La fase de verificación incluye principalmente dos verificaciones:

  • Endorsement PolicyVerificar
    Verificar si la transacción está satisfecha endorsement policyy si contiene una firma válida, de lo contrario, la transacción puede ser manipulada cliento peerdescartada directamente.
  • conflicto transacción comprobando
    si existe un conflicto entre las operaciones de verificación, que es la cuestión de si la lectura de los datos sucios (leído en una transacción ledgerantes ledgerde ser cambiado antes de un acuerdo), si hay que descartar la transacción.

Si pasa ambos cheques, puede ingresar al commitescenario.

Enviar

peerSe blockagregará a la cadena, tenga en cuenta que todas las transacciones (válidas e inválidas) se agregan. Luego cambie el ledgerestado actual de acuerdo con la transacción válida .


De hecho, hay un ejemplo detallado en el apéndice del documento para ilustrar el flujo de trabajo de Hyperledger Fabric. Realmente es un documento de conciencia. Recomiendo que los estudiantes que no lo entiendan vayan al documento para ver el ejemplo de la transacción ~

74 artículos originales publicados · Me gusta 11 · Visitas 30,000+

Supongo que te gusta

Origin blog.csdn.net/yijiull/article/details/94966044
Recomendado
Clasificación