Zero-Knowledge (Sıfır Bilgi) Blockchain Projeleri

Av. Elif Hilal Umucu
11 min readOct 25, 2022

--

Selam! 🙂 Zero-knowledge teknolojisini eminim ki duymuşsunuzdur. Bu yazımda bu teknolojinin nasıl kullanıldığına ve örneklerine değineceğim.

Sıfır Bilgi Kanıtları ilk olarak Shafi Goldwasser ve Silvio Micali’nin 1985 MIT makalesinde “ Etkileşimli Kanıt Sistemlerinin Bilgi Karmaşıklığı ” olarak tanımlanmıştır. Bu makalede yazarlar, bir kanıtlayıcının bir doğrulayıcıyı, veri hakkında herhangi bir ek bilgi ifşa etmeden bir veri noktası hakkındaki belirli bir ifadenin doğru olduğuna ikna etmesinin mümkün olduğunu göstermektedirler.

Bu teknoloji, blok zinciri projelerinin işlem hacmini büyütmeyi kolaylaştırır, kimlik doğrulama sürecinde kullanıcı verilerini korumasına ve karmaşık hesaplamayı desteklemesine olanak tanır. Bu duruma ek olarak kurumların ve işletmelerin fikri mülkiyetlerini teknik anlamda korurken blok zincir teknolojisinin toplum ve şirketler tarafından benimsenmesine de olanak tanır. Tüm bu kullanım durumlarının temelinde zero knowledge çözümleri yatmaktadır.

Zero-knowledge ya da türkçe tabirle sıfır bilgi teknolojisi, blok zinciri projelerinin birçok layer-1 blokzincirine özgü ölçeklendirme ve gizlilik sınırlamalarının üstesinden gelmesine yardımcı olan bir kriptografi alt kümesidir.

Sıfır bilgi ispatları (ZKP) nelerdir? ZKP’ler, birinin temel bilgileri ifşa etmeden bildiğini veya bir veri parçasına sahip olduğunu kanıtlamasına olanak tanır.

Bir “kanıtlayıcı”, bir sistemin girdilerinin bilgisini kullanarak bir kanıt oluşturur ve bir “doğrulayıcı”, doğrulayıcı bilgileri göremese bile kanıtın doğru hesaplandığını onaylar.

Temel olarak, sıfır bilgi kanıtları, verilerin gizliliğini korurken bir veri kümesinin geçerliliğini doğrulamayı mümkün kılar.

Bu yazımda:

⛱ zero knowledge çözümlerini

⛱ zero knowledge çözümlerin avantajlarını

⛱ bu teknolojiyi kullanan blockchain projelerini

⛱ zkSNARKS ve zkSTARKS projelerinin zero knowledge teknolojisini nasıl kullandığını

⛱ zero knowledge çözümlerinin DECO ile nasıl daha güvenilir olduğunu açıkladım.

Zero Knowledge Tabanlı Ağları Neden Kullanmalıyız ? Kullanmalı mıyız?

Zero knowledge çözümleri, geliştiricilere Ethereum gibi mevcut bir layer-1 blok zincirinin güvenliğinden yararlanmanın bir yolunu sunarken dApp’lerin daha yüksek verim ve daha hızlı işlemlerle ölçeklenmesini sağlar. Bunun yanında işlemleri toplu halde yayınlayarak son kullanıcıların kişisel bilgilerini zincir dışında gizli tutarak korur ve maliyeti düşürür.

Nihayetinde bu avantajlar, projelerin; merkeziyetsizliğe dair faydalarını korurken, Web2 sistemlerinin performansı ve işlevselliğine rakip olan gelişmiş dApp’ler oluşturmasını sağlar. Doğal vbir sonuç olarak Blockchain’in tanınırlığını ve kullanımını artırır ✌🏻

Zero-Knowledge Çözümleri & Optimistic-Rollup Karşılaştırması!🔍🔎

