Cardano์ EUTXO ๋ชจ๋ธ Part 1: ์ค๋งํธ ๊ณ์ฝ์ ์ํ ๋ธ๋ก์ฒด์ธ ์ํคํ ์ฒ์ ์งํ
Ilhun @CryptoVeri
2025๋
5์ 19์ผ
์ด ์๋ฆฌ์ฆ๋ Cardano์ EUTXO ๋ชจ๋ธ์ด ๊ธฐ์กด ๋ธ๋ก์ฒด์ธ ๊ตฌ์กฐ์ ์ด๋ป๊ฒ ๋ค๋ฅธ์ง, ์ ์ค์ํ์ง, ๊ทธ๋ฆฌ๊ณ ๊ฐ๋ฐ์์ ์ฌ์ฉ์๊ฐ ์ด๋ค ์ด์ ์ ์ป์ ์ ์๋์ง๋ฅผ ๋ค๋ฃน๋๋ค. Part 1์์๋ ๊ตฌ์กฐ์ ๊ธฐ์ด์ ๋ค์ดํฐ๋ธ ์์ฐ์ ๋ํด ์ง์ค์ ์ผ๋ก ์ค๋ช ํฉ๋๋ค.
๋ชฉ์ฐจ
- ์๋ก : ๋ธ๋ก์ฒด์ธ ์ํคํ ์ฒ ์ ์์ ์๋
- ๋ธ๋ก์ฒด์ธ ํ๊ณ ๋ชจ๋ธ์ ๋ ์ถ
- EUTXO: Cardano์ ์ํคํ ์ฒ์ ์งํ
- ๋ค์ดํฐ๋ธ ํ ํฐ: ์ค๋งํธ ๊ณ์ฝ ์๋ ๋ค์์ฐ ์์คํ
- (์๊ณ ) Part 2 ๋ฏธ๋ฆฌ๋ณด๊ธฐ
1. ์๋ก : ๋ธ๋ก์ฒด์ธ ์ํคํ ์ฒ ์ ์์ ์๋
๋ธ๋ก์ฒด์ธ ํ๋ซํผ๋ค์ ๊ทธ ํต์ฌ์ธ ํ๊ณ ๋ชจ๋ธ์์ ๊ฐ๋ผ์ง๊ณ ์์ต๋๋ค.
- Ethereum์ ์ค๋งํธ ๊ณ์ฝ ์ ์ฐ์ฑ์ ์ํด ๊ณ์ ๊ธฐ๋ฐ(Account/Balance) ๋ชจ๋ธ์ ์ฑํํ์ต๋๋ค.
- ๋ฐ๋ฉด Bitcoin์ ํธ๋์ญ์ ๊ธฐ๋ฐ์ UTXO(Unspent Transaction Output) ๋ชจ๋ธ์ ์ฌ์ฉํด ๋ณด์์ฑ๊ณผ ์ถ์ ์ฑ์ ์ค์ํฉ๋๋ค.
ํ์ง๋ง ์ด ๋ ๋ชจ๋ธ์ ๊ฐ๊ฐ ๋ค์๊ณผ ๊ฐ์ ๋ฌธ์ ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค:
- Ethereum: ์ ์ญ ์ํ(global state) ๊ฐฑ์ ์ ๋ณต์ก์ฑ, ๋ณ๋ ฌ์ฑ ๋ถ์กฑ, ์์ธก ๋ถ๊ฐ๋ฅํ ์์๋ฃ
- Bitcoin: ์ํ๋ฅผ ์ง์ ๋ณด์กดํ๊ธฐ ์ด๋ ต๊ณ , ๋ณต์กํ ์ค๋งํธ ๊ณ์ฝ ๊ธฐ๋ฅ ๊ตฌํ์ ์ ์ฝ์ด ์์
Cardano๋ Extended UTXO (EUTXO) ๋ชจ๋ธ์ ํตํด ์ด ๋ ๋ชจ๋ธ์ ์ฅ์ ์ ์ตํฉํ์ต๋๋ค.
์ฆ, Bitcoin์ ๋ช
ํ์ฑ๊ณผ Ethereum์ ์ ์ฐ์ฑ์ ๋์์ ์ถ๊ตฌํฉ๋๋ค.
2. ๋ธ๋ก์ฒด์ธ ํ๊ณ ๋ชจ๋ธ์ ๋ ์ถ
๊ณ์ /์๊ณ (Account/Balance) ๋ชจ๋ธ
- ์ํ๊ฐ โ๊ณ์ โ์ ์ ์ฅ๋๋ฉฐ, ํธ๋์ญ์ ๋ง๋ค ์ํ๊ฐ ๊ฐฑ์ ๋จ.
- ๊ธ๋ก๋ฒ ์ํ๋ฅผ ์ฐธ์กฐํ๋ฏ๋ก ๋ณ๋ ฌ ํธ๋์ญ์ ์ฒ๋ฆฌ์ ํ๊ณ.
- ์ผ๋ถ ๊ณ์ฝ ์คํจ ์ ์ ์ฒด ์ํ ๋กค๋ฐฑ โ ์์๋ฃ ์์ค.
- ์)
๋ธ๋ก์ฒด์ธ | ํน์ง ๋ฐ ํ์ฉ |
---|---|
Ethereum | ๋ํ์ ์ธ ๊ณ์ ๊ธฐ๋ฐ ํ๋ซํผ. ์ค๋งํธ ๊ณ์ฝ ์ค์ฌ ์ํ๊ณ์ ์ ๊ตฌ์. ๋ชจ๋ ์ํ๊ฐ ์ ์ญ์ผ๋ก ์ ์ง๋จ. |
BNB Chain | Ethereum๊ณผ ์ ์ฌํ ๊ตฌ์กฐ. ๋น ๋ฅธ ์ฒ๋ฆฌ ์๋์ ๋ฎ์ ์์๋ฃ๋ฅผ ์ถ๊ตฌํจ. |
Avalanche | Ethereum Virtual Machine(EVM) ํธํ์ฑ ์ ๊ณต. ๊ณ์ ๊ธฐ๋ฐ ๊ตฌ์กฐ. |
Solana | Solana๋ ๊ณ์ ๊ธฐ๋ฐ ๋ชจ๋ธ์ ์ฌ์ฉํ์ง๋ง, Sealevel์ด๋ผ๋ ๋ณ๋ ฌ ์คํ ํ๊ฒฝ์ ํตํด ํธ๋์ญ์ ๊ฐ ์ถฉ๋์ด ์๋ ๊ฒฝ์ฐ ๋ณ๋ ฌ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํ๋๋ก ์ค๊ณ๋จ. ๊ณ ์ฑ๋ฅ์ ์ํด ๊ณ ์ ํ ๊ณ์ ๊ด๋ฆฌ ๋ฐฉ์ ๋์ . |
Fantom | EVM ํธํ ์ค๋งํธ ๊ณ์ฝ ํ๋ซํผ์ผ๋ก, Ethereum๊ณผ ๊ฐ์ ๊ณ์ /์๊ณ ๋ชจ๋ธ ์ฌ์ฉ. |
Near Protocol | ์ค๋ฉ(sharding) ๊ธฐ๋ฐ ํ์ฅ์ฑ๊ณผ ๊ณ์ ๊ธฐ๋ฐ ์ํ ๋ชจ๋ธ์ ์กฐํฉํ์ฌ ์ค๊ณ๋จ. |
UTXO ๋ชจ๋ธ
- ํธ๋์ญ์ ์ โ๋ฏธ์ฌ์ฉ ์ถ๋ ฅโ์ ์๋นํ๊ณ ์๋ก์ด ์ถ๋ ฅ์ ์์ฑ.
- ํธ๋์ญ์ ๊ฐ ์ํ๊ฐ ๊ฒฉ๋ฆฌ๋์ด ๋ณ๋ ฌ ์ฒ๋ฆฌ์ ์ ๋ฆฌ.
- ํ์ง๋ง ์ํ๋ฅผ ์ ์งํ๊ฑฐ๋ ์ค๋งํธ ๊ณ์ฝ์ ๊ตฌํํ๊ธฐ์๋ ๋ถํธํจ.
- ์)
๋ธ๋ก์ฒด์ธ | ํน์ง ๋ฐ ํ์ฉ |
---|---|
Bitcoin | UTXO ๋ชจ๋ธ์ ์ํ. ๋จ์ํ๊ณ ์์ ์ ์ธ ์ก๊ธ ์์คํ ์ ๊ธฐ๋ฐ์ผ๋ก ์ค๊ณ๋จ. |
Litecoin | Bitcoin์ ํ์์ฒด. UTXO ๋ชจ๋ธ ๊ธฐ๋ฐ์ด๋ฉฐ, ์ก๊ธ ๋ชฉ์ ์ค์ฌ. |
Bitcoin Cash | Bitcoin๊ณผ ๋์ผํ UTXO ๊ตฌ์กฐ. ๋ ํฐ ๋ธ๋ก ํฌ๊ธฐ๋ฅผ ์ง์ํ์ฌ ์ฒ๋ฆฌ๋ ์ฆ๊ฐ ์๋. |
Zcash | ํ๋ผ์ด๋ฒ์ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋ Bitcoin ํฌํฌ. UTXO ๋ชจ๋ธ ์ ์ง. |
Dash | ๋ง์คํฐ๋ ธ๋ ๊ธฐ๋ฐ์ ์ธ์ผํฐ๋ธ ์์คํ ์ ์ถ๊ฐํ UTXO ๊ธฐ๋ฐ. |
Ergo | ์ค๋งํธ ๊ณ์ฝ ํ์ฅ ๊ฐ๋ฅํ UTXO ๋ชจ๋ธ ์ฌ์ฉ. Cardano์ ์ ์ฌํ ๋ฐฉํฅ์ฑ. |
EUTXO ๋ชจ๋ธ์ ๋์
Cardano๋ ์๋ ์์๋ฅผ ํตํด UTXO์ ์ํ์ฑ๊ณผ ๊ณ์ฝ์ฑ์ ๋ถ์ฌํฉ๋๋ค:
- Datum: ์ํ ๋ฐ์ดํฐ
- Redeemer: ์ ๋ ฅ ์ ๋ณด
- Context: ํธ๋์ญ์ ํ๊ฒฝ ์ ๋ณด
- Validator Script: ์คํ ์กฐ๊ฑด ์คํฌ๋ฆฝํธ
์ด๋ฅผ ํตํด Ethereum๋ณด๋ค ๋ ์ ํํ๊ณ ์์ ํ ์ํ ๊ธฐ๋ฐ ํธ๋์ญ์ ๊ตฌํ์ด ๊ฐ๋ฅํฉ๋๋ค.
3. EUTXO: Cardano์ ์ํคํ ์ฒ์ ์งํ
๊ตฌ์ฑ ์์
- Datum: UTXO์ ๋ด๊ธด ์ํ ์ ๋ณด (์: ํ ํฐ ์์ ์, ์ ์ ๋ฑ)
- Redeemer: ์ฌ์ฉ์ ์์ฒญ ์ ๋ณด (์: ์ ์ฐฐ ๊ธ์ก, ๋ช ๋ น)
- Context: ํ์ฌ ํธ๋์ญ์ ๊ด๋ จ ๋ฉํ๋ฐ์ดํฐ
- Validator Script: ๋ชจ๋ ์กฐ๊ฑด์ ๊ฒ์ฆํ๋ Haskell ๊ธฐ๋ฐ ์ฝ๋
์ฝ๋ ์์
mkValidator :: Datum -> Redeemer -> ScriptContext -> Bool
mkValidator datum redeemer ctx = (redeemer == expectedKey)
ํธ๋์ญ์
์ ์ฑ๊ณต ์ฌ๋ถ๋ ์ค์ง ์
๋ ฅ, ๋ฐ์ดํ
, ์ปจํ
์คํธ, ์คํฌ๋ฆฝํธ๋ก ๊ฒฐ์ ๋ฉ๋๋ค.
์ด๋ฅผ ํตํด Cardano๋ ๋ค์์ ๋ฌ์ฑํฉ๋๋ค:
- ์คํ์ฒด์ธ์์ ์ ํจ์ฑ ์๋ฎฌ๋ ์ด์ ๊ฐ๋ฅ
- ์์ธก ๊ฐ๋ฅํ ํธ๋์ญ์ ๊ฒฐ๊ณผ
- ๋ณ๋ ฌ ์ฒ๋ฆฌ ๊ตฌ์กฐ๋ก ํ์ฅ์ฑ ๊ทน๋ํ
๋ฌผ๋ก ์ ๋๋ค. ์๋๋ ๋ค์ดํฐ๋ธ ํ ํฐ๊ณผ Forging Policy Script์ ๋ํ ๋ถ๋ถ์ ๋ ์๋ค์ด ๋ ์ฝ๊ฒ ์ดํดํ ์ ์๋๋ก ์ค๋ช ์ ๋ณด๊ฐํ ๋ฒ์ ์ ๋๋ค. ๊ฐ๋ ์ ๋งฅ๋ฝ, ์ค์ ์ฌ์ฉ ์๋๋ฆฌ์ค, ๊ทธ๋ฆฌ๊ณ ๊ตฌ์กฐ์ ์ธ ์ฐจ๋ณ์ ์ ๋ช ํํ ๋ฐํ์ต๋๋ค.
4. ๋ค์ดํฐ๋ธ ํ ํฐ: ์ค๋งํธ ๊ณ์ฝ ์๋ ๋ค์์ฐ ์์คํ
Ethereum์ ERC ํ ํฐ์ ๋ฌธ์ ์
Ethereum์์ ์๋ก์ด ํ ํฐ์ ๋ง๋ค๊ธฐ ์ํด์๋ ๋ณดํต ERC-20 ๋๋ ERC-721 ํ์ค์ ๋ฐ๋ฅด๋ ์ค๋งํธ ๊ณ์ฝ์ ์ง์ ์์ฑํด์ผ ํฉ๋๋ค. ์ด ๋ฐฉ์์ ๋ค์๊ณผ ๊ฐ์ ๋ฌธ์ ๋ฅผ ๋ดํฌํ๊ณ ์์ต๋๋ค:
- ์ค๋งํธ ๊ณ์ฝ ์์ฑ ํ์: ๋จ์ํ ํ ํฐ ๋ฐํ๋ ์ฝ๋ฉ ์ค๋ ฅ์ด ์๊ตฌ๋๋ฉฐ, ๋ณต์กํ ๋ก์ง ์์ฑ ์ ์ค๋ฅ ๋ฐ์ ๊ฐ๋ฅ์ฑ์ด ๋์์ง
- ๋ณด์ ์ทจ์ฝ์ : ์๋ชป ์์ฑ๋ ์ค๋งํธ ๊ณ์ฝ ํ๋๊ฐ ์ ์ฒด ํ ํฐ์ ์์ฐ์ ์ํ์ ๋น ๋จ๋ฆด ์ ์์ (์: The DAO ํดํน ์ฌ๋ก)
- ๋นํจ์จ์ ์์๋ฃ ์ฒด๊ณ: Ethereum์ ๋ชจ๋ ์ฐ์ฐ์ ๋ํด โ๊ฐ์คโ๋ฅผ ์๊ตฌํ๊ณ , ์คํจํ๋๋ผ๋ ๊ฐ์ค ๋น์ฉ์ ์ฌ๋ผ์ง โ ์์๋ฃ ์์ธก์ด ์ด๋ ต๊ณ ๋ญ๋น ๋ฐ์
๊ฒฐ๊ณผ์ ์ผ๋ก, ๊ฐ๋ฐ์๋ ๋์ ์ง์ ์ฅ๋ฒฝ์ ์ง๋ฉดํ๊ณ , ์ฌ์ฉ์๋ ๋ถ์์ ํ ์์ฐ์ ๋ค๋ฃจ๊ฒ ๋ฉ๋๋ค.
ํด๊ฒฐ์ฑ
: Cardano์ ๋ค์ดํฐ๋ธ ํ ํฐ
Cardano๋ ๋ค์ดํฐ๋ธ(Native) ํ ํฐ ์์คํ ์ ๋์ ํ์ฌ ์ด ๋ฌธ์ ๋ฅผ ๊ทผ๋ณธ์ ์ผ๋ก ํด๊ฒฐํ์ต๋๋ค.
- ์ค๋งํธ ๊ณ์ฝ ์์ด ํ ํฐ์ ๋ฐํ, ์ ์ก, ์๊ฐ ๊ฐ๋ฅ
โ ADA์ ๋์ผํ ๋ฐฉ์์ผ๋ก ๋ค๋ค์ง๋ฏ๋ก ๊ฐ๋ฐ์ ๋ถ๋ด ๋ํญ ๊ฐ์ - ํ ํฐ์ ์์๋ฃ๋ ADA๋ก๋ง ์ง๋ถ
โ ์ผ๊ด๋ ์์๋ฃ ์ฒด๊ณ, ์์๋ฃ ์์ธก ์ฉ์ด - Ledger ์์ค์์ ๋ค์์ฐ(multi-asset) ์ฒ๋ฆฌ ์ง์
โ L1(๋ ๋ฒจ 1) ์ฒด๊ณ์์ ํ ํฐ์ ADA์ ๋์ผํ ๋ฐฉ์์ผ๋ก ์ง์ ์ฒ๋ฆฌ ๊ฐ๋ฅํ์ฌ, ์ค๋งํธ ๊ณ์ฝ์ ๊ฑฐ์น์ง ์๊ธฐ ๋๋ฌธ์ ํ ํฐ ์์ฒด์ ๋ณด์์ฑ์ด ๋์ - ํ ํฐ ๋ฒ๋ค(Token Bundle) ๊ตฌ์กฐ๋ก ์ฌ๋ฌ ์์ฐ์ ํ๋์ ํธ๋์ญ์
์ผ๋ก ์ฒ๋ฆฌ ๊ฐ๋ฅ
โ ํ๋์ ํธ๋์ญ์ ์์ ์ ๋ ฅ๊ณผ ์ถ๋ ฅ ๋ชจ๋ ์ฌ๋ฌ ์์ฐ์ ๋์์ ํฌํจํ ์ ์๋ ๊ตฌ์กฐ
ํธ๋์ญ์
์์ (Token Bundle ํํ)
{
"address": "addr1q9...",
"amount": {
"lovelace": 2000000,
"policy1.mytoken": 10,
"policy2.nft2025": 1
}
}
lovelace
: ADA์ ์ต์ ๋จ์ (์ด ์์์์๋ 2,000,000 ๋ฌ๋ธ๋ ์ด์ค, ์ฆ 2 ADA)policy1.mytoken
: ์ฌ์ฉ์๊ฐ ์ ์ํ ์ผ๋ฐ ํ ํฐ (์: ํฌ์ธํธ, ๊ฒ์ ๋จธ๋ ๋ฑ)policy2.nft2025
: ๋ฐํ์ด 1ํ๋ก ์ ํ๋ NFT (Non-Fungible Token)
ํ๋์ ์ฃผ์์ ADA์ ์ฌ๋ฌ ์ข ๋ฅ์ ํ ํฐ์ด ๋์์ ํฌํจ๋ ์ ์์ต๋๋ค. ๋ง์น ๋์งํธ ์ง๊ฐ์ ์ฌ๋ฌ ์ข ๋ฅ์ ์งํ/์ฟ ํฐ์ด ๋ค์ด์๋ ๊ฒ๊ณผ ๋น์ทํฉ๋๋ค.
Forging Policy Script (ํ ํฐ ๋ฐํ ์ ์ฑ
์คํฌ๋ฆฝํธ)
Cardano๋ ํ ํฐ์ ์๋ฌด๋, ์๋ฌด ๋๋ ๋ฌด๋ถ๋ณํ๊ฒ ์ฐ์ด๋ผ ์ ์๋๋ก ํ ํฐ ์์ฑ ๋ฐ ์๊ฐ ๊ท์น์ ๋ช ํํ ์ค์ ํ ์ ์๋๋ก ํฉ๋๋ค. ์ด๋ฅผ Forging Policy Script๋ผ๊ณ ํฉ๋๋ค.
์ด ์คํฌ๋ฆฝํธ๋ ๋ค์๊ณผ ๊ฐ์ ์กฐ๊ฑด์ ์ค์ ํ ์ ์์ต๋๋ค:
-
์ง์ ๋ ์ฃผ์๋ง ๋ฐํ ๊ฐ๋ฅ
โ ์: โ์ด ํ ํฐ์ ํน์ ํ์ฌ ์ง๊ฐ ์ฃผ์๋ง ์์ฑํ ์ ์๋คโ -
ํน์ ๋ธ๋ก ๋์ด ์ดํ์๋ ๋ฐํ ๋ถ๊ฐ
โ ์: โNFT๋ 2025๋ ๋ธ๋ก 10,000 ์ดํ ๋ฐํ ์ค์งโ -
๋จ ํ ๋ฒ๋ง ๋ฐํํ๊ณ ์๊ฐ ๋ถ๊ฐ
โ ์: โ์ด ํ ํฐ์ ์ ์ผํ๊ฒ 1๊ฐ๋ง ์กด์ฌ (NFT์ ์ด์์ )โ
๊ฐ๋จํ ์์ (์์ฌ ์ฝ๋)
policy :: ScriptContext -> Bool
policy ctx =
txSignedBy ctx issuer &&
(getSlot ctx < deadline) -- ํ์ฌ ์ฌ๋กฏ์ ctx์์ ์ถ์ถํ๋ ๊ฐ์
โป ์ค์ ์คํฌ๋ฆฝํธ์์๋
ctx
์์ ์ฌ๋กฏ ๋ฒํธ๋ ์๋ช ์๋ฅผ ๋ช ์์ ์ผ๋ก ์ถ์ถํด์ผ ํฉ๋๋ค.
โ โissuerโ๊ฐ ์๋ช ํ๊ณ , ํ์ฌ ์๊ฐ์ด ๋ง๊ฐ ์ด์ ์ด๋ฉด ๋ฐํ ํ์ฉ.
์ด ๋ฐฉ์์ ์ค๋งํธ ๊ณ์ฝ ์์ค์ ์ ์ด๋ ฅ์ ์ ์งํ๋ฉด์๋, ๋ถํ์ํ ๋ณต์ก์ฑ๊ณผ ์์๋ฃ๋ ์ ๊ฑฐํ ์ค๊ณ์ ๋๋ค.
์ ๋ฆฌ
ํญ๋ชฉ | Ethereum (ERC-20/721) | Cardano (๋ค์ดํฐ๋ธ) |
---|---|---|
๊ตฌํ ๋ฐฉ์ | ์ค๋งํธ ๊ณ์ฝ ํ์ | Ledger ๋ด์ฅ |
๋ณด์์ฑ | ๊ณ์ฝ ์ค๋ฅ๋ก ์ ์ฒด ์ํ | ADA์ ๋์ผํ ์์ค |
์์๋ฃ | ์ฐ์ฐ๋์ ๋ฐ๋ผ ๊ฐ๋ณ, ์คํจ ์ ์๋ฉธ | ๊ณ ์ ์ , ์คํจ ์ ๋ญ๋น ์์ |
ํ์ฅ์ฑ | ๊ฐ๊ฐ์ ํ ํฐ์ด ๋ณ๋ ๊ณ์ฝ | Token Bundle ๊ตฌ์กฐ๋ก ๋จ์ผ ํธ๋์ญ์ ๊ฐ๋ฅ |
5. (์๊ณ ) Part 2 ๋ฏธ๋ฆฌ๋ณด๊ธฐ
Part 2์์๋ ๋ค์์ ๋ค๋ฃน๋๋ค:
- ๋ณ๋ ฌ์ฑ๊ณผ ํ์ฅ์ฑ์ด ์ค์ ์์ ์ด๋ป๊ฒ ๋ฐํ๋๋๊ฐ
- DeFi์์ AMM๊ณผ Order Book ๊ตฌ์กฐ ๋น๊ต
- NFT/DAO/์ ๊ทผ ์ ์ด ์ค๊ณ ์ฌ๋ก
- ์ต์ CIP (Cardano Improvement Proposals) ์ ์ฉ ์ฌ๋ก
[Part 2: ์ค์ ํ์ฉ๊ณผ ํ์ฅ์ฑ] โ ๊ณง ๋ฐํ ์์
* ์ฐธ๊ณ ์๋ฃ: