ื‘ื“ Hyperledger ืขื‘ื•ืจ Dummies

ืคืœื˜ืคื•ืจืžืช ื‘ืœื•ืงืฆ'ื™ื™ืŸ ืœืืจื’ื•ื ื™ื

ื‘ื“ Hyperledger ืขื‘ื•ืจ Dummies

ืฆื”ืจื™ื™ื ื˜ื•ื‘ื™ื, ืงื•ืจืื™ื ื™ืงืจื™ื, ืฉืžื™ ื ื™ืงื•ืœืื™ ื ืคื“ื•ื‘, ืื ื™ ืžื•ืžื—ื” ื˜ื›ื ื™ ื‘-IBM, ื‘ืžืืžืจ ื–ื” ื‘ืจืฆื•ื ื™ ืœื”ืฆื™ื’ ื‘ืคื ื™ื›ื ืืช ืคืœื˜ืคื•ืจืžืช ื”ื‘ืœื•ืงืฆ'ื™ื™ืŸ - Hyperledger Fabric. ื”ืคืœื˜ืคื•ืจืžื” ืžื™ื•ืขื“ืช ืœื‘ื ื™ื™ืช ื™ื™ืฉื•ืžื™ื ืขืกืงื™ื™ื ื‘ืจืžื” ืืจื’ื•ื ื™ืช. ืจืžืช ื”ืžืืžืจ ืžื™ื•ืขื“ืช ืœืงื•ืจืื™ื ืœื ืžื•ื›ื ื™ื ื‘ืขืœื™ ื™ื“ืข ื‘ืกื™ืกื™ ื‘ื˜ื›ื ื•ืœื•ื’ื™ื•ืช IT.

Hyperledger Fabric ื”ื•ื ืคืจื•ื™ืงื˜ ืงื•ื“ ืคืชื•ื—, ืื—ื“ ืžื”ืขื ืคื™ื ืฉืœ ืคืจื•ื™ืงื˜ ื”ืงื•ื“ ื”ืคืชื•ื— Hyperledger, ืงื•ื ืกื•ืจืฆื™ื•ื ืฉืœ ืงืจืŸ ืœื™ื ื•ืงืก. Hyperledger Fabric ื”ื•ืงืžื” ื‘ืžืงื•ืจ ืขืœ ื™ื“ื™ Digital Assets ื•-IBM. ื”ืžืืคื™ื™ืŸ ื”ืขื™ืงืจื™ ืฉืœ ืคืœื˜ืคื•ืจืžืช Hyperledger Fabric ื”ื•ื ื”ื”ืชืžืงื“ื•ืช ืฉืœื” ื‘ืฉื™ืžื•ืฉ ืืจื’ื•ื ื™. ืœื›ืŸ, ื”ืคืœื˜ืคื•ืจืžื” ืคื•ืชื—ื” ืชื•ืš ื”ืชื—ืฉื‘ื•ืช ื‘ืžื”ื™ืจื•ืช ื”ื’ื‘ื•ื”ื” ืฉืœ ื”ืขืกืงืื•ืช ื•ืขืœื•ืชืŸ ื”ื ืžื•ื›ื”, ื›ืžื• ื’ื ื‘ื–ื™ื”ื•ื™ ื›ืœ ื”ืžืฉืชืชืคื™ื. ื™ืชืจื•ื ื•ืช ืืœื• ืžื•ืฉื’ื™ื ื‘ืืžืฆืขื•ืช ื”ืคืจื“ืช ืฉื™ืจื•ืช ืื™ืžื•ืช ื”ืขืกืงืื•ืช ื•ื™ืฆื™ืจืช ื‘ืœื•ืงื™ื ื—ื“ืฉื™ื ืฉืœ ื”ืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ, ื›ืžื• ื’ื ืฉื™ืžื•ืฉ ื‘ืžืจื›ื– ื”ืกืžื›ื” ื•ื”ืจืฉืื” ืฉืœ ืžืฉืชืชืคื™ื.

ื”ืžืืžืจ ืฉืœื™ ื”ื•ื ื—ืœืง ืžืกื“ืจืช ืžืืžืจื™ื ื‘ื ื•ืฉื Hyperledger Fabric, ื‘ืžืกื’ืจืชื” ืื ื• ืžืชืืจื™ื ืคืจื•ื™ืงื˜ ืžืขืจื›ืชื™ ืœื”ืงืœื˜ืช ืกื˜ื•ื“ื ื˜ื™ื ื”ื ื›ื ืกื™ื ืœืื•ื ื™ื‘ืจืกื™ื˜ื”.

ืืจื›ื™ื˜ืงื˜ื•ืจื” ื›ืœืœื™ืช ืฉืœ Hyperledger Fabric

Hyperledger Fabric ื”ื™ื ืจืฉืช ื‘ืœื•ืงืฆ'ื™ื™ืŸ ืžื‘ื•ื–ืจืช ื”ืžื•ืจื›ื‘ืช ืžืžืจื›ื™ื‘ื™ื ืคื•ื ืงืฆื™ื•ื ืœื™ื™ื ืฉื•ื ื™ื ื”ืžื•ืชืงื ื™ื ื‘ืฆืžืชื™ ืจืฉืช. ืจื›ื™ื‘ื™ Fabric ืฉืœ Hyperledger ื”ื ืžื›ื•ืœื•ืช Docker ืฉื ื™ืชืŸ ืœื”ื•ืจื™ื“ ื‘ืื•ืคืŸ ื—ื•ืคืฉื™ ืž- DockerHub. ื ื™ืชืŸ ืœื”ืคืขื™ืœ ืืช Hyperledger Fabric ื’ื ื‘ืกื‘ื™ื‘ืช Kubernetes.

ืœื›ืชื™ื‘ืช ื—ื•ื–ื™ื ื—ื›ืžื™ื (chaincode ื‘ื”ืงืฉืจ ืฉืœ Hyperledger Fabric), ื”ืฉืชืžืฉื ื• ื‘-Golang (ืื ื›ื™ Hyperledger Fabric ืžืืคืฉืจ ืฉื™ืžื•ืฉ ื‘ืฉืคื•ืช ืื—ืจื•ืช). ื›ื“ื™ ืœืคืชื— ืืคืœื™ืงืฆื™ื” ืžื•ืชืืžืช ืื™ืฉื™ืช, ื‘ืžืงืจื” ืฉืœื ื•, ื”ืฉืชืžืฉื ื• ื‘-Node.js ืขื ื”-Hyperledger Fabric SDK ื”ืžืงื‘ื™ืœ.