Optimistic rolluplar nedir?

Optimistic Rolluplar, önde gelen ölçeklendirme çözümleri tarafından kullanılan alternatif bir layer-2 teknolojisidir.

29 Haziran 2022 itibariyle, analitik sitesi L2Beat’e göre , Optimistic Rolluplar, Ethereum layer-2 ağlarında depolanan TVL’nin %74.3'ünü oluştururken; zero-knowledge tabanlı çözümler %25.9'u oluşturuyor.

Zero Knowledge çözümleri ile Optimistic Rolluplar arasındaki temel fark, işlemlerin nasıl doğrulandığıdır.

Optimistic Rolluplar, yalnızca layer-1 blok zincirinde yayınlanan bir durum değişikliğine itiraz edildiğinde oluşturulan fraud proofs (sahtekarlık kanıtlarını) kullanırken, zero- knowledge çözümleri zincirde her parça yayınlandıktan sonra geçerlilik kanıtları yayınlar.

Bu, doğal olarak zero knowledge protokollerin her zaman geçerli bir duruma sahip olduğu ve temel zincirdeki geçerlilik kanıtlarını doğrulamak için daha fazla gaz tüketme dengesi olduğu anlamına gelir.

Fakat, zero knowledge rollupları zincir dışı verilerle birleştirmek gaz tüketimi verimliliğini artırabilir. Bu durumda daha verimli zero-knowledge-tabanlı çözümler ortaya çıkar. Bunlar da validiums ve volitions olarak bilinir. Kritik olarak, temel verileri ifşa etmeden bir durumun geçerli olduğunu kanıtlayabilirler.

Bu bahsettiğim teknolojiler; kuruluşların/şirketlerin kullanıcı bilgilerini ve ticari sırları koruyabileceğinden, blokzincirlerin kurumsal olarak benimsenmesine yardımcı olabilir.🙂

İki farklı layer-2 çözümü (zero knowledge çözümleri ile optimistic rolluplar) arasındaki diğer bir fark, sermaye verimliliğidir.

⏳ Optimistic rolluplarda, işlemlerin sonuçlandırılması ve para çekme işlemlerinin yapılması için standart süre bir hafta iken, kullanıcılar zero-knowledge çözümlerinde yaklaşık on dakika içinde para çekebilirler.⏳

Optimistic rolluplar ve zero knowledge protokolleri arasındaki farklar hakkında daha fazla bilgi edinmek için, Amsterdam’da kaydettiğimiz Offchain Labs, Polygon Hermez, Matter Labs, Metis DAO ve Optimism liderleriyle birlikte Ethereum layer 2'lerinin geleceğine ilişkin bu son videoyu izleyebilirsiniz :

Optimistic rolluplar ve zero knowledge protokollerini tartıştıktan sonra bütün konuşmacı arkadaşları da bu fotoğrafta topladık :)

Peki Zero-Knowledge Tabanlı Çözümler Neler?

Katman-2 çözümleri, geçerlilik kanıtlarını veya sahtekarlık kanıtlarını kullanabilir ve verileri zincir içinde veya dışında depolayabilir.

Mimariler

📌 zk-Rollups

ZK-Rollup; tüm fonların ana zincir üzerinde akıllı bir sözleşme ile tutulduğu, yan zincirlerin geçerliliğinin sıfır bilgi kanıtları ile sağlandığı zincir dışı hesaplama ve depolama gerçekleştiren bir L2 ölçeklendirme çözümüdür.

Zero knowledge-rollups, birçok işlemi bir araya toplar ve bunları, bu hesaplamanın geçerliliğini doğrulayan bir kanıtla birlikte 1. katman blok zincirine gönderir.

Zincirde yayınlanan kanıtlar, geçerlilik kanıtları(validity proofs) olarak bilinir ve “SNARK” veya “STARK” olabilir. Bu kanıtlar layer-1 blok zincirinde doğrulandığında, zero knowledge rollups yeni bir duruma geçer.

