Pow vs Pos 4...
Herkese merhabalar, kaldığımız yerden devam iyi okumalar;
Grinding atak
Grinding atak blok basmanın hiçbir CPU gücü ve elektrik gerektirmemesi dolayısı ile zincirin tek tarafında biriken üç kağıtçıların kendi borusunu öttürmesidir. PoW sistemde bu sadece %51 atakta mümkün olmaktadır. (Unutmayın PoW’da CPU gücü yüksek olan kısım doğru olacaktı.) Ancak PoS bir chainde üçkağıtçılar kendi zincirlerini uzatarak sistemi kandırmaktadır.
Sabotaj Atak
Sabotaj Atak bildiğiniz validatorlerin kapanması demek. Sistemdeki validatorlerin %51 veya fazlasının offline olması durumunda blokların üretimi durur. PoW’de böyle bir durumda Difficulty ayarlaması (blokların üretimi için gerekli asgari CPU gücü diyelim buna) sonrası üretim devam eder. PoS sistemde böyle bir şey mümkün değildir.
Bu örnekler uzatılabilir, Bribe atak gibi koordine olan üç kağıtçıların coinlerini tek bir yerde toplayıp istediğini kısa süre içerisinde yapıp tekrar dağılması gibi, long-range atak gibi uzun bir süre blok üretimi yapıp bunları blokzincire tekrardan göndermek gibi çeşitli ataklar da mevcuttur. Meraklısı yazdığım atakları inceleyebilir, daha farklı atak tiplerini de bulabilir. Ancak şurası kesindir, PoS sistemlerde birçok atak vektörü tanımlanmış ve bunların çözümü uzun bir süre yapılamamıştır. Bundan dolayı da PoW sistemler uzun süre hakimiyetini korumuştur. PoS sistemlerin problemlerle boğuşmuştur.
5. Farklı uygulanan PoS sistemler
Yukarıda anlattığım PoS atak vektörleri “uzun zincir doğru zincirdir” kuralını benimseyen sistemler için geçerlidir. PoS sistemlerin Nakamoto’nun bu kuralını çalıştıramayacağı düşünülüyordu. Bu yüzden farklı kuralları olan blokzincirler üzerinde yoğunlaşılmaya başlandı.
2008 –> Bitcoin (PoW)
2012 –> Peercoin (PoS ancak tonlarca sorun)
2014 –> Tendermint (İlk SORUNSUZ PoS)
Bitcoin’den tam 6 yıl sonra “Tendermint” Consensus’u bütün ezberleri bozmuştur ve resmen kriptoda ve PoS Dünyasında çok ama çok önemli bir kapı açmıştır. Tendermint: Mining gerektirmeyen Konsensus whitepaper’ı PoS için devrim niteliğindedir.
Bu yazı konsensus mekanizmalarının incelendiği bir yazı değildir. Ancak minik bir özet geçmekte fayda var. PoW, Satoshi Nakamoto’nun “Uzun chain’i izle” kuralı ile entegre edilmiş bir sistemdir. Üstte yazdığımı hatırlayın, PoW konsensüsü deseniz de çok önemi yok ancak buradaki temel mantık “Chain-based” sistemdir. Yani sistemdeki her miner veya bu kurala göre oluşturulmuş PoS sistemlerdeki validatorler BLOKZİNCİRİ İZLER. Burada takip edilen ve doğruluğun sorulduğu yer direkt blokzincirin kendisidir. (Hatırlayın uzun olan çatal doğru diyorduk.)
Tendermint Chain-based sistemi kaldırmış, 1980’lerin Paxos Consensus’unu 99’daki BFT sistemle yoğurmuş bir konsensus mekanizmasıdır. Kafanızı karıştırmayacağım ancak Tendermint’in çalışma prensibini üç adımda özetlemek isterim.
- Validatorler bir araya gelir. Transferleri aralarında (Gossiple) konuşurlar. Karara varırlar. Blok içerisine koyarlar.
- Mevcut bloğu validatorlerin daha önce eklediği bloğun üzerine eklerler.
- Blokzincir üzerindeki diğer düğümler bu blokların bilgisini indirirler, validatorler blokzincire BAKMADAN diğer transferleri bloklara doldurmaya başlarlar.
Dolayısı ile Tendermint’te yukarıda çizdiğim blokzincir örneklerindeki gibi çatallanmalar oluşmaz. Ancak bunun da eksik tarafları vardır.
- Tendermint, sadece 1000-2000 civarı validatore izin verebiliyor.
- Nakamoto sistemlerde %51’lik sınır Tendermintte %33
- Tendermint durursa, hard-fork gerekir. (Solana Tendermint değil ancak BFT bir sistemdir, Solananın durması durumunda forklandığını hatırlayın.)
Tendermint gibi; şu an halihazırdaki PoS sistemler Nakamoto’nun Chain-based yaklaşımından farklı konsensuslar kullanmaktadır. Lachesis (Fantom), TowerBFT (Solana), Snowman (Avalanche C-chain), pPoS Byzantine (Algorand) gibi chainlerin hepsi “chain-based” sistem değildir. BFT sistemlerdir. Tabii ki aralarında farklılıkları vardır ancak burada açıklanacak mevzular değildir.)
Bu başlık için PoS’in bir konsensus olmadığını, farklı konsensuslar ile PoS sistemler yapılabildiğini öğrenmeniz dahi yeterlidir. Her PoS aynı değildir, ilerideki başlıklarda açıklayacağım.
Tobbykitty abimize teşekkürler...
Sağlıklı mutlu ve huzurlu kalın...