เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เชคเชฎเชพเชฐเซ€ เช†เช‚เช–เซ‹ เชญเชฏเชญเซ€เชค เช›เซ‡ เช…เชจเซ‡ เชคเชฎเชพเชฐเชพ เชนเชพเชฅ เช–เช‚เชœเชตเชพเชณ เช›เซ‡!

เช…เช—เชพเช‰เชจเชพ เชฒเซ‡เช–เซ‹เชฎเชพเช‚, เช…เชฎเซ‡ เชคเซ‡ เชคเช•เชจเซ€เช•เซ‹ เชธเชพเชฅเซ‡ เชตเซเชฏเชตเชนเชพเชฐ เช•เชฐเซเชฏเซ‹ เช•เซ‡ เชœเซ‡เชจเชพ เชชเชฐ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชฌเชจเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ (เช†เชชเชฃเซ‡ เชถเซเช‚ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?) เช…เชจเซ‡ เช•เชฟเชธเซเชธเชพเช“ เช•เซ‡ เชœเซ‡ เชคเซ‡เชฎเชจเซ€ เชฎเชฆเชฆเชฅเซ€ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เซ€ เชถเช•เชพเชฏ เช›เซ‡ (เช†เชชเชฃเซ‡ เช•เซ‡เชธ เช•เซ‡เชฎ เชฌเชพเช‚เชงเชตเซ‹ เชœเซ‹เชˆเช?). เชคเชฎเชพเชฐเชพ เชนเชพเชฅเชฅเซ€ เช•เชพเชฎ เช•เชฐเชตเชพเชจเซ‹ เชธเชฎเชฏ เช›เซ‡! เชชเชพเช‡เชฒเซ‹เชŸเซเชธ เช…เชจเซ‡ PoC (เชชเซเชฐเซ‚เชซ เช“เชซ เช•เซ‹เชจเซเชธเซ‡เชชเซเชŸ) เชจเซ‡ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชตเชพ เชฎเชพเชŸเซ‡, เชนเซเช‚ เชตเชพเชฆเชณเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซเช‚ เชชเชธเช‚เชฆ เช•เชฐเซเช‚ เช›เซเช‚, เช•เชพเชฐเชฃ เช•เซ‡... เชคเซ‡เช“ เชตเชฟเชถเซเชตเชฎเชพเช‚ เช—เชฎเซ‡ เชคเซเชฏเชพเช‚เชฅเซ€ เชเช•เซเชธเซ‡เชธ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡ เช…เชจเซ‡, เช˜เชฃเซ€เชตเชพเชฐ, เชชเชฐเซเชฏเชพเชตเชฐเชฃเชจเชพ เช•เช‚เชŸเชพเชณเชพเชœเชจเช• เช‡เชจเซเชธเซเชŸเซ‹เชฒเซ‡เชถเชจ เชชเชฐ เชธเชฎเชฏ เชฌเช—เชพเชกเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€, เช•เชพเชฐเชฃ เช•เซ‡ เชคเซเชฏเชพเช‚ เชชเซเชฐเซ€เชธเซ‡เชŸ เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจเซ‹ เช›เซ‡. เชคเซ‡เชฅเซ€, เชšเชพเชฒเซ‹ เช•เช‚เชˆเช• เชธเชฐเชณ เชฌเชจเชพเชตเซ€เช, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชธเชนเชญเชพเช—เซ€เช“ เชตเชšเซเชšเซ‡ เชธเชฟเช•เซเช•เชพ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡เชจเซเช‚ เชจเซ‡เชŸเชตเชฐเซเช• เช…เชจเซ‡ เชšเชพเชฒเซ‹ เชคเซ‡เชจเซ‡ เชจเชฎเซเชฐเชคเชพเชฅเซ€ เชฌเชฟเชŸเช•เซ‹เชˆเชจ เช•เชนเซ€เช. เช† เชฎเชพเชŸเซ‡ เช…เชฎเซ‡ IBM เช•เซเชฒเชพเช‰เชก เช…เชจเซ‡ เชฏเซเชจเชฟเชตเชฐเซเชธเชฒ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชนเชพเช‡เชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช•เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชถเซเช‚. เชชเซเชฐเชฅเชฎ, เชšเชพเชฒเซ‹ เชœเซ‹เชˆเช เช•เซ‡ เชนเชพเชฏเชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช•เชจเซ‡ เชธเชพเชฐเซเชตเชคเซเชฐเชฟเช• เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชถเชพ เชฎเชพเชŸเซ‡ เช•เชนเซ‡เชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡?

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เชนเชพเช‡เชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช• - เชเช• เชธเชพเชฐเซเชตเชคเซเชฐเชฟเช• เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ

เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เช•เชนเซ€เช เชคเซ‹, เชธเชพเชฐเซเชตเชคเซเชฐเชฟเช• เชฎเชพเชนเชฟเชคเซ€ เชธเชฟเชธเซเชŸเชฎ เช›เซ‡:

  • เชธเชฐเซเชตเชฐเชจเซ‹ เชธเชฎเซ‚เชน เช…เชจเซ‡ เชธเซ‹เชซเซเชŸเชตเซ‡เชฐ เช•เซ‹เชฐ เชœเซ‡ เชตเซเชฏเชตเชธเชพเชฏ เชคเชฐเซเช• เช•เชฐเซ‡ เช›เซ‡;
  • เชธเชฟเชธเซเชŸเชฎ เชธเชพเชฅเซ‡ เช•เซเชฐเชฟเชฏเชพเชชเซเชฐเชคเชฟเช•เซเชฐเชฟเชฏเชพ เชฎเชพเชŸเซ‡ เช‡เชจเซเชŸเชฐเชซเซ‡เชธ;
  • เช‰เชชเช•เชฐเชฃเซ‹/เชฒเซ‹เช•เซ‹เชจเซ€ เชจเซ‹เช‚เชงเชฃเซ€, เชชเซเชฐเชฎเชพเชฃเซ€เช•เชฐเชฃ เช…เชจเซ‡ เช…เชงเชฟเช•เซƒเชคเชคเชพ เชฎเชพเชŸเซ‡เชจเชพ เชธเชพเชงเชจเซ‹;
  • เชกเซ‡เชŸเชพเชฌเซ‡เช เช“เชชเชฐเซ‡เชถเชจเชฒ เช…เชจเซ‡ เช†เชฐเซเช•เชพเช‡เชตเชฒ เชกเซ‡เชŸเชพ เชธเซเชŸเซ‹เชฐ เช•เชฐเซ‡ เช›เซ‡:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เชนเชพเช‡เชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช• เชถเซเช‚ เช›เซ‡ เชคเซ‡เชจเซเช‚ เชธเชคเซเชคเชพเชตเชพเชฐ เชธเช‚เชธเซเช•เชฐเชฃ เช…เชนเซ€เช‚ เชตเชพเช‚เชšเซ€ เชถเช•เชพเชฏ เช›เซ‡ เชธเชพเช‡เชŸ, เช…เชจเซ‡ เชŸเซ‚เช‚เช•เชฎเชพเช‚, Hyperledger Fabric เช เชเช• เช“เชชเชจเชธเซ‹เชฐเซเชธ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เช›เซ‡ เชœเซ‡ เชคเชฎเชจเซ‡ เช–เชพเชจเช—เซ€ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชฌเชจเชพเชตเชตเชพ เช…เชจเซ‡ JS เช…เชจเซ‡ Go เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชญเชพเชทเชพเช“เชฎเชพเช‚ เชฒเช–เซ‡เชฒเชพ เชฎเชจเชธเซเชตเซ€ เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸเซเชธ เชšเชฒเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เชชเชฐเชตเชพเชจเช—เซ€ เช†เชชเซ‡ เช›เซ‡. เชšเชพเชฒเซ‹ เชนเชพเชฏเชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช•เชจเชพ เช†เชฐเซเช•เชฟเชŸเซ‡เช•เซเชšเชฐ เชชเชฐ เชตเชฟเช—เชคเชตเชพเชฐ เชœเซ‹เชˆเช เช…เชจเซ‡ เช–เชพเชคเชฐเซ€ เช•เชฐเซ‹ เช•เซ‡ เช† เชเช• เชธเชพเชฐเซเชตเชคเซเชฐเชฟเช• เชธเชฟเชธเซเชŸเชฎ เช›เซ‡ เชœเซ‡ เชซเช•เซเชค เชกเซ‡เชŸเชพ เชธเซเชŸเซ‹เชฐ เช•เชฐเชตเชพ เช…เชจเซ‡ เชฐเซ‡เช•เซ‹เชฐเซเชก เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชตเชฟเชถเชฟเชทเซเชŸเชคเชพ เชงเชฐเชพเชตเซ‡ เช›เซ‡. เชตเชฟเชถเชฟเชทเซเชŸเชคเชพ เช เช›เซ‡ เช•เซ‡ เชกเซ‡เชŸเชพ, เชคเชฎเชพเชฎ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจเซเชธเชจเซ€ เชœเซ‡เชฎ, เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชชเชฐ เชซเช•เซเชค เชคเซเชฏเชพเชฐเซ‡ เชœ เชธเช‚เช—เซเชฐเชนเชฟเชค เชฅเชพเชฏ เช›เซ‡ เชœเซ‹ เชธเชนเชญเชพเช—เซ€เช“ เชธเชฐเซเชตเชธเช‚เชฎเชคเชฟ เชธเซเชงเซ€ เชชเชนเซ‹เช‚เชšเซ‡ เช…เชจเซ‡ เชกเซ‡เชŸเชพ เชฐเซ‡เช•เซ‹เชฐเซเชก เช•เชฐเซเชฏเชพ เชชเช›เซ€ เชคเซ‡เชจเซ‡ เชถเชพเช‚เชคเชฟเชฅเซ€ เชธเซเชงเชพเชฐเซ€ เช…เชฅเชตเชพ เช•เชพเชขเซ€ เชจ เชถเช•เชพเชฏ.

เชนเชพเช‡เชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช• เช†เชฐเซเช•เชฟเชŸเซ‡เช•เซเชšเชฐ

เช†เช•เซƒเชคเชฟ เชนเชพเช‡เชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช• เช†เชฐเซเช•เชฟเชŸเซ‡เช•เซเชšเชฐ เชฌเชคเชพเชตเซ‡ เช›เซ‡:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เชธเช‚เชธเซเชฅเชพเช“ โ€” เชธเช‚เชธเซเชฅเชพเช“เชฎเชพเช‚ เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹ เชนเซ‹เชฏ เช›เซ‡, เชเชŸเชฒเซ‡ เช•เซ‡ เชธเช‚เชธเซเชฅเชพเช“เชจเชพ เชธเชฎเชฐเซเชฅเชจเชจเซ‡ เช•เชพเชฐเชฃเซ‡ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เช…เชธเซเชคเชฟเชคเซเชตเชฎเชพเช‚ เช›เซ‡. เชตเชฟเชตเชฟเชง เชธเช‚เชธเซเชฅเชพเช“ เชเช• เชœ เชšเซ‡เชจเชฒเชจเซ‹ เชญเชพเช— เชฌเชจเซ€ เชถเช•เซ‡ เช›เซ‡.