Rollups görünce hemen zk-Rollups olarak düşünmeyin, optimistic rollups ve zk-Rollups birbirinden farklıdır. Bir RollUp, bir Ethereum akıllı sözleşmesindeki işlemlerin zincir dışı bir toplamıdır ve blokzincirinin iş hacmini mevcut 15 tps’den 1000 tps’nin üzerine çıkararak ücretleri ve tıkanıklığı azaltır. Optimistic Rollups, Ethereum Sanal Makine (EVM) araçlarının % 80'inin aktarılabildiği hem basit ödemeleri hem de karmaşık akıllı sözleşmeleri destekleyebilir.

📌 Validium

Validium’lar, ölçeklenebilirliği artırmak için geçerlilik kanıtlarını(validity proofs) zincir dışı veri depolama ile birleştirir. Veriler zincir dışında saklanırken, geçerlilik kanıtları temel zincirde yayınlanmaya devam eder. Bu, verimi önemli ölçüde artırır ve gaz maliyetlerini düşürür.

Bu, zk-rolluplardan çok daha verimli ve ölçeklenebilir bir mimari olsa da, kötü niyetli aktörlerin verileri kullanılamaz hale getirmesi ve kullanıcıların fonlarını çekememeleri riskini ortaya çıkarır. Bu veri kullanılabilirliği sorunu, verilerin birçok farklı düğüm tarafından depolanmasını ve her zaman kullanılabilir olmasını sağlamaya yardımcı olmak için kripto ekonomik teşvikleri kullanan hisse kanıtı tipi sistemlerle aşılmaktadır. Bu kötü niyetli aktörlerin işlemleri durdurabilseler de doğrudan kullanıcı fonlarını çalamayacaklarını unutmamak önemlidir.

📌 Volitions

Volitions, hem zk-rollupları hem de validiumları birleştirir ve kullanıcıların tek bir durum kökünü paylaştıkları için her iki ölçekleme çözümü arasında seçim yapmalarına izin verir. İstemin validium tarafında başarılı bir kötü niyetli saldırı olsa bile, zk-rollup tarafındaki fonlar yine de güvende olacaktır.

Geçerlilik Kanıtları (validity proofs)

📌 SNARKs

SNARK, “bilgi üzerine sıfır-bilgi, kısa ve öz, etkileşimli olmayan argüman” anlamına gelir.

Zero Knowledge Succinct Non-interactive Argument of Knowledge : ZK-SNARK

SNARK, boyutu küçük ve doğrulanması kolay bir tür şifreleme kanıtıdır. SNARK’lar, genel olarak bilinen bir taban noktasından rastgele bir eliptik eğri elemanının ayrık logaritmasını bulmanın mümkün olmadığını varsayan eliptik eğriler kullanarak bir kriptografik kanıt oluşturur. Eliptik eğrileri hesaplamak, STARK’lar tarafından kullanılan karma işlevleri hesaplamaktan hesaplama açısından daha ucuzdur, bu nedenle SNARK tabanlı protokoller daha gaz verimli olabilir.

İşlemler bir araya toplanır, ardından ana zincir için imzalanır ve yalnızca başlık ile taahhüt edilir. Bu nedenle, Ethereum zincirinde depolanan veri miktarı azalır. Tüm imzalar, toplu işlemlerin sıkıştırılmasına olanak tanıyan ZK-SNARK olarak bilinen sıfır bilgi ispatı ile değiştirilir.

