Kakarot: ilk modüler zkEVM'ye giriş

May 09 2023
TL;DR: Kakarot, CairoVM üzerine inşa edilmiş bir tip 3 (yakında tip 2.5 olacak) zkEVM'dir.

TL;DR: Kakarot, CairoVM üzerine inşa edilmiş bir tip 3 (yakında tip 2.5 olacak) zkEVM'dir. Ekim 2022'de başlayan projenin birkaç hedefi var: ilk günden itibaren açık kaynak, katkıları memnuniyetle karşılama ve en iddialısı, 10.000'den az kod satırında bir zkEVM oluşturmak. Bu hedefimize sadece altı ayda ulaştık. 2023 yazının sonunda bir test ağı yayınlayacağız.

EVM, zkRollups ve zkEVM bağlamı için makalenin sonunda bir sözlük mevcuttur.

CairoVM Üzerine Eksik Bir Başlangıç

CairoVM , kanıtlanabilir yürütme sağlayan sanal bir makinedir. Ethereum ekosisteminde genel amaçlı bir Katman 2 (L2) geçerlilik toplaması olan Starknet'in temeli olarak hizmet eder . CairoVM'nin yürütmeyi polinomlar olarak temsil etme yeteneği, Starknet'teki her işlemin STARK'lar kullanılarak kanıtlanmasına izin verir. Bu, geliştiricilerin ilgili programlama dili olan Kahire'de merkezi olmayan uygulamalar (dApps) oluşturmasını gerektirir.

Kahire'nin arkasındaki ekibin sözleriyle, Lior Goldberg ve Shahar Papini ve Michael Riabzev:

Pratik olarak verimli bir Turing-complete STARK dostu CPU mimarisi olan Cairo'yu sunuyoruz. Bu mimaride bir programın yürütülmesinin geçerli olduğu ifadesi için tek bir polinom denklem seti açıklıyoruz. Kanıtlamak istenen bir ifade verildiğinde, Kahire, bir dizi polinom denklemi yazmak yerine, bu ifadeyi tanımlayan bir program yazmaya izin verir.

Çıkarım: Kahire'de yazılan programlar ispatlanabilirdir, bu da oyunun kurallarını değiştiren bir avantaj sağlar: ispatlanabilir programları üst düzey bir dilde yazmak. Sonuç olarak, sıfır bilgili kriptografinin ölçeklenebilirlik özelliğinden yararlanmak isteyen geliştiricilerin artık devre yazması gerekmiyor.

Öyleyse, Kahire'deki Ethereum Sanal Makinesini (EVM) yeniden yazmak bir zkEVM ile sonuçlanır mı?

Shahar'ın Silah Çağrısı veya Her Şey Nasıl Başladı?

Kahire'nin mucidi Shahar Papini 20 Temmuz 2022'de tweet attı:

Fikir basitti: EVM, olgun, iyi tanımlanmış bir VM mimarisidir. 142 işlem kodu, 9 ön derleme ve bu işlem kodlarını veya ön derlemeleri güncellemek için demokratik bir süreç. Kahire'de inşa edilmeli mi, bir zkEVM "ücretsiz" mi, yani sıfır bilginin ölçekleme özelliğini doğrudan bir sonuç olarak mı elde edilsin? Spoiler uyarısı, evet.

Oradan, fikir Starknet topluluğunda ilgi gördü. Starkware'in keşif ekibinin lideri ve temel Ethereum geliştirici ekibinin bir parçası olan Abdel , Ekim 2022'de uygulamayı uygulamaya başladı. Aynı sıralarda, Onlydust'un yardımıyla bir araya gelen Starknet'in açık kaynak oluşturucu topluluğu, paralel olarak benzer bir projeye başladı . . İlki, ikincisini Lizbon'daki StarknetCC sırasında özümsedi.

2022'nin Sonunda Kakarot, EVM İşlem Kodlarının %100'ünü Uygulamıştı.

Lizbon'da bir bilgisayar korsanı evi, bir haftalık özverili çalışma ve bir zkEVM inşa eden yaklaşık on kişi. Kakarot çekirdek ekibi doğdu. Bunun uygulanabilir ve güçlü olduğunu anladık. 5.000'den az kod satırına sığan saf bir zkEVM uygulaması. Devre yok, polinom yok. Sadece üst düzey, anlamlı kod.

Starknet Foundation ve Onlydust'ın yardımıyla bu maceraya atıldık. Değerlerimiz açık kaynak, açık katkılar ve topluluk odaklı teknik stratejiydi. Clément ve ben bu çabayı yönettik ve koordine ettik. Bugün Kakarot'un 40'tan fazla benzersiz katılımcısı var. Kakarot, üretim sınıfı bir zkEVM oluşturma konusundaki çabayı kristalize etmek için dahil olurken, değerlerimiz kalıcıdır: sonsuza kadar açık kaynak ve dış katkılara açık (+ katkı başına ödüller - bize katılın! ).

