Ethereum үндэс
Ethereum бол дэлхийн хамгийн том programmable blockchain юм. Энэ хичээлд Ethereum яаж ажилладагийг — node, transaction, gas — дэлгэрэнгүй судална.
Ethereum сүлжээ яаж ажилладаг вэ?
Ethereum бол дэлхий даяар тархсан мянга мянган компьютерийн сүлжээ. Тэр компьютер бүрийг node гэнэ.
Таны wallet
↓ transaction илгээнэ
[Node A] ←→ [Node B] ←→ [Node C] ←→ ... ←→ [Node N]
↓ бүх node баталгаажуулна
Blockchain-д бичигдэнэ
Node бүр blockchain-ийн бүтэн хуулбарыг хадгалдаг. Тиймээс нэг node унтарч, хакдагдсан ч бусад node-ууд ажиллаж байна — сүлжээ зогсохгүй.
Validator гэж юу вэ?
Node-уудын дотор тусгай үүрэгтэй node-ууд байдаг — validator.
Validator:
- Шинэ transaction-уудыг баталгаажуулна
- Шинэ блок үүсгэнэ
- Буруу transaction-г татгалзана
Validator болохын тулд 32 ETH барьцаалах шаардлагатай. Буруу зан гаргавал тэр ETH шатааж хасдаг — энэ механизмыг slashing гэнэ.
Consensus: Proof of Stake
Ethereum 2022 оноос хойш Proof of Stake (PoS) механизм ашигладаг.
Уламжлалт Proof of Work (Bitcoin):
Компьютер → математикийн бодлого бодно → эрчим хүч зарцуулна → шагнал авна
Proof of Stake (Ethereum):
Validator → ETH барьцаална → санамсаргүйгээр блок сонгогдоно → шагнал авна
PoS нь PoW-тай харьцуулахад ~99.95% цахилгаан бага зарцуулдаг.
Transaction гэж юу вэ?
Transaction бол blockchain-д илгээдэг үйлдлийн мэдээлэл. Жишээ нь:
- ETH илгээх
- Smart contract deploy хийх
- Smart contract-ийн функц дуудах
Transaction бүр дараах мэдээллийг агуулна:
from: 0xАбВГ... (илгээгчийн хаяг)
to: 0хДЕЖ... (хүлээн авагчийн хаяг эсвэл contract)
value: 0.5 ETH (илгээх ETH хэмжээ)
data: 0x... (функц дуудах өгөгдөл)
gasLimit: 21000 (зарцуулж болох дээд gas)
nonce: 42 (энэ хаягаас илгээсэн transaction-ийн дугаар)
Gas гэж юу вэ?
Gas бол Ethereum дээр тооцоолол хийхэд шаардагдах нөөцийн хэмжүүр. Бодит ертөнцийн машины шатахуунтай адил.
Үйлдэл бүрт тодорхой gas зарцуулагдана:
ETH шилжүүлэх → 21,000 gas
Storage-д нэг утга хадгалах → 20,000 gas
Нэмэх үйлдэл (+) → 3 gas
Функц дуудах → 700 gas
Gas price — нэг gas-ийн үнэ, gwei-ээр хэмждэг (1 ETH = 1,000,000,000 gwei).
Төлөх хураамж = gas зарцуулсан хэмжээ × gas price
Жишээ: ETH шилжүүлэх
21,000 gas × 20 gwei = 420,000 gwei = 0.00042 ETH
Gas limit — та дээд тал нь хэдий gas зарцуулахыг зөвшөөрөх тоо. Хэрэв тооцоолол gas limit-ыг давбал transaction revert болж, зарцуулагдсан gas буцаагдахгүй.
Wallet гэж юу вэ?
Wallet бол таны Ethereum хаяг ба private key-г хадгалдаг програм.
Private key → нийтэд харагдахгүй, зөвхөн та мэднэ → хэзээ ч хэнд өгөхгүй
Public key → private key-ээс үүсдэг
Address → public key-ийн hash → 0x1234...ABCD хэлбэртэй 42 тэмдэгт
Алдартай wallet-ууд: MetaMask (browser extension), Coinbase Wallet, Rainbow.
Mainnet ба Testnet
| Сүлжээ | Зориулалт | ETH үнэ | | ----------- | -------------- | --------------- | | Mainnet | Бодит ашиглалт | Бодит мөнгө | | Sepolia | Туршилт | Үнэгүй (faucet) | | Holesky | Туршилт | Үнэгүй (faucet) |
Хөгжүүлэлт хийхдээ Sepolia testnet ашигла. Testnet-ийн ETH-г faucet сайтуудаас үнэгүй авч болно — бодит мөнгө шаардахгүй.
Testnet ETH авах: sepoliafaucet.com
Код туршсаны дараа л mainnet-д deploy хий.
Блок гэж юу вэ?
Transaction-ууд нэг нэгэр биш, блок болгон бүлэглэгдэж баталгаажна.
Блок #19,000,000
├── Transaction 1: А → Б 1 ETH
├── Transaction 2: В smart contract deploy хийв
├── Transaction 3: Г → Д 0.5 ETH
└── ...хэдэн зуун transaction
Ethereum дахь блок бүр ~12 секундэд нэг удаа үүсдэг. Таны transaction хэдэн блокт орсоноос хойш баталгаажсан гэж үзнэ — ихэвчлэн 12 блок (~2.5 минут) хангалттай.
Дараагийн хичээлд:
Remix IDE-г тохируулж, анхны smart contract бичих орчноо бэлдэнэ.