๋ธ”๋ก์ฒด์ธ ๋„คํŠธ์›Œํฌ ๊ตฌ์ถ•ํ•˜๊ธฐ  

ํ•˜์ดํผ๋ ˆ์ € ์ปดํฌ์ €๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‚˜์˜ ์ฒซ๋ฒˆ์งธ ๋ธ”๋ก์ฒด์ธ ๋„คํŠธ์›Œํฌ ๋งŒ๋“ค๊ธฐ

Last updated

๋ธ”๋ก์ฒด์ธ์€ ๋น„์šฉ์„ ์ ˆ๊ฐํ•˜๊ณ , ์—ฌ๋Ÿฌ ๋ณต์žกํ•œ ์ ˆ์ฐจ๋“ค์„ ์‹ ์†ํ•˜๊ฒŒ ๋งŒ๋“ค๋ฉฐ ํŠธ๋žœ์žญ์…˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ƒˆ๋กœ์šด ์ˆ˜์ค€์˜ ์‹ ๋ขฐ๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ์•ˆ์ „ํ•˜๊ณ  ๋ถ„์‚ฐ๋œ ์˜คํ”ˆ ํ…Œํฌ๋†€๋Ÿฌ์ง€์ž…๋‹ˆ๋‹ค. ์ด ์ฝ”๋“œ ํŒจํ„ด์—์„œ๋Š” Hyperledger Fabric ๊ธฐ๋ฐ˜์—์„œ ๊ฐœ๋ฐœํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ ํˆด์ธ ํ•˜์ดํผ๋ ˆ์ € ์ปดํฌ์ €(Hyperledger Composer)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ธ”๋ก์ฒด์ธ ๋„คํŠธ์›Œํฌ๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›Œ ์‰ฝ๊ณ  ๋น ๋ฅด๊ฒŒ ๋ธ”๋ก์ฒด์ธ์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

By Ishan Gulhane

Overview

๋ธ”๋ก์ฒด์ธ์€ ๊ธฐ์—…๋“ค์˜ ๊ธฐ์กด ๊ฑฐ๋ž˜ ๋ฐฉ์‹์„ ๋ฐ”๊พธ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋ธ”๋ก์ฒด์ธ ๋„์ž…ํ•˜์—ฌ ๊ธฐ์กด์˜ ๊ธฐ์—… ํ™˜๊ฒฝ์—์„œ ์•ˆ์ „ํ•˜๊ณ  ๋ถ„์‚ฐ๋œ ์˜คํ”ˆ ํ…Œํฌ๋†€๋Ÿฌ์ง€๋ฅผ ๋„์ž…ํ•˜์—ฌ ๋น„์šฉ์„ ์ ˆ๊ฐํ•˜๊ณ , ์—ฌ๋Ÿฌ ๊ธฐ๊ด€๊ณผ ์‹œ์Šคํ…œ ๊ฐ„์— ๋ณต์žกํ•˜๊ฒŒ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š” ์„œ๋น„์Šค๋‚˜ ์ ˆ์ฐจ๋“ค์„ ๋ธ”๋ก์ฒด์ธ ๊ธฐ์ˆ ์„ ํ™œ์šฉํ•˜์—ฌ ์ž๋™ํ™” ๋ฐ ๊ฐ„ํŽธํ™”๋ฅผ ํ†ตํ•ด ์‹ ์†ํ•˜๊ฒŒ ๊ตฌ์ถ•์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ ์•ˆ์ „ํ•œ ๊ฑฐ๋ž˜์— ๋Œ€ํ•œ ์ƒˆ๋กœ์šด ์ฐจ์›์˜ ์‹ ๋ขฐ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋ธ”๋ก์ฒด์ธ๊ณผ ๊ฐ™์ด ์ƒˆ๋กœ์šด ํŒจ๋Ÿฌ๋‹ค์ž„ ์ฐฝ์ถœ ๋ฐ ๊ธฐ์กด ์„œ๋น„์Šค ํ™˜๊ฒฝ์„ ํ”๋“ค๋งŒํ•œ ๊ธฐ์ˆ ์ด ๋‚˜์˜ค๋ฉด ๊ทธ ๊ธฐ์ˆ ์„ ์ดํ•ดํ•˜๊ณ  ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์‹ ๊ธฐ์ˆ ์— ๋Œ€ํ•œ ์ฃผ๋„๊ถŒ์„ ๊ฐ–๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋จผ์ € ๊ทธ ๊ธฐ์ˆ ์„ ๋ฐฐ์›Œ์•ผ๊ฒ ์ฃ .

