# Hyperledger Korea UserGroup Meetup
# 2019๋ 08์ 22์ผ
# ์ฃผ์
- Hyperledger Fabric ์๊ฐ ๋ฐ ์ฒซ ๋คํธ์ํฌ ๊ตฌ์ถํ๊ธฐ
# ์๋ฃ
- ์ฌ์ ์์ ์๋ฃ - https://github.com/hlkug/meetup/blob/master/201908/์ฌ์ %20์์ .md
- ๋ฐํ ์๋ฃ - https://www.slideshare.net/secret/MUYjHNs2Pqx7r1
- ์ค์ต ์๋ฃ - https://github.com/hlkug/meetup/blob/master/201908/ํธ์ฆ์จ%20๋ฉ.md
# Hyperledger Fabric ์๊ฐ ๋ฐ ์ฒซ ๋คํธ์ํฌ ๊ตฌ์ถํ๊ธฐ
# Public vs Private
ํผ๋ธ๋ฆญ ๋ธ๋ก์ฒด์ธ | ์ปจ์์์(ํ๋ผ์ด๋น) ๋ธ๋ก์ฒด์ธ | |
---|---|---|
๊ด๋ฆฌ ์ฃผ์ฒด | ๋ชจ๋ ๊ฑฐ๋ ์ฐธ์ฌ์ | ์ปจ์์์์ ์ํ ์ฐธ์ฌ์ |
๋ฐ์ดํฐ ์ ๊ทผ | ๋๊ตฌ๋ ์ ๊ทผ ๊ฐ๋ฅ | ํ๊ฐ ๋ฐ์ ์ฌ์ฉ์๋ง ์ ๊ทผ |
ํฉ์ ์๊ณ ๋ฆฌ์ฆ | PoW, PoS ๋ฑ | PBFT ๋ฑ |
๋ณด์/์์๋ฃ | O | X |
๊ตฌํ ์ฌ๋ก | Bitcoin, Ethereum, ๋ฑ | Hyperledger Fabric, R3 Corda, ๋ฑ |
# Hyperledger Fabric์ ํน์ง
- Linux Foundation์ ์ํด ์ค๋ฆฝ๋ ์คํ ์์ค ํ๋ก์ ํธ
- ์ด๊ธฐ IBM์ด ์ ๊ณตํ ์ฝ๋๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ฌ 30์ฌ ์กฐ์ง์์ ๊ฐ๋ฐ ์ฐธ์ฌ ์ค
- ๋ชจ๋ํ ๋ฐ ๊ตฌ์ฑ์ด ๊ฐ๋ฅํ ์ํคํ ์ฒ
- ๋ฒ์ฉ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ์์ฑ๋ Smart Contract(Chaincode)๋ฅผ ์ง์ํ๋ ์ต์ด์ ๋ถ์ฐ ์์ฅ ํ๋ซํผ
- Go, Node.js, Java
- ํ๊ฐํ ๋ธ๋ก์ฒด์ธ(Permissioned Blockchain)
- ํ๋ฌ๊ทธ ๊ฐ๋ฅ ์ปจ์ผ์์ค ํ๋กํ ์ฝ์ ์ง์
- ์ํธ ํํ ๋ถํ์
- ๊ฐ์ธ ์ ๋ณด ๋ณดํธ ๋ฐ ๊ธฐ๋ฐ์ฑ ์ ์ง
# Hyperledger Fabric ๊ตฌ์ฑ ์์
- ์ฑ๋(Channel)
- ์กฐ์ง(Organization)
- ํผ์ด(Peer)
- ์ค๋๋ฌ(Orderer)
- ์์ฅ(Ledger)
- ์ฒด์ธ์ฝ๋(Chaincode)
# ํฉ์ ์๊ณ ๋ฆฌ์ฆ
Endorsing - Ordering - Validating
- Endorsing ์์๋ ๋ณด์ฆ์ญํ ์ ๋งก์ peer๋ค์ด ํธ๋์ญ์ ์ ๋ํด ์คํ์ ํ๊ณ ๊ฒฐ๊ณผ ๊ฐ ์ฌ์ธํํ์ client์ ๋ฆฌํด (peer ๊ฐ ์ปค๋ฎค๋์ผ์ด์ X)
- Orderer์ ํน์ ๊ฐ์ ์ ๋ฌํ๋ฉด Orderer๋ Tx์ ์์๋ฅผ ์ ํ๊ณ ๋ธ๋ก ์์ฑ
- Validator ์๊ฒ ์ ๋ฌํ๋ฉด Validatior์์๋ ๋ณด์ฆ ํ์ธ ํ Ledger์ ๊ธฐ๋ก
# ํ๊ธฐ
ํ๋ฒ ๋ ๊ธฐ์ด๋ฅผ ๋ค์ง ๋๋.