เชšเซ‡เชจเชฒ - เชเช• เชคเชพเชฐเซเช•เชฟเช• เชฎเชพเชณเช–เซเช‚ เชœเซ‡ เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹เชจเซ‡ เชœเซ‚เชฅเซ‹เชฎเชพเช‚ เชœเซ‹เชกเซ‡ เช›เซ‡, เชเชŸเชฒเซ‡ เช•เซ‡. เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เช‰เชฒเซเชฒเซ‡เช–เชฟเชค เช›เซ‡. เชนเชพเช‡เชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช• เชเช•เชธเชพเชฅเซ‡ เชตเชฟเชตเชฟเชง เชตเซเชฏเชพเชชเชพเชฐ เชคเชฐเซเช• เชธเชพเชฅเซ‡ เชฌเชนเซเชตเชฟเชง เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชชเชฐ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡.

เชธเชญเซเชฏเชชเชฆ เชธเซ‡เชตเชพ เชชเซเชฐเชฆเชพเชคเชพ (MSP) เช“เชณเช– เชœเชพเชฐเซ€ เช•เชฐเชตเชพ เช…เชจเซ‡ เชญเซ‚เชฎเชฟเช•เชพเช“ เชธเซ‹เช‚เชชเชตเชพ เชฎเชพเชŸเซ‡ CA (เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เช…เชงเชฟเช•เชพเชฐเซ€) เช›เซ‡. เชจเซ‹เชก เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเชพเชฐเซ‡ MSP เชธเชพเชฅเซ‡ เชธเช‚เชชเชฐเซเช• เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.

เชชเซ€เช…เชฐ เชจเซ‹เชกเซเชธ - เชตเซเชฏเชตเชนเชพเชฐเซ‹ เชšเช•เชพเชธเซ‹, เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชธเซเชŸเซ‹เชฐ เช•เชฐเซ‹, เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸเซเชธ เชšเชฒเชพเชตเซ‹ เช…เชจเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เชธเชพเชฅเซ‡ เช•เซเชฐเชฟเชฏเชพเชชเซเชฐเชคเชฟเช•เซเชฐเชฟเชฏเชพ เช•เชฐเซ‹. เชธเชพเชฅเซ€เช“เชจเซ€ เช“เชณเช– (เชกเชฟเชœเชฟเชŸเชฒ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ) เชนเซ‹เชฏ เช›เซ‡, เชœเซ‡ MSP เชฆเซเชตเชพเชฐเชพ เชœเชพเชฐเซ€ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชฌเชฟเชŸเช•เซ‹เช‡เชจ เช…เชฅเชตเชพ เช‡เชฅเซ‡เชฐเชฟเชฏเชฎ เชจเซ‡เชŸเชตเชฐเซเช•เชฅเซ€ เชตเชฟเชชเชฐเซ€เชค, เชœเซเชฏเชพเช‚ เชคเชฎเชพเชฎ เช—เชพเช‚เช เซ‹เชจเซ‡ เชธเชฎเชพเชจ เช…เชงเชฟเช•เชพเชฐเซ‹ เชนเซ‹เชฏ เช›เซ‡, เชนเชพเช‡เชชเชฐเชฒเซ‡เชœเชฐเชฎเชพเช‚ เชซเซ‡เชฌเซเชฐเชฟเช• เชจเซ‹เชกเซเชธ เชตเชฟเชตเชฟเชง เชญเซ‚เชฎเชฟเช•เชพ เชญเชœเชตเซ‡ เช›เซ‡:

  • เชชเซ€เช…เชฐ เช•เชฆเชพเชš เชธเชฎเชฐเซเชฅเชจ เช†เชชเชจเชพเชฐ เชชเซ€เช…เชฐ (EP) เช…เชจเซ‡ เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸ เชเช•เซเชเชฟเช•เซเชฏเซเชŸ เช•เชฐเซ‹.
  • เชชเซเชฐเชคเชฟเชฌเชฆเซเชง เชชเซ€เช…เชฐ (CP) - เชฌเซเชฒเซ‹เช•เชšเซ‡เชจเชฎเชพเช‚ เชซเช•เซเชค เชกเซ‡เชŸเชพ เชธเชพเชšเชตเซ‹ เช…เชจเซ‡ "เชตเชฐเซเชฒเซเชก เชธเซเชŸเซ‡เชŸ" เช…เชชเชกเซ‡เชŸ เช•เชฐเซ‹.
  • เชเชจเซเช•เชฐ เชชเซ€เชฐ (เชเชชเซ€) - เชœเซ‹ เช˜เชฃเซ€ เชธเช‚เชธเซเชฅเชพเช“ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจเชฎเชพเช‚ เชญเชพเช— เชฒเซ‡ เช›เซ‡, เชคเซ‹ เชคเซ‡เชฎเชจเซ€ เชตเชšเซเชšเซ‡เชจเชพ เชธเช‚เชšเชพเชฐ เชฎเชพเชŸเซ‡ เชเชจเซเช•เชฐ เชชเซ€เช…เชฐเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชฆเชฐเซ‡เช• เชธเช‚เชธเซเชฅเชพเชฎเชพเช‚ เชเช• เช…เชฅเชตเชพ เชตเชงเซ เชเชจเซเช•เชฐ เชชเซ€เช…เชฐ เชนเซ‹เชตเชพ เช†เชตเชถเซเชฏเช• เช›เซ‡. AP เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡, เชธเช‚เชธเซเชฅเชพเชฎเชพเช‚ เช•เซ‹เชˆเชชเชฃ เชชเซ€เช…เชฐ เช…เชจเซเชฏ เชธเช‚เชธเซเชฅเชพเช“เชฎเชพเช‚ เชคเชฎเชพเชฎ เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹ เชตเชฟเชถเซ‡ เชฎเชพเชนเชฟเชคเซ€ เชฎเซ‡เชณเชตเซ€ เชถเช•เซ‡ เช›เซ‡. APs เชตเชšเซเชšเซ‡ เชฎเชพเชนเชฟเชคเซ€ เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เช เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชตเชชเชฐเชพเชฏ เช›เซ‡ เช—เชชเชธเชช เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒ.
  • เชจเซ‡เชคเชพ เชชเซ€เช…เชฐ - เชœเซ‹ เช•เซ‹เชˆ เชธเช‚เชธเซเชฅเชพเชฎเชพเช‚ เช˜เชฃเชพ เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹ เชนเซ‹เชฏ, เชคเซ‹ เชซเช•เซเชค เชชเซ€เช…เชฐเชจเชพ เชจเซ‡เชคเชพเชจเซ‡ เช“เชฐเซเชกเชฐเชฟเช‚เช— เชธเซ‡เชตเชพเชฎเชพเช‚เชฅเซ€ เชฌเซเชฒเซ‹เช•เซเชธ เชชเซเชฐเชพเชชเซเชค เชฅเชถเซ‡ เช…เชจเซ‡ เชฌเชพเช•เซ€เชจเชพ เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹เชจเซ‡ เช†เชชเชถเซ‡. เชฒเซ€เชกเชฐ เช•เซเชฏเชพเช‚ เชคเซ‹ เชธเซเชฅเชฟเชฐ เชฐเซ€เชคเซ‡ เชจเชฟเชฐเซเชฆเชฟเชทเซเชŸ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡ เช…เชฅเชตเชพ เชธเช‚เชธเซเชฅเชพเชจเชพ เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹ เชฆเซเชตเชพเชฐเชพ เช—เชคเชฟเชถเซ€เชฒ เชฐเซ€เชคเซ‡ เชชเชธเช‚เชฆ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡. เช—เชชเชธเชช เชชเซเชฐเซ‹เชŸเซ‹เช•เซ‹เชฒเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชจเซ‡เชคเชพเช“ เชตเชฟเชถเซ‡เชจเซ€ เชฎเชพเชนเชฟเชคเซ€เชจเซ‡ เชธเซเชฎเซ‡เชณ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชชเชฃ เชฅเชพเชฏ เช›เซ‡.

เช…เชธเซเช•เชฏเชพเชฎเชคเซ‹ - เชเช•เชฎเซ‹ เช•เซ‡ เชœเซ‡เชจเซเช‚ เชฎเซ‚เชฒเซเชฏ เช›เซ‡ เช…เชจเซ‡ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชชเชฐ เชธเช‚เช—เซเชฐเชนเชฟเชค เช›เซ‡. เชตเชงเซ เชตเชฟเชถเชฟเชทเซเชŸ เชฐเซ€เชคเซ‡, เช† JSON เชซเซ‹เชฐเซเชฎเซ‡เชŸเชฎเชพเช‚ เช•เซ€-เชตเซ‡เชฒเซเชฏเซ เชกเซ‡เชŸเชพ เช›เซ‡. เชคเซ‡ เช† เชกเซ‡เชŸเชพ เช›เซ‡ เชœเซ‡ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจเชฎเชพเช‚ เชฐเซ‡เช•เซ‹เชฐเซเชก เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชคเซ‡เชฎเชจเซ€ เชชเชพเชธเซ‡ เชเช• เช‡เชคเชฟเชนเชพเชธ เช›เซ‡, เชœเซ‡ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจเชฎเชพเช‚ เชธเช‚เช—เซเชฐเชนเชฟเชค เช›เซ‡, เช…เชจเซ‡ เชตเชฐเซเชคเชฎเชพเชจ เชธเซเชฅเชฟเชคเชฟ เช›เซ‡, เชœเซ‡ "เชตเชฐเซเชฒเซเชก เชธเซเชŸเซ‡เชŸ" เชกเซ‡เชŸเชพเชฌเซ‡เชเชฎเชพเช‚ เชธเช‚เช—เซเชฐเชนเชฟเชค เช›เซ‡. เชตเซเชฏเชตเชธเชพเชฏเชฟเช• เช•เชพเชฐเซเชฏเซ‹เชจเชพ เช†เชงเชพเชฐเซ‡ เชกเซ‡เชŸเชพ เชธเซเชŸเซเชฐเช•เซเชšเชฐเซเชธ เชฎเชจเชธเซเชตเซ€ เชฐเซ€เชคเซ‡ เชญเชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชคเซเชฏเชพเช‚ เช•เซ‹เชˆ เช†เชตเชถเซเชฏเช• เชซเซ€เชฒเซเชก เชจเชฅเซ€, เชเช•เชฎเชพเชคเซเชฐ เชญเชฒเชพเชฎเชฃ เช เช›เซ‡ เช•เซ‡ เชธเช‚เชชเชคเซเชคเชฟเชจเซ‹ เชฎเชพเชฒเชฟเช• เชนเซ‹เชตเซ‹ เชœเซ‹เชˆเช เช…เชจเซ‡ เชคเซ‡ เชฎเซ‚เชฒเซเชฏเชตเชพเชจ เชนเซ‹เชตเซ‹ เชœเซ‹เชˆเช.