ื”ืฆืžืชื™ื ืžื‘ืฆืขื™ื ืœื•ื’ื™ืงื” ืขืกืงื™ืช (ื—ื•ื–ื” ื—ื›ื) - ืงื•ื“ ืฉืจืฉืจืช, ืžืื—ืกื ื™ื ืืช ืžืฆื‘ ื”ืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ (ื ืชื•ื ื™ ื—ืฉื‘ื•ื ื•ืช ื—ืฉื‘ื•ื ื•ืช) ื•ืžื‘ืฆืขื™ื ืฉื™ืจื•ืชื™ ืžืขืจื›ืช ื ื•ืกืคื™ื ืฉืœ ื”ืคืœื˜ืคื•ืจืžื”. ืฆื•ืžืช ื”ื•ื ืจืง ื™ื—ื™ื“ื” ืœื•ื’ื™ืช; ืฆืžืชื™ื ืฉื•ื ื™ื ื™ื›ื•ืœื™ื ืœื”ืชืงื™ื™ื ื‘ืื•ืชื• ืฉืจืช ืคื™ื–ื™. ื—ืฉื•ื‘ ื”ืจื‘ื” ื™ื•ืชืจ ื”ื•ื ืื™ืš ื”ืฆืžืชื™ื ืžืงื•ื‘ืฆื™ื (ืชื—ื•ื ืžื”ื™ืžืŸ) ื•ืื™ื–ื” ืคื•ื ืงืฆื™ื•ืช ืฉืœ ืจืฉืช ื”ื‘ืœื•ืงืฆ'ื™ื™ืŸ ื”ื ืžืฉื•ื™ื›ื™ื.

ื”ืืจื›ื™ื˜ืงื˜ื•ืจื” ื”ื›ืœืœื™ืช ื ืจืื™ืช ื›ืš:

ื‘ื“ Hyperledger ืขื‘ื•ืจ Dummies

ืชืžื•ื ื” 1. ืืจื›ื™ื˜ืงื˜ื•ืจื” ื›ืœืœื™ืช ืฉืœ ื‘ื“ Hyperledger

ื™ื™ืฉื•ื ืžืฉืชืžืฉ (Submitting Client) ื”ื•ื ื™ื™ืฉื•ื ืฉืื™ืชื• ืžืฉืชืžืฉื™ื ืขื•ื‘ื“ื™ื ืขื ืจืฉืช ื”ื‘ืœื•ืงืฆ'ื™ื™ืŸ. ื›ื“ื™ ืœืขื‘ื•ื“, ืขืœื™ืš ืœื”ื™ื•ืช ืžื•ืจืฉื” ื•ื‘ืขืœ ื–ื›ื•ื™ื•ืช ืžืชืื™ืžื•ืช ืœืกื•ื’ื™ื ืฉื•ื ื™ื ืฉืœ ืคืขื•ืœื•ืช ื‘ืจืฉืช.

ืขืžื™ืชื™ื ืžื’ื™ืขื™ื ื‘ื›ืžื” ืชืคืงื™ื“ื™ื:

  • Endorsing Peer ื”ื•ื ืฆื•ืžืช ื”ืžื“ืžื” ื‘ื™ืฆื•ืข ืฉืœ ืขืกืงื” (ืžื‘ืฆืข ืืช ืงื•ื“ ื”ื—ื•ื–ื” ื”ื—ื›ื). ืœืื—ืจ ืื™ืžื•ืช ื•ื‘ื™ืฆื•ืข ื”ื—ื•ื–ื” ื”ื—ื›ื, ื”ืฆื•ืžืช ืžื—ื–ื™ืจ ืืช ืชื•ืฆืื•ืช ื”ื‘ื™ืฆื•ืข ืœืืคืœื™ืงืฆื™ื™ืช ื”ืœืงื•ื— ื™ื—ื“ ืขื ื—ืชื™ืžืชื•.
  • Ordering Service ื”ื•ื ืฉื™ืจื•ืช ืžื‘ื•ื–ืจ ื‘ืžืกืคืจ ืฆืžืชื™ื, ื”ืžืฉืžืฉ ืœื™ืฆื™ืจืช ื‘ืœื•ืงื™ื ื—ื“ืฉื™ื ืฉืœ ื”ืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ ื•ื™ืฆื™ืจืช ืชื•ืจ ืœื‘ื™ืฆื•ืข ืขืกืงืื•ืช. ืฉื™ืจื•ืช ื”ื”ื–ืžื ื” ืื™ื ื• ืžื•ืกื™ืฃ ื‘ืœื•ืงื™ื ื—ื“ืฉื™ื ืœืจื™ืฉื•ื (ืชื›ื•ื ื” ื–ื• ื”ื•ืขื‘ืจื” ืœ-Committing Peers ื›ื“ื™ ืœืฉืคืจ ืืช ื”ื‘ื™ืฆื•ืขื™ื).
  • Committing Peer ื”ื•ื ืฆื•ืžืช ื”ืžื›ื™ืœ ืจื™ืฉื•ื ืžื‘ื•ื–ืจ ื•ืžื•ืกื™ืฃ ื‘ืœื•ืงื™ื ื—ื“ืฉื™ื ืœืจื™ืฉื•ื (ืฉื ื•ืฆืจื• ืขืœ ื™ื“ื™ ืฉื™ืจื•ืช ื”ื”ื–ืžื ื•ืช). ื›ืœ ื”ืขืžื™ืชื™ื ื”ืžืชื—ื™ื™ื‘ื™ื ืžื›ื™ืœื™ื ืขื•ืชืง ืžืงื•ืžื™ ืฉืœ ืกืคืจ ื”ื—ืฉื‘ื•ื ื•ืช ื”ืžื•ืคืฅ. Committing Peer ื‘ื•ื“ืง ืืช ืชืงืคื•ืช ื›ืœ ื”ืขืกืงืื•ืช ื‘ืชื•ืš ื”ื‘ืœื•ืง ืœืคื ื™ ื”ื•ืกืคืช ื‘ืœื•ืง ื—ื“ืฉ ื‘ืื•ืคืŸ ืžืงื•ืžื™.

