Beacon Chain — The Merge 101

0xiseth
7 min readSep 13, 2022

--

TL;DR

  • Ethereum binlerce node’dan oluşan merkeziyetsiz bir protokoldür.
  • Ethereum node’larını çalıştırmak için kullanılan yazılıma client denir.
  • “The Merge” adı verilen bir güncelleme ile birlikte, Ethereum node’ları Consensus ve Execution clientlerini çalıştırmak zorunda kalacak ve sistem PoW’dan PoS’a geçecek.
  • Bu güncelleme ile birlikte, blok önerecek aktörler minerlar değil validatorlar olacak.

Giriş

Node çalıştırmak kavramını elbet duymuşsunuzdur. Esasında bir node bir bilgisayarda çalışan yazılımın kendisidir, yani aslında node çalıştırmak için gerekli yazılımı çalıştırmak gerekir. Bu yazılımlara “client” denir. Şu anda Ethereum için hazırlanmış, farklı programlama dilleriyle geliştirilmiş:

  • Geth (Go)
  • OpenEthereum (Rust)
  • Nethermind (C#, . NET)

gibi birden çok yazılım var. Ethereum node’u çalıştırmak isteyen bir kişi bunlardan birini seçerek çalıştırabilir.

Bu yazılımları çalıştıran Ethereum nodeları bloklardaki işlemleri execute ederek geçerliliklerini denetler ve consensusa (nodelar arasındaki fikir birliğine) uygun çalışırlar.

Ethereum, binlerce kişinin yazılımını çalıştırdığı merkeziyetsiz bir protokol olduğu için güncellemeler bir kişinin sözüyle “hadi yaptık oldu” diyerek yapılamıyor, sistemde güncelleme yapabilmek için ciddi bir sosyal koordinasyon gerekiyor. Ayrıca Ethereum en güvenilen ve en yüksek değerde varlığı üzerinde bulunduran smart contract platformu olduğu için yapılacak güncellemenin ortaya ciddi sorunlar çıkarmayacağından emin olmak gerekiyor.

Beacon Chain ve The Merge

Ethereum’un PoW’dan PoS’a geçme planları doğrultusunda, 2020 yılının Aralık ayında Beacon Chain isminde bir zincir oluşturuldu. Ethereum PoW’dan bağımsız şekilde çalışan bu zincir birçok teste tabii tutuldu ve sonunda 2022 yılının Eylül ayında ana ağda uygulamaya geçilebileceğine karar verildi.

Merge kelimesinin Türkçe anlamı “birleştirmek” demek. Ethereum tarihinin en önemli güncellemelerinden biri olan “The Merge” Ethereum PoW ile çalışan zincirin PoS ile çalışan Beacon Chain ile birleşmesi anlamına geliyor. Bu birleşmeden sonra Ethereum blockchain’inin durumunu güncelleyecek, blok önerecek aktörler minerlar değil validatorler olacak.

Yazının başında Ethereum nodelarının tek client çalıştırdığından bahsetmiştik, Merge ile birlikte Ethereum nodeları Consensus Client ve Execution Client adında iki client çalıştırmak zorunda kalacaklar:

  • Execution client ile işlemlerin execute edilmesi, yayılması sağlanacak.
  • Consensus client ile PoS validatorları blockchainin durumu üzerine karar verecek, consensusa ulaşacak.

Bu iki farklı görevi gören client birbirine Engine API ile bağlanacak ve aslında tüm bu unsurlar tek bir Ethereum node’unu oluşturacak.

clientdiversity.org

Şu anda aktif olarak kullanılan 4 Consensus Client ve 4 Execution Client var. Ağa katılacak kişiler bu seçenekler arasından istediklerini seçip kombinleyebiliyorlar, hepsi birbiriyle uyumlu şekilde çalışıyor.

Bu kadar farklı çeşit client olması Ethereum topluluğunun kasten tercih ettiği bir özellik. Eğer herkes tek client çalıştırsaydı ve o client’ta sorun çıksaydı özellikle consensus kısmında istenmeyen durumlar oluşabilirdi. Yani birden çok client çalıştırmanın amacı riski dağıtmaktır.

Beacon Chain: Gasper

Beacon Chain’de kullanılan consensus modeli Gasper adıyla anılıyor. Gasper aslında Casper FFG ve LMD Ghost olarak bilinen iki sistemin kombinasyonundan oluşuyor. Casper FFG ile blockchaindeki “finality”, LMD Ghost ile fork-choice kuralı sağlanıyor.

Bu kavramlar karışık gelmiş olabilir, Bitcoin örneği üzerinden anlatalım:

Bitcoin PoW ile çalışıyor, yani bir blok önermek isteyen minerlar bunu yapabilmek için uygun hash’i bulmaya çalışıyorlar, güç harcıyorlar. Fakat Bitcoin’i oluşturan unsurlar hangi bloğu takip edeceklerini, hangi blok üzerine yeni blok inşa edeceklerini nereden biliyorlar? İşte burada devreye fork-choice kuralı giriyor. Bitcoin’de takip edilecek blok, o bloğun “en çok güç (computational power) harcanan blok” olmasıyla belirleniyor.

Beacon Chain ise, öğrendiğimiz üzere, PoS ile çalışıyor, yani burada blok öneren aktör minerlar değil validatorler. Bu validatorler ortaya bir blok çıkarabilmek için güç (computational power) harcamak yerine stakeledikleri coinleri kullanıyorlar. Burada da tıpkı PoW’da olduğu gibi belirli consensus-fork choice kuralları gerekiyor. İşte Beacon Chain’deki bu kurallar Casper FFG ve LMD Ghost ile belirleniyor.

Beacon Chain bazı farklı kavramlara sahip, mesela “blok süresi” yerine “slot süresi” deniyor, 32 adet slota ise “epoch” deniyor. 1 slot 12 saniyede çıkıyor, yani 1 epoch’un oluşması 6.4 dakika sürüyor.

Her slotta, 32 $ETH stakeleyerek Validator olmuş nodelar arasından biri “block proposer” olarak seçiliyor ve bu node bloğun içeriğini belirleyerek bir blok öneriyor. Diğer validatorler ise içeriği belirlenen bu bloğa “attestation” veriyorlar. Attestation’ın Türkçe anlamı “tasdik” demek, yani validatorler bu aşamada “attestation” verdikleri bloğun doğruluğuna dair imza atmış oluyorlar. Protokol kurallarına uymak ödüllendirilirken protokol kurallarına aykırı hareket etmek cezalandırılıyor, yani attestation kısmında doğru hareket eden validatorler attestation ödülü kazanıyorlar ama yanlış hareket eden validatorler “slash”leniyor.

Ethereum’daki validator sayısı çok fazla olduğu için (şu anda 417 bin adet validator var) bir epoch’daki slot içeriğinin belirlenme aşamasına tüm validatorler katılmıyor. Eğer tüm validatorler katılsaydı 417 bin validator’ın iletişim kurması sistemi epey yavaşlatır ve kısıtlardı. Bu yüzden her epoch’da validatorler gruplara ayrılıyor ve bu gruplar slotlara atanıyor, yani her validator bir slota attestation veriyor.

Finality, Türkçe anlamıyla “sona erme”, bir bloğun geri döndürülemez şekilde blockchaine eklenmesi demektir. Her epoch’da bir slot “checkpoint” olarak seçiliyor. A epoch’undaki checkpoint blok’u validatorlerin +2/3’ünün (buna süper-majority deniyor) attestation’ını aldığında “justified” olmuş sayılıyor. Ondan sonra gelen B epoch’undaki checkpoint blok’u “justified” olduğunda ise A epoch’undaki checkpoint blok’u “finalize” olmuş sayılıyor. Yani aslında Ethereum’da “finality” durumu art arda gelen checkpointler ile gerçekleşiyor.

Az önce de belirtildiği üzere, finality durumunun oluşması için toplam validator gücünün +2/3’ünün attestation vermesi gerekir, yani bir saldırgan toplam validator gücünün +1/3’üne sahipse attestation vermeyip sistemdeki finalize olma durumunu manipüle edebilir. Buna bir önlem olarak, eğer blockchain 4 epoch üst üste finalize olmaz ise saldırganın kontrolündeki $ETH’ler slashlanmaya (yanmaya) başlar ve bir zaman sonra dürüst kişiler tekrar validator gücünün +2/3’üne (süper-majority) hakim hale gelir.

Şu anda yaklaşık 13.500.000 $ETH stakelenmiş vaziyette, yani protokolün finalize olmasını manipüle etmek isteyen bir saldırganın şu anki fiyat ile yaklaşık 6.8 milyar $’lık $ETH’e ihtiyacı var.

Ethereum PoS’a saldırı yapmak, PoW’daki “mining ekipmanlarını” yakmak uğruna sistemi manipüle etmeye benzetilebilir. Tabii bu yalnızca bir benzetme, PoS’da yanan şey mining ekipmanları değil coinlerin kendisidir. İşte bu cezalandırma sistemine “slashing” deniyor.

Merge

Birleşmenin olacağı tarih “terminal total difficulty” ile belirlendi. Difficulty kavramı PoW’de bir bloğu bulurkenki zorluğu temsil ediyor, total difficulty ise tahmin edebileceğiniz üzere o bloğa kadarki tüm blokların zorluğunun toplamını temsil ediyor. Birleşme tarihi için belirlenen difficulty 58750000000000000000000 olarak açıklandı.

etherscan.io/block/15520800

Ethereum’da çıkan son bloğun bilgilerine etherscan.io web sitesi üzerinden ulaşılabiliyor. Bu yazıyı yazdığım tarih itibariyle çıkan son bloğun total difficulty değeri 58,548,952,277,848,693,017,123. The Merge’ün gerçekleşmesi için herkes bu değerin 58,750,000,000,000,000,000,000 olmasını bekliyor.

Net tarihi tam olarak bilemesek de mevcut verilerden yola çıkarak 14–15 Eylül 2022 tarihini hesaplayabiliyoruz.

Bu hesaplamaları takip edebileceğiniz bazı websiteleri var, örneğin: ultrasound.money

Sansür

Ağustos ayında Amerikan Hazinesi Tornado Cash’i yaptırım listesine aldı ve bu durum insanların aklına “PoS sonrası Ethereum sansürlenecek mi?” sorusunu getirdi.

Öncelikle şunu belirtmek gerekir ki “kullanıcı arayüzü” sansürü ve “consensus” sansürü arasında ciddi bir fark vardır:

  • X ismindeki bir DeFi uygulaması bazı kullanıcıların kendi kullanıcı arayüzünü kullanmasını engelleyebilir, bu şekilde bir sansür uygulayabilir, fakat kullanıcılar hala farklı yollar ile X uygulamasının smart contractlarıyla etkileşime girebilirler.
  • Sansür consensus seviyesinde olduğunda ise kullanıcılar X uygulamasının smart contractlarıyla hiçbir şekilde etkileşim kuramaz çünkü blockchain’in durumu hakkında consensusa varacak olan validatorler bu işlemleri bloklara eklemezler.

Consensus seviyesindeki olası sansürde bakılması gereken en önemli metrik validator dağılımıdır. Şu anki Ethereum PoS validator dağılımı şu şekilde:

Merge sonrası en çok duyacağımız güncellemelerden biri olan “builder-proposer seperation” güncellemesine kadar Ethereum PoS blocklarını grafikte gördüğümüz kişiler-kurumlar oluşturacaklar.

Dağılıma baktığımızda Coinbase-Kraken-Binance gibi müşterilerine staking hizmeti veren merkezi borsaların toplam %28.66’lik bir orana tekabül ettiğini görüyoruz. Bu orana 30 operatore sahip Lido’nun yüzdesini eklersek karşımıza %58.97’lik bir oran çıkıyor, yani neredeyse toplam validator gücünün 2/3’üne erişmiş oluyoruz. Kısaca, bu kurumların yaptırımlara uyup ağı sansürleme ihtimali var.

Fakat Ethereum topluluğu bu konuya ciddi bir tepki gösterdi, hatta Vitalik Buterin ağa sansür uygulayanların ne olursa olsun slashlenmesi gerektiğini dile getirdi. Bunun üstüne Coinbase CEO’su Brian Armstrong “ağı sansürlemek yerine verdiğimiz staking hizmetini durdurmayı tercih ederiz” dedi. Ayrıca Coinbase ABD’de Tornado Cash yaptırımlarının aleyhine açılan davaları desteklediğini duyurdu.

Brian Armstrong’un “ağı sansürlemek yerine verdiğimiz staking hizmetini durdurmayı tercih ederiz” açıklaması önemli bir açıklamadır fakat şu bilinmelidir ki Coinbase gibi büyük bir validator gücünün verdiği hizmeti aniden durdurması mümkün değildir.

Bunun 2 nedeni var:

1- Merge sonrası yapılacak Shangai hardfork’una kadar PoS’a kitlenmiş $ETH çekimleri kapalıdır.

2- Çekimler açık olsa bile validatorlerin sistemden çıkma hızı epoch başına 4 olarak kısıtlanmıştır. (Bu kısıtlamalar genellikle “slashing” mekanizması ile ilgilidir.)

Yani eğer Amerikan Hükümeti validatorlerden “sansür” uygulamasını isterse ve Coinbase buna uymak zorunda kalırsa, en azından staking hizmetini durdurana kadar, %13.88’lik bir validator gücünün sansür uygulamaya calıstıgını ve bloklara “attestation” vermediğini görebiliriz.

Fakat belirttiğimiz gibi, Ethereum topluluğunun A’dan Z’ye her kademesi olası sansüre karşı ciddi bir tepki gösteriyor ve önlem almaya çalışıyor.

$ETH

PoS’a geçişin consensusun değişimi ve elektrik tüketiminin %99’a varan oranda azalması dışında en önemli etkilerinden biri $ETH’in ekonomik modelindeki değişikliktir.

Şu anda minerların ortaya çıkardığı günlük $ETH miktarı yaklaşık 13.500, PoS validatorlerine dağıtılan günlük $ETH miktarı ise yaklaşık 1.600 adettir. Merge sonrası mining işlemi yapılmayacağı için ödül kazanan tek aktör validatorler olacak, sonuç olarak ortaya çıkan $ETH miktarında %90’lık bir düşüş yaşanacak. Ayrıca EIP-1559 güncellemesi ile Ethereum’da işlem ücretleri yakıldığı için $ETH arzı deflasyonist bir yapıya bürünebilecek.

Fakat $ETH arzının deflasyonist olabilmesi için ağın kullanılması gerekiyor, şu anki validator sayısına göre (validator sayısı ve ortaya çıkan $ETH arzı arasında bağ var) arzın deflasyonist olması için gas’in 15 gwei ve üzerinde olması gerekiyor.

Ödül dağıtımı aktif validator sayısına göre değişecek:

docs.ethhub.io/ethereum-roadmap/ethereum-2.0/eth-2.0-economics/

Şu anda yaklaşık 425.000 validator var, yani stakelenmiş $ETH miktarı yaklaşık 13.500.000 adet. Bu oranda ödül olarak dağıtılacak yıllık $ETH miktarı yaklaşık 600.000 adete tekabül ediyor. Fakat stake edilmiş $ETH miktarı arttığında, mesela 30.000.000 olduğunda ödül olarak dağıtılacak yıllık $ETH miktarı da artarak yaklaşık 990.000 adet oluyor.

Stake edilen $ETH miktarı arttıkça yıllık dağıtılan $ETH miktarı artsa da validator başına düşen yıllık getiri azalıyor.

Kaynaklar:

https://ethereum.org/tr/developers/docs/consensus-mechanisms/pos/gasper/

https://arxiv.org/pdf/2003.03052.pdf

https://beaconcha.in

--

--

0xiseth
0xiseth

Written by 0xiseth

Hobi olarak Blockchain ve Kripto Paralarla ilgileniyorum.. Twitter: @0xiseth

No responses yet