zk-SNARKs teknolojisinin Blok Zinciri alanındaki gelişimi ve uygulamaları
Özet
zk-SNARKs ( ZKP ) teknolojisi, Blok Zinciri alanında dağıtık defterden sonraki en önemli yeniliklerden biri olarak kabul edilmektedir ve aynı zamanda risk sermayesinin odaklandığı önemli bir alandır. Bu makale, zk-SNARKs teknolojisinin son kırk yıl içindeki gelişim sürecini sistematik bir şekilde gözden geçirmekte ve en son araştırma ilerlemelerini özetlemektedir.
Makale, öncelikle zk-SNARKs'in temel kavramlarını ve tarihsel arka planını tanıtmaktadır. Devre tabanlı zk-SNARKs teknolojisini, zkSNARK, Ben-Sasson modeli, Pinokyo, Bulletproofs ve Ligero gibi modellerin tasarımı, uygulamaları ve optimizasyon yöntemleri üzerinde yoğun bir şekilde analiz etmektedir. Hesaplama ortamları açısından, makale ZKVM ve ZKEVM'yi tanıtmakta, bunların işlem işleme yeteneğini artırma, gizliliği koruma ve doğrulama verimliliğini artırma yöntemlerini araştırmaktadır. Makale ayrıca, Zero Knowledge Rollup(ZK Rollup)'in ikinci katman genişletme çözümü olarak çalışma mekanizması ve optimizasyon yöntemlerini, ayrıca donanım hızlandırması, karma çözümler ve özel ZK EVM'ye dair son gelişmeleri tanıtmaktadır.
Son olarak, makale ZKCoprocessor, ZKML, ZKThreads, ZK Sharding ve ZK StateChannels gibi yeni kavramları ele aldı ve bunların Blok Zinciri ölçeklenebilirliği, birlikte çalışabilirlik ve gizlilik koruma konusundaki potansiyelini araştırdı.
Bu makale, bu en son teknolojilerin ve gelişim trendlerinin analizi yoluyla, zk-SNARKs teknolojisini anlamak ve uygulamak için kapsamlı bir bakış açısı sunmakta, bunun Blok Zinciri sistemlerinin verimliliğini ve güvenliğini artırmadaki büyük potansiyelini göstermekte ve gelecekteki yatırım kararları için önemli bir referans sağlamaktadır.
İçindekiler
Önsöz
Bir, zk-SNARKs Temel Bilgisi
Genel Bakış
2.zk-SNARKs örneği
İkincisi, etkileşimsiz zk-SNARKs
Arka Plan
2.NIZK'nin önerilmesi
3.Fiat-Shamir Dönüşümü
4.Jens Groth ve Araştırmaları
5.Diğer Araştırmalar
Üç, devreye dayalı zk-SNARKs
Arka plan
Devre modelinin temel kavramları ve özellikleri
3.zk-SNARKs'te Devre Tasarımı ve Uygulamaları
Potansiyel Hatalar ve Zorluklar
Dört, zk-SNARKs modeli
Arka Plan
Yaygın Algoritma Modelleri
Doğrusal PCP ve Ayrık Logaritma Problemi Tabanlı Çözüm
Sıradan insanların kanıtına dayalı çözüm
Olasılığa Dayalı Doğrulanabilir Kanıt ( PCP )'in zk-SNARKs
6.CPC( genel kanıt oluşturma ) ayar aşamasına dayalı sınıflandırma
Beş, zk-SNARKs sanal makinesinin genel görünümü ve gelişimi
Arka plan
Mevcut ZKVM Sınıflandırması
Ön Uç ve Arka Uç Paradigması
4.ZKVM Paradigmasının Avantajları ve Dezavantajları
Altı, zk-SNARKs Ethereum Sanal Makinesi'nin Genel Görünümü ve Gelişimi
1.Arka Plan
2.ZKEVM'nin çalışma prensibi
3.ZKEVM'in uygulanma süreci
4.ZKEVM'nin Özellikleri
Yedi, zk-SNARKs İkincil Ağ Planı Genel Bakış ve Gelişim
Arka Plan
2.ZK Rollup'ın çalışma mekanizması
3.ZK Rollup'un dezavantajları ve optimizasyonu
Sekiz, zk-SNARKs'in Gelecek Gelişim Yönleri
Hesaplama ortamının gelişimini hızlandırmak
2.ZKML'nin önerilmesi ve gelişimi
3.ZKP genişletme teknolojisi ile ilgili gelişmeler
4.ZKP birlikte çalışabilirliğinin gelişimi
Dokuz, Sonuç
Kaynakça
Ön Söz
Son yıllarda, Blok Zinciri uygulamaları (DApps)'ın gelişim hızı hızla arttı, neredeyse her gün yeni uygulamalar ortaya çıkıyor. Blok Zinciri platformları her gün milyonlarca kullanıcının etkinliğini taşıyor, on milyarlarca işlem gerçekleştiriyor. Bu işlemlerden kaynaklanan büyük miktardaki veriler genellikle kullanıcı kimlikleri, işlem tutarları, hesap adresleri ve hesap bakiyeleri gibi hassas kişisel bilgileri içeriyor. Blok Zinciri'nin açıklık ve şeffaflık özellikleri göz önüne alındığında, depolanan veriler herkesin erişimine açık, bu da çeşitli güvenlik ve gizlilik sorunlarını gündeme getiriyor.
Şu anda, bu zorluklarla başa çıkmak için birkaç kriptografi tekniği bulunmaktadır. Bunlar arasında homomorfik şifreleme, halka imzaları, güvenli çok taraflı hesaplama ve zk-SNARKs bulunmaktadır. Homomorfik şifreleme, şifreli verileri çözmeden işlem yapmaya olanak tanır ve hesap bakiyeleri ile işlem tutarlarının güvenliğini korumaya yardımcı olur, ancak hesap adresinin güvenliğini koruyamaz. Halka imzaları, imzalayıcının kimliğini gizleyebilen özel bir dijital imza biçimi sunar, böylece hesap adresinin güvenliğini korur, ancak hesap bakiyeleri ve işlem tutarları için koruma sağlayamaz. Güvenli çok taraflı hesaplama, birden fazla katılımcı arasında hesaplama görevlerini dağıtmaya olanak tanır; bu sayede hiçbir katılımcı diğer katılımcıların verilerini bilmeden işlem yapılabilir ve hesap bakiyeleri ile işlem tutarlarının güvenliği etkin bir şekilde korunur, ancak yine de hesap adresinin güvenliğini koruyamaz. Ayrıca, homomorfik şifreleme, halka imzaları ve güvenli çok taraflı hesaplama, bir blok zinciri ortamında ispatlayıcının yeterli işlem tutarına sahip olup olmadığını doğrulamak için işlem tutarları, hesap adresi ve hesap bakiyesini ifşa etmeden kullanılamaz.
zk-SNARKs, belirli önermelerin doğruluğunu, herhangi bir ara veriyi ifşa etmeden doğrulamaya olanak tanıyan daha kapsamlı bir çözümdür. Bu doğrulama protokolü karmaşık bir açık anahtar altyapısı gerektirmez ve tekrarlı uygulamaları, kötü niyetli kullanıcıların ek yararlı bilgiler elde etme fırsatı sunmaz. ZKP aracılığıyla, doğrulayıcılar, özel işlem verilerini ifşa etmeden, kanıtlayıcının yeterli işlem miktarına sahip olup olmadığını doğrulayabilirler. Doğrulama süreci, kanıtlayıcının iddia ettiği işlem miktarını içeren bir kanıt üretmeyi ve ardından bu kanıtı doğrulayıcıya iletmeyi içerir. Doğrulayıcı, kanıt üzerinde önceden tanımlanmış hesaplamalar yapar ve nihai hesaplama sonucu çıkararak, kanıtlayıcının beyanını kabul edip etmeyeceğine karar verir. Eğer kanıtlayıcının beyanı kabul edilirse, bu onların yeterli işlem miktarına sahip olduğu anlamına gelir. Yukarıda bahsedilen doğrulama süreci, blok zincirinde kaydedilebilir ve hiçbir sahtekarlık içermez.
ZKP'nin bu özelliği, onu blok zinciri işlemleri ve kripto para uygulamalarında merkezi bir rol oynamasını sağlıyor, özellikle gizlilik koruma ve ağ genişleme açısından, bu da onu sadece akademik araştırmaların odak noktası haline getirmekle kalmıyor, aynı zamanda dağıtık defter teknolojisinin, özellikle Bitcoin'in başarılı bir şekilde uygulanmasından bu yana en önemli teknolojik yeniliklerden biri olarak geniş çapta kabul ediliyor. Aynı zamanda sektör uygulamaları ve risk sermayesi için de önemli bir alan.
Bundan dolayı, ZKP'ye dayalı birçok ağ projesi ortaya çıkmıştır, bunlar arasında ZkSync, StarkNet, Mina, Filecoin ve Aleo bulunmaktadır. Bu projelerin gelişimiyle birlikte, ZKP'nin algoritma yenilikleri sürekli olarak ortaya çıkmakta, neredeyse her hafta yeni bir algoritmanın piyasaya sürüldüğü bildirilmiştir. Ayrıca, ZKP teknolojisiyle ilgili donanım geliştirme de hızlı bir ilerleme kaydetmektedir; bunlar arasında ZKP için özel olarak optimize edilmiş çipler bulunmaktadır. Örneğin, bazı projeler büyük ölçekli fon toplama işlemlerini tamamlamıştır, bu gelişmeler yalnızca ZKP teknolojisinin hızlı ilerlemesini göstermekle kalmayıp, aynı zamanda genel donanımdan GPU, FPGA ve ASIC gibi özel donanımlara geçişi yansıtmaktadır.
Bu gelişmeler, zk-SNARKs teknolojisinin yalnızca kriptografi alanında önemli bir atılım değil, aynı zamanda daha geniş Blok Zinciri teknolojisi uygulamalarının gerçekleştirilmesinde özellikle gizlilik koruma ve işleme kapasitesini artırma açısından kritik bir itici güç olduğunu göstermektedir.
Bu nedenle, gelecekteki yatırım kararlarımızı daha iyi desteklemek için zk-SNARKs ( ZKP ) ile ilgili bilgileri sistematik olarak düzenlemeye karar verdik. Bu amaçla, ZKP ile ilgili temel akademik makaleleri ( ilgili olma ve atıf sayısına göre sıralayarak kapsamlı bir şekilde inceledik ); aynı zamanda, bu alandaki önde gelen projelerin belgelerini ve beyaz kitaplarını ( finansman ölçeğine göre sıralayarak detaylı bir şekilde analiz ettik ). Bu kapsamlı veri toplama ve analiz süreci, bu makalenin yazımına sağlam bir temel sağladı.
Bir, zk-SNARKs Temel Bilgisi
1. Genel Bakış
1985 yılında, akademisyenler Goldwasser, Micali ve Rackoff, makalelerinde ilk kez zk-SNARKs ( Zero-Knowledge Proof, ZKP ) ve etkileşimli bilgi kanıtı ( Interactive Zero-Knowledge, IZK ) kavramlarını önermişlerdir. Bu makale, zk-SNARKs'ın temel taşını oluşturmuş, sonraki akademik araştırmaları etkileyen birçok kavramı tanımlamıştır. Örneğin, bilginin tanımı "hesaplanması imkansız bir çıktıdır"; yani bilgi bir çıktı olmalı ve hesaplanması imkansız olmalıdır, bu da onu basit bir fonksiyon olamayacağı anlamına gelir, karmaşık bir fonksiyon olması gerekmektedir. Hesaplanması imkansız bir işlem genellikle NP problemi olarak anlaşılabilir; yani çözümün doğruluğunun polinomik zaman içinde doğrulanabileceği problemler, polinomik zaman, algoritmanın çalışma süresinin girdi boyutunun polinom fonksiyonuyla ifade edilebileceği anlamına gelir. Bu, bilgisayar bilimlerinde algoritmanın verimliliği ve uygulanabilirliği açısından önemli bir ölçüttür. NP probleminin çözüm süreci karmaşık olduğu için hesaplanması imkansız olarak kabul edilir; ancak doğrulama süreci nispeten basit olduğundan, zk-SNARKs doğrulama için çok uygundur.
NP probleminin klasik bir örneği seyahat eden satıcı problemidir; burada belirli bir şehirler dizisini ziyaret edip başlangıç noktasına geri dönecek en kısa yolu bulmak gerekmektedir. En kısa yolu bulmak zor olabilir, ancak bir yol verildiğinde, bu yolun en kısa olup olmadığını doğrulamak görece kolaydır. Çünkü belirli bir yolun toplam mesafesini doğrulamak polinom zamanda tamamlanabilir.
Goldwasser ve arkadaşları, etkileşimli kanıtlama sistemlerinde kanıtlayıcının doğrulayıcıya sızdırdığı bilgi miktarını nicelleştirmek için "bilgi karmaşıklığı" kavramını tanıttılar. Ayrıca (Etkileşimli Kanıt Sistemleri, IPS)'ni önerdiler; burada kanıtlayıcı (Prover) ve doğrulayıcı (Verifier), bir ifadenin gerçekliğini kanıtlamak için çoklu etkileşimler aracılığıyla çalışırlar.
Yukarıda, Goldwasser ve diğerleri tarafından özetlenen zk-SNARKs tanımı, doğrulayıcının doğrulama sürecinde ifadelerin doğru olup olmadığı dışında herhangi bir ek bilgi almadığı özel bir etkileşimli kanıt türüdür; ve üç temel özellik önerilmiştir:
1.Tamamlayıcılık(completeness): Eğer kanıt doğruysa, dürüst bir kanıtlayıcı dürüst bir doğrulayıcıyı bu gerçeğe ikna edebilir;
2.Güvenilirlik ( sağlamlık ): Eğer kanıtlayıcı beyanın içeriğini bilmiyorsa, doğrulayıcıyı aldatma olasılığı yalnızca önemsizdir;
3.zk-SNARKs(zero-knowledge): Kanıtlama süreci tamamlandıktan sonra, doğrulayıcı yalnızca "kanıtlayıcının bu bilgiye sahip olduğuna" dair bilgi alır ve herhangi bir ek içerik elde edemez.
2.zk-SNARKs örneği
Zk-SNARKs ve özelliklerini daha iyi anlamak için, aşağıda bir kanıtlayıcının belirli gizli bilgilere sahip olup olmadığını doğrulamak için bir örnek verilmiştir. Bu örnek üç aşamaya ayrılmıştır: kurulum, zorluk ve yanıt.
İlk adım: ayarla (Setup)
Bu adımda, kanıtlayıcının hedefi, belirli bir gizli sayı s'yi bildiğini kanıtlayan bir kanıt oluşturmaktır, ancak s'yi doğrudan göstermeden. Gizli sayıyı belirleyin;
İki büyük asal sayı p ve q seçin, bunların çarpımını hesaplayın. Asal sayıların toplamını belirleyin,
Hesaplama, burada, v bir kanıtın parçası olarak doğrulayıcıya gönderilir, ancak bu, doğrulayıcı veya herhangi bir gözlemci için s'yi çıkarmak için yeterli değildir.
Rastgele bir tamsayı r seçin, hesaplayın ve doğrulayıcıya gönderin. Bu x değeri sonraki doğrulama süreci için kullanılır, ancak s'yi de açığa çıkarmaz. Rastgele tamsayıyı belirleyin, hesaplayın.
İkinci adım: meydan okuma (Challenge)
Doğrulayıcı, a( değerini rastgele seçer, bu 0 veya 1) olabilir ve ardından bunu ispatlayıcıya gönderir. Bu "meydan okuma", ispatlayıcının bir sonraki adımda atması gereken adımları belirler.
Üçüncü adım: yanıt (Response)
Doğrulayıcı tarafından gönderilen a değerine göre, kanıtlayıcı yanıt verir:
Eğer, kanıtlayıcı ( burada r'nin daha önce rastgele seçtiği sayı ) olduğunu gönderirse.
Eğer, kanıtlayıcı hesaplar ve gönderir. Doğrulayıcının gönderdiği rastgele bitleri varsayalım, a'nın değerine göre, kanıtlayıcı hesaplar;
Son olarak, doğrulayıcı alınan g'yi eşit olup olmadığını doğrulamak için kullanır. Eğer eşitlik sağlanıyorsa, doğrulayıcı bu kanıtı kabul eder. O anda, doğrulayıcı doğrulayıcı hesaplamaları yapar, sağ tarafı doğrular; o anda, doğrulayıcı doğrulayıcı hesaplamaları yapar, sağ tarafı doğrular.
Burada, doğrulayıcının hesapladığı açıklamanın, kanıtlayıcının doğrulama sürecini başarıyla geçtiğini, aynı zamanda onun gizli sayısı s'yi ifşa etmediğini görüyoruz. Burada, a yalnızca 0 veya 1 alabileceğinden, sadece iki olasılık vardır; kanıtlayıcının şansa bağlı olarak doğrulamayı geçme olasılığı (, a 0 olduğunda )'dir. Ancak doğrulayıcı daha sonra kanıtlayıcıya bir kez daha meydan okur, kanıtlayıcı sürekli ilgili sayıları değiştirir, doğrulayıcıya sunar ve her seferinde doğrulama sürecini başarıyla geçer; böylece kanıtlayıcının şansa bağlı olarak doğrulamayı geçme olasılığı (, 0)'e sonsuz şekilde yaklaşır ve kanıtlayıcının gerçekten bir gizli sayı s bildiği sonucu kanıtlanır. Bu örnek, sıfır bilgi kanıtı sisteminin bütünlüğünü, güvenilirliğini ve sıfır bilgi olma özelliğini kanıtlar.
İki, Etkileşimsiz zk-SNARKs
1. Arka Plan
zk-SNARKs(ZKP) geleneksel kavramda genellikle etkileşimli ve çevrimiçi protokol biçimidir; örneğin, Sigma protokolünün kimlik doğrulama işlemini tamamlamak için genellikle üç ila beş tur etkileşim gerektirmesi. Ancak, anlık işlemler veya oylama gibi senaryolar söz konusu olduğunda, genellikle çoklu etkileşim için fırsat yoktur, özellikle Blok Zinciri teknolojisi uygulamalarında, çevrimdışı doğrulama işlevi son derece önemlidir.
2.NIZK'nin önerilmesi
1988'de, Blum, Feldman ve Micali, etkileşimsiz zk-SNARKs ( NIZK ) kanıtının kavramını ilk kez ortaya koydu ve kanıtlayıcının ( Prover ) ile doğrulayıcının ( Verifier ) ile çoklu etkileşime ihtiyaç duymadan kimlik doğrulama sürecini tamamlayabileceği olasılığını kanıtladı. Bu atılım...
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
13 Likes
Reward
13
7
Repost
Share
Comment
0/400
GasFeeAssassin
· 4h ago
Yine gas yakacak gibi hissediyorum, üzüldüm.
View OriginalReply0
FunGibleTom
· 08-10 02:49
zksnark ne olduğunu anlamıyorum
View OriginalReply0
ShibaOnTheRun
· 08-10 02:45
DOGE zincir oyuncuları ah ah ah hepsi neredeyse sarardı.
View OriginalReply0
DegenWhisperer
· 08-10 02:42
Çok absürt, sıfır bilgi artık kırk yaşında.
View OriginalReply0
RugpullAlertOfficer
· 08-10 02:40
Bu zk, Blok Zinciri'nin büyük trendidir.
View OriginalReply0
ChainMaskedRider
· 08-10 02:31
玩zk还得看这tuzak
View OriginalReply0
LiquiditySurfer
· 08-10 02:30
Yine zk'dan boğa kesmeye geldin, beni sarhoş ettin. Bir martini içip sakinleşeyim.
zk-SNARKs teknolojisinin Blok Zinciri alanındaki uygulamaları ve gelişim trendleri
zk-SNARKs teknolojisinin Blok Zinciri alanındaki gelişimi ve uygulamaları
Özet
zk-SNARKs ( ZKP ) teknolojisi, Blok Zinciri alanında dağıtık defterden sonraki en önemli yeniliklerden biri olarak kabul edilmektedir ve aynı zamanda risk sermayesinin odaklandığı önemli bir alandır. Bu makale, zk-SNARKs teknolojisinin son kırk yıl içindeki gelişim sürecini sistematik bir şekilde gözden geçirmekte ve en son araştırma ilerlemelerini özetlemektedir.
Makale, öncelikle zk-SNARKs'in temel kavramlarını ve tarihsel arka planını tanıtmaktadır. Devre tabanlı zk-SNARKs teknolojisini, zkSNARK, Ben-Sasson modeli, Pinokyo, Bulletproofs ve Ligero gibi modellerin tasarımı, uygulamaları ve optimizasyon yöntemleri üzerinde yoğun bir şekilde analiz etmektedir. Hesaplama ortamları açısından, makale ZKVM ve ZKEVM'yi tanıtmakta, bunların işlem işleme yeteneğini artırma, gizliliği koruma ve doğrulama verimliliğini artırma yöntemlerini araştırmaktadır. Makale ayrıca, Zero Knowledge Rollup(ZK Rollup)'in ikinci katman genişletme çözümü olarak çalışma mekanizması ve optimizasyon yöntemlerini, ayrıca donanım hızlandırması, karma çözümler ve özel ZK EVM'ye dair son gelişmeleri tanıtmaktadır.
Son olarak, makale ZKCoprocessor, ZKML, ZKThreads, ZK Sharding ve ZK StateChannels gibi yeni kavramları ele aldı ve bunların Blok Zinciri ölçeklenebilirliği, birlikte çalışabilirlik ve gizlilik koruma konusundaki potansiyelini araştırdı.
Bu makale, bu en son teknolojilerin ve gelişim trendlerinin analizi yoluyla, zk-SNARKs teknolojisini anlamak ve uygulamak için kapsamlı bir bakış açısı sunmakta, bunun Blok Zinciri sistemlerinin verimliliğini ve güvenliğini artırmadaki büyük potansiyelini göstermekte ve gelecekteki yatırım kararları için önemli bir referans sağlamaktadır.
İçindekiler
Önsöz
Bir, zk-SNARKs Temel Bilgisi
İkincisi, etkileşimsiz zk-SNARKs
Üç, devreye dayalı zk-SNARKs
Dört, zk-SNARKs modeli
Beş, zk-SNARKs sanal makinesinin genel görünümü ve gelişimi
Altı, zk-SNARKs Ethereum Sanal Makinesi'nin Genel Görünümü ve Gelişimi 1.Arka Plan 2.ZKEVM'nin çalışma prensibi 3.ZKEVM'in uygulanma süreci
4.ZKEVM'nin Özellikleri
Yedi, zk-SNARKs İkincil Ağ Planı Genel Bakış ve Gelişim
Sekiz, zk-SNARKs'in Gelecek Gelişim Yönleri
Dokuz, Sonuç
Kaynakça
Ön Söz
Son yıllarda, Blok Zinciri uygulamaları (DApps)'ın gelişim hızı hızla arttı, neredeyse her gün yeni uygulamalar ortaya çıkıyor. Blok Zinciri platformları her gün milyonlarca kullanıcının etkinliğini taşıyor, on milyarlarca işlem gerçekleştiriyor. Bu işlemlerden kaynaklanan büyük miktardaki veriler genellikle kullanıcı kimlikleri, işlem tutarları, hesap adresleri ve hesap bakiyeleri gibi hassas kişisel bilgileri içeriyor. Blok Zinciri'nin açıklık ve şeffaflık özellikleri göz önüne alındığında, depolanan veriler herkesin erişimine açık, bu da çeşitli güvenlik ve gizlilik sorunlarını gündeme getiriyor.
Şu anda, bu zorluklarla başa çıkmak için birkaç kriptografi tekniği bulunmaktadır. Bunlar arasında homomorfik şifreleme, halka imzaları, güvenli çok taraflı hesaplama ve zk-SNARKs bulunmaktadır. Homomorfik şifreleme, şifreli verileri çözmeden işlem yapmaya olanak tanır ve hesap bakiyeleri ile işlem tutarlarının güvenliğini korumaya yardımcı olur, ancak hesap adresinin güvenliğini koruyamaz. Halka imzaları, imzalayıcının kimliğini gizleyebilen özel bir dijital imza biçimi sunar, böylece hesap adresinin güvenliğini korur, ancak hesap bakiyeleri ve işlem tutarları için koruma sağlayamaz. Güvenli çok taraflı hesaplama, birden fazla katılımcı arasında hesaplama görevlerini dağıtmaya olanak tanır; bu sayede hiçbir katılımcı diğer katılımcıların verilerini bilmeden işlem yapılabilir ve hesap bakiyeleri ile işlem tutarlarının güvenliği etkin bir şekilde korunur, ancak yine de hesap adresinin güvenliğini koruyamaz. Ayrıca, homomorfik şifreleme, halka imzaları ve güvenli çok taraflı hesaplama, bir blok zinciri ortamında ispatlayıcının yeterli işlem tutarına sahip olup olmadığını doğrulamak için işlem tutarları, hesap adresi ve hesap bakiyesini ifşa etmeden kullanılamaz.
zk-SNARKs, belirli önermelerin doğruluğunu, herhangi bir ara veriyi ifşa etmeden doğrulamaya olanak tanıyan daha kapsamlı bir çözümdür. Bu doğrulama protokolü karmaşık bir açık anahtar altyapısı gerektirmez ve tekrarlı uygulamaları, kötü niyetli kullanıcıların ek yararlı bilgiler elde etme fırsatı sunmaz. ZKP aracılığıyla, doğrulayıcılar, özel işlem verilerini ifşa etmeden, kanıtlayıcının yeterli işlem miktarına sahip olup olmadığını doğrulayabilirler. Doğrulama süreci, kanıtlayıcının iddia ettiği işlem miktarını içeren bir kanıt üretmeyi ve ardından bu kanıtı doğrulayıcıya iletmeyi içerir. Doğrulayıcı, kanıt üzerinde önceden tanımlanmış hesaplamalar yapar ve nihai hesaplama sonucu çıkararak, kanıtlayıcının beyanını kabul edip etmeyeceğine karar verir. Eğer kanıtlayıcının beyanı kabul edilirse, bu onların yeterli işlem miktarına sahip olduğu anlamına gelir. Yukarıda bahsedilen doğrulama süreci, blok zincirinde kaydedilebilir ve hiçbir sahtekarlık içermez.
ZKP'nin bu özelliği, onu blok zinciri işlemleri ve kripto para uygulamalarında merkezi bir rol oynamasını sağlıyor, özellikle gizlilik koruma ve ağ genişleme açısından, bu da onu sadece akademik araştırmaların odak noktası haline getirmekle kalmıyor, aynı zamanda dağıtık defter teknolojisinin, özellikle Bitcoin'in başarılı bir şekilde uygulanmasından bu yana en önemli teknolojik yeniliklerden biri olarak geniş çapta kabul ediliyor. Aynı zamanda sektör uygulamaları ve risk sermayesi için de önemli bir alan.
Bundan dolayı, ZKP'ye dayalı birçok ağ projesi ortaya çıkmıştır, bunlar arasında ZkSync, StarkNet, Mina, Filecoin ve Aleo bulunmaktadır. Bu projelerin gelişimiyle birlikte, ZKP'nin algoritma yenilikleri sürekli olarak ortaya çıkmakta, neredeyse her hafta yeni bir algoritmanın piyasaya sürüldüğü bildirilmiştir. Ayrıca, ZKP teknolojisiyle ilgili donanım geliştirme de hızlı bir ilerleme kaydetmektedir; bunlar arasında ZKP için özel olarak optimize edilmiş çipler bulunmaktadır. Örneğin, bazı projeler büyük ölçekli fon toplama işlemlerini tamamlamıştır, bu gelişmeler yalnızca ZKP teknolojisinin hızlı ilerlemesini göstermekle kalmayıp, aynı zamanda genel donanımdan GPU, FPGA ve ASIC gibi özel donanımlara geçişi yansıtmaktadır.
Bu gelişmeler, zk-SNARKs teknolojisinin yalnızca kriptografi alanında önemli bir atılım değil, aynı zamanda daha geniş Blok Zinciri teknolojisi uygulamalarının gerçekleştirilmesinde özellikle gizlilik koruma ve işleme kapasitesini artırma açısından kritik bir itici güç olduğunu göstermektedir.
Bu nedenle, gelecekteki yatırım kararlarımızı daha iyi desteklemek için zk-SNARKs ( ZKP ) ile ilgili bilgileri sistematik olarak düzenlemeye karar verdik. Bu amaçla, ZKP ile ilgili temel akademik makaleleri ( ilgili olma ve atıf sayısına göre sıralayarak kapsamlı bir şekilde inceledik ); aynı zamanda, bu alandaki önde gelen projelerin belgelerini ve beyaz kitaplarını ( finansman ölçeğine göre sıralayarak detaylı bir şekilde analiz ettik ). Bu kapsamlı veri toplama ve analiz süreci, bu makalenin yazımına sağlam bir temel sağladı.
Bir, zk-SNARKs Temel Bilgisi
1. Genel Bakış
1985 yılında, akademisyenler Goldwasser, Micali ve Rackoff, makalelerinde ilk kez zk-SNARKs ( Zero-Knowledge Proof, ZKP ) ve etkileşimli bilgi kanıtı ( Interactive Zero-Knowledge, IZK ) kavramlarını önermişlerdir. Bu makale, zk-SNARKs'ın temel taşını oluşturmuş, sonraki akademik araştırmaları etkileyen birçok kavramı tanımlamıştır. Örneğin, bilginin tanımı "hesaplanması imkansız bir çıktıdır"; yani bilgi bir çıktı olmalı ve hesaplanması imkansız olmalıdır, bu da onu basit bir fonksiyon olamayacağı anlamına gelir, karmaşık bir fonksiyon olması gerekmektedir. Hesaplanması imkansız bir işlem genellikle NP problemi olarak anlaşılabilir; yani çözümün doğruluğunun polinomik zaman içinde doğrulanabileceği problemler, polinomik zaman, algoritmanın çalışma süresinin girdi boyutunun polinom fonksiyonuyla ifade edilebileceği anlamına gelir. Bu, bilgisayar bilimlerinde algoritmanın verimliliği ve uygulanabilirliği açısından önemli bir ölçüttür. NP probleminin çözüm süreci karmaşık olduğu için hesaplanması imkansız olarak kabul edilir; ancak doğrulama süreci nispeten basit olduğundan, zk-SNARKs doğrulama için çok uygundur.
NP probleminin klasik bir örneği seyahat eden satıcı problemidir; burada belirli bir şehirler dizisini ziyaret edip başlangıç noktasına geri dönecek en kısa yolu bulmak gerekmektedir. En kısa yolu bulmak zor olabilir, ancak bir yol verildiğinde, bu yolun en kısa olup olmadığını doğrulamak görece kolaydır. Çünkü belirli bir yolun toplam mesafesini doğrulamak polinom zamanda tamamlanabilir.
Goldwasser ve arkadaşları, etkileşimli kanıtlama sistemlerinde kanıtlayıcının doğrulayıcıya sızdırdığı bilgi miktarını nicelleştirmek için "bilgi karmaşıklığı" kavramını tanıttılar. Ayrıca (Etkileşimli Kanıt Sistemleri, IPS)'ni önerdiler; burada kanıtlayıcı (Prover) ve doğrulayıcı (Verifier), bir ifadenin gerçekliğini kanıtlamak için çoklu etkileşimler aracılığıyla çalışırlar.
Yukarıda, Goldwasser ve diğerleri tarafından özetlenen zk-SNARKs tanımı, doğrulayıcının doğrulama sürecinde ifadelerin doğru olup olmadığı dışında herhangi bir ek bilgi almadığı özel bir etkileşimli kanıt türüdür; ve üç temel özellik önerilmiştir:
1.Tamamlayıcılık(completeness): Eğer kanıt doğruysa, dürüst bir kanıtlayıcı dürüst bir doğrulayıcıyı bu gerçeğe ikna edebilir;
2.Güvenilirlik ( sağlamlık ): Eğer kanıtlayıcı beyanın içeriğini bilmiyorsa, doğrulayıcıyı aldatma olasılığı yalnızca önemsizdir;
3.zk-SNARKs(zero-knowledge): Kanıtlama süreci tamamlandıktan sonra, doğrulayıcı yalnızca "kanıtlayıcının bu bilgiye sahip olduğuna" dair bilgi alır ve herhangi bir ek içerik elde edemez.
2.zk-SNARKs örneği
Zk-SNARKs ve özelliklerini daha iyi anlamak için, aşağıda bir kanıtlayıcının belirli gizli bilgilere sahip olup olmadığını doğrulamak için bir örnek verilmiştir. Bu örnek üç aşamaya ayrılmıştır: kurulum, zorluk ve yanıt.
İlk adım: ayarla (Setup)
Bu adımda, kanıtlayıcının hedefi, belirli bir gizli sayı s'yi bildiğini kanıtlayan bir kanıt oluşturmaktır, ancak s'yi doğrudan göstermeden. Gizli sayıyı belirleyin;
İki büyük asal sayı p ve q seçin, bunların çarpımını hesaplayın. Asal sayıların toplamını belirleyin,
Hesaplama, burada, v bir kanıtın parçası olarak doğrulayıcıya gönderilir, ancak bu, doğrulayıcı veya herhangi bir gözlemci için s'yi çıkarmak için yeterli değildir.
Rastgele bir tamsayı r seçin, hesaplayın ve doğrulayıcıya gönderin. Bu x değeri sonraki doğrulama süreci için kullanılır, ancak s'yi de açığa çıkarmaz. Rastgele tamsayıyı belirleyin, hesaplayın.
İkinci adım: meydan okuma (Challenge)
Doğrulayıcı, a( değerini rastgele seçer, bu 0 veya 1) olabilir ve ardından bunu ispatlayıcıya gönderir. Bu "meydan okuma", ispatlayıcının bir sonraki adımda atması gereken adımları belirler.
Üçüncü adım: yanıt (Response)
Doğrulayıcı tarafından gönderilen a değerine göre, kanıtlayıcı yanıt verir:
Eğer, kanıtlayıcı ( burada r'nin daha önce rastgele seçtiği sayı ) olduğunu gönderirse.
Eğer, kanıtlayıcı hesaplar ve gönderir. Doğrulayıcının gönderdiği rastgele bitleri varsayalım, a'nın değerine göre, kanıtlayıcı hesaplar;
Son olarak, doğrulayıcı alınan g'yi eşit olup olmadığını doğrulamak için kullanır. Eğer eşitlik sağlanıyorsa, doğrulayıcı bu kanıtı kabul eder. O anda, doğrulayıcı doğrulayıcı hesaplamaları yapar, sağ tarafı doğrular; o anda, doğrulayıcı doğrulayıcı hesaplamaları yapar, sağ tarafı doğrular.
Burada, doğrulayıcının hesapladığı açıklamanın, kanıtlayıcının doğrulama sürecini başarıyla geçtiğini, aynı zamanda onun gizli sayısı s'yi ifşa etmediğini görüyoruz. Burada, a yalnızca 0 veya 1 alabileceğinden, sadece iki olasılık vardır; kanıtlayıcının şansa bağlı olarak doğrulamayı geçme olasılığı (, a 0 olduğunda )'dir. Ancak doğrulayıcı daha sonra kanıtlayıcıya bir kez daha meydan okur, kanıtlayıcı sürekli ilgili sayıları değiştirir, doğrulayıcıya sunar ve her seferinde doğrulama sürecini başarıyla geçer; böylece kanıtlayıcının şansa bağlı olarak doğrulamayı geçme olasılığı (, 0)'e sonsuz şekilde yaklaşır ve kanıtlayıcının gerçekten bir gizli sayı s bildiği sonucu kanıtlanır. Bu örnek, sıfır bilgi kanıtı sisteminin bütünlüğünü, güvenilirliğini ve sıfır bilgi olma özelliğini kanıtlar.
İki, Etkileşimsiz zk-SNARKs
1. Arka Plan
zk-SNARKs(ZKP) geleneksel kavramda genellikle etkileşimli ve çevrimiçi protokol biçimidir; örneğin, Sigma protokolünün kimlik doğrulama işlemini tamamlamak için genellikle üç ila beş tur etkileşim gerektirmesi. Ancak, anlık işlemler veya oylama gibi senaryolar söz konusu olduğunda, genellikle çoklu etkileşim için fırsat yoktur, özellikle Blok Zinciri teknolojisi uygulamalarında, çevrimdışı doğrulama işlevi son derece önemlidir.
2.NIZK'nin önerilmesi
1988'de, Blum, Feldman ve Micali, etkileşimsiz zk-SNARKs ( NIZK ) kanıtının kavramını ilk kez ortaya koydu ve kanıtlayıcının ( Prover ) ile doğrulayıcının ( Verifier ) ile çoklu etkileşime ihtiyaç duymadan kimlik doğrulama sürecini tamamlayabileceği olasılığını kanıtladı. Bu atılım...