ืžื“ื™ื ื™ื•ืช ืื™ืฉื•ืจ ื”ื™ื ื”ืžื“ื™ื ื™ื•ืช ืœื‘ื“ื™ืงืช ืชืงืคื•ืช ืขืกืงื”. ืžื“ื™ื ื™ื•ืช ื–ื• ืžื’ื“ื™ืจื” ืืช ืงื‘ื•ืฆืช ื”ืฆืžืชื™ื ื”ื ื“ืจืฉืช ืขืœื™ื”ืŸ ื™ืฉ ืœื‘ืฆืข ืืช ื”ื—ื•ื–ื” ื”ื—ื›ื ืขืœ ืžื ืช ืฉื”ืขืกืงื” ืชื•ื›ืจ ื›ืชืงื™ื ื”.

ื”ืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ - ืœืจื’ืจ - ืžื•ืจื›ื‘ ืžืฉื ื™ ื—ืœืงื™ื: WolrldState (ื ืงืจื ื’ื State DataBase) ื•-BlockChain.

BlockChain ื”ื™ื ืฉืจืฉืจืช ื‘ืœื•ืงื™ื ื”ืžืื—ืกื ืช ืจืฉื•ืžื•ืช ืฉืœ ื›ืœ ื”ืฉื™ื ื•ื™ื™ื ืฉื”ืชืจื—ืฉื• ื‘ืื•ื‘ื™ื™ืงื˜ื™ ืจื™ืฉื•ื ืžื‘ื•ื–ืจื™ื.

WolrldState ื”ื•ื ืจื›ื™ื‘ ืกืคืจ ื—ืฉื‘ื•ื ื•ืช ืžื‘ื•ื–ืจ ื”ืžืื—ืกืŸ ืืช ื”ืขืจื›ื™ื ื”ื ื•ื›ื—ื™ื™ื (ื”ื—ื“ืฉื ื™ื™ื) ืฉืœ ื›ืœ ืื•ื‘ื™ื™ืงื˜ื™ ืกืคืจ ื”ื—ืฉื‘ื•ื ื•ืช ื”ืžื‘ื•ื–ืจื™ื.

WorldState ื”ื•ื ืžืกื“ ื ืชื•ื ื™ื, ื‘ื’ืจืกื” ื”ื‘ืกื™ืกื™ืช - LevelDB ืื• ืžื•ืจื›ื‘ืช ื™ื•ืชืจ - CouchDB, ื”ืžื›ื™ืœ ืฆืžื“ื™ ืžืคืชื—-ืขืจืš, ืœื“ื•ื’ืžื: ืฉื ืคืจื˜ื™ - ืื™ื‘ืŸ, ืฉื ืžืฉืคื—ื” - ืื™ื‘ื ื•ื‘, ืชืืจื™ืš ืจื™ืฉื•ื ื‘ืžืขืจื›ืช - 12.12.21/17.12.1961/XNUMX , ืชืืจื™ืš ืœื™ื“ื” - XNUMX/XNUMX/XNUMX ื•ื›ื•'. WorldState ื•ื”ืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ ื—ื™ื™ื‘ื™ื ืœื”ื™ื•ืช ืขืงื‘ื™ื™ื ื‘ื™ืŸ ื›ืœ ื”ืžืฉืชืชืคื™ื ื‘ืขืจื•ืฅ ื ืชื•ืŸ.

ืžื›ื™ื•ื•ืŸ ืฉื”-Hyperledger Fabric ื”ื™ื ืจืฉืช ืฉื‘ื” ื›ืœ ื”ืžืฉืชืชืคื™ื ืžื•ื›ืจื™ื ื•ืžืื•ืžืชื™ื, ื”ื™ื ืžืฉืชืžืฉืช ื‘ืจืฉื•ืช ืื™ืฉื•ืจื™ื ื™ื™ืขื•ื“ื™ืช - CA (Certification Authority). CA ืคื•ืขืœืช ืขืœ ื‘ืกื™ืก ืชืงืŸ X.509 ื•ืชืฉืชื™ืช ืžืคืชื— ืฆื™ื‘ื•ืจื™ - PKI.

ืฉื™ืจื•ืช ื—ื‘ืจื•ืช ื”ื•ื ืฉื™ืจื•ืช ืฉื‘ืืžืฆืขื•ืชื• ื—ื‘ืจื™ื ืžื•ื•ื“ืื™ื ืฉืื•ื‘ื™ื™ืงื˜ ืฉื™ื™ืš ืœืืจื’ื•ืŸ ืื• ืขืจื•ืฅ ืžืกื•ื™ื.

ืขืกืงื” - ื‘ืจื•ื‘ ื”ืžืงืจื™ื, ื”ื™ื ื›ืชื™ื‘ืช ื ืชื•ื ื™ื ื—ื“ืฉื™ื ืœืจื™ืฉื•ื ืžื‘ื•ื–ืจ.
ื™ืฉ ื’ื ืขืกืงืื•ืช ืœื™ืฆื™ืจืช ืขืจื•ืฆื™ื ืื• ื—ื•ื–ื™ื ื—ื›ืžื™ื. ื”ืขืกืงื” ืžืชื‘ืฆืขืช ืขืœ ื™ื“ื™ ืืคืœื™ืงืฆื™ื™ืช ื”ืžืฉืชืžืฉ ื•ืžืกืชื™ื™ืžืช ื‘ืจื™ืฉื•ื ื‘ืกืคืจ ื”ื—ืฉื‘ื•ื ื•ืช ื”ืžื‘ื•ื–ืจ.