เช–เชพเชคเชพเชตเชนเซ€ โ€” เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เช…เชจเซ‡ เชตเชฐเซเชก เชธเซเชŸเซ‡เชŸ เชกเซ‡เชŸเชพเชฌเซ‡เชเชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เช•เชฐเซ‡ เช›เซ‡, เชœเซ‡ เชธเช‚เชชเชคเซเชคเชฟเชจเซ€ เชตเชฐเซเชคเชฎเชพเชจ เชธเซเชฅเชฟเชคเชฟเชจเซ‹ เชธเช‚เช—เซเชฐเชน เช•เชฐเซ‡ เช›เซ‡. เชตเชฟเชถเซเชต เชฐเชพเชœเซเชฏ เชฒเซ‡เชตเชฒเชกเซ€เชฌเซ€ เช…เชฅเชตเชพ เช•เซ‹เชšเชกเซ€เชฌเซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‡ เช›เซ‡.

เชธเซเชฎเชพเชฐเซเชŸ เช•เชฐเชพเชฐ - เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡, เชธเชฟเชธเซเชŸเชฎเชจเชพ เชตเซเชฏเชตเชธเชพเชฏเชฟเช• เชคเชฐเซเช•เชจเซ‡ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชนเชพเชฏเชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช•เชฎเชพเช‚, เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸเชจเซ‡ เชšเซ‡เชˆเชจเช•เซ‹เชก เช•เชนเซ‡เชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชšเซ‡เช‡เชจเช•เซ‹เชกเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡, เช…เชธเซเช•เชฏเชพเชฎเชคเซ‹ เช…เชจเซ‡ เชคเซ‡เชฎเชจเชพ เชชเชฐเชจเชพ เชตเซเชฏเชตเชนเชพเชฐเซ‹ เช‰เชฒเซเชฒเซ‡เช–เชฟเชค เช›เซ‡. เชŸเซ‡เช•เชจเชฟเช•เชฒ เชชเชฐเชฟเชญเชพเชทเชพเชฎเชพเช‚, เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸ เช เชœเซ‡เชเชธ เช…เชฅเชตเชพ เช—เซ‹ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชญเชพเชทเชพเช“เชฎเชพเช‚ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชพเชฏเซ‡เชฒเชพ เชธเซ‹เชซเซเชŸเชตเซ‡เชฐ เชฎเซ‹เชกเซเชฏเซเชฒ เช›เซ‡.

เชธเชฎเชฐเซเชฅเชจ เชจเซ€เชคเชฟ โ€” เชฆเชฐเซ‡เช• เชšเซ‡เชˆเชจเช•เซ‹เชก เชฎเชพเชŸเซ‡, เชคเชฎเซ‡ เชเช• เชจเซ€เชคเชฟ เชธเซ‡เชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช•เซ‡ เชŸเซเชฐเชพเชจเซเชเซ‡เช•เซเชถเชจ เชฎเชพเชŸเซ‡ เช•เซ‡เชŸเชฒเชพ เช•เชจเซเชซเชฐเซเชฎเซ‡เชถเชจเชจเซ€ เช…เชชเซ‡เช•เซเชทเชพ เชฐเชพเช–เชตเซ€ เชœเซ‹เชˆเช เช…เชจเซ‡ เช•เซ‹เชจเซ€ เชชเชพเชธเซ‡เชฅเซ€. เชœเซ‹ เชจเซ€เชคเชฟ เชธเซ‡เชŸ เชจ เชนเซ‹เชฏ, เชคเซ‹ เชกเชฟเชซเซ‹เชฒเซเชŸ เช›เซ‡: "เชšเซ‡เชจเชฒเชฎเชพเช‚ เช•เซ‹เชˆเชชเชฃ เชธเช‚เชธเซเชฅเชพเชจเชพ เช•เซ‹เชˆเชชเชฃ เชธเชญเซเชฏ เชฆเซเชตเชพเชฐเชพ เชตเซเชฏเชตเชนเชพเชฐเชจเซ€ เชชเซเชทเซเชŸเชฟ เชฅเชตเซ€ เชœเซ‹เชˆเช." เชจเซ€เชคเชฟเช“เชจเชพ เช‰เชฆเชพเชนเชฐเชฃเซ‹:

  • เชŸเซเชฐเชพเชจเซเชเซ‡เช•เซเชถเชจ เชธเช‚เชธเซเชฅเชพเชจเชพ เช•เซ‹เชˆเชชเชฃ เชเชกเชฎเชฟเชจเชฟเชธเซเชŸเซเชฐเซ‡เชŸเชฐ เชฆเซเชตเชพเชฐเชพ เชฎเช‚เชœเซ‚เชฐ เชฅเชฏเซ‡เชฒ เชนเซ‹เชตเซเช‚ เช†เชตเชถเซเชฏเช• เช›เซ‡;
  • เชธเช‚เชธเซเชฅเชพเชจเชพ เช•เซ‹เชˆเชชเชฃ เชธเชญเซเชฏ เช…เชฅเชตเชพ เช•เซเชฒเชพเชฏเชจเซเชŸ เชฆเซเชตเชพเชฐเชพ เชชเซเชทเซเชŸเชฟ เชนเซ‹เชตเซ€ เช†เชตเชถเซเชฏเช• เช›เซ‡;
  • เช•เซ‹เชˆเชชเชฃ เชชเซ€เช…เชฐ เชธเช‚เชธเซเชฅเชพ เชฆเซเชตเชพเชฐเชพ เชชเซเชทเซเชŸเชฟ เชฅเชฏเซ‡เชฒ เชนเซ‹เชตเซ€ เช†เชตเชถเซเชฏเช• เช›เซ‡.

เช“เชฐเซเชกเชฐเชฟเช‚เช— เชธเซ‡เชตเชพ โ€” เชŸเซเชฐเชพเชจเซเชเซ‡เช•เซเชถเชจเชจเซ‡ เชฌเซเชฒเซ‹เช•เชฎเชพเช‚ เชชเซ‡เช• เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชšเซ…เชจเชฒเชฎเชพเช‚ เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹เชจเซ‡ เชฎเซ‹เช•เชฒเซ‡ เช›เซ‡. เชจเซ‡เชŸเชตเชฐเซเช• เชชเชฐเชจเชพ เชคเชฎเชพเชฎ เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹เชจเซ‡ เชธเช‚เชฆเซ‡เชถเชพเช“เชจเชพ เชตเชฟเชคเชฐเชฃเชจเซ€ เช–เชพเชคเชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เช”เชฆเซเชฏเซ‹เช—เชฟเช• เชธเชฟเชธเซเชŸเชฎเซ‹ เชฎเชพเชŸเซ‡ เชตเชชเชฐเชพเชฏ เช›เซ‡ เช•เชพเชซเช•เชพ เชธเช‚เชฆเซ‡เชถ เชฌเซเชฐเซ‹เช•เชฐ, เชตเชฟเช•เชพเชธ เช…เชจเซ‡ เชชเชฐเซ€เช•เซเชทเชฃ เชฎเชพเชŸเซ‡ เชธเซ‹เชฒเซ‹.

เช•เซ‰เชฒเชซเซเชฒเซ‹

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

  • เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ Go, Node.js เช…เชฅเชตเชพ Java SDK เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชนเชพเช‡เชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช• เชธเชพเชฅเซ‡ เชตเชพเชคเชšเซ€เชค เช•เชฐเซ‡ เช›เซ‡;
  • เช•เซเชฒเชพเชฏเชจเซเชŸ เชเช• tx เชตเซเชฏเชตเชนเชพเชฐ เชฌเชจเชพเชตเซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชธเชฎเชฐเซเชฅเชจ เช†เชชเชคเชพ เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹เชจเซ‡ เชฎเซ‹เช•เชฒเซ‡ เช›เซ‡;
  • เชชเซ€เช…เชฐ เช•เซเชฒเชพเชฏเชจเซเชŸเชจเชพ เชนเชธเซเชคเชพเช•เซเชทเชฐเชจเซ€ เชšเช•เชพเชธเชฃเซ€ เช•เชฐเซ‡ เช›เซ‡, เชตเซเชฏเชตเชนเชพเชฐ เชชเซ‚เชฐเซเชฃ เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เช•เซเชฒเชพเชฏเชจเซเชŸเชจเซ‡ เชธเชฎเชฐเซเชฅเชจเชจเซ€ เชธเชนเซ€ เชชเชฐเชค เชฎเซ‹เช•เชฒเซ‡ เช›เซ‡. เชšเซ‡เชˆเชจเช•เซ‹เชก เชฎเชพเชคเซเชฐ เชธเชฎเชฐเซเชฅเชจ เช†เชชเชจเชพเชฐ เชชเซ€เช…เชฐ เชชเชฐ เชœ เชเช•เซเชเชฟเช•เซเชฏเซเชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชจเชพ เช…เชฎเชฒเชจเซเช‚ เชชเชฐเชฟเชฃเชพเชฎ เชคเชฎเชพเชฎ เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹เชจเซ‡ เชฎเซ‹เช•เชฒเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เช•เชพเชฐเซเชฏเชจเชพ เช† เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎเชจเซ‡ PBFT (เชชเซเชฐเซ‡เช•เซเชŸเชฟเช•เชฒ เชฌเชพเชฏเชเซ‡เชจเซเชŸเชพเช‡เชจ เชซเซ‹เชฒเซเชŸ เชŸเซ‹เชฒเชฐเชจเซเชŸ) เชธเชฐเซเชตเชธเช‚เชฎเชคเชฟ เช•เชนเซ‡เชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชฅเซ€ เช…เชฒเช— เชชเชกเซ‡ เช›เซ‡ เช•เซเชฒเชพเชธเชฟเช• BFT เชนเช•เซ€เช•เชค เช เช›เซ‡ เช•เซ‡ เชธเช‚เชฆเซ‡เชถ เชฎเซ‹เช•เชฒเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เช›เซ‡ เช…เชจเซ‡ เชชเซเชทเซเชŸเชฟเชจเซ€ เช…เชชเซ‡เช•เซเชทเชพ เชฌเชงเชพ เชธเชนเชญเชพเช—เซ€เช“ เชชเชพเชธเซ‡เชฅเซ€ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เชฎเชพเชคเซเชฐ เชšเซ‹เช•เซเช•เชธ เชธเชฎเซ‚เชนเชฎเชพเช‚เชฅเซ€ เช›เซ‡;
  • เช•เซเชฒเชพเชฏเชจเซเชŸเชจเซ‡ เชธเชฎเชฐเซเชฅเชจ เชจเซ€เชคเชฟเชจเซ‡ เช…เชจเซเชฐเซ‚เชช เชชเซเชฐเชคเชฟเชธเชพเชฆเซ‹เชจเซ€ เชธเช‚เช–เซเชฏเชพ เชชเซเชฐเชพเชชเซเชค เชฅเชฏเชพ เชชเช›เซ€, เชคเซ‡ เช“เชฐเซเชกเชฐเชฟเช‚เช— เชธเซ‡เชตเชพเชจเซ‡ เชตเซเชฏเชตเชนเชพเชฐ เชฎเซ‹เช•เชฒเซ‡ เช›เซ‡;
  • เช‘เชฐเซเชกเชฐเชฟเช‚เช— เชธเซ‡เชตเชพ เชเช• เชฌเซเชฒเซ‹เช• เชœเชจเชฐเซ‡เชŸ เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชคเชฎเชพเชฎ เชชเซเชฐเชคเชฟเชฌเชฆเซเชง เชธเชพเชฅเซ€เช“เชจเซ‡ เชฎเซ‹เช•เชฒเซ‡ เช›เซ‡. เช“เชฐเซเชกเชฐเชฟเช‚เช— เชธเซ‡เชตเชพ เชฌเซเชฒเซ‹เช•เซเชธเชจเชพ เช•เซเชฐเชฎเชฟเช• เชฐเซ‡เช•เซ‹เชฐเซเชกเชฟเช‚เช—เชจเซ‡ เชธเซเชจเชฟเชถเซเชšเชฟเชค เช•เชฐเซ‡ เช›เซ‡, เชœเซ‡ เช•เชนเซ‡เชตเชพเชคเชพ เช–เชพเชคเชพเชตเชนเซ€ เชซเซ‹เชฐเซเช•เชจเซ‡ เชฆเซ‚เชฐ เช•เชฐเซ‡ เช›เซ‡ (เชตเชฟเชญเชพเช— "เชซเซ‹เชฐเซเช•เชธ" เชœเซเช“);
  • เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹เชจเซ‡ เชฌเซเชฒเซ‹เช• เชฎเชณเซ‡ เช›เซ‡, เชธเชฎเชฐเซเชฅเชจ เชจเซ€เชคเชฟ เชซเชฐเซ€เชฅเซ€ เชคเชชเชพเชธเซ‹, เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชชเชฐ เชฌเซเชฒเซ‹เช• เชฒเช–เซ‹ เช…เชจเซ‡ "เชตเชฐเซเชฒเซเชก เชธเซเชŸเซ‡เชŸ" DB เชฎเชพเช‚ เชฐเชพเชœเซเชฏ เชฌเชฆเชฒเซ‹.