๋ธ”๋ก์ฒด์ธ์˜ ๋‹ค์–‘ํ•œ ๊ณผ์ • ์ค‘ โ€œHello worldโ€ ์‹œ๋ฆฌ์ฆˆ์˜ ์ฒซ ๋ฒˆ์งธ ๊ณผ์ •์„ ๊ธฐ๋ฐ˜์œผ๋กœ Hyperledger Composer๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ธ”๋ก์ฒด์ธ ๋„คํŠธ์›Œํฌ๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์šฐ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋น„์ฆˆ๋‹ˆ์Šค์— ๋Œ€ํ•œ ๋ชจ๋ธ์„ ์ •์˜ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•์„ ํ†ตํ•ด ๊ธฐ๋ณธ ๊ตฌ์„ฑ์š”์†Œ์ธ ๊ฑฐ๋ž˜ ๋ฐ ์„œ๋น„์Šค ์ฐธ์—ฌ์ž, ๊ฑฐ๋ž˜ ๊ฐ€๋Šฅํ•œ ์ž์‚ฐ, ํ—ˆ์šฉ๋œ ํŠธ๋žœ์žญ์…˜์„ ์ •์˜ ํ›„, ์ด ๊ธฐ๋ฐ˜์œผ๋กœ BNA (Business Network Archive) ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ ๋‹ค์Œ ๋ฆฌ๋ˆ…์Šค ์žฌ๋‹จ (Linux Foundationยฎ)์—์„œ ํ•˜์ดํผ๋ ˆ์ € ํ”„๋กœ์ ํŠธ ๊ธฐ๋ฐ˜์— ์ธํ๋ฒ ์ด์…˜ ํ”„๋กœ์ ํŠธ ์ค‘ ํ•˜๋‚˜์ธ ํ‘œ์ค€ ๋ธ”๋ก์ฒด์ธ ํ”Œ๋žซํผ ๊ตฌํ˜„ ํ”„๋กœ์ ํŠธ์ธ ํ•˜์ดํผ๋ ˆ์ € ํŒจ๋ธŒ๋ฆญ (Hyperledger Fabricโ„ข)์ด ๋กœ์ปฌ์— ๊ตฌ์ถ•๋œ ํ™˜๊ฒฝ์— ํ•˜์ดํผ๋ ˆ์ € ์ปดํฌ์ €๋ฅผ ํ†ตํ•ด ๊ฐœ๋ฐœ๋œ BNAํŒŒ์ผ์„ ๋ธ”๋ก์ฒด์ธ ๋„คํŠธ์›Œํฌ์— ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ณผ์ •์—์„œ Hyperledger Composer๋ฅผ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํ„ฐ๋“ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ™œ์šฉํ•˜๋ฉด ๊ธฐ์กด ์ž์‚ฐ๊ณผ ์ด์— ๊ด€๋ จ๋œ ๊ฑฐ๋ž˜๋ฅผ ํฌํ•จํ•œ ํ˜„์žฌ์˜ ๋น„์ฆˆ๋‹ˆ์Šค ๋„คํŠธ์›Œํฌ๋ฅผ ์‹ ์†ํ•˜๊ฒŒ ๋ชจ๋ธ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋น„์ฆˆ๋‹ˆ์Šค ๋„คํŠธ์›Œํฌ ๋ชจ๋ธ์˜ ์ผ๋ถ€๋กœ ์ž์‚ฐ๊ณผ ์ƒํ˜ธ ์ž‘์šฉํ•  ์ˆ˜์žˆ๋Š” ํŠธ๋žœ์žญ์…˜์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ๋น„์ฆˆ๋‹ˆ์Šค ๋„คํŠธ์›Œํฌ์—๋Š” ๊ณ ์œ  ID ๊ธฐ๋ฐ˜์œผ๋กœ ์ƒํ˜ธ์ž‘์šฉํ•˜๋Š” ์ฐธ๊ฐ€์ž๋“ค๋„ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