ืขืจื•ืฅ ื”ื•ื ืชืช-ืจืฉืช ืกื’ื•ืจื” ื”ืžื•ืจื›ื‘ืช ืžืฉื ื™ ืžืฉืชืชืคื™ ืจืฉืช ื‘ืœื•ืงืฆ'ื™ื™ืŸ ืื• ื™ื•ืชืจ, ืฉื ื•ืขื“ื” ืœื‘ืฆืข ืขืกืงืื•ืช ืกื•ื“ื™ื•ืช ื‘ืชื•ืš ืžืขื’ืœ ืžืฆื•ืžืฆื ืืš ื™ื“ื•ืข ืฉืœ ืžืฉืชืชืคื™ื. ื”ืขืจื•ืฅ ื ืงื‘ืข ืขืœ ื™ื“ื™ ื”ืžืฉืชืชืคื™ื, ื”ืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ ืฉืœื•, ื—ื•ื–ื™ื ื—ื›ืžื™ื, ืฉื™ืจื•ืช ื”ื–ืžื ื•ืช, WorldState. ื›ืœ ืžืฉืชืชืฃ ื‘ืขืจื•ืฅ ื—ื™ื™ื‘ ืœื”ื™ื•ืช ืžื•ืจืฉื” ืœื’ืฉืช ืœืขืจื•ืฅ ื•ื‘ืขืœ ื–ื›ื•ืช ืœื‘ืฆืข ืกื•ื’ื™ื ืฉื•ื ื™ื ืฉืœ ืขืกืงืื•ืช. ื”ื”ืจืฉืื” ืžืชื‘ืฆืขืช ื‘ืืžืฆืขื•ืช ืฉื™ืจื•ืช ื”ื—ื‘ืจื•ืช.

ืชืจื—ื™ืฉ ื‘ื™ืฆื•ืข ืขืกืงื” ื˜ื™ืคื•ืกื™

ืœืื—ืจ ืžื›ืŸ, ื‘ืจืฆื•ื ื™ ืœื“ื‘ืจ ืขืœ ืชืจื—ื™ืฉ ื˜ื™ืคื•ืกื™ ืฉืœ ื‘ื™ืฆื•ืข ืขืกืงื” ืชื•ืš ืฉื™ืžื•ืฉ ื‘ืคืจื•ื™ืงื˜ ืฉืœื ื• ื›ื“ื•ื’ืžื”.

ื›ื—ืœืง ืžื”ืคืจื•ื™ืงื˜ ื”ืคื ื™ืžื™ ืฉืœื ื•, ื™ืฆืจื ื• ืืช ืจืฉืช Hyperledger Fabric, ืฉื ื•ืขื“ื” ืœื”ื™ืจืฉื ื•ืœื”ืชื™ื™ื—ืก ืœืกื˜ื•ื“ื ื˜ื™ื ื”ื ื›ื ืกื™ื ืœืื•ื ื™ื‘ืจืกื™ื˜ืื•ืช. ื”ืจืฉืช ืฉืœื ื• ืžื•ืจื›ื‘ืช ืžืฉื ื™ ืืจื’ื•ื ื™ื ื”ืฉื™ื™ื›ื™ื ืœืื•ื ื™ื‘ืจืกื™ื˜ื” ื' ื•ืœืื•ื ื™ื‘ืจืกื™ื˜ื” ื‘'. ื›ืœ ืืจื’ื•ืŸ ืžื›ื™ืœ ืืคืœื™ืงืฆื™ื” ืฉืœ ืœืงื•ื—, ื›ืžื• ื’ื ืขืžื™ืช ืžื—ื•ื™ื‘ ื•ืชืžื™ื›ื” ืžืฉืœื•. ืื ื• ืžืฉืชืžืฉื™ื ื’ื ื‘ืฉื™ืจื•ืชื™ื ื”ื ืคื•ืฆื™ื ืฉื™ืจื•ืช ื”ื–ืžื ื”, ืฉื™ืจื•ืช ื—ื‘ืจื•ืช ื•ืจืฉื•ืช ื”ืื™ืฉื•ืจื™ื.

1) ื™ื™ื–ื•ื ืขืกืงื”