เชคเซ‡. เช† เช—เชพเช‚เช เซ‹ เชตเชšเซเชšเซ‡ เชญเซ‚เชฎเชฟเช•เชพเช“เชจเชพ เชตเชฟเชญเชพเชœเชจเชฎเชพเช‚ เชชเชฐเชฟเชฃเชฎเซ‡ เช›เซ‡. เช† เช–เชพเชคเชฐเซ€ เช•เชฐเซ‡ เช›เซ‡ เช•เซ‡ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชธเซเช•เซ‡เชฒเซ‡เชฌเชฒ เช…เชจเซ‡ เชธเซเชฐเช•เซเชทเชฟเชค เช›เซ‡:

  • เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸเซเชธ (เชšเซ‡เชˆเชจเช•เซ‹เชก) เชชเซ€เช…เชฐเซเชธเชจเซ‡ เชธเชฎเชฐเซเชฅเชจ เช†เชชเซ‡ เช›เซ‡. เช† เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸเชจเซ€ เช—เซ‹เชชเชจเซ€เชฏเชคเชพเชจเซ‡ เชธเซเชจเชฟเชถเซเชšเชฟเชค เช•เชฐเซ‡ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เชคเซ‡ เชฌเชงเชพ เชธเชนเชญเชพเช—เซ€เช“ เชฆเซเชตเชพเชฐเชพ เชธเช‚เช—เซเชฐเชนเชฟเชค เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เชฎเชพเชคเซเชฐ เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹เชจเซ‡ เชธเชฎเชฐเซเชฅเชจ เชฆเซเชตเชพเชฐเชพ.
  • เช“เชฐเซเชกเชฐเชฟเช‚เช— เชเชกเชชเชฅเซ€ เช•เชพเชฎ เช•เชฐเชตเซเช‚ เชœเซ‹เชˆเช. เช† เช เชนเช•เซ€เช•เชค เชฆเซเชตเชพเชฐเชพ เชธเซเชจเชฟเชถเซเชšเชฟเชค เชฅเชพเชฏ เช›เซ‡ เช•เซ‡ เช“เชฐเซเชกเชฐเชฟเช‚เช— เชฎเชพเชคเซเชฐ เชเช• เชฌเซเชฒเซ‹เช• เชฌเชจเชพเชตเซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชฒเซ€เชกเชฐ เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹เชจเชพ เชจเชฟเชถเซเชšเชฟเชค เชธเชฎเซ‚เชนเชจเซ‡ เชฎเซ‹เช•เชฒเซ‡ เช›เซ‡.
  • เชชเซเชฐเชคเชฟเชฌเชฆเซเชง เชธเชพเชฅเซ€เชฆเชพเชฐเซ‹ เชซเช•เซเชค เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชธเช‚เช—เซเชฐเชนเชฟเชค เช•เชฐเซ‡ เช›เซ‡ - เชคเซ‡เชฎเชพเช‚เชจเชพ เช˜เชฃเชพ เชนเซ‹เชˆ เชถเช•เซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชฎเชจเซ‡ เช˜เชฃเซ€ เชถเช•เซเชคเชฟ เช…เชจเซ‡ เชคเชพเชคเซเช•เชพเชฒเชฟเช• เช•เชพเชฎเช—เซ€เชฐเซ€เชจเซ€ เชœเชฐเซ‚เชฐ เชจเชฅเซ€.

เชนเชพเชฏเชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช•เชจเชพ เช†เชฐเซเช•เชฟเชŸเซ‡เช•เซเชšเชฐเชฒ เชธเซ‹เชฒเซเชฏเซเชถเชจเซเชธ เช…เชจเซ‡ เชคเซ‡ เช† เชฐเซ€เชคเซ‡ เช•เซ‡เชฎ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เช…เชจเซเชฏเชฅเชพ เชจเชนเซ€เช‚ เชคเซ‡เชจเชพ เชชเชฐ เชตเชงเซ เชตเชฟเช—เชคเซ‹ เช…เชนเซ€เช‚ เชฎเชณเซ€ เชถเช•เซ‡ เช›เซ‡: เช†เชฐเซเช•เชฟเชŸเซ‡เช•เซเชšเชฐ เชฎเซ‚เชณ เช…เชฅเชตเชพ เช…เชนเซ€เช‚: เชนเชพเชฏเชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช•: เชชเชฐเชตเชพเชจเช—เซ€ เชชเซเชฐเชพเชชเซเชค เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชฎเชพเชŸเซ‡ เชตเชฟเชคเชฐเชฟเชค เช“เชชเชฐเซ‡เชŸเชฟเช‚เช— เชธเชฟเชธเซเชŸเชฎ.

เชคเซ‡เชฅเซ€, เชนเชพเชฏเชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช• เช เช–เชฐเซ‡เช–เชฐ เชธเชพเชฐเซเชตเชคเซเชฐเชฟเช• เชธเชฟเชธเซเชŸเชฎ เช›เซ‡ เชœเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เชคเชฎเซ‡ เช† เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹:

  • เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸ เชฎเชฟเช•เซ‡เชจเชฟเชเชฎเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชฎเชจเชธเซเชตเซ€ เชตเซเชฏเชตเชธเชพเชฏ เชคเชฐเซเช•เชจเซ‹ เช…เชฎเชฒ เช•เชฐเซ‹;
  • เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชกเซ‡เชŸเชพเชฌเซ‡เชเชฎเชพเช‚เชฅเซ€ JSON เชซเซ‹เชฐเซเชฎเซ‡เชŸเชฎเชพเช‚ เชกเซ‡เชŸเชพ เชฐเซ‡เช•เซ‹เชฐเซเชก เช•เชฐเซ‹ เช…เชจเซ‡ เชฎเซ‡เชณเชตเซ‹;
  • เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐ เช…เชงเชฟเช•เชพเชฐเซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ API เชเช•เซเชธเซ‡เชธ เช†เชชเซ‹ เช…เชจเซ‡ เชšเช•เชพเชธเซ‹.

เชนเชตเซ‡ เชœเซเชฏเชพเชฐเซ‡ เช†เชชเชฃเซ‡ เชนเชพเชฏเชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช•เชจเซ€ เชตเชฟเชถเชฟเชทเซเชŸเชคเชพเช“ เชตเชฟเชถเซ‡ เชฅเซ‹เชกเซเช‚ เชธเชฎเชœเซ€เช เช›เซ€เช, เชšเชพเชฒเซ‹ เช†เช–เชฐเซ‡ เช•เช‚เชˆเช• เช‰เชชเชฏเซ‹เช—เซ€ เช•เชฐเซ€เช!

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชœเชฎเชพเชตเชตเซเช‚

เชธเชฎเชธเซเชฏเชพเชจเซ€ เชฐเชšเชจเชพ