์ด ํŠœํ† ๋ฆฌ์–ผ์€ ๋ธ”๋ก์ฒด์ธ ๊ธฐ์ˆ ์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ์‹œ์ž‘ํ•˜์—ฌ ๋ชจ๋“  ๋น„์ฆˆ๋‹ˆ์Šค์—์„œ ํ•„์š”๋กœ ํ•˜๋Š” ๊ธฐ์ˆ ์„ ์Œ“์„ ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ์ž…๋‹ˆ๋‹ค. ์ด ๊ฐœ๋ฐœ ๊ณผ์ •์„ ๊ผญ ์™„๋ฃŒํ•˜์‹  ํ›„, ๋ธ”๋ก์ฒด์ธ์˜ ๋ฐœ์ „ ๋ฐฉํ–ฅ์„ ์‚ดํŽด๋ณด๋ฉฐ ๋ธ”๋ก์ฒด์ธ ์ „๋ฌธ๊ฐ€๋กœ ๊ฑฐ๋“ญ๋‚˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

Flow

  1. Hyperledger Composer ๊ฐœ๋ฐœ ํˆด์„ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.
  2. Hyperledger Fabric์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.
  3. BNA (Business Network Archive) ํŒŒ์ผ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  4. ์ปดํฌ์ € ํ”Œ๋ ˆ์ด๊ทธ๋ผ์šด๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ BNA (Business Network Archive)๋ฅผ ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค.
  5. (๋Œ€์ฒด ๋ฐฉ์•ˆAlternative method) ๋กœ์ปฌ์˜ ํ•˜์ดํผ๋ ˆ์ € ์ปดํฌ์ €์— BNA๋ฅผ ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค.

Components

Hyperledger Fabric v1.0

๋ธ”๋ก์ฒด์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋˜๋Š” ๋น„์ฆˆ๋‹ˆ์Šค์šฉ ์†”๋ฃจ์…˜์„ ๊ฐœ๋ฐœํ•˜๊ธฐ ์œ„ํ•œ ํ† ๋Œ€๊ฐ€ ๋˜๋Š” ๋ธ”๋ก์ฒด์ธ ๊ธฐ์ˆ ์˜ ๊ตฌํ˜„.

Hyperledger Composer

๋ธ”๋ก์ฒด์ธ ๋น„์ฆˆ๋‹ˆ์Šค ๋„คํŠธ์›Œํฌ๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ  ๋ถ„์‚ฐ ์›์žฅ์—์„œ ์Šค๋งˆํŠธ ๊ณ„์•ฝ์˜ ๊ฐœ๋ฐœ ๋ฐ ๋ฐฐํฌ๋ฅผ ๊ฐ€์†ํ™”ํ•˜๊ธฐ ์œ„ํ•œ ํ˜‘์—… ํˆด์ž…๋‹ˆ๋‹ค.

Technologies

Blockchain

์ง€์†์ ์œผ๋กœ ์ฆ๊ฐ€ํ•˜๋Š” ๋ณด์•ˆ ๊ธฐ๋ก์ด๋‚˜ ๋ธ”๋ก์„ ์œ ์ง€ํ•˜๋Š” ๋ถ„์‚ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค.

ํด๋ผ์šฐ๋“œ

์ธํ„ฐ๋„ท์„ ํ†ตํ•ด ์ปดํ“จํŒ… ๋ฐ IT ๋ฆฌ์†Œ์Šค์— ์—‘์„ธ์Šคํ•ฉ๋‹ˆ๋‹ค

Containers

์•ฑ ์‹คํ–‰์— ํ•„์š”ํ•œ ๋ชจ๋“  ์š”์†Œ๋ฅผ ํฌํ•จํ•˜๋Š” ๊ฐ€์ƒ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐ์ฒด.

Related Blogs