ื™ื™ืฉื•ื ืžืฉืชืžืฉ, ื”ืžืฉืชืžืฉ ื‘-Hyperledger Fabric SDK, ื™ื•ื–ื ื‘ืงืฉืช ืขืกืงืื•ืช ื•ืฉื•ืœื— ืืช ื”ื‘ืงืฉื” ืœืฆืžืชื™ื ืขื ื—ื•ื–ื™ื ื—ื›ืžื™ื. ื”ื‘ืงืฉื” ื™ื›ื•ืœื” ืœื”ื™ื•ืช ืœืฉื ื•ืช ืื• ืœืงืจื•ื ืžืชื•ืš ืจื™ืฉื•ื ืžื‘ื•ื–ืจ (Ledger). ืื ื ืฉืงื•ืœ ื“ื•ื’ืžื” ืœืชืฆื•ืจืช ืžืขืจื›ืช ื”ื‘ื“ื™ืงื” ืฉืœื ื• ืœื—ืฉื‘ื•ื ืื•ืช ืขื‘ื•ืจ ืกื˜ื•ื“ื ื˜ื™ื ื‘ืื•ื ื™ื‘ืจืกื™ื˜ื”, ื™ื™ืฉื•ื ื”ืœืงื•ื— ืฉื•ืœื— ื‘ืงืฉืช ืขืกืงืื•ืช ืœืฆืžืชื™ื ืฉืœ ืื•ื ื™ื‘ืจืกื™ื˜ืื•ืช A ื•-B, ื”ื›ืœื•ืœื™ื ื‘ืžื“ื™ื ื™ื•ืช ื”ืื™ืฉื•ืจ ืฉืœ ื”ื—ื•ื–ื” ื”ื—ื›ื ื”ื ืงืจื. ืฆื•ืžืช A ื”ื•ื ืฆื•ืžืช ืฉื ืžืฆื ื‘ืื•ื ื™ื‘ืจืกื™ื˜ื” ื”ืจื•ืฉืžืช ืืช ื”ืกื˜ื•ื“ื ื˜ ื”ื ื›ื ืก, ื•ืฆื•ืžืช B ื”ื•ื ืฆื•ืžืช ืฉื ืžืฆื ื‘ืื•ื ื™ื‘ืจืกื™ื˜ื” ืื—ืจืช. ืขืœ ืžื ืช ืฉืขืกืงื” ืชื™ืฉืžืจ ื‘ืจื™ืฉื•ื ืžื‘ื•ื–ืจ, ื™ืฉ ืฆื•ืจืš ืฉื›ืœ ื”ืฆืžืชื™ื ืฉืขืœ ืคื™ ื”ื”ื™ื’ื™ื•ืŸ ื”ืขืกืงื™ ื—ื™ื™ื‘ื™ื ืœืืฉืจ ืืช ื”ืขืกืงื”, ื™ื‘ืฆืขื• ื‘ื”ืฆืœื—ื” ื—ื•ื–ื™ื ื—ื›ืžื™ื ื‘ืื•ืชื” ืชื•ืฆืื”. ื”ืฆื•ืžืช ื™ื™ืฉื•ื ืžืฉืชืžืฉ, ื”ืžืฉืชืžืฉ ื‘ื›ืœื™ Hyperledger Fabric SDK, ืžืฉื™ื’ ืืช ืžื“ื™ื ื™ื•ืช ื”ืื™ืฉื•ืจ ื•ืœื•ืžื“ ืœืื™ืœื• ืฆืžืชื™ื ืœืฉืœื•ื— ื‘ืงืฉืช ืขืกืงื”. ื–ื•ื”ื™ ื‘ืงืฉื” ืœื”ืคืขื™ืœ ื—ื•ื–ื” ื—ื›ื ืกืคืฆื™ืคื™ (ืคื•ื ืงืฆื™ื™ืช chaincode) ื›ื“ื™ ืœืงืจื•ื ืื• ืœื›ืชื•ื‘ ื ืชื•ื ื™ื ืžืกื•ื™ืžื™ื ืœืจื™ืฉื•ื ืžื‘ื•ื–ืจ. ืžื‘ื—ื™ื ื” ื˜ื›ื ื™ืช, ื”-SDK ืฉืœ ื”ืœืงื•ื— ืžืฉืชืžืฉ ื‘ืคื•ื ืงืฆื™ื” ื”ืžืงื‘ื™ืœื”, ืฉื”-API ืฉืœื” ืžื•ืขื‘ืจ ืœืื•ื‘ื™ื™ืงื˜ ืžืกื•ื™ื ืขื ืคืจืžื˜ืจื™ื ืฉืœ ื˜ืจื ื–ืงืฆื™ื•ืช, ื•ื’ื ืžื•ืกื™ืฃ ื—ืชื™ืžืช ืœืงื•ื— ื•ืฉื•ืœื— ืืช ื”ื ืชื•ื ื™ื ื”ืœืœื• ื‘ืืžืฆืขื•ืช ืžืื’ืจ ืคืจื•ื˜ื•ืงื•ืœ ืขืœ ื’ื‘ื™ gRPC ืœืฆืžืชื™ื ื”ืžืชืื™ืžื™ื (ื”ืžืœื•ื•ื™ื ืขืžื™ืชื™ื).

ื‘ื“ Hyperledger ืขื‘ื•ืจ Dummies
ืชืžื•ื ื” 2. ื™ื™ื–ื•ื ืขืกืงื”

2) ื‘ื™ืฆื•ืข ื—ื•ื–ื” ื—ื›ื

ืฆืžืชื™ื (Endoring Peers), ืœืื—ืจ ืฉืงื™ื‘ืœื• ื‘ืงืฉื” ืœื‘ืฆืข ืขืกืงื”, ื‘ื•ื“ืงื™ื ืืช ื—ืชื™ืžืช ื”ืœืงื•ื— ื•ืื ื”ื›ืœ ืชืงื™ืŸ, ื”ื ืœื•ืงื—ื™ื ืื•ื‘ื™ื™ืงื˜ ืขื ื ืชื•ื ื™ ื”ื‘ืงืฉื” ื•ืžืจื™ืฆื™ื ืกื™ืžื•ืœืฆื™ื” ืฉืœ ื‘ื™ืฆื•ืข ื—ื•ื–ื” ื—ื›ื (ืคื•ื ืงืฆื™ื™ืช chaincode) ืขื ื”ื ืชื•ื ื™ื ื”ืืœื”. ื—ื•ื–ื” ื—ื›ื ื”ื•ื ื”ื”ื™ื’ื™ื•ืŸ ื”ืขืกืงื™ ืฉืœ ืขืกืงื”, ืกื˜ ืžืกื•ื™ื ืฉืœ ืชื ืื™ื ื•ื”ื•ืจืื•ืช (ื‘ืžืงืจื” ืฉืœื ื• ืžื“ื•ื‘ืจ ื‘ืื™ืžื•ืช ืฉืœ ืชืœืžื™ื“, ื”ืื ืžื“ื•ื‘ืจ ื‘ืชืœืžื™ื“ ื—ื“ืฉ ืื• ืฉื”ื•ื ื›ื‘ืจ ืจืฉื•ื, ืื™ืžื•ืช ื’ื™ืœ ื•ื›ื•'). ื›ื“ื™ ืœื‘ืฆืข ืืช ื”ื—ื•ื–ื” ื”ื—ื›ื, ืชื–ื“ืงืง ื’ื ืœื ืชื•ื ื™ื ืž-WorldState. ื›ืชื•ืฆืื” ืžื”ื“ืžื™ื™ืช ื—ื•ื–ื” ื—ื›ื ืขืœ ื”-Endoring peer, ืžืชืงื‘ืœื•ืช ืฉืชื™ ืงื‘ื•ืฆื•ืช ืฉืœ ื ืชื•ื ื™ื - Read Set ื•-Write Set. Read Set ื•-Write Set ื”ื ืขืจื›ื™ WorldState ื”ืžืงื•ืจื™ื™ื ื•ื”ื—ื“ืฉื™ื. (ื—ื“ืฉ โ€“ ื‘ืžื•ื‘ืŸ ื”ืžืชืงื‘ืœ ื‘ืžื”ืœืš ื”ื“ืžื™ื™ืช ื—ื•ื–ื” ื—ื›ื).

ื‘ื“ Hyperledger ืขื‘ื•ืจ Dummies
ืชืžื•ื ื” 3. ื‘ื™ืฆื•ืข ื—ื•ื–ื” ื—ื›ื

3) ื”ื—ื–ืจืช ื ืชื•ื ื™ื ืœืืคืœื™ืงืฆื™ื™ืช ื”ืœืงื•ื—