เช•เชพเชฐเซเชฏ เชจเซ€เชšเซ‡เชจเชพ เช•เชพเชฐเซเชฏเซ‹ เชธเชพเชฅเซ‡ Citcoin เชจเซ‡เชŸเชตเชฐเซเช•เชจเซ‡ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เชตเชพเชจเซเช‚ เช›เซ‡: เชเช• เชเช•เชพเช‰เชจเซเชŸ เชฌเชจเชพเชตเซ‹, เชฌเซ‡เชฒเซ‡เชจเซเชธ เชฎเซ‡เชณเชตเซ‹, เชคเชฎเชพเชฐเซเช‚ เชเช•เชพเช‰เชจเซเชŸ เชŸเซ‹เชช เช…เชช เช•เชฐเซ‹, เชเช• เชเช•เชพเช‰เชจเซเชŸเชฎเชพเช‚เชฅเซ€ เชฌเซ€เชœเชพ เชเช•เชพเช‰เชจเซเชŸเชฎเชพเช‚ เชธเชฟเช•เซเช•เชพ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเซ‹. เชšเชพเชฒเซ‹ เชเช• เช“เชฌเซเชœเซ‡เช•เซเชŸ เชฎเซ‹เชกเซ‡เชฒ เชฆเซ‹เชฐเซ€เช, เชœเซ‡เชจเซ‡ เช†เชชเชฃเซ‡ เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸเชฎเชพเช‚ เช†เช—เชณ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เซ€เชถเซเช‚. เชคเซ‡เชฅเซ€, เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชเชตเชพ เชเช•เชพเช‰เชจเซเชŸ เชนเชถเซ‡ เชœเซ‡ เชจเชพเชฎเซ‹ เชฆเซเชตเชพเชฐเชพ เช“เชณเช–เชพเชฏ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชฎเชพเช‚ เชฌเซ‡เชฒเซ‡เชจเซเชธ เช…เชจเซ‡ เชเช•เชพเช‰เชจเซเชŸเซเชธเชจเซ€ เชธเซ‚เชšเชฟ เชนเชถเซ‡. เชนเชพเชˆเชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช• เช…เชธเซเช•เชฏเชพเชฎเชคเซ‹เชจเชพ เชธเช‚เชฆเชฐเซเชญเชฎเชพเช‚ เชเช•เชพเช‰เชจเซเชŸเซเชธ เช…เชจเซ‡ เชเช•เชพเช‰เชจเซเชŸเซเชธเชจเซ€ เชธเซ‚เชšเชฟ เช›เซ‡. เชคเชฆเชจเซเชธเชพเชฐ, เชคเซ‡เชฎเชจเซ€ เชชเชพเชธเซ‡ เช‡เชคเชฟเชนเชพเชธ เช…เชจเซ‡ เชตเชฐเซเชคเชฎเชพเชจ เชธเซเชฅเชฟเชคเชฟ เช›เซ‡. เชนเซเช‚ เช†เชจเซ‡ เชธเซเชชเชทเซเชŸ เชฐเซ€เชคเซ‡ เชฆเซ‹เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชคเซเชจ เช•เชฐเซ€เชถ:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เชŸเซ‹เชšเชจเชพ เช†เช‚เช•เชกเชพ เชตเชฐเซเชคเชฎเชพเชจ เชธเซเชฅเชฟเชคเชฟ เช›เซ‡, เชœเซ‡ "เชตเชฐเซเชฒเซเชก เชธเซเชŸเซ‡เชŸ" เชกเซ‡เชŸเชพเชฌเซ‡เชเชฎเชพเช‚ เชธเช‚เช—เซเชฐเชนเชฟเชค เช›เซ‡. เชคเซ‡เชฎเชจเซ€ เชจเซ€เชšเซ‡ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจเชฎเชพเช‚ เชธเช‚เช—เซเชฐเชนเชฟเชค เช‡เชคเชฟเชนเชพเชธ เชฆเชฐเซเชถเชพเชตเชคเชพ เช†เช‚เช•เชกเชพเช“ เช›เซ‡. เช…เชธเซเช•เชฏเชพเชฎเชคเซ‹เชจเซ€ เชตเชฐเซเชคเชฎเชพเชจ เชธเซเชฅเชฟเชคเชฟ เชตเซเชฏเชตเชนเชพเชฐเซ‹ เชฆเซเชตเชพเชฐเชพ เชฌเชฆเชฒเชพเชฏ เช›เซ‡. เชธเช‚เชชเชคเซเชคเชฟ เชซเช•เซเชค เชธเช‚เชชเซ‚เชฐเซเชฃ เชฐเซ€เชคเซ‡ เชฌเชฆเชฒเชพเชฏ เช›เซ‡, เชคเซ‡เชฅเซ€ เชตเซเชฏเชตเชนเชพเชฐเชจเชพ เชชเชฐเชฟเชฃเชพเชฎเซ‡, เชเช• เชจเชตเซ‹ เช‘เชฌเซเชœเซ‡เช•เซเชŸ เชฌเชจเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เช…เชจเซ‡ เชธเช‚เชชเชคเซเชคเชฟเชจเซเช‚ เชตเชฐเซเชคเชฎเชพเชจ เชฎเซ‚เชฒเซเชฏ เช‡เชคเชฟเชนเชพเชธเชฎเชพเช‚ เชœเชพเชฏ เช›เซ‡.

IBM เช•เซเชฒเชพเช‰เชก

เช…เชฎเซ‡ เชเช• เชเช•เชพเช‰เชจเซเชŸ เชฌเชจเชพเชตเซ€เช เช›เซ€เช IBM เช•เซเชฒเชพเช‰เชก. เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชคเซ‡เชจเซ‡ เชชเซ‡-เชเช-เชฏเซ-เช—เซ‹ เชชเชฐ เช…เชชเช—เซเชฐเซ‡เชก เช•เชฐเชตเซเช‚ เช†เชตเชถเซเชฏเช• เช›เซ‡. เช† เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เชเชกเชชเซ€ เชจ เชนเซ‹เชˆ เชถเช•เซ‡, เช•เชพเชฐเชฃ เช•เซ‡... IBM เชตเชงเชพเชฐเชพเชจเซ€ เชฎเชพเชนเชฟเชคเซ€เชจเซ€ เชตเชฟเชจเช‚เชคเซ€ เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชฎเซ‡เชจเซเชฏเซเช…เชฒเซ€ เชšเช•เชพเชธเซ‡ เช›เซ‡. เชธเช•เชพเชฐเชพเชคเซเชฎเช• เชจเซ‹เช‚เชง เชชเชฐ, เชนเซเช‚ เช•เชนเซ€ เชถเช•เซเช‚ เช›เซเช‚ เช•เซ‡ IBM เชชเชพเชธเซ‡ เชธเชพเชฐเซ€ เชคเชพเชฒเซ€เชฎ เชธเชพเชฎเช—เซเชฐเซ€ เช›เซ‡ เชœเซ‡ เชคเชฎเชจเซ‡ เชคเซ‡เชฎเชจเชพ เช•เซเชฒเชพเช‰เชกเชฎเชพเช‚ เชนเชพเช‡เชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช•เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡. เชฎเชจเซ‡ เชฒเซ‡เช–เซ‹ เช…เชจเซ‡ เช‰เชฆเชพเชนเชฐเชฃเซ‹เชจเซ€ เชจเซ€เชšเซ‡เชจเซ€ เชถเซเชฐเซ‡เชฃเซ€ เช—เชฎเซเชฏเซเช‚:

เชจเซ€เชšเซ‡เชจเชพ IBM เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎเชจเชพ เชธเซเช•เซเชฐเซ€เชจเชถเซ‹เชŸ เช›เซ‡. เช† เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชฌเชจเชพเชตเชตเซเช‚ เชคเซ‡ เช…เช‚เช—เซ‡เชจเซ€ เชธเซ‚เชšเชจเชพ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เช•เชพเชฐเซเชฏเชจเชพ เช…เชตเช•เชพเชถเชจเซเช‚ เชจเชฟเชฆเชฐเซเชถเชจ เช›เซ‡. เชคเซ‡เชฅเซ€, เช…เชฎเชพเชฐเชพ เชนเซ‡เชคเซเช“ เชฎเชพเชŸเซ‡, เช…เชฎเซ‡ เชเช• เชธเช‚เชธเซเชฅเชพ เชฌเชจเชพเชตเซ€เช เช›เซ€เช:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เช…เชฎเซ‡ เชคเซ‡เชฎเชพเช‚ เชจเซ‹เชกเซเชธ เชฌเชจเชพเชตเซ€เช เช›เซ€เช: Orderer CA, Org1 CA, Orderer Peer:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เช…เชฎเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเช“ เชฌเชจเชพเชตเซ€เช เช›เซ€เช:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เชเช• เชšเซ‡เชจเชฒ เชฌเชจเชพเชตเซ‹ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชธเชฟเชŸเช•เซ‹เชˆเชจ เช•เชนเซ‹:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เช†เชตเชถเซเชฏเช•เชชเชฃเซ‡ เชšเซ‡เชจเชฒ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เช›เซ‡, เชคเซ‡เชฅเซ€ เชคเซ‡ เชฌเซเชฒเซ‹เช• เชถเซ‚เชจเซเชฏ (เชœเซ€เชจเซ‡เชธเชฟเชธ เชฌเซเชฒเซ‹เช•) เชฅเซ€ เชถเชฐเซ‚ เชฅเชพเชฏ เช›เซ‡:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸ เชฒเช–เชตเซ‹

/*
 * Citcoin smart-contract v1.5 for Hyperledger Fabric
 * (c) Alexey Sushkov, 2019
 */
 
'use strict';
 
const { Contract } = require('fabric-contract-api');
const maxAccounts = 5;
 
class CitcoinEvents extends Contract {
 
    async instantiate(ctx) {
        console.info('instantiate');
        let emptyList = [];
        await ctx.stub.putState('accounts', Buffer.from(JSON.stringify(emptyList)));
    }
    // Get all accounts
    async GetAccounts(ctx) {
        // Get account list:
        let accounts = '{}'
        let accountsData = await ctx.stub.getState('accounts');
        if (accountsData) {
            accounts = JSON.parse(accountsData.toString());
        } else {
            throw new Error('accounts not found');
        }
        return accountsData.toString()
    }
     // add a account object to the blockchain state identifited by their name
    async AddAccount(ctx, name, balance) {
        // this is account data:
        let account = {
            name: name,
            balance: Number(balance),       
            type: 'account',
        };
        // create account:
        await ctx.stub.putState(name, Buffer.from(JSON.stringify(account)));
 
        // Add account to list:
        let accountsData = await ctx.stub.getState('accounts');
        if (accountsData) {
            let accounts = JSON.parse(accountsData.toString());
            if (accounts.length < maxAccounts)
            {
                accounts.push(name);
                await ctx.stub.putState('accounts', Buffer.from(JSON.stringify(accounts)));
            } else {
                throw new Error('Max accounts number reached');
            }
        } else {
            throw new Error('accounts not found');
        }
        // return  object
        return JSON.stringify(account);
    }
    // Sends money from Account to Account
    async SendFrom(ctx, fromAccount, toAccount, value) {
        // get Account from
        let fromData = await ctx.stub.getState(fromAccount);
        let from;
        if (fromData) {
            from = JSON.parse(fromData.toString());
            if (from.type !== 'account') {
                throw new Error('wrong from type');
            }   
        } else {
            throw new Error('Accout from not found');
        }
        // get Account to
        let toData = await ctx.stub.getState(toAccount);
        let to;
        if (toData) {
            to = JSON.parse(toData.toString());
            if (to.type !== 'account') {
                throw new Error('wrong to type');
            }  
        } else {
            throw new Error('Accout to not found');
        }
 
        // update the balances
        if ((from.balance - Number(value)) >= 0 ) {
            from.balance -= Number(value);
            to.balance += Number(value);
        } else {
            throw new Error('From Account: not enought balance');          
        }
 
        await ctx.stub.putState(from.name, Buffer.from(JSON.stringify(from)));
        await ctx.stub.putState(to.name, Buffer.from(JSON.stringify(to)));
                 
        // define and set Event
        let Event = {
            type: "SendFrom",
            from: from.name,
            to: to.name,
            balanceFrom: from.balance,
            balanceTo: to.balance,
            value: value
        };
        await ctx.stub.setEvent('SendFrom', Buffer.from(JSON.stringify(Event)));
 
        // return to object
        return JSON.stringify(from);
    }
 
    // get the state from key
    async GetState(ctx, key) {
        let data = await ctx.stub.getState(key);
        let jsonData = JSON.parse(data.toString());
        return JSON.stringify(jsonData);
    }
    // GetBalance   
    async GetBalance(ctx, accountName) {
        let data = await ctx.stub.getState(accountName);
        let jsonData = JSON.parse(data.toString());
        return JSON.stringify(jsonData);
    }
     