[Hyperledger Fabric] ํ•˜์ดํผ๋ ˆ์ € ํ”„๋กœ์ ํŠธ ๊ฐœ์š”

๋ธ”๋ก์ฒด์ธ ๊ธฐ์ˆ ์€ 2018๋…„ ํ˜„์žฌ, ๋„์ž…๊ณผ ํ™•์žฅ์„ ๊ฑฐ์ณ ํ™•์‚ฐ๊ธฐ์— ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์ธ ์‹คํ—˜๋“ค์„ ๋๋‚ด๊ณ , ํ”Œ๋žซํผ ๊ฐ„ ๋ณธ๊ฒฉ์ ์ธ ๊ฒฝ์Ÿ์„ ์‹œ์ž‘ํ•˜๋Š” ๋‹จ๊ณ„์— ์žˆ๋‹ค๋Š” ๋œป์ด์ง€์š”. ๋ˆ„๊ตฌ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ‘œ์ค€ํ™”๊ฐ€ ์ด๋ฃจ์–ด์ง€๋Š๋ƒ๊ฐ€ ๊ทธ ๊ฒฝ์Ÿ์˜ ์Šน์ž๋ฅผ ๊ฒฐ์ •ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ณธ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋ธ”๋ก์ฒด์ธ ๋Œ€ํ‘œ ํ”Œ๋žซํผ์˜ ์Šน๊ธฐ๋ฅผ ์žก๊ธฐ ์œ„ํ•œ ํ•˜์ดํผ๋ ˆ์ €(Hyperledger)์˜ ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ ๋ฐฉํ–ฅ๊ณผ, ํ˜„์žฌ ์ง„ํ–‰ ์ค‘์ธ ์ธํ๋ฒ ์ดํŒ… ํ”„๋กœ์ ํŠธ๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ดํผ๋ ˆ์ €(Hyperledger)๋ž€?? ๋ฆฌ๋ˆ…์Šค ์žฌ๋‹จ์—์„œ ์ฃผ๊ด€ํ•˜๋Š” ๋ธ”๋ก์ฒด์ธ ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค. ๊ธˆ์œต,...

๊ณ„์† ์ฝ๊ธฐ [Hyperledger Fabric] ํ•˜์ดํผ๋ ˆ์ € ํ”„๋กœ์ ํŠธ ๊ฐœ์š”

[Hyperledger Fabric] Architecture: 6 ํ•ฉ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜

Hyperledger Fabric์€ ์™œ Kafka์™€ SBFT๋ฅผ ์„ ํƒํ–ˆ๋‚˜ ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ ์‚ดํŽด๋ณผ ๊ฒƒ์€, ๊ฐœ์ธ์ ์œผ๋กœ ์ œ๊ฐ€ ๊ฐ€์žฅ ์–ด๋ ต๊ณ  ํ—ท๊ฐˆ๋ ธ๋˜ ํ•ฉ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ž…๋‹ˆ๋‹ค. ์ด์ƒํ•˜๊ฒŒ Hyperledger Fabric์˜ ํ•ฉ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์ฐธ ์ดํ•ดํ•˜๊ธฐ๊ฐ€ ์–ด๋ ค์› ์Šต๋‹ˆ๋‹ค. ์ด๋”๋ฆฌ์›€์˜ POS(Casper)๋‚˜ EOS์˜ dPOS ๊ฐ™์ด ์ƒ๋Œ€์ ์œผ๋กœ ๋ช…ํ™•ํžˆ ์žกํžˆ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ฐœ๋…์€ ์•„๋‹ˆ์—ˆ์ฃ . ์กฐ๊ธˆ ๋” ์„ธ์„ธํžˆ ๋œฏ์–ด๋ณด๋‹ˆ ๊ทธ๋Ÿด ๋งŒํ•œ ์ด์œ ๊ฐ€ ์žˆ์—ˆ๋‹ค๋Š” ๊ฐœ์ธ์ ์ธ ๊นจ๋‹ฌ์Œ(?)์„ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค. ํ•ฉ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๋Œ€ํ•ด ์กฐ๊ธˆ์ด๋ผ๋„ ์ฐพ์•„๋ณด์‹  ๋ถ„์ด๋ผ๋ฉด Byzantine General...