ืœืื—ืจ ื‘ื™ืฆื•ืข ื”ื“ืžื™ื” ืฉืœ ื”ื—ื•ื–ื” ื”ื—ื›ื, Endorsing Peers ืžื—ื–ื™ืจื™ื ืœืืคืœื™ืงืฆื™ื™ืช ื”ืœืงื•ื— ืืช ื”ื ืชื•ื ื™ื ื”ืžืงื•ืจื™ื™ื ื•ืืช ืชื•ืฆืืช ื”ืกื™ืžื•ืœืฆื™ื”, ื›ืžื• ื’ื ืืช RW Set, ื—ืชื•ื ื‘ืชืขื•ื“ื” ืฉืœื”ื. ื‘ืฉืœื‘ ื–ื”, ืœื ืžืชืจื—ืฉื™ื ืฉื™ื ื•ื™ื™ื ื‘ืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ. ืืคืœื™ืงืฆื™ื™ืช ื”ืœืงื•ื— ื‘ื•ื“ืงืช ืืช ื—ืชื™ืžืช ื”-Endorsing Peer, ื•ื›ืŸ ืžืฉื•ื•ื” ืืช ื ืชื•ื ื™ ื”ืขืกืงื” ื”ืžืงื•ืจื™ื™ื ืฉื ืฉืœื—ื• ื•ื”ื ืชื•ื ื™ื ืฉื”ื•ื—ื–ืจื• (ื›ืœื•ืžืจ, ื”ื™ื ื‘ื•ื“ืงืช ื”ืื ื”ื ืชื•ื ื™ื ื”ืžืงื•ืจื™ื™ื ืฉืขืœื™ื”ื ื‘ื•ืฆืข ื”ื“ืžื™ื” ืฉืœ ื”ืขืกืงื” ืขื•ื•ื•ืช). ืื ื”ืขืกืงื” ื”ื™ื™ืชื” ืจืง ืœืงืจื™ืืช ื ืชื•ื ื™ื ืžื”ืจื™ืฉื•ื, ืื–ื™ ืืคืœื™ืงืฆื™ื™ืช ื”ืœืงื•ื— ืžืงื‘ืœืช ื‘ื”ืชืื ืืช ื”-Read Set ื”ื“ืจื•ืฉ ื•ื–ื” ื‘ื“ืจืš ื›ืœืœ ืžืฉืœื™ื ืืช ื”ืขืกืงื” ื‘ื”ืฆืœื—ื” ืžื‘ืœื™ ืœืฉื ื•ืช ืืช ื”ืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ. ื‘ืžืงืจื” ืฉืœ ืขืกืงื” ืฉื—ื™ื™ื‘ืช ืœืฉื ื•ืช ื ืชื•ื ื™ื ื‘ืจื™ืฉื•ื, ื™ื™ืฉื•ื ื”ืœืงื•ื— ื‘ื•ื“ืง ื‘ื ื•ืกืฃ ืืช ื™ื™ืฉื•ื ืžื“ื™ื ื™ื•ืช ื”ืื™ืฉื•ืจื™ื. ื™ื™ืชื›ืŸ ืฉืืคืœื™ืงืฆื™ื™ืช ืœืงื•ื— ืื™ื ื” ื‘ื•ื“ืงืช ืืช ื”ืชื•ืฆืื” ืฉืœ ื‘ื™ืฆื•ืข ืžื“ื™ื ื™ื•ืช ื”-Endorsement, ืืš ืคืœื˜ืคื•ืจืžืช Hyperledger Fabric ื‘ืžืงืจื” ื–ื” ืžืกืคืงืช ื‘ื“ื™ืงืช ืžื“ื™ื ื™ื•ืช ืขืœ ืฆืžืชื™ื (Committing Peers) ื‘ืฉืœื‘ ื”ื•ืกืคืช ืขืกืงื” ืœืจื™ืฉื•ื.

ื‘ื“ Hyperledger ืขื‘ื•ืจ Dummies
ืชืžื•ื ื” 4. ื”ื—ื–ืจืช ื ืชื•ื ื™ื ืœื™ื™ืฉื•ื ื”ืœืงื•ื—

4) ืฉืœื™ื—ืช ืขืจื›ื•ืช RW ืœืขืžื™ืชื™ื ื‘ื”ื–ืžื ื”

ืืคืœื™ืงืฆื™ื™ืช ื”ืœืงื•ื— ืฉื•ืœื—ืช ืืช ื”ืขืกืงื” ื™ื—ื“ ืขื ื”ื ืชื•ื ื™ื ื”ื ืœื•ื•ื™ื ืœืฉื™ืจื•ืช ื”ื”ื–ืžื ื”. ื–ื” ื›ื•ืœืœ ืืช ื”-RW Set, ื—ืชื™ืžื•ืช ืขืžื™ืชื™ื ืื™ืฉื•ืจ ื•ืžื–ื”ื” ื”ืขืจื•ืฅ.