    // Refill own balance
    async RefillBalance(ctx, toAccount, value) {
        // get Account to
        let toData = await ctx.stub.getState(toAccount);
        let to;
        if (toData) {
            to = JSON.parse(toData.toString());
            if (to.type !== 'account') {
                throw new Error('wrong to type');
            }  
        } else {
            throw new Error('Accout to not found');
        }
 
        // update the balance
        to.balance += Number(value);
        await ctx.stub.putState(to.name, Buffer.from(JSON.stringify(to)));
                 
        // define and set Event
        let Event = {
            type: "RefillBalance",
            to: to.name,
            balanceTo: to.balance,
            value: value
        };
        await ctx.stub.setEvent('RefillBalance', Buffer.from(JSON.stringify(Event)));
 
        // return to object
        return JSON.stringify(from);
    }
}
module.exports = CitcoinEvents;

เชธเชพเชนเชœเชฟเช• เชฐเซ€เชคเซ‡, เช…เชนเซ€เช‚ เชฌเชงเซเช‚ เชธเซเชชเชทเซเชŸ เชนเซ‹เชตเซเช‚ เชœเซ‹เชˆเช:

  • เช˜เชฃเชพ เชซเช‚เช•เซเชถเชจเซเชธ เช›เซ‡ (AddAccount, GetAccounts, SendFrom, GetBalance, RefillBalance) เชœเซ‡เชจเซ‡ เชกเซ‡เชฎเซ‹ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎ Hyperledger Fabric API เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เช•เซ‰เชฒ เช•เชฐเชถเซ‡.
  • SendFrom เช…เชจเซ‡ RefillBalance เชซเช‚เช•เซเชถเชจ เชกเซ‡เชฎเซ‹ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎ เชชเซเชฐเชพเชชเซเชค เช•เชฐเชถเซ‡ เชคเซ‡เชตเซ€ เช‡เชตเซ‡เชจเซเชŸเซเชธ เชœเชจเชฐเซ‡เชŸ เช•เชฐเซ‡ เช›เซ‡.
  • เชœเซเชฏเชพเชฐเซ‡ เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเซ‡เช•เซเชŸ เช‡เชจเซเชธเซเชŸเชจเซเชŸ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เชคเซเชฏเชพเชฐเซ‡ เช‡เชจเซเชธเซเชŸเชจเซเชŸเชฟเชเชŸ เชซเช‚เช•เซเชถเชจเชจเซ‡ เชเช•เชตเชพเชฐ เชฌเซ‹เชฒเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เชตเชพเชธเซเชคเชตเชฎเชพเช‚, เชคเซ‡ เชฎเชพเชคเซเชฐ เชเช• เชœ เชตเชพเชฐ เชจเชนเซ€เช‚, เชชเชฐเช‚เชคเซ เชฆเชฐเซ‡เช• เชตเช–เชคเซ‡ เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸ เชตเชฐเซเชเชจ เชฌเชฆเชฒเชพเชฏ เช›เซ‡. เชคเซ‡เชฅเซ€, เช–เชพเชฒเซ€ เชเชฐเซ‡ เชธเชพเชฅเซ‡ เชธเซ‚เชšเชฟ เชถเชฐเซ‚ เช•เชฐเชตเซ€ เช เช–เชฐเชพเชฌ เชตเชฟเชšเชพเชฐ เช›เซ‡, เช•เชพเชฐเชฃ เช•เซ‡ เชนเชตเซ‡, เชœเซเชฏเชพเชฐเซ‡ เช†เชชเชฃเซ‡ เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸเชจเซเช‚ เชตเชฐเซเชเชจ เชฌเชฆเชฒเซ€เชถเซเช‚, เชคเซเชฏเชพเชฐเซ‡ เช…เชฎเซ‡ เชตเชฐเซเชคเชฎเชพเชจ เชธเซ‚เชšเชฟ เช—เซเชฎเชพเชตเซ€เชถเซเช‚. เชชเชฐเช‚เชคเซ เชคเซ‡ เช เซ€เช• เช›เซ‡, เชนเซเช‚ เชซเช•เซเชค เชถเซ€เช–เซ€ เชฐเชนเซเชฏเซ‹ เช›เซเช‚).
  • เชเช•เชพเช‰เชจเซเชŸเซเชธ เช…เชจเซ‡ เชเช•เชพเช‰เชจเซเชŸเซเชธเชจเซ€ เชธเซ‚เชšเชฟ เช JSON เชกเซ‡เชŸเชพ เชธเซเชŸเซเชฐเช•เซเชšเชฐเซเชธ เช›เซ‡. เชœเซ‡เชเชธเชจเซ‹ เช‰เชชเชฏเซ‹เช— เชกเซ‡เชŸเชพ เชฎเซ‡เชจเซ€เชชเซเชฏเซเชฒเซ‡เชถเชจ เชฎเชพเชŸเซ‡ เชฅเชพเชฏ เช›เซ‡.
  • เชคเชฎเซ‡ getState เชซเช‚เช•เซเชถเชจ เช•เซ‰เชฒเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชธเช‚เชชเชคเซเชคเชฟเชจเซเช‚ เชตเชฐเซเชคเชฎเชพเชจ เชฎเซ‚เชฒเซเชฏ เชฎเซ‡เชณเชตเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เชชเซเชŸเชธเซเชŸเซ‡เชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชคเซ‡เชจเซ‡ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹.
  • เชเช•เชพเช‰เชจเซเชŸ เชฌเชจเชพเชตเชคเซ€ เชตเช–เชคเซ‡, AddAccount เชซเช‚เช•เซเชถเชจ เช•เชนเซ‡เชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชœเซ‡เชฎเชพเช‚ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจเชฎเชพเช‚ เชเช•เชพเช‰เชจเซเชŸเซเชธเชจเซ€ เชฎเชนเชคเซเชคเชฎ เชธเช‚เช–เซเชฏเชพ (maxAccounts = 5) เชฎเชพเชŸเซ‡ เชธเชฐเช–เชพเชฎเชฃเซ€ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡. เช…เชจเซ‡ เช…เชนเซ€เช‚ เชเช• เชœเชพเชฎ เช›เซ‡ (เชถเซเช‚ เชคเชฎเซ‡ เชจเซ‹เช‚เชงเซเชฏเซเช‚ เช›เซ‡?), เชœเซ‡ เชเช•เชพเช‰เชจเซเชŸเซเชธเชจเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เช…เชจเช‚เชค เชตเชงเชพเชฐเซ‹ เชคเชฐเชซ เชฆเซ‹เชฐเซ€ เชœเชพเชฏ เช›เซ‡. เช†เชตเซ€ เชญเซ‚เชฒเซ‹ เชŸเชพเชณเชตเซ€ เชœเซ‹เชˆเช)

เช†เช—เชณ, เช…เชฎเซ‡ เชšเซ…เชจเชฒเชฎเชพเช‚ เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸ เชฒเซ‹เชก เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เช‡เชจเซเชธเซเชŸเชจเซเชŸ เช•เชฐเซ€เช เช›เซ€เช:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เชšเชพเชฒเซ‹ เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡เชจเชพ เชตเซเชฏเชตเชนเชพเชฐเชจเซ‡ เชœเซ‹เชˆเช:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เชšเชพเชฒเซ‹ เช…เชฎเชพเชฐเซ€ เชšเซ‡เชจเชฒ เชตเชฟเชถเซ‡เชจเซ€ เชตเชฟเช—เชคเซ‹ เชœเซ‹เชˆเช:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เชชเชฐเชฟเชฃเชพเชฎเซ‡, เช…เชฎเชจเซ‡ IBM เช•เซเชฒเชพเช‰เชกเชฎเชพเช‚ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชจเซ‡เชŸเชตเชฐเซเช•เชจเซ‹ เชจเซ€เชšเซ‡เชจเซ‹ เช†เช•เซƒเชคเชฟ เชฎเชณเซ‡ เช›เซ‡. เช†เช•เซƒเชคเชฟ เชตเชฐเซเชšเซเชฏเซเช…เชฒ เชธเชฐเซเชตเชฐ เชชเชฐ เชเชฎเซ‡เชเซ‹เชจ เช•เซเชฒเชพเช‰เชกเชฎเชพเช‚ เชšเชพเชฒเชคเซ‹ เชกเซ‡เชฎเซ‹ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎ เชชเชฃ เชฌเชคเชพเชตเซ‡ เช›เซ‡ (เช†เช—เชณเชจเชพ เชตเชฟเชญเชพเช—เชฎเชพเช‚ เชคเซ‡เชจเชพ เชตเชฟเชถเซ‡ เชตเชงเซ):

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

Hyperledger Fabric API เช•เซ‰เชฒเซเชธ เชฎเชพเชŸเซ‡ GUI เชฌเชจเชพเชตเชตเซเช‚

เชนเชพเช‡เชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช• เชชเชพเชธเซ‡ เชเช• API เช›เซ‡ เชœเซ‡เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช† เชฎเชพเชŸเซ‡ เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡:

  • เชšเซ‡เชจเชฒ เชฌเชจเชพเชตเซ‹;
  • เช•เชจเซ‡เช•เซเชถเชจเซเชธ เชชเซ€เช…เชฐ เชŸเซ เชšเซ‡เชจเชฒ;
  • เชšเซ‡เชจเชฒเชฎเชพเช‚ เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเซ‡เช•เซเชŸเชจเซ€ เชธเซเชฅเชพเชชเชจเชพ เช…เชจเซ‡ เช‡เชจเซเชธเซเชŸเชจเซเชŸเซ‡เชถเชจ;
  • เช•เซ‰เชฒเชฟเช‚เช— เชตเซเชฏเชตเชนเชพเชฐเซ‹;
  • เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชชเชฐ เชฎเชพเชนเชฟเชคเซ€เชจเซ€ เชตเชฟเชจเช‚เชคเซ€ เช•เชฐเซ‹.

เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เชตเชฟเช•เชพเชธ