Tanımlanan ilk sıfır bilgi kanıtları 1980'lerin sonlarında Goldwasser, Micali ve Rackoff4 tarafından tanıtılmış, ancak zk-SNARK’ların modern gelişimi yalnızca son on yılda gerçekleşmiştir (UC Berkeley’de profesör olan Alessandro Chiesa tarafından) ve sürekli olarak bu teknolojinin iyileştirildiğini söylemek de mümkün. Zk-SNARK’lar (Sıfır Bilgi Kısa ve Etkileşimli Olmayan Bilgi Argümanı) özellikle “özlü” sıfır bilgi ispatlarıdır, yani birkaç yüz baytlık bir ispat uzunluğu ile milisaniyeler içinde doğrulanabilirler.

Özetle, bir SNARK, belirli bilgilere sahip olduğunun (örneğin gizli bir anahtar), bu bilgiyi ifşa etmeden ve kanıtlayıcı ile doğrulayıcı arasında herhangi bir etkileşim olmaksızın kanıtlanabildiği bir kanıt yapısına atıfta bulunan “Özlü Etkileşimsiz Bilgi Argümanıdır” diyebiliriz.

📌 STARKs

STARKS, “sıfır bilgi ölçeklenebilir şeffaf bilgi argümanı” anlamına gelir.

Zero-knowledge scalable transparent argument of knowledge

Kanıtlayıcı ve doğrulayıcı (prover ve verifier) arasında çok az etkileşim gerektiren veya hiç etkileşim gerektirmeyen bir tür kriptografik kanıttır.

STARK’ların SNARK’lara göre en önemli avantajları, hızlı kanıtlama sürelerine sahip olmaları ve daha fazla bilgi işlem gücü sundukları için ölçeklenmelerinin daha kolay olmasıdır. Ayrıca, karma işlevleri kullanmak onları kuantuma dirençli hale getirir.

Ufak not : STARK’lar, StarkEx ve StarkNet’i oluşturan ekip olan StarkWare’in kurucu ortağı Eli Ben-Sasson tarafından icat edildi.

Zero-Knowledge Blockchain Projeleri

Farklı zero-knowledge çözümü kullanan proje örnekleri.

zk-STARK Tabanlı Projeler

📌 StarkEx

StarkEx, kendi kendine saklanan işlemleri doğrulamak için STARK kanıtlarını kullanan ve bunun üzerine ticaret ve ödeme uygulamalarının oluşturulmasını sağlayan Ethereum üzerine inşa edilmiş bir katman-2 ölçeklenebilirlik çözümüdür.

DeversiFi, Sorare ve dYdX gibi StarkEx üzerine inşa edilen projeler yüz milyonlarca işlem ve yüz milyarlarca dolarlık işlem hacmi yarattı. Ancak StarkEx, tam özellikli dApp’leri etkinleştiren akıllı sözleşme işlevini desteklemiyor 🥹

📌 StarkNet

StarkNet, geliştiricilerin Ethereum tabanlı bir zk-rollup üzerinde akıllı sözleşmeler dağıtmalarını sağlayan genel amaçlı bir platformdur. Önde gelen Ethereum dApps Aave ve Maker’ın ikisi de StarkNet’te piyasaya sürülüyor.✌🏻

Özellikle, bir uygulamanın ölçeklenebilirliğini artırmak için StarkNet’in üstünde StarkEx zk-rollupları başlatılabilir.

StarkWare ; STARK’larla mümkün olan gelişmiş hesaplama ve ölçeklenebilirlikten tam olarak yararlanmak için ve STARK kanıtları oluşturmak için, Cairo adı verilen yeni, yüksek verimli ve eksiksiz bir programlama dili yarattı. Bu ne demektir? Yani; StarkWare’in belgeler, çerçeveler ve beraberindeki araçlarla bir geliştirici ekosistemini “önyüklemesi” gerektiği anlamına gelir.

📌 Immutable X

NFT’lerin ve jetonların basımını ve ticaretini kolaylaştıran bir NFT platformu olan Immutable X, StarkEx ile uygulamaya özel bir zk-rollup kullanıyor. Platform, on milyonlarca NFT mintini destekledi ve Ethereum’daki ağ tıkanıklığı dönemlerinde bile düşük ücretlerle alım satım yaptı.