ืฉื™ืจื•ืช ื”ื–ืžื ื•ืช โ€“ ื‘ื”ืชื‘ืกืก ืขืœ ื”ืฉื, ืชืคืงื™ื“ื• ื”ืขื™ืงืจื™ ืฉืœ ืฉื™ืจื•ืช ื–ื” ื”ื•ื ืœืืจื’ืŸ ืขืกืงืื•ืช ื ื›ื ืกื•ืช ื‘ืกื“ืจ ื”ื ื›ื•ืŸ. ื›ืžื• ื’ื ื”ื™ื•ื•ืฆืจื•ืช ื‘ืœื•ืง ื—ื“ืฉ ืฉืœ ื”ืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ ื•ืืกืคืงื” โ€‹โ€‹ืžื•ื‘ื˜ื—ืช ืฉืœ ื‘ืœื•ืงื™ื ื—ื“ืฉื™ื ืฉื ื•ืฆืจื• ืœื›ืœ ืฆืžืชื™ Commiting, ื•ื‘ื›ืš ืœื”ื‘ื˜ื™ื— ืขืงื‘ื™ื•ืช ื ืชื•ื ื™ื ืขืœ ื›ืœ ื”ืฆืžืชื™ื ื”ืžื›ื™ืœื™ื ืืช ื”ืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ (Committing peers). ื™ื—ื“ ืขื ื–ืืช, ืฉื™ืจื•ืช ื”ื”ื–ืžื ื” ืขืฆืžื• ืื™ื ื• ืžืฉื ื” ืืช ื”ืจื™ืฉื•ื ื‘ืฉื•ื ืฆื•ืจื”. ืฉื™ืจื•ืช ื”ื–ืžื ื•ืช ื”ื•ื ืžืจื›ื™ื‘ ื—ื™ื•ื ื™ ืฉืœ ื”ืžืขืจื›ืช, ื•ืœื›ืŸ ื”ื•ื ืžืงื‘ืฅ ืฉืœ ืžืกืคืจ ืฆืžืชื™ื. ืฉื™ืจื•ืช ื”ื”ื–ืžื ื•ืช ืื™ื ื• ื‘ื•ื“ืง ืืช ืชืงืคื•ืช ื”ืขืกืงื”, ื”ื•ื ืคืฉื•ื˜ ืžืงื‘ืœ ืขืกืงื” ืขื ืžื–ื”ื” ืขืจื•ืฅ ืžืกื•ื™ื, ืžืกื“ืจ ืขืกืงืื•ืช ื ื›ื ืกื•ืช ื‘ืกื“ืจ ืžืกื•ื™ื ื•ื™ื•ืฆืจ ืžื”ืŸ ื‘ืœื•ืงื™ื ื—ื“ืฉื™ื ืฉืœ ื”ืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ. ืฉื™ืจื•ืช ื”ื–ืžื ื” ืื—ื“ ื™ื›ื•ืœ ืœืฉืจืช ืžืกืคืจ ืขืจื•ืฆื™ื ื‘ื• ื–ืžื ื™ืช. ืฉื™ืจื•ืช ื”ื”ื–ืžื ื•ืช ื›ื•ืœืœ ืืฉื›ื•ืœ ืงืคืงื, ื”ืฉื•ืžืจ ืขืœ ืชื•ืจ ื”ืขืกืงืื•ืช ื”ื ื›ื•ืŸ (ื”ื‘ืœืชื™ ื ื™ืชืŸ ืœืฉื™ื ื•ื™) (ืจืื” ื ืงื•ื“ื” 7).

ื‘ื“ Hyperledger ืขื‘ื•ืจ Dummies
ืชืžื•ื ื” 5. ืฉืœื™ื—ืช ืขืจื›ื•ืช RW ืœื”ื–ืžื ื” ืขืžื™ืชื™ื

5) ืฉืœื™ื—ืช ื‘ืœื•ืงื™ื ืฉื ื•ืฆืจื• ืœ-Committing Peer

ื‘ืœื•ืงื™ื ืฉื ื•ืฆืจื™ื ื‘ืฉื™ืจื•ืช ื”ื”ื–ืžื ื•ืช ืžื•ืขื‘ืจื™ื (ืžืฉื“ืจื™ื) ืœื›ืœ ืฆืžืชื™ ื”ืจืฉืช. ื›ืœ ืฆื•ืžืช, ืœืื—ืจ ืฉืงื™ื‘ืœ ื‘ืœื•ืง ื—ื“ืฉ, ื‘ื•ื“ืง ืืช ืชืื™ืžื•ืชื• ืœืžื“ื™ื ื™ื•ืช ื”ืื™ืฉื•ืจื™ื, ื‘ื•ื“ืง ืฉื›ืœ ื”ืขืžื™ืชื™ื ื”ื ื•ืชื ื™ื ืงื™ื‘ืœื• ืืช ืื•ืชื” ืชื•ืฆืื” (Write Set) ื›ืชื•ืฆืื” ืžื”ื“ืžื™ื™ืช ื”ื—ื•ื–ื” ื”ื—ื›ื, ื•ื›ืŸ ื‘ื•ื“ืง ื”ืื ืœืขืจื›ื™ื ื”ืžืงื•ืจื™ื™ื ื™ืฉ ื”ืฉืชื ื” (ื›ืœื•ืžืจ, Read Set - ื ืชื•ื ื™ื ืฉื ืงืจืื• ืขืœ ื™ื“ื™ ื”ื—ื•ื–ื” ื”ื—ื›ื ืž-WorldState) ืžืจื’ืข ืชื—ื™ืœืช ื”ืขืกืงื”. ืื ื›ืœ ื”ืชื ืื™ื ืžืชืงื™ื™ืžื™ื, ื”ืขืกืงื” ืžืกื•ืžื ืช ื›ืชืงื™ื ื”, ืื—ืจืช, ื”ืขืกืงื” ืžืงื‘ืœืช ืืช ื”ืกื˜ื˜ื•ืก ืœื ื—ื•ืงื™.

ื‘ื“ Hyperledger ืขื‘ื•ืจ Dummies
ืชืžื•ื ื” 6. ืฉืœื™ื—ืช ื‘ืœื•ืงื™ื ืฉื ื•ืฆืจื• ืœ-Committing Peer

6) ื”ื•ืกืคืช ื‘ืœื•ืง ืœืจื™ืฉื•ื

