Ver4.0 ๐ค ์ค๋งํธ ์ปจํธ๋ํธ๋ก ๋ณด๋ ์ด๋๋ฆฌ์๊ณผ ๋นํธ์ฝ์ธ์ ์ฐจ์ด โ ๊ณ์ฐ๊ธฐ์ ์ปดํจํฐ์ ๊ฐ๋ฆผ๊ธธ

๐ค ์ค๋งํธ ์ปจํธ๋ํธ๋ก ๋ณด๋ ์ด๋๋ฆฌ์๊ณผ ๋นํธ์ฝ์ธ์ ์ฐจ์ด โ ๊ณ์ฐ๊ธฐ์ ์ปดํจํฐ์ ๊ฐ๋ฆผ๊ธธ
"๋ ๋ค ์ฝ์ธ ์๋์ผ?" ๋ผ๊ณ ๋ฌผ์ด๋ณธ ์น๊ตฌ๋ฅผ ์ํด,
๋๋ง ์ธ๋ ๊ธฐ๊ณ์ ํ๋ก๊ทธ๋จ์ ๋๋ฆฌ๋ ๊ธฐ๊ณ์ ๊ฒฐ์ ์ ์ฐจ์ด๋ฅผ ํํค์ณ ๋ด
๋๋ค.
๐ ๋จผ์ , ๋ผ๋ฉด ํ ๊ทธ๋ฆ์ผ๋ก ์์ํ์
์น๊ตฌ์ผ, ๋นํธ์ฝ์ธ์ด๋ ์ด๋๋ฆฌ์ ์ฐจ์ด ๋ฌผ์ด๋ดค์ง?
๊ฐ์ฅ ํํ ๋๋ต์ "๋นํธ์ฝ์ธ์ ๋์งํธ ๊ธ, ์ด๋๋ฆฌ์์ ํ๋ซํผ" ์ธ๋ฐ,
์ด๊ฑด ๋ง๊ธด ํ๋ฐ ์ค๋ช
์ด ์๋๋ผ ์ฌ๋ก๊ฑด์ ๊ฐ๊น์.
์ง์ง ์ฐจ์ด๋ ๋ฑ ํ๋์์ ๊ฐ๋ ค.
**"์ด ๋คํธ์ํฌ๊ฐ ๋ฌด์์ ๊ณ์ฐํ ์ ์๋๊ฐ?"**
๋นํธ์ฝ์ธ์ "๋๊ฐ ๋๊ตฌ์๊ฒ ์ผ๋ง๋ฅผ ๋ณด๋๋๊ฐ"๋ฅผ ์ธ์์์ ๊ฐ์ฅ ํผํผํ๊ฒ ๊ธฐ๋กํ๋ ์ฅ๋ถ์ผ.
์ด๋๋ฆฌ์์ ๊ฑฐ๊ธฐ์ "๊ทธ๋ฆฌ๊ณ ์ด๋ค ์กฐ๊ฑด์ด๋ฉด ๋ฌด์จ ์ผ์ด ๋ฒ์ด์ง๋๊ฐ"๊น์ง ๊ธฐ๋กํ๊ณ ์คํํ๋ ์ฅ๋ถ๊ณ .
๐ ๋ผ๋ฉด ๋น์
๋นํธ์ฝ์ธ = ์ํ๊ธฐ. ๋์ ๋ฃ์ผ๋ฉด ๋ผ๋ฉด ๋์ด. ๋. ๋์ ์ ๋ ์ ๊ณ ์ฅ ๋จ.
์ด๋๋ฆฌ์ = ๋ก๋ด ์๋ฆฌ์ฌ. "๋น ์ค๋ ๋ ์ ๋งค์ด๋ง, 3๋ช
์ด์์ด๋ฉด ๊ณฑ๋นผ๊ธฐ" ๊ฐ์ ๊ท์น์ ๋ฃ์ ์ ์์. ๋์ ๊ท์น์ ์๋ชป ์ง๋ฉด ๋ผ๋ฉด ๋์ ๋ถ์ด ๋จ.
๊ทธ "๊ท์น"์ด ๋ฐ๋ก ์ค๋งํธ ์ปจํธ๋ํธ(Smart Contract)์ผ.
์ค๋์ ์ด ์ค๋งํธ ์ปจํธ๋ํธ๋ผ๋ ๋ ์ฆ ํ๋๋ก ๋ ์ฒด์ธ์ ์์ ํ ๊ฐ๋ผ๋ณผ ๊ฑฐ์ผ.
๐ ์ค๋งํธ ์ปจํธ๋ํธ, ์ด๋ฆ์ ๊ณ์ฝ์ด์ง๋ง ๊ณ์ฝ์๊ฐ ์๋๋ค
๋จผ์ ์คํด๋ถํฐ ํ์.
์ค๋งํธ ์ปจํธ๋ํธ๋ ๋ฒ๋ฅ ๊ณ์ฝ์๊ฐ ์๋์ผ. ๋ณํธ์ฌ๊ฐ ๊ฒํ ํ๋ ๊ทธ ๋ฌธ์ ์๋.
1994๋
์ํธํ์ ๋ ์๋ณด(Nick Szabo)๊ฐ ์ฒ์ ์ด ๋ง์ธ๋ฐ,
๊ทธ๊ฐ ๋ ์์๊ฐ ๋ฐ๋ก **์ํ๊ธฐ**์์ด.
์ํ๊ธฐ๋ ์ด๋ฏธ ์ค๋งํธ ์ปจํธ๋ํธ์ผ.
- ์กฐ๊ฑด: 1,000์์ด ํฌ์
๋๋ค
- ์คํ: ์๋ฃ๋ฅผ ๋ฐฐ์ถํ๋ค
- ํน์ง: ํ๋งค์์ด ์์ด๋, ์ค์ฌ์๊ฐ ์์ด๋, ๊ธฐ๊ณ๊ฐ ์์์ ์ดํํ๋ค
์ฆ ์ค๋งํธ ์ปจํธ๋ํธ์ ๋ณธ์ง์
"์ 3์ ์์ด ์กฐ๊ฑด์ด ์ถฉ์กฑ๋๋ฉด ์๋์ผ๋ก ์คํ๋๋ ์ฝ๋"์ผ.
๋ธ๋ก์ฒด์ธ ์์ ์ฌ๋ผ๊ฐ๋ฉด ์ฌ๊ธฐ์ "์๋ฌด๋ ๋ชฐ๋ ๋ชป ๋ฐ๊พผ๋ค"๋ ์ฑ์ง์ด ์ถ๊ฐ๋๋ ๊ฑฐ๊ณ .
โ๏ธ ๋นํธ์ฝ์ธ: "์คํฌ๋ฆฝํธ๋ ์๋๋ฐ, ๋ฐ๋ณต๋ฌธ์ด ์๋ค"
์ฌ๊ธฐ์ ๋ง์ ์ฌ๋์ด ๋๋ผ๋ ์ฌ์ค ํ๋.
**๋นํธ์ฝ์ธ์๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๊ฐ ์๋ค.**
์ด๋ฆ์ Script(์คํฌ๋ฆฝํธ).
2009๋
์ฌํ ์ ๋์นด๋ชจํ ๊ฐ ์ฒ์๋ถํฐ ๋ฃ์ด๋ ๊ธฐ๋ฅ์ด์ผ.
๋นํธ์ฝ์ธ์ ๋ณด๋ผ ๋ ์ฐ๋ฆฌ๋ ์ฌ์ค "์ฃผ์๋ก ๋ณด๋ธ๋ค"๊ธฐ๋ณด๋ค
"์ด ์ ๊ธ ์กฐ๊ฑด์ ํธ๋ ์ฌ๋์ด ์ธ ์ ์๋ ๋์ผ๋ก ๋ง๋ ๋ค"์ ๊ฐ๊น์.
๐ UTXO์ ์ ๊ธ์ฅ์น
๋นํธ์ฝ์ธ์ ํ๊ณ ๋ชจ๋ธ์ UTXO(Unspent Transaction Output, ๋ฏธ์ฌ์ฉ ์ถ๋ ฅ)๋ผ๊ณ ํด.
๋ด ์ง๊ฐ์ "์์ก 0.5 BTC"๋ผ๋ ์ซ์๊ฐ ์ ์ฅ๋ ๊ฒ ์๋๋ผ,
0.3 BTC์ง๋ฆฌ ๋์ + 0.2 BTC์ง๋ฆฌ ๋์ ์ด ํฉ์ด์ ธ ์๋ ๊ตฌ์กฐ์ผ.
์ง๊ฐ์ ๊ทธ๊ฑธ ํฉ์ฐํด์ ๋ณด์ฌ์ค ๋ฟ์ด๊ณ .
๊ฐ ๋์ ์๋ ์ ๊ธ ์คํฌ๋ฆฝํธ๊ฐ ๋ถ์ด ์์ด.
๊ฐ์ฅ ํํ ํํ๋ "์ด ๊ณต๊ฐํค ํด์์ ๋์ํ๋ ์๋ช
์ ์ ์ํ๋ผ" (P2PKH)์ง.
// ๋นํธ์ฝ์ธ ์ ๊ธ ์คํฌ๋ฆฝํธ (P2PKH) ๊ฐ๋
OP_DUP OP_HASH160 <๊ณต๊ฐํคํด์> OP_EQUALVERIFY OP_CHECKSIG
// ํด์: ์ฌ๋ฐ๋ฅธ ์๋ช
์ ๋ด๋์ผ๋ฉด ์ด ์ฝ์ธ์ ์ธ ์ ์๋ค
์ด๊ฑฐ ๋ง๊ณ ๋ ๊ฝค ์ฌ๋ฐ๋ ๊ฑธ ํ ์ ์์ด.
๐งฐ ๋นํธ์ฝ์ธ ์คํฌ๋ฆฝํธ๋ก ์ค์ ๊ฐ๋ฅํ ๊ฒ๋ค
1) ๋ฉํฐ์๊ทธ(Multisig)
"3๋ช
์ค 2๋ช
์ด ์๋ช
ํด์ผ ์ถ๊ธ ๊ฐ๋ฅ" ๊ฐ์ ์กฐ๊ฑด.
๊ธฐ์
๊ธ๊ณ , ๊ฑฐ๋์ ์ฝ๋์๋ , ๊ฐ์กฑ ์์ฐ ๊ด๋ฆฌ์ ์ค์ ๋ก ๋๋ฆฌ ์ฐ์ฌ.
2) ํ์๋ฝ(Timelock)
OP_CHECKLOCKTIMEVERIFY(CLTV), OP_CHECKSEQUENCEVERIFY(CSV)๋ฅผ ์ฐ๋ฉด
"๋ธ๋ก ๋์ด 900,000 ์ดํ์๋ง ์ฌ์ฉ ๊ฐ๋ฅ" ๊ฐ์ ์กฐ๊ฑด์ ๊ฑธ ์ ์์ด.
์ผ์ข
์ ์จ์ฒด์ธ ์ ๊ธฐ์๊ธ ํน์ ์์ ์ฅ์น์ง.
3) ํด์ ํ์๋ฝ ๊ณ์ฝ(HTLC)
"ํน์ ๋น๋ฐ๊ฐ์ ๊ณต๊ฐํ๋ฉด ์ฆ์ ์ง๊ธ, ์๋๋ฉด ์๊ฐ ์ง๋ ํ๋ถ".
์ด๊ฒ ๋ฐ๋ก ๋ผ์ดํธ๋ ๋คํธ์ํฌ์ ์ํ ๋ฏน ์ค์์ ๊ธฐ๋ฐ์ด์ผ.
๐ก ๊ทธ๋ฌ๋๊น ์ ํํ ๋งํ๋ฉด "๋นํธ์ฝ์ธ์ ์ค๋งํธ ์ปจํธ๋ํธ๊ฐ ์๋ค"๋ ๋ง์ ํ๋ ธ์ด.
๋ง๋ ํํ์ **"๋นํธ์ฝ์ธ์ ์ค๋งํธ ์ปจํธ๋ํธ๋ ์๋์ ์ผ๋ก ์ ํ์ ์ด๋ค"**์ผ.
๐ซ ์ ์ผ๋ถ๋ฌ ์ ํํ์๊น?
๋นํธ์ฝ์ธ Script์ ๊ฒฐ์ ์ ํน์ง์ ํ๋ง ๋ถ์์ (Turing-incomplete)์ด๋ผ๋ ์ ์ด์ผ.
์ฝ๊ฒ ๋งํด **๋ฐ๋ณต๋ฌธ(loop)์ด ์๋ค.**
๋ฐ๋ณต๋ฌธ์ด ์์ผ๋ฉด ๋ญ๊ฐ ์ข๋๊ณ ?
์คํ ์๊ฐ์ด ๋ฏธ๋ฆฌ ์์ธก๋๋ค.
๋ฌดํ๋ฃจํ๊ฐ ์์ฒ์ ์ผ๋ก ๋ถ๊ฐ๋ฅํ๋, ์
์์ ์ธ ์ฝ๋๊ฐ ์ ์ธ๊ณ ๋
ธ๋๋ฅผ ๋ง๋น์ํฌ ์ ์์ด.
๊ฒ๋ค๊ฐ ์ฌํ ์๋ ์ด๊ธฐ ๋ฒ์ ์์ OP_MUL(๊ณฑ์
), OP_CAT(๋ฌธ์์ด ๊ฒฐํฉ) ๋ฑ
์ฌ๋ฌ ์ฐ์ฐ์๋ฅผ ๋นํ์ฑํ์์ผ ๋ฒ๋ ธ์ด. ๋ฒ๊ทธ ์ํ ๋๋ฌธ์ด์์ง.
์ฆ ๋นํธ์ฝ์ธ์ ์ฒ ํ์ ๋ช
ํํด.
"ํ ์ ์๋ ๊ฑธ ๋๋ฆฌ๊ธฐ๋ณด๋ค, ์ ๋ ๊นจ์ง์ง ์๋ ๊ฑธ ํํ๋ค."
๋์ ๊ธฐ๋ฐ ๊ณ์ธต(base layer)์์ ๊ฐ์ฅ ์ค์ํ ๊ฑด ํ๋ คํจ์ด ์๋๋ผ ๋ถ๋ณ์ฑ์ด๋๊น.
๊ธ์ต ์ธํ๋ผ ๊ด์ ์์ ๋ณด๋ฉด ์ด๊ฑด ๊ฝค ๋ณด์์ ์ด๊ณ , ๋์์ ๋งค์ฐ ํฉ๋ฆฌ์ ์ธ ์ค๊ณ ํ๋จ์ด์ผ.
๐ป ์ด๋๋ฆฌ์: "์ธ๊ณ ์ปดํจํฐ๋ฅผ ๋ง๋ค์ด ๋ฒ๋ฆฌ์"
2013๋
, ๋น์ 19์ด์ด๋ ๋นํ๋ฆญ ๋ถํ
๋ฆฐ์ ๋นํธ์ฝ์ธ ์ปค๋ฎค๋ํฐ์์ ์ด๋ฐ ์ ์์ ํด.
"์คํฌ๋ฆฝํธ ์ธ์ด๋ฅผ ์ข ๋ ๋ฒ์ฉ์ ์ผ๋ก ๋ง๋ค์."
๋ฐ์๋ค์ฌ์ง์ง ์์๊ณ , ๊ทธ๋ ์ ์ฒด์ธ์ ๋ง๋ค์์ด. ๊ทธ๊ฒ 2015๋
์ถ๋ฒํ ์ด๋๋ฆฌ์์ด์ผ.
๐ง EVM, ์ ์ธ๊ณ๊ฐ ๊ณต์ ํ๋ ๋จ ํ๋์ CPU
์ด๋๋ฆฌ์์ ํต์ฌ์ EVM(Ethereum Virtual Machine)์ด์ผ.
์ ์ธ๊ณ ์์ฒ ๊ฐ ๋
ธ๋๊ฐ ์์ ํ ๋๊ฐ์ ๊ณ์ฐ์ ๋๊ฐ์ ์์๋ก ์ํํ๋ ๊ฐ์ ์ปดํจํฐ.
๊ทธ๋์ ์ด๋๋ฆฌ์์ **"์ธ๊ณ ์ปดํจํฐ(World Computer)"**๋ผ๊ณ ๋ถ๋ฌ.
๋๋ฆฌ๊ณ ๋น์ธ์ง๋ง, ์ ๋ ๊บผ์ง์ง ์๊ณ ๊ฒ์ด๋นํ์ง ์๋ ์ปดํจํฐ.
๐ฆ ๊ณ์ (Account) ๋ชจ๋ธ
์ด๋๋ฆฌ์์ UTXO ๋์ ๊ณ์ ๊ธฐ๋ฐ์ด์ผ. ์ํ ํต์ฅ์ด๋ ๋น์ทํด.
๊ณ์ ์ ๋ ์ข
๋ฅ๊ฐ ์์ด.
| ๊ตฌ๋ถ | EOA (์ธ๋ถ์์ ๊ณ์ ) | CA (์ปจํธ๋ํธ ๊ณ์ ) |
|---|---|---|
| ์์ ์ | ๊ฐ์ธ ํค๋ฅผ ๊ฐ์ง ์ฌ๋ | ์์ (์ฝ๋๊ฐ ์ฃผ์ธ) |
| ๊ตฌ์ฑ | ์์ก + ๋ ผ์ค | ์์ก + ์ฝ๋ + ์ ์ฅ๊ณต๊ฐ |
| ํธ๋์ญ์ | ์ค์ค๋ก ์์ ๊ฐ๋ฅ | ํธ์ถ๋ฐ์์ผ๋ง ๋์ |
| ๋น์ | ์ง๊ฐ | ์ํ๊ธฐ |
์ฌ๊ธฐ์ ์ค์ํ ํฌ์ธํธ.
์ปจํธ๋ํธ ๊ณ์ ์๋ ์ฃผ์ธ์ด ์์ด.
์ฝ๋์ ์ ํ ๋๋ก๋ง ์์ง์ฌ. ๊ฐ๋ฐ์์กฐ์ฐจ (์ค๊ณ์ ๊ทธ๋ ๊ฒ ๋ฃ์ง ์์๋ค๋ฉด) ๋ชป ๊ฑด๋๋ ค.
โฝ ๊ฐ์ค(Gas), ๋ฌดํ๋ฃจํ๋ฅผ ๋ง๋ ๊ธฐ๋ฐํ ๋ธ๋ ์ดํฌ
๊ทผ๋ฐ ์ฌ๊ธฐ์ ๋ฌธ์ ๊ฐ ์๊ฒจ.
์ด๋๋ฆฌ์์ ์๋ฆฌ๋ํฐ๋ ํ๋ง ์์ ํด. ๋ฐ๋ณต๋ฌธ๋ ๋๊ณ ์ฌ๊ท๋ ๋ผ.
๊ทธ๋ผ ๋๊ฐ while(true) ํ๋ ์ฌ๋ ค๋ฒ๋ฆฌ๋ฉด ์ ์ธ๊ณ๊ฐ ๋ฉ์ถ๋ ๊ฑฐ ์๋?
๊ทธ๋์ ๋์จ ๊ฒ ๊ฐ์ค์ผ.
๋ชจ๋ ์ฐ์ฐ์ ๊ฐ๊ฒฉํ๋ฅผ ๋ถ์์ด.
โฝ ๊ฐ์ค ๊ฐ๊ฒฉํ ์์ (ํ๋กํ ์ฝ ๊ท์ ๊ฐ ๊ธฐ์ค)
๋ง์
(ADD) = 3 gas
๊ณฑ์
(MUL) = 5 gas
์ ์ฅ๊ณต๊ฐ ์ ๊ท ๊ธฐ๋ก(SSTORE) = 20,000 gas
๋จ์ ETH ์ ์ก = 21,000 gas
๐ ์ ์ฅ(storage)์ด ๊ณ์ฐ๋ณด๋ค ์์ฒ ๋ฐฐ ๋น์ธ๋ค๋ ๊ฒ ํต์ฌ์ด์ผ.
์? ๊ณ์ฐ์ ํ ๋ฒ ํ๊ณ ๋์ด์ง๋ง, ์ ์ฅ์ ์ ์ธ๊ณ ๋
ธ๋๊ฐ ์์ํ ๋ค๊ณ ์์ด์ผ ํ๋๊น.
๊ฐ์ค๋ฅผ ๋ค ์ฐ๋ฉด ์คํ์ด ์ค๋จ๋๊ณ (Out of Gas), ์ํ๋ ์๋๋๋ก ๋กค๋ฐฑ๋ผ.
๊ทผ๋ฐ **์์๋ฃ๋ ํ๋ถ ์ ๋ผ.** ๋
ธ๋๋ ์ด๋ฏธ ๊ณ์ฐ์ ํ์ผ๋๊น.
์์ธํ์ง๋ง ๊ณต์ ํ ๊ท์น์ด์ง.
2021๋
EIP-1559 ์
๊ทธ๋ ์ด๋ ์ดํ์ ์์๋ฃ๊ฐ ๊ธฐ๋ณธ ์์๋ฃ(base fee) + ์ฐ์ ์์๋ฃ(priority fee) ๊ตฌ์กฐ๋ก ๋ฐ๋์๊ณ ,
๊ธฐ๋ณธ ์์๋ฃ๋ ์๊ฐ๋ผ์ ETH ๊ณต๊ธ์ ๋ํ๋ ์ด์
์๋ ฅ์ ์ฃผ๊ธฐ๋ ํด.
๐ ์ฝ๋๋ก ์ง์ ๋น๊ตํด๋ณด์
๋ง๋ก๋ง ํ๋ฉด ๊ฐ์ด ์ ์ค๋๊น, ๊ฐ์ ๋ชฉ์ ์ ๋ ์ฒด์ธ์์ ์ด๋ป๊ฒ ํํํ๋์ง ๋ณด์.
๋นํธ์ฝ์ธ: 2-of-3 ๋ฉํฐ์๊ทธ
OP_2 <๊ณต๊ฐํคA> <๊ณต๊ฐํคB> <๊ณต๊ฐํคC> OP_3 OP_CHECKMULTISIG
// 3๊ฐ ํค ์ค 2๊ฐ ์๋ช
์ด๋ฉด ์ง์ถ ํ์ฉ
// ์กฐ๊ฑด ๊ฒ์ฆ โ ์ฝ์ธ ์ด๋. ๊ทธ๊ฒ ์ ๋ถ.
์ด๋๋ฆฌ์: ํ ํฐ ๋ฐํ (์๋ฆฌ๋ํฐ)
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
contract MyToken {
string public name = "JaenungCoin";
mapping(address => uint256) public balanceOf;
uint256 public totalSupply;
constructor(uint256 initial) {
totalSupply = initial;
balanceOf[msg.sender] = initial;
}
function transfer(address to, uint256 amount) public returns (bool) {
require(balanceOf[msg.sender] >= amount, "Not enough balance");
balanceOf[msg.sender] -= amount;
balanceOf[to] += amount;
return true;
}
}
์ฐจ์ด ๋๊ปด์ ธ?
๋นํธ์ฝ์ธ ์คํฌ๋ฆฝํธ๋ "์ด ๋์ ์ธ ์๊ฒฉ์ด ์๋๊ฐ?"๋ง ๊ฒ์ฆํด. ์ฐธ/๊ฑฐ์ง ํ์ ๊ธฐ์ผ.
์ด๋๋ฆฌ์ ์ปจํธ๋ํธ๋ ์๊ธฐ๋ง์ ์ฅ๋ถ(mapping)๋ฅผ ๋ค๊ณ ์๊ณ , ์ํ๋ฅผ ๊ณ์ ๊ฐฑ์ ํด.
์ ์ฅ๊ณต๊ฐ๊ณผ ๋ก์ง์ ๊ฐ์ง ์์ ํ๋ก๊ทธ๋จ์ธ ๊ฑฐ์ง.
์ ์ฝ๋ ์์ญ ์ค์ด ERC-20 ํ์ค์ ๋ผ๋๊ณ ,
์ธ์์ ์คํ
์ด๋ธ์ฝ์ธ ๋๋ถ๋ถ์ด ์ด ๊ตฌ์กฐ ์์์ ๋์๊ฐ.
USDT, USDC ๊ฐ์ ์ ๋ค ๋ง์ด์ผ.
๐ ํ๋์ ์ ๋ฆฌํ๋ ํต์ฌ ์ฐจ์ดํ
| ํญ๋ชฉ | ๋นํธ์ฝ์ธ | ์ด๋๋ฆฌ์ |
|---|---|---|
| ์ถ์ | 2009๋ | 2015๋ |
| ๋ชฉํ | P2P ์ ์ํํ / ๊ฐ์น ์ ์ฅ | ํ์ค์ ์ ํ๋ฆฌ์ผ์ด์ ํ๋ซํผ |
| ํ๊ณ ๋ชจ๋ธ | UTXO | ๊ณ์ (Account) |
| ์ธ์ด | Script (์คํ ๊ธฐ๋ฐ) | Solidity / Vyper โ EVM ๋ฐ์ดํธ์ฝ๋ |
| ํ๋ง ์์ ์ฑ | ๋ถ์์ (๋ฃจํ ์์) | ์์ (๊ฐ์ค๋ก ์ ํ) |
| ํฉ์ ๋ฐฉ์ | ์์ ์ฆ๋ช (PoW) | ์ง๋ถ์ฆ๋ช (PoS, 2022๋ Merge ์ดํ) |
| ๋ธ๋ก ์์ฑ | ์ฝ 10๋ถ | ์ฝ 12์ด (์ฌ๋กฏ ๋จ์) |
| ๋ฐํ ์ ์ฑ | 2,100๋ง ๊ฐ ์ํ | ์ํ ์์ + EIP-1559 ์๊ฐ |
| ์ฃผ ํ์ฅ ๋ฐฉ์ | ๋ผ์ดํธ๋ ๋ฑ ๋ ์ด์ด2 | ๋กค์ ๊ธฐ๋ฐ ๋ ์ด์ด2 |
| ํํ๋ ฅ | ๋ฎ์ (์๋์ ) | ๋์ |
| ๊ณต๊ฒฉ ํ๋ฉด | ์ข์ | ๋์ |
๐ฅ "์ฝ๋๊ฐ ๊ณง ๋ฒ"์ด ๋ง๋ ์ญ์ฌ์ ์ฌ๊ฑด๋ค
ํํ๋ ฅ์ด ์ปค์ง๋ฉด ์ฌ๊ณ ๋ ์ปค์ ธ. ์ด๊ฑด ์ํํธ์จ์ด ๊ณตํ์ ์ค๋๋ ์ง๋ฆฌ์ผ.
1) The DAO ์ฌํ (2016)
์ด๋๋ฆฌ์ ์ต๋์ ๋ถ๊ธฐ์ .
The DAO๋ผ๋ ํ์ค์ ํฌ์ ํ๋์ ์ฝ 1,200๋ง ETH๊ฐ ๋ชจ์์ด. ๋น์ ์๊ฐ ์ฝ 1์ต 5์ฒ๋ง ๋ฌ๋ฌ.
๊ทผ๋ฐ ์ปจํธ๋ํธ์ ์ฌ์ง์
(Reentrancy) ์ทจ์ฝ์ ์ด ์์์ด.
์ฝ๊ฒ ๋งํ๋ฉด ์ด๋ฐ ์์ ์ค์์ผ.
// ์ทจ์ฝํ ํจํด
1. ๋์ ๋ณด๋ธ๋ค
2. ์์ก์ 0์ผ๋ก ๋ง๋ ๋ค โ ์์๊ฐ ์๋ชป๋จ!
// ๊ณต๊ฒฉ์: 1๋ฒ๊ณผ 2๋ฒ ์ฌ์ด์ ๋ค์ ์ถ๊ธ ํธ์ถ โ ๋ฐ๋ณต ์ธ์ถ
์ฝ 360๋ง ETH๊ฐ ๋น ์ ธ๋๊ฐ์ด.
๊ฒฐ๊ตญ ์ปค๋ฎค๋ํฐ๋ ํ๋ํฌํฌ๋ฅผ ๊ฒฐ์ ํ๊ณ , ์ฒด์ธ์ ๋๋ก ๊ฐ๋ผ์ก์ง.
๋๋๋ฆฐ ์ชฝ์ด ์ด๋๋ฆฌ์(ETH), "์ฝ๋๊ฐ ๊ณง ๋ฒ"์ ์งํจ ์ชฝ์ด ์ด๋๋ฆฌ์ ํด๋์(ETC).
โ ๏ธ ์ง๊ธ์ ์ด๊ฑธ ๋ง๋ Checks-Effects-Interactions ํจํด์ด ํ์ค์ด์ผ.
"๊ฒ์ฌ โ ์ํ ๋ณ๊ฒฝ โ ์ธ๋ถ ํธ์ถ" ์์๋ฅผ ๋ฐ๋์ ์งํค๋ ๊ฒ.
OpenZeppelin์ ReentrancyGuard ๊ฐ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๋๋ฆฌ ์ฐ์ด๊ณ .
2) Parity ๋ฉํฐ์๊ทธ ๋๊ฒฐ (2017)
ํ ์ฌ์ฉ์๊ฐ ์ค์๋ก ๊ณต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ปจํธ๋ํธ๋ฅผ selfdestruct ์์ผ๋ฒ๋ ธ์ด.
๊ทธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ์์กดํ๋ ์๋ฐฑ ๊ฐ ์ง๊ฐ์ด ํ์๊ฐ์ ์๊ตฌ ๋๊ฒฐ.
์ฝ 51๋ง ETH๊ฐ ์ง๊ธ๋ ๊ทธ ์์ ๊ฐํ ์์ด. ์๋ฌด๋ ๋ชป ๊บผ๋ด.
๋นํธ์ฝ์ธ์์ ์ด๋ฐ ์ฌ๊ณ ๊ฐ ๊ตฌ์กฐ์ ์ผ๋ก ๋๊ธฐ ์ด๋ ค์.
์คํฌ๋ฆฝํธ๊ฐ ์ ์ด์ ๊ทธ๋ฐ ๋ณต์กํ ์์กด ๊ตฌ์กฐ๋ฅผ ๋ชป ๋ง๋ค๊ฑฐ๋ .
3) ๊ทธ๋ผ ๋นํธ์ฝ์ธ์ ์ฌ๊ณ ๊ฐ ์์๋?
์์์ด. 2010๋
Value Overflow Incident.
์ค๋ฒํ๋ก ๋ฒ๊ทธ๋ก 1,840์ต BTC๊ฐ ์์ฑ๋ ๋ธ๋ก์ด ๋์๊ณ ,
5์๊ฐ ๋ง์ ํจ์น + ์ฒด์ธ ์ฌ๊ตฌ์ฑ์ผ๋ก ํด๊ฒฐ๋์ง.
๋จ, ๊ทธ๊ฑด ํ๋กํ ์ฝ ์์ฒด ๋ฒ๊ทธ์๊ณ ์ดํ ์ฝ๋๋ฒ ์ด์ค๋ ๊ทน๋๋ก ๋ณด์์ ์ผ๋ก ๊ด๋ฆฌ๋ผ ์์ด.
์ด๋ฐ ์ค์ ์ฌ๋ก๋ค์ ๊ฐ๋ฐ์ ์ปค๋ฎค๋ํฐ๋ ์ฌ๋ฅ๋ท์ '์ง์์ธ์ ์ฒ' ๊ฐ์ ๊ณณ์์
๊ณ์ ๋ณต๊ธฐ๋๊ณ ๊ณต์ ๋๋๋ฐ, ์ฌ์ค ๋ธ๋ก์ฒด์ธ ํ์ต์์ ๊ฐ์ฅ ๊ฐ์ง ๊ต์ฌ๊ฐ ๋ฐ๋ก ์ด๋ฐ ์คํจ ๊ธฐ๋ก์ด์ผ.
๐ฑ ๊ทธ๋ฐ๋ฐ ๋นํธ์ฝ์ธ๋ ๊ฐ๋ง์์ง ์์๋ค
"๋นํธ์ฝ์ธ = ์ ์ฒด๋ ๊ธฐ์ "์ด๋ผ๋ ๋ง๋ ๋ฐ์ ํ๋ ธ์ด.
SegWit (2017)
์๋ช
๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฆฌํด์ ํธ๋์ญ์
๋ณ์กฐ ๊ฐ๋ฅ์ฑ(malleability) ๋ฌธ์ ๋ฅผ ํด๊ฒฐ.
์ด๊ฒ ํด๊ฒฐ๋๋ฉด์ ๋ผ์ดํธ๋ ๋คํธ์ํฌ๊ฐ ์ค์ฉํ๋ ์ ์์์ด.
Taproot (2021)
์ง์ง ์ค์ํ ์
๊ทธ๋ ์ด๋์ผ.
์๋
ธ์ด ์๋ช
(Schnorr) ๋์
์ผ๋ก ์ฌ๋ฌ ์๋ช
์ ํ๋๋ก ํฉ์น ์ ์๊ฒ ๋๊ณ ,
MAST ๊ตฌ์กฐ ๋์ ๋ณต์กํ ์กฐ๊ฑด ์ค ์ค์ ์ฌ์ฉํ ๊ฒฝ๋ก๋ง ๊ณต๊ฐํ๋ฉด ๋ผ.
๊ฒฐ๊ณผ์ ์ผ๋ก 10๋ช
์ง๋ฆฌ ๋ฉํฐ์๊ทธ๋ ๊ฒ๋ณด๊ธฐ์ ํ๋ฒํ ๋จ์ผ ์๋ช
๊ฑฐ๋์ฒ๋ผ ๋ณด์ฌ.
ํ๋ผ์ด๋ฒ์ โ, ์์๋ฃ โ, ํํ๋ ฅ โ ๋ค ์ฑ๊ธด ๊ฑฐ์ง.
๋ผ์ดํธ๋ ๋คํธ์ํฌ
HTLC๋ฅผ ํ์ฉํ ๋ ์ด์ด2 ๊ฒฐ์ ๋ง.
์ฑ๋์ ์ด์ด๋๋ฉด ์คํ์ฒด์ธ์์ ์ฌ์ค์ ์ฆ์ยท์ด์ ๋น์ฉ ์ก๊ธ์ด ๊ฐ๋ฅํด.
์์ด๋ฐ๋๋ฅด ๊ฐ์ ๊ณณ์์ ์ค์ ์์ก๊ฒฐ์ ์ ์ฐ์ด๊ณ ์์ด.
๐ฟ ์์ฝํ๋ฉด, ๋นํธ์ฝ์ธ์ ์ ๋ต์ "๊ธฐ๋ฐ ๊ณ์ธต์ ์ต์ํ๋ง, ๋ณต์กํ ๊ฑด ์์ธต์์"์ผ.
์ด๋๋ฆฌ์์ ์ ๋ต์ "๊ธฐ๋ฐ ๊ณ์ธต์ ๊ฐ๋ ฅํ๊ฒ, ํ์ฅ์ ๋กค์
์ผ๋ก"๊ณ .
์ฒ ํ์ด ๋ค๋ฅธ ๊ฑฐ์ง, ์ฐ์ด์ด ์๋์ผ.
๐ฆ ํํ ํฌ ๊ด์ : ์ค์ ๊ธ์ต์์ ์ด๋ป๊ฒ ์ฐ์ด๋
๋นํธ์ฝ์ธ์ด ๊ฐํ ์์ญ
ยท ๊ฐ์น ์ ์ฅ โ 2,100๋ง ๊ฐ ๊ณ ์ ๊ณต๊ธ, ์์ธก ๊ฐ๋ฅํ ํตํ ์ ์ฑ
ยท ๊ตญ๊ฒฝ ๊ฐ ๋๊ท๋ชจ ๊ฒฐ์ โ ๋จ์ํ๊ณ ์ต์ข
์ฑ์ด ๋ํฐ์
ยท ๊ธฐ์
์ฌ๋ฌด ์์ฐ โ ์ฌ๋ฌ ์์ฅ์ฌ๊ฐ ์ฌ๋ฌด์ ํ์ ํธ์
ยท ํ๋ฌผ ETF โ 2024๋
1์ ๋ฏธ๊ตญ SEC ์น์ธ์ผ๋ก ์ ๋๊ถ ์ง์
์ด๋๋ฆฌ์์ด ๊ฐํ ์์ญ
ยท ์คํ
์ด๋ธ์ฝ์ธ ์ธํ๋ผ โ ๋ฌ๋ฌ ์ฐ๋ ํ ํฐ์ ์ฃผ์ ๋ฐํ ๋ฌด๋
ยท DeFi โ ๋์ถ, ํ์ค์๊ฑฐ๋์(DEX), ํ์์ํ
ยท RWA ํ ํฐํ โ ๊ตญ์ฑยท๋ถ๋์ฐยทํ๋ ์ง๋ถ์ ์จ์ฒด์ธํ
ยท NFT์ ๋์งํธ ์์ ๊ถ
ยท DAO โ ์ฝ๋ ๊ธฐ๋ฐ ์กฐ์ง ๊ฑฐ๋ฒ๋์ค
๐๏ธ ์ค์ ๊ธ์ต๊ธฐ๊ด๋ค์ ์์ง์๋ ์ฌ๋ฐ์ด.
JP๋ชจ๊ฑด์ ์์ฒด ํ๋ผ์ด๋น ์ฒด์ธ์์ ๋ด๋ณด ์ด๋ ์คํ์ ํ๊ณ ,
์ฌ๋ฌ ์์ฐ์ด์ฉ์ฌ๊ฐ ํ ํฐํ ๋จธ๋๋ง์ผํ๋๋ฅผ ํผ๋ธ๋ฆญ ์ฒด์ธ ์์ ์ฌ๋ ธ์ด.
๊ณตํต์ ? ๋๋ถ๋ถ **EVM ํธํ ํ๊ฒฝ**์ ํํ๋ค๋ ๊ฑฐ์ผ.
๊ฐ๋ฐ์ ํ๊ณผ ๋๊ตฌ ์ํ๊ณ๊ฐ ์๋์ ์ด๋๊น.
๐ฐ๐ท ๊ทธ๋ฆฌ๊ณ ๊ท์ ์ด์ผ๊ธฐ
ํ๊ตญ์ 2024๋
7์ ๊ฐ์์์ฐ์ด์ฉ์๋ณดํธ๋ฒ์ด ์ํ๋์ด.
์ด์ฉ์ ์์น๊ธ ๋ถ๋ฆฌ๋ณด๊ด, ์์ธ์กฐ์ข
๊ธ์ง, ์ฌ๊ณ ๋์ ์๋ฌด ๊ฐ์ ๋ด์ฉ์ด์ง.
EU๋ MiCA๋ฅผ ๋จ๊ณ์ ์ผ๋ก ์ํ ์ค์ด๊ณ .
ํฅ๋ฏธ๋ก์ด ๊ฑด, ๊ท์ ๊ฐ ๊ฐํด์ง์๋ก
"์ด ์ฝ์ธ์ด ์ค์ ๋ก ๋ฌด์จ ๊ธฐ๋ฅ์ ํ๋๊ฐ"๊ฐ ๋ ์ค์ํด์ง๋ค๋ ์ ์ด์ผ.
์ค๋งํธ ์ปจํธ๋ํธ๊ฐ ๋ญ ํ๋์ง ์ฝ์ ์ค ์๋ ๋ฅ๋ ฅ = ํํ
ํฌ ๋ถ์ผ์ ์๋ก์ด ๋ฌธํด๋ ฅ์ธ ์
.
๐งญ ๊ทธ๋์ ๊ฒฐ๋ก ์?
๋ค์ ์ฒ์ ์ง๋ฌธ์ผ๋ก ๋์๊ฐ์.
"๋นํธ์ฝ์ธ๊ณผ ์ด๋๋ฆฌ์์ ์ฐจ์ด๊ฐ ๋ญ์ผ?"
์ด์ ์ด๋ ๊ฒ ๋ตํ ์ ์์ด.
๋นํธ์ฝ์ธ์ "๋์ด ์ฎ๊ฒจ์ง๋ ์กฐ๊ฑด"์ ๊ฒ์ฆํ๋ **๊ณ์ฐ๊ธฐ**๋ค.
๋ฐ๋ณต๋ฌธ์ ํฌ๊ธฐํ๊ณ ์ ๋์ ๊ฒฌ๊ณ ํจ์ ์ป์๋ค.
์ด๋๋ฆฌ์์ "๋์ ๋ค๋ฃจ๋ ํ๋ก๊ทธ๋จ"์ ์คํํ๋ **์ปดํจํฐ**๋ค.
๋ณต์ก์ฑ์ ๊ฐ์ํ๊ณ ๋ฌดํํ ํํ๋ ฅ์ ์ป์๋ค.
๋ ๋ค ์ค๋งํธ ์ปจํธ๋ํธ๋ฅผ ๊ฐ๊ณ ์์ด.
์ฐจ์ด๋ "์ด๋๊น์ง ํ์ฉํ ๊ฒ์ธ๊ฐ"๋ผ๋ ์ ํ์ด์์ ๋ฟ์ด์ผ.
๊ธ๊ณ ๋ฅผ ๋ง๋ค ๋ ๋ฌธ์ ํ๋๋ง ๋ฌ๊ณ ๋๊ป๊ฒ ํ ์ง,
๋ฌธ์ ์ฌ๋ฌ ๊ฐ ๋ฌ๊ณ ๊ธฐ๋ฅ์ ๋ง์ด ๋ฃ์์ง์ ์ฐจ์ด๋ ๋น์ทํ์ง.
์ ๋ต์ ์์ด. ๋ฌด์์ ๋ฃ์์ง์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๊น.
๐ ๋ง์ง๋ง ๋น๋ถ
์ด ๊ธ์ ๊ธฐ์ ๊ตฌ์กฐ๋ฅผ ์ค๋ช
ํ ์ง์ ์ฝํ
์ธ ์ผ. ํฌ์ ๊ถ์ ๊ฐ ์๋์ผ.
์ํธํํ๋ ๋ณ๋์ฑ์ด ํฌ๊ณ , ์ค๋งํธ ์ปจํธ๋ํธ์ ์๊ธ์ ๋ฃ๋ ํ์๋
์ฝ๋ ์ํยท์ค๋ผํด ์ํยท๊ฑฐ๋ฒ๋์ค ์ํ์ ๋์์ ๋ถ๋ดํ๋ ๊ฑฐ์ผ.
์ฝ๋๋ฅผ ์ฝ์ ์ ์๋ค๋ฉด, ๊ทธ ์ํ๋ ์ธก์ ํ ์ ์๋ค๋ ๊ฑธ ๊ผญ ๊ธฐ์ตํด.
๊ธฐ์ ์ ์ดํดํ๋ ๊ฑด ๊ฒฐ๊ตญ ๋จ์ ๋ง์ ํ๋ค๋ฆฌ์ง ์๋ ํ์ด์ผ.
์ค๋ ๋ค๊ฐ "ํ๋ง ์์ ์ฑ"์ด๋ "๊ฐ์ค"๋ฅผ ์ดํดํ๋ค๋ฉด,
์ด๋ฏธ ๋ํ์ 90%์์ ์ค์ฌ์ ์ก์ ์ ์์ด. ์ง์ง๋ก. ๐
๊ด๋ จ ํค์๋
๋๊ธ ์์ฑ
์ด ๊ธ์ ๋ํ ์ฌ๋ฌ๋ถ์ ์๊ฐ์ ๋ค๋ ค์ฃผ์ธ์
๋ก๊ทธ์ธ์ด ํ์ํฉ๋๋ค
๋๊ธ์ ์์ฑํ๋ ค๋ฉด ๋จผ์ ๋ก๊ทธ์ธํด์ฃผ์ธ์.
๋๊ธ 0
์ง์์ธ์ ์ฒ - ์ง์ ์ฌ์ฐ๊ถ ๋ณดํธ ๊ณ ์ง
์ง์ ์ฌ์ฐ๊ถ ๋ณดํธ ๊ณ ์ง
- ์ ์๊ถ ๋ฐ ์์ ๊ถ: ๋ณธ ์ปจํ ์ธ ๋ ์ฌ๋ฅ๋ท์ ๋ ์ AI ๊ธฐ์ ๋ก ์์ฑ๋์์ผ๋ฉฐ, ๋ํ๋ฏผ๊ตญ ์ ์๊ถ๋ฒ ๋ฐ ๊ตญ์ ์ ์๊ถ ํ์ฝ์ ์ํด ๋ณดํธ๋ฉ๋๋ค.
- AI ์์ฑ ์ปจํ ์ธ ์ ๋ฒ์ ์ง์: ๋ณธ AI ์์ฑ ์ปจํ ์ธ ๋ ์ฌ๋ฅ๋ท์ ์ง์ ์ฐฝ์๋ฌผ๋ก ์ธ์ ๋๋ฉฐ, ๊ด๋ จ ๋ฒ๊ท์ ๋ฐ๋ผ ์ ์๊ถ ๋ณดํธ๋ฅผ ๋ฐ์ต๋๋ค.
- ์ฌ์ฉ ์ ํ: ์ฌ๋ฅ๋ท์ ๋ช ์์ ์๋ฉด ๋์ ์์ด ๋ณธ ์ปจํ ์ธ ๋ฅผ ๋ณต์ , ์์ , ๋ฐฐํฌ, ๋๋ ์์ ์ ์ผ๋ก ํ์ฉํ๋ ํ์๋ ์๊ฒฉํ ๊ธ์ง๋ฉ๋๋ค.
- ๋ฐ์ดํฐ ์์ง ๊ธ์ง: ๋ณธ ์ปจํ ์ธ ์ ๋ํ ๋ฌด๋จ ์คํฌ๋ํ, ํฌ๋กค๋ง, ๋ฐ ์๋ํ๋ ๋ฐ์ดํฐ ์์ง์ ๋ฒ์ ์ ์ฌ์ ๋์์ด ๋ฉ๋๋ค.
- AI ํ์ต ์ ํ: ์ฌ๋ฅ๋ท์ AI ์์ฑ ์ปจํ ์ธ ๋ฅผ ํ AI ๋ชจ๋ธ ํ์ต์ ๋ฌด๋จ ์ฌ์ฉํ๋ ํ์๋ ๊ธ์ง๋๋ฉฐ, ์ด๋ ์ง์ ์ฌ์ฐ๊ถ ์นจํด๋ก ๊ฐ์ฃผ๋ฉ๋๋ค.
์์ง ๋๊ธ์ด ์์ต๋๋ค.