Mayıs 2023 itibarıyla Kakarot, %100 bayt kodu eşdeğerliği elde etti (tip 3 zkEVM'ye eşdeğer) ve 9 EVM ön derlemesinden 8'ini uyguladı . Yakında dokuzunun hepsine sahip olacak ve böylece Vitalik'in tipolojisine göre tip 2.5'e ulaşacak. Sonuç olarak, Solidity veya herhangi bir EVM destekli dilde yazılan dApp'ler, mevcut kodda herhangi bir değişiklik gerektirmeden Kakarot'a dağıtılabilir.

Sıradaki ne? İki Katlı Bir Bahis: EVM'yi Starknet'e Getirin ve Bir zkEVM-Hizmet Olarak Toplama Ürünü Oluşturun

Pazarı analiz ettiğimizde, diğer zkEVM'lerle karşılaştırıldığında Kakarot'un zayıf olduğunu fark ettik; önemli ölçüde daha düşük bütçeye ve markaya sahip 10 kişiden az bir ekip. Genel amaçlı bir zkEVM L2 olarak dağıtmak riskli görünüyordu. Peki, başka hangi stratejiler sağlam göründü? EVM uyumluluğunu Starknet'e getirin ve fraktal ölçeklendirmeden yararlanın.

Kahire'nin önümüzdeki yıllarda sıfır bilgi mühendisliği için en iyi araç kutusu olduğunu kanıtlayacağına yürekten inanıyoruz. Ayrıca EVM'nin geliştiriciler için en yaygın soyutlama katmanı olmaya devam edeceğine inanıyoruz. Bu nedenle EVM uyumluluğunu Starknet'e getiriyoruz. Yakında ekipler, Solidity dApp'lerini Kakarot aracılığıyla Starknet'te konuşlandırabilecekler.

Ayrıca, uygulama zincirlerinin (veya uygulamaya özel L3'lerin) insanların beklediğinden daha erken ortaya çıkacağını düşünüyoruz. OP yığınının kazandığı ilgi buna iyi bir örnektir. Kakarot'un modüler yapısından yararlanarak (herhangi bir Kahire zincirine uyarlanabilen küçük ve esnek kod tabanı), bir hizmet olarak zkRollup aracı oluşturma yetkisine sahibiz.
Tek tıklama: belirli bir uygulama için Starknet'in üzerinde L3 olarak dağıtılan bir zkEVM. EVM ortamı, düşük gaz ve hızlı uygulama. Kriptografik güvenlik.

Yığınımıza bir göz atmak için Substrat tabanlı bir Starknet sıralayıcı olan Madara'ya bir göz atın. Madara + Kakarot = Substrate & CairoVM tabanlı zkEVM L3'ler !

Bağlam ve Sözlük

  • EVM (Ethereum Virtual Machine): EVM, Ethereum blok zincirinde akıllı sözleşmeler yürüten, Turing-complete sanal bir makinedir. Talimatları işleyen ve ağın durumunu yöneten bu sözleşmeler için çalışma zamanı ortamı olarak hizmet eder. Geliştiriciler, daha sonra EVM bayt kodunda derlenen ve sanal makine tarafından yürütülen Solidity gibi dillerde akıllı sözleşmeler yazabilir.
  • zkRollups: zkRollups, blockchain ağları, özellikle Ethereum için Katman 2 ölçeklendirme çözümleridir. Birden fazla işlemi, daha sonra ana zincirde yayınlanan tek bir kanıtta toplarlar. Sıfır bilgi kanıtları kullanan zkRollups, yüksek düzeyde güvenlik ve merkezi olmayanlığı korurken daha fazla verim ve daha düşük işlem maliyetleri sağlar.
  • zkEVM (Sıfır Bilgi Ethereum Sanal Makinesi): Bir zkEVM, sıfır bilgi kanıtı sistemlerini içeren bir EVM uygulamasıdır. İşlemlerin ayrıntılarını açıklamadan doğruluğunu kanıtlamak için kriptografik tekniklerden yararlanarak akıllı sözleşmelerin daha fazla gizlilik ve ölçeklenebilirlikle yürütülmesine olanak tanır.

GitHub'ımıza katılın , keşfedilecek birçok depomuz var! Bunlardan en önemlisi Kakarot'tur (Kahire 0.x uygulaması) . Ayrıca açık bir Telegram topluluğumuz var:https://t.me/KakarotZkEvm.