ื›ืœ ืฆื•ืžืช ืžื•ืกื™ืฃ ืขืกืงื” ืœืขื•ืชืง ื”ืžืงื•ืžื™ ืฉืœื• ืฉืœ ื”ืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ, ื•ืื ื”ืขืกืงื” ืชืงืคื”, ืขืจื›ืช ื”ื›ืชื™ื‘ื” ืžื•ื—ืœืช ืขืœ WorldState (ืžืฆื‘ ื ื•ื›ื—ื™), ื•ื‘ื”ืชืื, ืขืจื›ื™ื ื—ื“ืฉื™ื ืฉืœ ื”ืื•ื‘ื™ื™ืงื˜ื™ื ืฉื”ื•ืฉืคืขื• ืžื”-WorldState. ื”ืขืกืงื” ื ื›ืชื‘ืช. ืื ืขืกืงื” ืงื™ื‘ืœื” ืืกื™ืžื•ืŸ ืฉืื™ื ื• ืชืงืฃ (ืœื“ื•ื’ืžื”, ืฉืชื™ ืขืกืงืื•ืช ื”ืชืจื—ืฉื• ืขื ืื•ืชื ืื•ื‘ื™ื™ืงื˜ื™ื ื‘ืชื•ืš ืื•ืชื• ื‘ืœื•ืง, ืื– ืื—ืช ืžื”ืขืกืงืื•ืช ืชืชื‘ืจืจ ื›ืœื ื—ื•ืงื™ืช, ืžื›ื™ื•ื•ืŸ ืฉื”ืขืจื›ื™ื ื”ืžืงื•ืจื™ื™ื ื›ื‘ืจ ืฉื•ื ื• ืขืœ ื™ื“ื™ ืื—ืจ ืขึดืกืงึธื”). ืขืกืงื” ื–ื• ืžืชื•ื•ืกืคืช ื’ื ืœืคื ืงืก ื”ื—ืฉื‘ื•ื ื•ืช ื”ืžื‘ื•ื–ืจ ืขื ืืกื™ืžื•ืŸ ืœื ื—ื•ืงื™, ืืš ืขืจื›ืช ื”ื›ืชื™ื‘ื” ืฉืœ ืขืกืงื” ื–ื• ืื™ื ื” ืžื•ื—ืœืช ืขืœ ื”-WorldState ื”ื ื•ื›ื—ื™, ื•ื‘ื”ืชืื, ืื™ื ื” ืžืฉื ื” ืืช ื”ืื•ื‘ื™ื™ืงื˜ื™ื ื”ืžืฉืชืชืคื™ื ื‘ืขืกืงื”. ืœืื—ืจ ืžื›ืŸ, ื ืฉืœื—ืช ื”ื•ื“ืขื” ืœืืคืœื™ืงืฆื™ื™ืช ื”ืžืฉืชืžืฉ ืขืœ ื›ืš ืฉื”ืขืกืงื” ื ื•ืกืคื” ืœืฆืžื™ืชื•ืช ืœืจื™ืฉื•ื ื”ืžื‘ื•ื–ืจ ื•ื›ืŸ ืขืœ ืžืฆื‘ ื”ืขืกืงื”, ื›ืœื•ืžืจ ื”ืื ื”ื™ื ืชืงืคื” ืื• ืœื...

ื‘ื“ Hyperledger ืขื‘ื•ืจ Dummies
ืชืžื•ื ื” 7. ื”ื•ืกืคืช ื‘ืœื•ืง ืœืจื™ืฉื•ื

ืฉื™ืจื•ืช ื”ื–ืžื ื”

ืฉื™ืจื•ืช ื”ื”ื–ืžื ื•ืช ืžื•ืจื›ื‘ ืžืืฉื›ื•ืœ ืงืคืงื ืขื ืฆืžืชื™ื ืžืชืื™ืžื™ื ืฉืœ ZooKeeper ื•ืฆืžืชื™ ืฉื™ืจื•ืช ื”ื–ืžื ื” (OSN), ื”ืขื•ืžื“ื™ื ื‘ื™ืŸ ืœืงื•ื—ื•ืช ืฉื™ืจื•ืช ื”ื”ื–ืžื ื” ืœืืฉื›ื•ืœ ืงืคืงื. ืืฉื›ื•ืœ ืงืคืงื ื”ื•ื ืคืœื˜ืคื•ืจืžืช ื ื™ื”ื•ืœ ื–ืจื™ืžื” (ื”ื•ื“ืขื•ืช) ืžื‘ื•ื–ืจืช, ืกื•ื‘ืœื ื™ืช ืœืชืงืœื•ืช. ื›ืœ ืขืจื•ืฅ (ื ื•ืฉื) ื‘ืงืคืงื ื”ื•ื ืจืฆืฃ ื‘ืœืชื™ ื ื™ืชืŸ ืœืฉื™ื ื•ื™ ืฉืœ ืจืฉื•ืžื•ืช ืฉืชื•ืžืš ืจืง ื‘ื”ื•ืกืคืช ืจืฉื•ืžื” ื—ื“ืฉื” (ืœื ื ื™ืชืŸ ืœืžื—ื•ืง ืจืฉื•ืžื” ืงื™ื™ืžืช). ื”ืžื—ืฉื” ืฉืœ ืžื‘ื ื” ื”ื ื•ืฉื ืžื•ืฆื’ืช ืœื”ืœืŸ. ื”ื ื›ืก ื”ื–ื” ืฉืœ ืงืคืงื ื”ื•ื ื”ืžืฉืžืฉ ืœื‘ื ื™ื™ืช ืคืœื˜ืคื•ืจืžืช ื‘ืœื•ืงืฆ'ื™ื™ืŸ.

ื‘ื“ Hyperledger ืขื‘ื•ืจ Dummies
ื ืœืงื— ืžืชื•ืš kafka.apache.org

  • ืชืžื•ื ื” 8. ืžื‘ื ื” ื ื•ืฉื ืฉื™ืจื•ืช ื”ื–ืžื ื”*

ืงื™ืฉื•ืจื™ื ืฉื™ืžื•ืฉื™ื™ื

Youtube - ื‘ื ื™ื™ืช ื‘ืœื•ืงืฆ'ื™ื™ืŸ ืœืขืกืงื™ื ืขื ืคืจื•ื™ืงื˜ Hyperledger
Hyperledger Fabric Docs
ืžืืจื’ Hyperledger: ืžืขืจื›ืช ื”ืคืขืœื” ืžื‘ื•ื–ืจืช ืœื‘ืœื•ืงืฆ'ื™ื™ืŸ ืžื•ืจืฉื™ื

ืชื•ื“ื•ืช

ื‘ืจืฆื•ื ื™ ืœื”ื‘ื™ืข ืืช ืชื•ื“ืชื™ ื”ืขืžื•ืงื” ืœืขืžื™ืชื™ื™ ืขืœ ืขื–ืจืชื ื‘ื”ื›ื ืช ืžืืžืจ ื–ื”:
ื ื™ืงื•ืœืื™ ืžืจื™ืŸ
ืื™ื’ื•ืจ ื—ืืคื•ื‘
ื“ืžื™ื˜ืจื™ ื’ื•ืจื‘ืฆ'ื•ื‘
ืืœื›ืกื ื“ืจ ื–ืžืฆื•ื‘
ื™ืงื˜ืจื™ื ื” ื’ื•ืกื‘ื”

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”