๊ณ„์† ์ฝ๊ธฐ [Hyperledger Fabric] Architecture: 6 ํ•ฉ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜

[Hyperledger Fabric] Architecture: 5 ํŠธ๋žœ์žญ์…˜๊ณผ gRPC

chaincode ์ž‘์„ฑ์˜ ์ตœ๋Œ€ ์ฑŒ๋ฆฐ์ง€์ธ gRPC ๋ฝ€๊ฐœ๊ธฐ ์–ผ๋งˆ์ „์— blockchain ํ”„๋กœ์ ํŠธ ์ˆ˜ํ–‰์„ ์œ„ํ•œ ํšŒ์‚ฌ ๋‚ด๋ถ€ ๊ต์œก์„ ์ด์ˆ˜ํ–ˆ์Šต๋‹ˆ๋‹ค. go-lang์œผ๋กœ chaincode๋ฅผ ์‹ค์ œ๋กœ ๊ฐœ๋ฐœํ•˜๋ฉด์„œ ๊ฐ€์žฅ ๋งŽ์ด ๋ถ€๋”ชํ˜”๋˜ ๋ฌธ์ œ๋Š”, gRPC์˜ ๋ฒ„์ „ ๋ฌธ์ œ์™€ gRPC ์ธํ„ฐํŽ˜์ด์Šค ์ฒ˜๋ฆฌ์˜€์Šต๋‹ˆ๋‹ค. ์‚ฌ์‹ค gRPC ์ž์ฒด๋ฅผ ์•„์˜ˆ ์ž˜ ๋ชฐ๋ž๋˜ ํ„ฐ๋ผ ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ•˜๋Š”์ง€ ์•Œ๊ธฐ ์–ด๋ ค์›Œ์„œ ๊ฒช์—ˆ๋˜ ๋ฌธ์ œ์˜€์ฃ . ๊ทธ๋ž˜์„œ ๋„๋Œ€์ฒด ์™œ Hyperledger Fabric์€ HTTP ํ†ต์‹ ์ด ์•„๋‹ˆ๋ผ gRPC ํ†ต์‹ ์„ ํ•˜๋„๋ก ์„ค๊ณ„ํ•œ ๊ฑธ๊นŒ...

๊ณ„์† ์ฝ๊ธฐ [Hyperledger Fabric] Architecture: 5 ํŠธ๋žœ์žญ์…˜๊ณผ gRPC

Related Links

ํ•˜์ดํผ๋ ˆ์ € ์ปดํฌ์ €์™€ Node-RED๋ฅผ ์‚ฌ์šฉํ•ด ๋‚˜์˜ ๋ธ”๋ก์ฒด์ธ๊ณผ ์–ด๋–ค ๊ฒƒ์ด๋“  ํ†ตํ•ฉํ•ด๋ณด๊ธฐ (์˜๋ฌธ)

๋‘ ๊ฐœ์˜ ๊ฐ„ํŽธํ•œ ํˆด์„ ์‚ฌ์šฉํ•ด ๋ธ”๋ก์ฒด์ธ์„ ์žฌ๋นจ๋ฆฌ ๊ตฌ์ถ•ํ•˜์—ฌ ์šด์˜ํ•ด ๋ด…๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ ํŠœํ† ๋ฆฌ์–ผ: ํ•˜์ดํผ๋ ˆ์ € ํŒจ๋ธŒ๋ฆญ V1.0๋กœ To-do ๋ฆฌ์ŠคํŠธ ๋งŒ๋“ค๊ธฐ (์˜๋ฌธ)

๋ธ”๋ก์ฒด์ธ์œผ๋กœ ๊ธฐ์กด์˜ ๋ฐ์ดํ„ฐ ์ €์žฅ ํŠธ๋žœ์žญ์…˜์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ํ•˜์ดํผ๋ ˆ์ € ํŒจ๋ธŒ๋ฆญ v0.6์—์„œ v1.0์œผ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ํ•ฉ๋‹ˆ๋‹ค.