เช…เชฎเชพเชฐเชพ เชกเซ‡เชฎเซ‹ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฎเชพเช‚ เช…เชฎเซ‡ API เชจเซ‹ เช‰เชชเชฏเซ‹เช— เชซเช•เซเชค เชตเซเชฏเชตเชนเชพเชฐเซ‹เชจเซ‡ เช•เซ‰เชฒ เช•เชฐเชตเชพ เช…เชจเซ‡ เชฎเชพเชนเชฟเชคเซ€เชจเซ€ เชตเชฟเชจเช‚เชคเซ€ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เช•เชฐเซ€เชถเซเช‚, เช•เชพเชฐเชฃ เช•เซ‡ เช…เชฎเซ‡ เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ IBM เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชฌเชพเช•เซ€เชจเชพ เชชเช—เชฒเชพเช‚ เชชเซ‚เชฐเซเชฃ เช•เชฐเซ€ เชฒเซ€เชงเชพ เช›เซ‡. เช…เชฎเซ‡ เชฎเชพเชจเช• เชŸเซ‡เช•เชจเซ‹เชฒเซ‹เชœเซ€ เชธเซเชŸเซ‡เช•เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ GUI เชฒเช–เซ€เช เช›เซ€เช: Express.js + Vue.js + Node.js. เชคเชฎเซ‡ เช†เชงเซเชจเชฟเช• เชตเซ‡เชฌ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเซเชธ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชฌเชจเชพเชตเชตเชพเชจเซเช‚ เชถเชฐเซ‚ เช•เชฐเชตเซเช‚ เชคเซ‡ เช…เช‚เช—เซ‡ เชเช• เช…เชฒเช— เชฒเซ‡เช– เชฒเช–เซ€ เชถเช•เซ‹ เช›เซ‹. เช…เชนเซ€เช‚ เชนเซเช‚ เชชเซเชฐเชตเชšเชจเซ‹เชจเซ€ เชถเซเชฐเซ‡เชฃเซ€เชจเซ€ เชเช• เชฒเชฟเช‚เช• เชฎเซ‚เช•เซ€เชถ เชœเซ‡ เชฎเชจเซ‡ เชธเซŒเชฅเซ€ เชตเชงเซ เช—เชฎเซเชฏเซเช‚: Vue.js เช…เชจเซ‡ Express.js เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชธเซเชŸเซ‡เช• เชตเซ‡เชฌ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ. เชชเชฐเชฟเชฃเชพเชฎ เช Google เชจเซ€ เชฎเชŸเชฟเชฐเชฟเชฏเชฒ เชกเชฟเชเชพเช‡เชจ เชถเซˆเชฒเซ€เชฎเชพเช‚ เชชเชฐเชฟเชšเชฟเชค เช—เซเชฐเชพเชซเชฟเช•เชฒ เช‡เชจเซเชŸเชฐเชซเซ‡เชธ เชธเชพเชฅเซ‡ เช•เซเชฒเชพเชฏเช‚เชŸ-เชธเชฐเซเชตเชฐ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เช›เซ‡. เช•เซเชฒเชพเชฏเช‚เชŸ เช…เชจเซ‡ เชธเชฐเซเชตเชฐ เชตเชšเซเชšเซ‡เชจเชพ REST APIเชฎเชพเช‚ เช˜เชฃเชพ เช•เซ‰เชฒเซเชธเชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เชฅเชพเชฏ เช›เซ‡:

  • HyperledgerDemo/v1/init - เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชถเชฐเซ‚ เช•เชฐเซ‹;
  • HyperledgerDemo/v1/accounts/list โ€” เชฌเชงเชพ เช–เชพเชคเชพเช“เชจเซ€ เชฏเชพเชฆเซ€ เชฎเซ‡เชณเชตเซ‹;
  • HyperledgerDemo/v1/account?name=Bob&balance=100 โ€” เชฌเซ‹เชฌ เชเช•เชพเช‰เชจเซเชŸ เชฌเชจเชพเชตเซ‹;
  • HyperledgerDemo/v1/info?account=Bob โ€” เชฌเซ‹เชฌ เชเช•เชพเช‰เชจเซเชŸ เชตเชฟเชถเซ‡ เชฎเชพเชนเชฟเชคเซ€ เชฎเซ‡เชณเชตเซ‹;
  • HyperledgerDemo/v1/transaction?from=Bob&to=Alice&volume=2 - เชฌเซ‹เชฌเชฅเซ€ เชเชฒเชฟเชธเชฎเชพเช‚ เชฌเซ‡ เชธเชฟเช•เซเช•เชพ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเซ‹;
  • HyperledgerDemo/v1/disconnect - เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชธเชพเชฅเซ‡ เชœเซ‹เชกเชพเชฃ เชฌเช‚เชง เช•เชฐเซ‹.

เชฆเชพเช–เชฒเชพเช“ เชธเชพเชฅเซ‡ API เชจเซเช‚ เชตเชฐเซเชฃเชจ เชœเซ‡เชฎเชพเช‚ เชถเชพเชฎเซ‡เชฒ เช›เซ‡ เชชเซ‹เชธเซเชŸเชฎเซ‡เชจ เชตเซ‡เชฌเชธเชพเช‡เชŸ - HTTP API เชจเชพ เชชเชฐเซ€เช•เซเชทเชฃ เชฎเชพเชŸเซ‡ เชœเชพเชฃเซ€เชคเซ‹ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎ.

เชเชฎเซ‡เชเซ‹เชจ เช•เซเชฒเชพเช‰เชกเชฎเชพเช‚ เชกเซ‡เชฎเซ‹ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ

เชฎเซ‡เช‚ เชเชฎเซ‡เชเซ‹เชจ เชชเชฐ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เช…เชชเชฒเซ‹เชก เช•เชฐเซ€ เช•เชพเชฐเชฃ เช•เซ‡... IBM เชนเชœเซ เชชเชฃ เชฎเชพเชฐเซเช‚ เชเช•เชพเช‰เชจเซเชŸ เช…เชชเช—เซเชฐเซ‡เชก เช•เชฐเชตเชพเชฎเชพเช‚ เช…เชจเซ‡ เชฎเชจเซ‡ เชตเชฐเซเชšเซเชฏเซเช…เชฒ เชธเชฐเซเชตเชฐ เชฌเชจเชพเชตเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเชตเชพเชฎเชพเช‚ เชธเช•เซเชทเชฎ เชจเชฅเซ€. เชกเซ‹เชฎเซ‡เชจเชฎเชพเช‚ เชšเซ‡เชฐเซ€ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช‰เชฎเซ‡เชฐเชตเซ€: www.citcoin.info. เชนเซเช‚ เชธเชฐเซเชตเชฐเชจเซ‡ เชฅเซ‹เชกเชพ เชธเชฎเชฏ เชฎเชพเชŸเซ‡ เชšเชพเชฒเซ เชฐเชพเช–เซ€เชถ, เชชเช›เซ€ เชคเซ‡เชจเซ‡ เชฌเช‚เชง เช•เชฐเซ€เชถ, เช•เชพเชฐเชฃ เช•เซ‡... เชญเชพเชกเชพ เชฎเชพเชŸเซ‡เชจเชพ เชธเซ‡เชจเซเชŸ เชŸเชชเช•เชคเชพ เชนเซ‹เชฏ เช›เซ‡, เช…เชจเซ‡ เชธเชฟเชŸเช•เซ‹เชˆเชจเชจเชพ เชธเชฟเช•เซเช•เชพ เชนเชœเซ เชธเซเชงเซ€ เชธเซเชŸเซ‹เช• เชเช•เซเชธเชšเซ‡เชจเซเชœเชฎเชพเช‚ เชธเซ‚เชšเชฟเชฌเชฆเซเชง เชจเชฅเซ€) เชนเซเช‚ เชฒเซ‡เช–เชฎเชพเช‚ เชกเซ‡เชฎเซ‹เชจเชพ เชธเซเช•เซเชฐเซ€เชจเชถเซ‰เชŸเซเชธเชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เช•เชฐเซเช‚ เช›เซเช‚ เชœเซ‡เชฅเซ€ เช•เชพเชฐเซเชฏเชจเซ‹ เชคเชฐเซเช• เชธเซเชชเชทเซเชŸ เชฅเชพเชฏ. เชกเซ‡เชฎเซ‹ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ เช† เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡:

  • เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชถเชฐเซ‚ เช•เชฐเซ‹;
  • เชเช•เชพเช‰เชจเซเชŸ เชฌเชจเชพเชตเซ‹ (เชชเชฐเช‚เชคเซ เชนเชตเซ‡ เชคเชฎเซ‡ เชจเชตเซเช‚ เชเช•เชพเช‰เชจเซเชŸ เชฌเชจเชพเชตเซ€ เชถเช•เชคเชพ เชจเชฅเซ€, เช•เชพเชฐเชฃ เช•เซ‡ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจเชฎเชพเช‚ เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸเชฎเชพเช‚ เช‰เชฒเซเชฒเซ‡เช–เชฟเชค เชเช•เชพเช‰เชจเซเชŸเซเชธเชจเซ€ เชฎเชนเชคเซเชคเชฎ เชธเช‚เช–เซเชฏเชพ เชชเชนเซ‹เช‚เชšเซ€ เช—เชˆ เช›เซ‡);
  • เชเช•เชพเช‰เชจเซเชŸเซเชธเชจเซ€ เชธเซ‚เชšเชฟ เชฎเซ‡เชณเชตเซ‹;
  • เชเชฒเชฟเชธ, เชฌเซ‹เชฌ เช…เชจเซ‡ เชเชฒเซ‡เช•เซเชธ เชตเชšเซเชšเซ‡ เชธเชฟเชŸเช•เซ‹เชˆเชจ เชธเชฟเช•เซเช•เชพ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเซ‹;
  • เช‡เชตเซ‡เชจเซเชŸเซเชธ เชชเซเชฐเชพเชชเซเชค เช•เชฐเซ‹ (เชชเชฐเช‚เชคเซ เชนเชตเซ‡ เช‡เชตเซ‡เชจเซเชŸเซเชธ เชฌเชคเชพเชตเชตเชพเชจเซ€ เช•เซ‹เชˆ เชฐเซ€เชค เชจเชฅเซ€, เชคเซ‡เชฅเซ€ เชธเชฐเชณเชคเชพ เชฎเชพเชŸเซ‡, เช‡เชจเซเชŸเชฐเชซเซ‡เชธ เช•เชนเซ‡ เช›เซ‡ เช•เซ‡ เช‡เชตเซ‡เชจเซเชŸเซเชธ เชธเชชเซ‹เชฐเซเชŸเซ‡เชก เชจเชฅเซ€);
  • เชฒเซ‹เช— เช•เซเชฐเชฟเชฏเชพเช“.