Immutable X, StarkNet’te de launch edilecek. Kanıtlarını doğrudan Ethereum’a göndermek yerine, Immutable X onları StarkNet’te yayınlayacak ve daha sonra StarkNet’in rollup’ı aracılığıyla tekrar tekrar Ethereum’da yayınlanacak. Immutable X daha sonra StarkNet’in üzerinde uygulama zincirleri başlatmak için StarkEx’ten yararlanabilir ve esas olarak projelere layer-3 ölçeklendirme çözümü sunabilir.🎀

zk-SNARK Tabanlı Projeler 🐝

📌 Zcash

Gizliliği koruyan işlemlerini desteklemek için kullanılan sıfır bilgi kanıtına atıfta bulunarak daha önce ZeroCash olarak adlandırılan Zcash, daha önceki kripto varlıklarından biridir ve sektörde sıfır bilgi teknolojisinin kullanılmasına öncülük etmeye yardımcı olmuştur.

📌 Loopring

Loopring, kullanıcıların varlıklarının velayetini almadan sipariş defteri tarzı ticareti destekleyen Ethereum üzerine kurulu bir DEX’tir. Chainlink Price Feeds ile güçlendirilmiş, yüz binden fazla kullanıcıya hizmet vermiş ve milyarlarca işlem hacmini kolaylaştırmıştır.

📌 zkSync 1.0

zkSync, StarkEx gibi token transferlerini ve takaslarını destekleyen ancak akıllı sözleşmeleri desteklemeyen Ethereum üzerinde bir toplamadır. Bu Protokol, Matter Labs tarafından oluşturulmuştur.

📌 zkSync 2.0

StarkNet’e benzer şekilde, zkSync 2.0, akıllı sözleşmeleri destekleyen bir mimari kullanan layer-2 Ethereum ölçeklendirme çözümüdür. zkSync, işlemleri doğrulamak için zk-SNARK’ları kullanır ve veri kullanılabilirliği için bir hisse kanıtı sistemi(proof-stake) olan zkPorter’ı kullanır.

zkSync 2.0 ve StarkNet arasındaki temel fark, geçerlilik kanıtlarının yanı sıra, zkSync 2.0'ın EVM uyumlu olmasıdır.

Ek olarak 1inch, Alchemix ve Curve, zkSync 2.0'da piyasaya sürmeyi planlıyor.

📌 ZigZag

ZigZag protokolü, otomatikleştirilmiş piyasa yapıcı tasarımları kullanan çoğu DEX’in aksine, ERC-20 ticaret çiftleri için bir sipariş defteri kullanan merkezi olmayan bir borsadır.

Sipariş defteri(order book) tasarımını mümkün kılan şey, zk özetlerinin ölçeklenebilirliğidir. zkSync’in kayıt defterindeki herhangi bir token ZigZag’da listelenebilir. Protokol şu anda zkSync 1.0'da çalışıyor ancak hem zkSync 2.0 hem de StarkNet’te başlatmayı planlıyorlar.

📌 Mina

Mina protokolü, boyutu 22 kb ile sınırlı bloklar üretmek için SNARK’ları kullanan hafif bir blok zinciridir.Mina protokolü, merkeziyetsiz uygulamaları (dApp) daha verimli biçimde çalıştıran minimal bir blok zincirdir. Öyle ki Mina blok zincirinin tasarımı sadece 22 kb olacak şekilde tasarlanmıştır ve hiçbir zaman artmayacaktır.

Mina, minimal boyuttaki blok zincir misyonunu bu zk-SNARK’lar ile sağlıyor. Mina, yalnızca son birkaç bloka odaklanan SNARK’ları aşamalı olarak hesaplıyor. Yani son kullanıcılar, tüm işlem geçmişi yerine zk-SNARK ile sıkıştırılmış ispat verisini kontrol ediyor. Bu durum, kullanıcıların genesis blok sürecine kadar platformu görebilmesini sağlayan diğer büyük ölçekli ağlara oranla Mina protokolü blok zincirinin çok daha ufak boyutta ve pratik olmasını sağlıyor.Projeler, tam akıllı sözleşme işlevselliği ile Mina üzerinde uygulamalar oluşturabilirler💥

