Neden merkeziyetsiz kanıtlayıcılara ihtiyacımız var?
Şu anda Ethereum ana ağı üzerinde çalışan birden fazla ZK-Rollup bulunmaktadır. Ancak, merkeziyetsiz ZK-Rollup’ların tasarımı hala ilk aşamalarında. Şu anda merkeziyetsiz sıralayıcı konusuna odaklanıyoruz, ancak çoğu insan ZK-Rollup projesinin merkeziyetsiz kanıtlayıcıları uygulamadığı gerçeğini gözden kaçırıyor.
ZK-Rollup’lar için merkezi bir kanıtlayıcı halen daha güvenlidir ve merkezi bir sıralayıcı ile aynı cersorship sorunlarını getirmez. Bununla birlikte, merkezi bir kanıtlayıcı da birçok soruna neden olabilir.
İlk olarak, yalnızca bir doğrulayıcı varsa, tek bir düğüm hatası tüm ZK-Rollup’ın geçerlilik kanıtını sunamamasına neden olabilir ve böylece işlemlerin kesinliğini etkileyebilir.
İkinci olarak, merkezi bir doğrulayıcının maliyeti yüksektir ve gelecekte devasa ZK-Rollup’lar için hesaplama talebini karşılayamaz. Son olarak, ekonomik açıdan bakıldığında, merkezi bir doğrulayıcı tek başına kârın bir kısmına sahiptir ve bu da token ekonomisi perspektifinden bakıldığında aslında adil değildir.
Merkeziyetsiz Kanıtlayıcıların Zorlukları
Merkeziyetsiz kanıtlayıcılar yukarıdaki sorunları etkili bir şekilde çözebilir, ancak bazı zorlukları da beraberinde getirir. Bu, yakın zamanda başlatılan birkaç zkEVM planının merkezi bir kanıtlayıcı şemasını benimsemesinin nedenlerinden biridir. Örneğin, Polygon zkEVM’nin beta ana ağı, ZKP’leri göndermek için güvenilir bir toplayıcıya dayanır ve zkSync dönemi de bu açıdan benzerdir.
Teknik açıdan bakıldığında, bir ZK-Rollup’ın akıllı sözleşmesi ZKP’yi doğruladığında, orijinal kanıt verilerine ihtiyaç duyar. Bu durum potansiyel olarak çeşitli zincir içi saldırı davranışlarını tetikleyebilir. Örneğin, belirli bir kanıtlayıcı hesaplanan ZKP’yi zincir düzeyindeki sözleşmeye sunduğunda, bir Katman-1 işlemi göndermesi gerekir. Bu işlem işlem havuzuna yayınlandığında, saldırganlar orijinal kanıt verilerini görebilir ve bir işlem göndermek için daha yüksek bir işlem ücreti belirleyebilir, böylece bir blokta ilk olarak paketlenebilir ve PoW ödülleri kazanabilirler.
Buna ek olarak, kanıtlayıcılar hesaplama gücüne dayalı olarak birbirleriyle rekabet ettiğinden, güvenilir bir kimlik tanıma mekanizması yoktur ve bir iletişim mekanizması kurmak da zordur. Farklı madenciler mükerrer iş yapabilir ve bu da hesaplama gücünün boşa harcanmasına neden olur.
ZKP’nin İki Aşamalı Gönderimi
Adım 1: Karma gönder
Bir kanıtlayıcı belirli bir dizi için bir ZKP hesapladıktan sonra, önce (kanıt / adres) hash’ini hesaplar ve hash ve adresi zincir düzeyinde akıllı sözleşmeye gönderir. Burada kanıt, belirli bir dizi için sıfır bilgi kanıtıdır ve adres, kanıtlayıcının adresidir.
İlk kanıtlayıcının T. blokta ZKP’nin özetini gönderdiğini varsayarsak, herhangi bir sınırlama olmaksızın T+10. bloğa kadar kabul edilir. T+11. bloktan itibaren yeni kanıtlayıcılar artık hash gönderemez.
Adım 2: ZKP’yi gönderin
T+11. bloktan sonra, herhangi bir kanıtlayıcı bir ZKP gönderebilir. Bir ZKP doğrulamayı geçtiği sürece, gönderilen tüm hash’leri doğrulamak için kullanılabilir. Doğrulanan kanıtlayıcılar, madencilerin yatırdıkları miktarların oranına göre PoW ödülleri alır.
T+20. bloktan önce hiçbir ZKP doğrulamayı geçemezse, hash gönderen tüm kanıtlayıcılar kesilir. Ardından sıra yeniden açılır ve yeni hash’ler gönderilerek Adım 1’e dönülebilir.
İşte bir örnek: Opside ağında her bloğun 128 IDE’lik bir PoW ödülüne sahip olduğunu ve şu anda 64 rollup slotunun mevcut olduğunu varsayalım. Bu nedenle, her bir rollup dizisine 2 IDE’lik bir PoW ödülü atanır. A, B ve C olmak üzere üç madenci bir dizi için doğru ZKP’yi art arda başarıyla gönderirse ve üç madencinin madenci hisseleri (IDE) sırasıyla 200K, 500K ve 300K ise. Bu durumda A, B ve C’nin her biri sırasıyla 0,4 IDE, 1 IDE ve 0,6 IDE’lik bir PoW ödülü kazanabilir.
Prover’ın Token Hissesi ve Cezası
Kanıtlayıcının kötü niyetli davranışlarını önlemek için, kanıtlayıcının özel bir sistem sözleşmesine kaydolması ve belirli bir miktarda token stake etmesi gerekir. Mevcut stake miktarı eşiğin altındaysa, kanıtlayıcı hash ve ZKP’yi gönderemez. Kanıtlayıcının ZKP’yi göndermesinin ödülü, kanıtlayıcının birden fazla ZKP göndermesini önleyecek şekilde hisse miktarının oranına göre dağıtılacaktır.
Kanıtlayıcı aşağıdaki eylemleri gerçekleştirirse, farklı ceza seviyeleri uygulanacaktır:
- Kanıtlayıcı yanlış bir hash gönderir.
- Belirli bir dizi için, karşılık gelen hiçbir ZKP doğrulamayı geçemezse, hash gönderen tüm kanıtlayıcılar cezalandırılacaktır.
Kaybedilen jeton yakılacak.
ZKP’nin iki aşamalı gönderme mekanizması hakkında daha fazla ayrıntı ve değerlendirme için okuyucuların Opside resmi belgelerine başvurmaları önerilir. Kanıtlayanın payının ve cezasının belirli sayıları gelecekte değiştirilebilir.
Birkaç husus:
Neden birden çok kanıtlayıcının hash göndermesine izin verilsin?
Yalnızca bir hash gönderen ilk kanıtlayıcı ödüllendirilirse, diğer kanıtlayıcıların, ilk kanıtlayıcı bir özet sunduktan sonra bir kanıt sunma teşviği olmayabilir. Kötü niyetli bir saldırgan, hash gönderdikten sonra kanıt göndermeyi uzun süre geciktirirse, tüm dizinin doğrulanmasını yavaşlatabilir. Bu nedenle, ZKP doğrulamasının tek bir saldırgan tarafından tekelleşmesini önlemek için birden fazla kanıtlayıcının bağımsız olarak ve aynı anda hash göndermesine izin vermek gerekir.
Neden bir zaman penceresi var?
Herhangi biri bir hash gönderdikten hemen sonra bir kanıt sunabilirse, kanıt yine de çalınabilir. Saldırganlar, adresleriyle ilişkili bir hash’i hemen gönderebilir ve ardından ödül kazanmak için bir kanıt gönderebilir. Bir zaman penceresi ayarlayarak, hash gönderen kanıtlayıcıların kanıtları pencere içinde sunmaya yönelik hiçbir teşviki kalmaz, böylece yarışılma olasılığını ortadan kaldırır.
Ödül neden hisseye göre dağıtılıyor?
Birden çok kanıtlayıcı, bir zaman aralığı içinde aynı sıra için karmalar gönderebilir. Aslında madenciler, oluşturdukları kanıtları kullanarak birden çok hash gönderebilir (yalnızca birden çok adrese ihtiyaç duyar). Bu, PoW ödüllerinin çoğunun veya hatta tamamının madenciler tarafından alınmasına yol açabilir. Bu saldırıdan kaçınmak için, bir dizinin ödülü, madencinin hisse miktarının oranına göre tahsis edilecektir.
Özet ve Planlama
Bu gönderide önerilen ZKP’ler için iki adımlı gönderim algoritması, yarış saldırılarından etkili bir şekilde kaçınırken ve daha fazla madenciyi istikrarlı ve sürekli ZKP hesaplama gücü sağlamaya teşvik ederken, kanıtlayıcının merkezsizleştirilmesini gerçekleştirir. Algoritmanın ilk sürümü, Opside pre-alpha test ağında başlatılacaktır. Gelecekte Opside , ZKP madenciliği alanında aşağıdakiler gibi daha yenilikçi fikirler de sunacak:
Tüm ağ boyunca ZKP hesaplama gücünün arz ve talebine dayalı olarak PoS ve PoW arasındaki ödül tahsis oranının dinamik olarak ayarlanması.
Toplama grupları için ZK-Toplama tipine, Toplama işlemlerinin sayısına ve Toplamanın gas kullanımına göre kişiselleştirilmiş fiyatlandırma mekanizması.
Uygulama geliştiricilerine, madencileri hesaplama gücü sağlamaya teşvik etmek için ilişkili Toplamaları için ZKP’ler üretmeleri için sübvansiyonlar.