เชชเซเชฐเชฅเชฎ เช†เชชเชฃเซ‡ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เชถเชฐเซ‚ เช•เชฐเซ€เช เช›เซ€เช:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เช†เช—เชณ, เช…เชฎเซ‡ เช…เชฎเชพเชฐเซเช‚ เชเช•เชพเช‰เชจเซเชŸ เชฌเชจเชพเชตเซ€เช เช›เซ€เช, เชฌเซ‡เชฒเซ‡เชจเซเชธ เชธเชพเชฅเซ‡ เชธเชฎเชฏ เชฌเช—เชพเชกเซ‹ เชจเชนเซ€เช‚:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เช…เชฎเชจเซ‡ เชฌเชงเชพ เช‰เชชเชฒเชฌเซเชง เชเช•เชพเช‰เชจเซเชŸเซเชธเชจเซ€ เชธเซ‚เชšเชฟ เชฎเชณเซ‡ เช›เซ‡:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เช…เชฎเซ‡ เชชเซเชฐเซ‡เชทเช• เช…เชจเซ‡ เชชเซเชฐเชพเชชเซเชคเช•เชฐเซเชคเชพเชจเซ‡ เชชเชธเช‚เชฆ เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชคเซ‡เชฎเชจเชพ เชฌเซ‡เชฒเซ‡เชจเซเชธ เชฎเซ‡เชณเชตเซ€เช เช›เซ€เช. เชœเซ‹ เชชเซเชฐเซ‡เชทเช• เช…เชจเซ‡ เชชเซเชฐเชพเชชเซเชคเช•เชฐเซเชคเชพ เชธเชฎเชพเชจ เชนเซ‹เชฏ, เชคเซ‹ เชคเซ‡เชจเซเช‚ เชเช•เชพเช‰เชจเซเชŸ เชซเชฐเซ€ เชญเชฐเชพเชˆ เชœเชถเซ‡:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เชฒเซ‹เช—เชฎเชพเช‚ เช…เชฎเซ‡ เชตเซเชฏเชตเชนเชพเชฐเซ‹เชจเชพ เช…เชฎเชฒเชจเซเช‚ เชจเชฟเชฐเซ€เช•เซเชทเชฃ เช•เชฐเซ€เช เช›เซ€เช:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เช–เชฐเซ‡เช–เชฐ, เชกเซ‡เชฎเซ‹ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎ เชธเชพเชฅเซ‡ เชคเซ‡ เชฌเชงเซ เชœ เช›เซ‡. เชจเซ€เชšเซ‡ เชคเชฎเซ‡ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจเชฎเชพเช‚ เช…เชฎเชพเชฐเซ‹ เชตเซเชฏเชตเชนเชพเชฐ เชœเซ‹เชˆ เชถเช•เซ‹ เช›เซ‹:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เช…เชจเซ‡ เชตเซเชฏเชตเชนเชพเชฐเซ‹เชจเซ€ เชธเชพเชฎเชพเชจเซเชฏ เชธเซ‚เชšเชฟ:

เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ: เช†เชชเชฃเซ‡ เชถเซเช‚ เชชเซ€เช“เชธเซ€ เชฌเชจเชพเชตเชตเซเช‚ เชœเซ‹เชˆเช?

เช† เชธเชพเชฅเซ‡, เช…เชฎเซ‡ Citcoin เชจเซ‡เชŸเชตเชฐเซเช• เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ PoC เชจเชพ เช…เชฎเชฒเซ€เช•เชฐเชฃเชจเซ‡ เชธเชซเชณเชคเชพเชชเซ‚เชฐเซเชตเช• เชชเซ‚เชฐเซเชฃ เช•เชฐเซเชฏเซเช‚ เช›เซ‡. เชธเชฟเช•เซเช•เชพ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชธเชฟเชŸเช•เซ‹เช‡เชจเชจเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เชจเซ‡เชŸเชตเชฐเซเช• เชฌเชจเชตเชพ เชฎเชพเชŸเซ‡ เชฌเซ€เชœเซเช‚ เชถเซเช‚ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡? เชฌเชนเซ เช“เช›เซ€:

  • เชเช•เชพเช‰เชจเซเชŸ เชฌเชจเชพเชตเชตเชพเชจเชพ เชคเชฌเช•เซเช•เซ‡, เช–เชพเชจเช—เซ€/เชธเชพเชฐเซเชตเชœเชจเชฟเช• เช•เซ€เชจเชพ เชœเชจเชฐเซ‡เชถเชจเชจเซ‹ เช…เชฎเชฒ เช•เชฐเซ‹. เช–เชพเชจเช—เซ€ เช•เซ€ เชเช•เชพเช‰เชจเซเชŸ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชชเชพเชธเซ‡ เชธเช‚เช—เซเชฐเชนเชฟเชค เชนเซ‹เชตเซ€ เช†เชตเชถเซเชฏเช• เช›เซ‡, เชœเชพเชนเซ‡เชฐ เช•เซ€ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจเชฎเชพเช‚ เชธเช‚เช—เซเชฐเชนเชฟเชค เชนเซ‹เชตเซ€ เช†เชตเชถเซเชฏเช• เช›เซ‡.
  • เชเช• เชธเชฟเช•เซเช•เซ‹ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเซ‹ เชœเซ‡เชฎเชพเช‚ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชจเซ‡ เช“เชณเช–เชตเชพ เชฎเชพเชŸเซ‡ เชจเชพเชฎเชจเซ‡ เชฌเชฆเชฒเซ‡ เชธเชพเชฐเซเชตเชœเชจเชฟเช• เช•เซ€เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.
  • เชคเซ‡เชจเซ€ เช–เชพเชจเช—เซ€ เช•เซ€ เชตเชกเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพเชฅเซ€ เชธเชฐเซเชตเชฐ เชชเชฐ เชœเชคเชพ เชตเซเชฏเชตเชนเชพเชฐเซ‹เชจเซ‡ เชเชจเซเช•เซเชฐเชฟเชชเซเชŸ เช•เชฐเซ‹.

เชจเชฟเชทเซเช•เชฐเซเชท

เช…เชฎเซ‡ เชจเซ€เชšเซ‡เชจเชพ เช•เชพเชฐเซเชฏเซ‹ เชธเชพเชฅเซ‡ Citcoin เชจเซ‡เชŸเชตเชฐเซเช•เชจเซ‹ เช…เชฎเชฒ เช•เชฐเซเชฏเซ‹ เช›เซ‡: เชเช• เชเช•เชพเช‰เชจเซเชŸ เช‰เชฎเซ‡เชฐเซ‹, เชฌเซ‡เชฒเซ‡เชจเซเชธ เชฎเซ‡เชณเชตเซ‹, เชคเชฎเชพเชฐเซเช‚ เชเช•เชพเช‰เชจเซเชŸ เชŸเซ‹เชช เช…เชช เช•เชฐเซ‹, เชเช• เชเช•เชพเช‰เชจเซเชŸเชฎเชพเช‚เชฅเซ€ เชฌเซ€เชœเชพ เชเช•เชพเช‰เชจเซเชŸเชฎเชพเช‚ เชธเชฟเช•เซเช•เชพ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเซ‹. เชคเซ‹, PoC เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡ เช…เชฎเชจเซ‡ เชถเซเช‚ เช–เชฐเซเชš เชฅเชฏเซ‹?

  • เชคเชฎเชพเชฐเซ‡ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจ เช…เชจเซ‡ เช–เชพเชธ เช•เชฐเซ€เชจเซ‡ เชนเชพเช‡เชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช•เชจเซ‹ เช…เชญเซเชฏเชพเชธ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡;
  • IBM เช…เชฅเชตเชพ Amazon เชตเชพเชฆเชณเซ‹เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซเช‚ เชถเซ€เช–เซ‹;
  • JS เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฟเช‚เช— เชญเชพเชทเชพ เช…เชจเซ‡ เช…เชฎเซเช• เชตเซ‡เชฌ เชซเซเชฐเซ‡เชฎเชตเชฐเซเช• เชถเซ€เช–เซ‹;
  • เชœเซ‹ เช…เชฎเซเช• เชกเซ‡เชŸเชพเชจเซ‡ เชฌเซเชฒเซ‹เช•เชšเซ‡เชจเชฎเชพเช‚ เชจเชนเซ€เช‚, เชชเชฐเช‚เชคเซ เช…เชฒเช— เชกเซ‡เชŸเชพเชฌเซ‡เชเชฎเชพเช‚ เชธเช‚เช—เซเชฐเชนเชฟเชค เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ, เชคเซ‹ เชชเช›เซ€ เชเช•เซ€เช•เชฐเชฃ เช•เชฐเชตเชพเชจเซเช‚ เชถเซ€เช–เซ‹, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, PostgreSQL เชธเชพเชฅเซ‡;
  • เช…เชจเซ‡ เช›เซ‡เชฒเซเชฒเซเช‚ เชชเชฐเช‚เชคเซ เช“เช›เชพเชฎเชพเช‚ เช“เช›เซเช‚ เชจเชนเซ€เช‚ - เชคเชฎเซ‡ Linux เชจเชพ เชœเซเชžเชพเชจ เชตเชฟเชจเชพ เช†เชงเซเชจเชฟเช• เชตเชฟเชถเซเชตเชฎเชพเช‚ เชœเซ€เชตเซ€ เชถเช•เชคเชพ เชจเชฅเซ€!)

เช…เชฒเชฌเชคเซเชค, เชคเซ‡ เชฐเซ‹เช•เซ‡เชŸ เชตเชฟเชœเซเชžเชพเชจ เชจเชฅเซ€, เชชเชฐเช‚เชคเซ เชคเชฎเชพเชฐเซ‡ เชธเช–เชค เชฎเชนเซ‡เชจเชค เช•เชฐเชตเซ€ เชชเชกเชถเซ‡!

GitHub เชชเชฐ เชธเซเชคเซเชฐเซ‹เชคเซ‹

เชธเซ‚เชคเซเชฐเซ‹เช เชœเชฃเชพเชตเซเชฏเซเช‚ เชนเชคเซเช‚ GitHub. เชฐเซ€เชชเซ‹เชเซ€เชŸเชฐเซ€เชจเซเช‚ เชธเช‚เช•เซเชทเชฟเชชเซเชค เชตเชฐเซเชฃเชจ:
เช•เซ‡เชŸเชฒเซ‹เช— ยซเชธเชฐเซเชตเชฐยป โ€” Node.js เชธเชฐเซเชตเชฐ
เช•เซ‡เชŸเชฒเซ‹เช— ยซเช•เซเชฒเชพเชˆเชจเซเชŸยป โ€” Node.js เช•เซเชฒเชพเชฏเชจเซเชŸ
เช•เซ‡เชŸเชฒเซ‹เช— ยซblockchain"(เชชเซ‡เชฐเชพเชฎเซ€เชŸเชฐ เชฎเซ‚เชฒเซเชฏเซ‹ เช…เชจเซ‡ เช•เซ€เช“, เช…เชฒเชฌเชคเซเชค, เชฌเชฟเชจ-เช•เชพเชฐเซเชฏเช•เชพเชฐเซ€ เช›เซ‡ เช…เชจเซ‡ เชฎเชพเชคเซเชฐ เชเช• เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡ เช†เชชเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡):

  • เช•เชฐเชพเชฐ โ€” เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเซ‡เช•เซเชŸ เชธเซ‹เชฐเซเชธ เช•เซ‹เชก
  • เชตเซ‰เชฒเซ‡เชŸ โ€” เชนเชพเชฏเชชเชฐเชฒเซ‡เชœเชฐ เชซเซ‡เชฌเซเชฐเชฟเช• API เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡เชจเซ€ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เช•เซ€.
  • *.cds - เชธเซเชฎเชพเชฐเซเชŸ เช•เซ‹เชจเซเชŸเซเชฐเชพเช•เซเชŸเชจเซ€ เชธเช‚เช•เชฒเชฟเชค เช†เชตเซƒเชคเซเชคเชฟเช“
  • *.json เชซเชพเช‡เชฒเซ‹ - Hyperledger Fabric API เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจ เชซเชพเช‡เชฒเซ‹เชจเชพ เช‰เชฆเชพเชนเชฐเชฃเซ‹

เชคเซ‡ เชฎเชพเชคเซเชฐ เชถเชฐเซ‚เช†เชค เช›เซ‡!

เชธเซ‹เชฐเซเชธ: www.habr.com

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