Zero-Knowledge Protokolleri Merkeziyetsiz Yönetimin Güvenilirliğini ve Güvenliği Nasıl Artırır? Artırır mı?

Sıfır bilgi protokolleri, güvenlik garantilerini güçlendirebilir ve uygulamalarını güvenilir ve merkezi olmayan oracle hizmetleriyle otomatikleştirebilir.

Web3 ekosistemindeki protokoller, herhangi bir harici API’ye erişmek ve daha gelişmiş uygulamalar oluşturmak için güvenli zincir dışı hesaplamadan yararlanmak için Chainlink hizmetlerini kullanabilir.

Zero knowledge protokolleri, dApp’leri aşağıdakilerle geliştirebilir:

DECO ile Herhangi Bir Blockchain Projesini Geliştirme

Bir projenin sıfır bilgi teknolojisinden yararlanmak için bir zk-toplaması, validium veya irade kullanması gerekmez. Şu anda geliştirme aşamasında olan DECO , HTTPS/TLS sistemlerinde teslimi sırasında verilerin gizli ve kurcalamaya karşı korumalı kalmasını garanti etmek için zero knowledge teknolojisi kullanır.

DECO-etkin oracle düğümleri, bu verileri ifşa etmeden verilerle ilgili gerçekleri kanıtlayabilir.

DECO etkin oracle düğümleri, zincirdeki verileri ifşa etmeden güvenilir sunuculardan alınan veriler hakkındaki gerçekleri kanıtlayabilir ve ayrıca TLS gözetim zinciri korunduğundan verilerin kaynağını da kanıtlayabilir.

Bu, kullanıcıların üçüncü bir tarafa güvenmek yerine kimlik bilgilerini yönetmelerini sağlayan CanDID gibi merkezi olmayan kimlik (DID) protokolleri gibi çok çeşitli gelişmiş kullanım durumlarına olanak tanır. Ayrıca, herhangi bir kişisel veriyi görüntülemeye gerek kalmadan, bir kullanıcının kredi değerliliğinin gereksinimlerini karşılayıp karşılamadığını yerleşik bir kurumla kontrol ederek, teminatsız kredileri destekleyen bir DeFi platformunu da etkinleştirebilir.

Yani DECO, kullanıcıların kişisel bilgileri zincir üzerinde mevcut hale getirmek zorunda kalmadan zincir üstü sistemlerde güvenli bir şekilde kullanmalarını sağlayan güvenlik garantileri sağlar.

Sonuç 🔎

Layer-1 blok zincirleri ve merkezi olmayan oracle ağları ile birlikte,zero knowledge teknolojisi, projelerin yüksek düzeyde ölçeklenebilir, düşük maliyetli ve gelişmiş uygulamalar oluşturmasını sağlarken kullanıcıların gizliliğini koruyarak blok zinciri endüstrisini dönüştürmek ve geliştirmek için ayarlanmıştır.

Bazı uygulamalar için daha iyi bir mimari sağlayabilecek başka layer-2 çözümleri olsa da, zk-rolluplar, validiumlar ve volitionlar, blok zinciri endüstrisi kitlesel benimsemeye doğru ilerledikçe hem bireyler hem de işletmeler arasında büyük bir kullanıcı kitlesini yakalayacak şekilde ayarlanmıştır.

Bu arada Blockchain ekosisteminde düzenlediğim etkinliklerden haberdar olmak için Meetup sayfama kaydolabilir, Telegram grubuma girebilir, Twitter’dan takip edebilirsiniz!⛱👻

--

--