Blokzincir’e Giriş ve Ethereum ile Akıllı Sözleşmeler
Kurslara kayıt olmak için tıklayın
Eğitmenler:
Büşra Keskin, Mertcan Köse
Katılımcılar için ön şartlar:
En az B2 seviyesinde İngilizce biliyor olmak, Herhangi bir yazılım dilinde basit algoritmalar yazabilecek/kurabilecek kadar deneyim sahibi olmak (C veya C++ bilgileri güzel olacaktır.), Üniversitelerin; Matematik, Veri Tabanı Yönetim Sistemi, Algoritmalar gibi derslerini almış olmak veya bu derslere denk bilgi birikimine sahip olmak.
Katılımcıların eğitime bilgisayar dışında getirmesi gereken donanım/yazılım:
Kişisel Bilgisayar / Getirilememe durumunda, öğrenciler ikişer şekilde gruplanarak uygulama yaptırılabilir. Burada söz konusu istisnai durumun (bilgisayar getirilmemesi) sebebi önemlidir.
Eğitim İçeriği:
a) Blokzincir’in Tarihi (Kimdir bu Satoshi!?)
i) Para nedir? Neden ve ne zamandır vardır? // Neden bizde yoktur? 🙂
ii) Blokzincir neden kullanılır ve ne gibi avantajlar sağlar?
b) Teoride Blokzincir nasıl çalışır? Örnek gösterim.
c) Kripto Para mı? Dijital Para mı? Token mı?
Kriptolojik Temellere Giriş (Uygulamalı)
a) Hash (özetleme) algoritmaları
b) Simetrik Şifreleme
c) Asitmetrik şifreleme
d) Hibrit şifreleme
Dağıtık ağ yapıları
a) P2P Protokolü Nedir? Yenir mi?
b) Gossip (Epidemic) protokoller ile dağıtık ağlarda veri aktarımı
Konsensus Mekanizmaları (Uygulamalı) //Konsensuslanalım
a) Merkeziyetsiz karar alma
b) Araştırma ödevi: Bizans Generalleri Problemi ve Bizans Hata Toleransı nedir?
c) PoW
d) PoS
e) Günümüzde kullanılan veya geliştirilen konsensus protokolleri
f) Oyun Teorisi (Nash Dengesi)
Bitcoin (Uygulamalı)
a) Bitcoin whitepaper incelemesi
b) Bitcoin Blok yapısı ve Raw Transaction geliştirme
c) Kriptografik Hash Puzzle: Bitcoin Mining Nasıl Çalışır?
i) Nonce Nedir?
ii) Neden 21 milyon milyar tane Bitcoin? ^-^
Kripto varlık cüzdanları ve Merkeziyetsiz Ağ düğümleri (Uygulamalı)
a) Kripto varlık cüzdan türleri (Hot/Cold Wallet)
b) UTXO, change, double-spending, fee kavramları
c) Kripto varlık cüzdanlarının transaction hesaplama ve imzalama süreçleri
d) İmzalanan Transactionların düğümler(Nodelar) üzerinden dağıtılması
i) Farklı Düğüm yapıları
ii) En uzun zincir kuralı
iii) Transaction havuzları
iv) Selfish Mining saldırısı
Web3 Teknolojileri (Uygulamalı)
a) Blockchain Explorerların çalışma mantığı ve node yapıları
b) Blockchain bloklarının işlenmesi ve takibi.
c) Mevcut Blokzincir projelerini araştırıp birbirimize anlatalım
Ethereum Temelleri
- Ethereum’un Doğuşu ve Felsefesi
- Web3 ve Merkeziyetsizlik
- Node Yapısı, RPC Sağlayıcıları ve Ağlar (Ana Ağ, Test Ağı)
- EVM ve Blok Yapısı
- EOA ve Contract Hesapları
- Özel/Açık Anahtar ve Adres
- İşlem Yapısı ve Gas
- Global Değişkenler (msg.sender, block.timestamp, vb.)
- Layer 1 ve Layer 2 Çözümleri
- Solidity Sözdizimi
- State ve Local Değişkenler
- Remix IDE Kullanımı
# Smart Contract Geliştirme (2)
- Function Types, Fuction Modifiers
- Görünürlük (Public, Private, Internal, External)
- View, Pure, Payable Fonksiyonları
- Hata Yönetimi (Require, Assert, Revert, Try-Catch)
- Arrays, Mapping, Struct Yapıları
- Storage, Memory, Calldata Yapıları
- If-else ve Döngüler
# Token Standartları (3)
- Interface, Inheritance
- Ethereum EIP ve ERC Standartları
- ERC20 Token Standardı (TotalSupply, BalanceOf, vb.)
- Transfer ve Approve
- Mint ve Burn
- Token Ekonomisi ve Vesting
- NFT Kavramı ve IPFS
- ERC20, ERC721 ve ERC-1155 Standartları
- Token URI ve Metadata
- OpenZeppelin Kullanımı
# Contract Güvenliği (4)
- Gerçek Saldırı Örnekleri
- Audit Prensipleri
- Güvenli contract geliştirme