zk-SNARKs Teknolojisi Üzerine Genel Bakış ve Gelecek Beklentileri
Öz
zk-SNARKs(ZKP), önemli bir kriptografi teknolojisi olarak, blockchain alanında dağıtık defter teknolojisinden sonra en devrimci yeniliklerden biri olarak geniş çapta kabul edilmektedir. Bu makale, ZKP teknolojisinin son kırk yıl içerisindeki gelişim sürecini ve en son araştırmaları sistematik bir şekilde gözden geçirmektedir.
Öncelikle ZKP'nin temel kavramı ve tarihsel arka planı tanıtılmakta, devre tabanlı ZKP teknolojisi üzerine özellikle analiz yapılmakta, zkSNARK, Pinocchio, Bulletproofs gibi modellerin tasarımı, uygulanması ve optimizasyon yöntemleri incelenmektedir. Hesaplama ortamı açısından, bu çalışmada ZKVM ve ZKEVM tanıtılmakta, bunların işlem işleme kapasitesini nasıl artırdığı, gizliliği koruduğu ve doğrulama verimliliğini artırdığı üzerinde durulmaktadır. Makale ayrıca ZK Rollup'ın Layer 2 genişleme çözümü olarak çalışma mekanizması ve optimizasyon yöntemlerini, ayrıca donanım hızlandırma, karma çözümler ve özel ZK EVM'nin en son gelişmelerini açıklamaktadır.
Son olarak, bu makalede ZKCoprocessor, ZKML, ZKThreads, ZK Sharding ve ZK StateChannels gibi yeni kavramlar ele alınmış ve bunların blockchain ölçeklenebilirliği, birlikte çalışabilirlik ve gizlilik koruma konusundaki potansiyeli incelenmiştir.
Bu makale, bu en son teknolojiler ve gelişim trendlerini analiz ederek, ZKP teknolojisini anlama ve uygulama konusunda kapsamlı bir bakış açısı sunmakta, bunun blok zinciri sistemlerinin verimliliğini ve güvenliğini artırmadaki büyük potansiyelini sergilemekte ve gelecekteki yatırım kararları için önemli bir referans sağlamaktadır.
Dizin
Giriş
Bir. zk-SNARKs Temel Bilgisi
Genel Bakış
zk-SNARKs örneği
İkincisi, etkileşimsiz zk-SNARKs
Arka Plan
NIZK'nin Önermesi
Fiat-Shamir dönüşümü
Jens Groth ve araştırmaları
Diğer Araştırmalar
Üç, devreye dayalı zk-SNARKs
Arka plan
Devre modelinin temel kavramları ve özellikleri
zk-SNARKs'taki devre tasarımı ve uygulamaları
Potansiyel kusurlar 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 için kanıt temelli çözüm
Olasılığa Dayalı Doğrulanabilir Zer Knowledge
CPC'ye Dayalı Ayar Aşaması Sınıflandırması
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ı
ZKVM paradigmasının avantajları ve dezavantajları
Altı, zk-SNARKs Ethereum Sanal Makinesi'nin Genel Görünümü ve Gelişimi
Arka Plan
ZKEVM'in çalışma prensibi
ZKEVM'in gerçekleştirme süreci
ZKEVM'nin Özellikleri
Yedi, zk-SNARKs ikinci katman ağı planı genel görünümü ve gelişimi
Arka plan
ZK Rollup'un çalışma mekanizması
ZK Rollup'ın dezavantajları ve optimizasyonu
Sekiz, zk-SNARKs'in gelecekteki gelişim yönleri
Hesaplama ortamının gelişimini hızlandırmak
ZKML'nin ortaya çıkışı ve gelişimi
ZKP ölçeklenebilirlik teknolojisi ile ilgili gelişmeler
ZKP birlikte çalışabilirliğinin geliştirilmesi
Dokuz, Sonuç
Giriş
Web3 çağının gelmesiyle birlikte, blok zinciri uygulamaları (DApps) patlayıcı bir büyüme sergiliyor, her gün yeni uygulamalar ortaya çıkıyor. Son yıllarda, blok zinciri platformları her gün milyonlarca kullanıcının faaliyetlerini barındırmakta, on milyarlarca işlem gerçekleştirmektedir. Bu işlemlerden kaynaklanan büyük veri genellikle kullanıcı kimlikleri, işlem tutarları, hesap adresleri ve bakiyeleri gibi hassas kişisel bilgileri içermektedir. Blok zincirinin açıklığı ve şeffaflığı göz önüne alındığında, depolanan bu veriler herkesin erişimine açıktır, bu da çeşitli güvenlik ve gizlilik sorunlarını gündeme getirmektedir.
Ş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 yer almaktadır. Homomorfik şifreleme, şifreli verileri çözmeden işlemler yapmayı mümkün kılarak hesap bakiyeleri ve işlem tutarlarının güvenliğini sağlamaya yardımcı olur, ancak hesap adresini koruyamaz. Halka imzaları, imzalayanın kimliğini gizleyebilen özel bir dijital imza biçimi sunarak hesap adresini korur, ancak hesap bakiyesi ve işlem tutarlarının korunmasında etkisizdir. Güvenli çok taraflı hesaplama, birden fazla katılımcı arasında hesaplama görevlerini dağıtmaya olanak tanır ve hiçbir katılımcının diğer katılımcıların verilerini bilmesine gerek yoktur; bu, hesap bakiyeleri ve işlem tutarlarını etkili bir şekilde korur, ancak hesap adresini de koruyamaz. Ayrıca, bu teknikler, işlem tutarını, hesap adresini ve hesap bakiyesini ifşa etmeden, blok zinciri ortamında ispatlayıcının yeterli işlem tutarına sahip olup olmadığını doğrulamakta yetersiz kalır.
zk-SNARKs(ZKP), belirli önermelerin doğruluğunu, herhangi bir aracı veriyi ifşa etmeden doğrulayan daha kapsamlı bir çözümdür. Bu doğrulama protokolü, karmaşık bir kamu anahtarı altyapısı gerektirmez ve tekrar eden uygulamalar kötü niyetli kullanıcılara ek faydalı bilgilere erişim sağlama fırsatı sunmaz. ZKP aracılığıyla, doğrulayıcı, doğrulayıcının yeterli işlem miktarına sahip olup olmadığını, herhangi bir özel işlem verisini ifşa etmeden doğrulama yeteneğine sahiptir. Doğrulama süreci, doğrulayıcının iddia edilen işlem miktarını içeren bir kanıt oluşturmasını, ardından bu kanıtı doğrulayıcıya iletmesini ve doğrulayıcının tanımlı bir hesaplama yaparak nihai bir hesaplama sonucu üretmesini içerir; böylece doğrulayıcının beyanını kabul edip etmeyeceği sonucuna varılır. Eğer doğrulayıcının beyanı kabul edilirse, yeterli işlem miktarına sahip oldukları anlamına gelir. Yukarıdaki doğrulama süreci, herhangi bir sahtecilik olmaksızın blok zincirine kaydedilebilir.
ZKP bu özellik, blok zinciri işlemleri ve kripto para uygulamalarında merkezi bir rol oynamasını sağlıyor, özellikle gizlilik koruma ve ağ genişletme konularında, bu da onu yalnızca akademik araştırmaların odak noktası haline getirmekle kalmayıp, dağıtık defter teknolojisi (, özellikle Bitcoin )'nin başarılı bir şekilde uygulanmasından bu yana en önemli teknolojik yeniliklerden biri olarak geniş çapta kabul edilmektedir. Aynı zamanda sektör uygulamaları ve risk sermayesi için önemli bir alan olmaktadır.
Bunun sonucunda, ZKP tabanlı birçok ağ projesi ortaya çıktı, bunlar arasında ZkSync, StarkNet, Mina, Filecoin ve Aleo gibi projeler yer alıyor. Bu projelerin gelişimiyle birlikte, ZKP'nin algoritma yenilikleri sürekli olarak gündeme gelmekte, neredeyse her hafta yeni bir algoritmanın ortaya çıktığı bildirilmektedir. Ayrıca, ZKP teknolojisiyle ilgili donanım geliştirmeleri de hızla ilerlemekte, ZKP'yi optimize etmek için özel olarak tasarlanmış çipler dahil. Örneğin, Ingonyama, Irreducible ve Cysic gibi projeler büyük ölçekli fonlama toplama işlemlerini tamamladı; bu gelişmeler sadece ZKP teknolojisinin hızlı ilerlemesini göstermekle kalmıyor, aynı zamanda genel donanımdan GPU, FPGA ve ASIC gibi özel donanımlara geçişi de yansıtıyor.
Bu gelişmeler, zk-SNARKs teknolojisinin yalnızca kriptografi alanında önemli bir atılım olmadığını, aynı zamanda daha geniş blockchain teknolojisi uygulamalarının, özellikle gizlilik koruma ve işlem kapasitesini artırma alanlarında ( 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ıraladık (; aynı zamanda, bu alandaki önde gelen projelerin bilgilerini ve beyaz kağıtlarını ) finansman ölçeğine göre sıralayarak detaylı bir şekilde analiz ettik (. Bu kapsamlı veri toplama ve analiz, bu makalenin yazımı için sağlam bir temel sağlamıştır.
) Bir. zk-SNARKs Temel Bilgisi
1. Genel Bakış
1985 yılında, akademisyenler Goldwasser, Micali ve Rackoff, "The Knowledge Complexity of Interactive Proof-Systems" adlı makalelerinde ilk kez zk-SNARKs'ı ###Zero-Knowledge Proof, ZKP ( ve etkileşimli bilgi kanıtı )Interactive Zero-Knowledge, IZK ('yi ortaya koydular. Bu makale, zk-SNARKs'ın temellerini atan bir çalışma olup, sonraki akademik araştırmaları etkileyen birçok kavramı tanımlamıştır. Örneğin, bilginin tanımı "hesaplanması mümkün olmayan bir çıktıdır", yani bilgi bir çıktı olmalı ve hesaplanması mümkün olmamalıdır; bu, basit bir fonksiyon olamayacağı anlamına gelir, karmaşık bir fonksiyon olmalıdır. Hesaplanması mümkün olmayan işlemler genellikle bir NP problemi olarak anlaşılabilir; yani, çözümünün doğruluğunun çok üyeli zaman içinde doğrulanabileceği bir problem, çok üyeli zaman, algoritmanın çalışma süresinin girdi boyutunun çok üyeli bir fonksiyonu ile ifade edilebileceği anlamına gelir. Bu, bilgisayar bilimi alanında algoritmanın verimliliğini ve uygulanabilirliğini ölçmek için önemli bir standarttır. NP problemlerinin çözüm süreci karmaşık olduğundan, hesaplanması mümkün olmayan işlemler olarak kabul edilir; ancak doğrulama süreci görece basit olduğundan, zk-SNARKs doğrulaması için oldukça uygundur.
NP probleminin klasik bir örneği seyahat eden satıcı problemidir. Bu problemde, bir dizi şehri ziyaret edip başlangıç noktasına geri dönmenin en kısa yolunu 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 daha kolaydır. Çünkü belirli bir yolun toplam mesafesi polinom zamanında doğrulanabilir.
Goldwasser ve arkadaşları, etkileşimli kanıt sistemlerinde, kanıtlayıcının doğrulayıcıya ifşa ettiği bilgi miktarını nicelendirerek "bilgi karmaşıklığı" kavramını tanıttılar. Ayrıca, kanıtlayıcı )Prover( ve doğrulayıcı )Verifier('nın belirli bir ifadenin doğruluğunu kanıtlamak için çoklu etkileşimler aracılığıyla etkileşimde bulunduğu etkileşimli kanıt sistemlerini )Interactive Proof Systems,IPS( önerdiler.
Özetle, Goldwasser ve diğerlerinin özetlediği zk-SNARKs tanımı, doğrulayıcının doğrulama sürecinde, ifadenin doğru olup olmadığına dair herhangi bir ek bilgi edinmeden, özel bir etkileşimli kanıt türüdür; ayrıca üç temel özellik önermiştir:
1.Tamamlayıcılık: Eğer kanıt doğruysa, dürüst bir kanıtlayıcı dürüst bir doğrulayıcıyı bu gerçeği ikna edebilir;
2.Güvenilirlik: Eğer kanıtlayıcı beyanın içeriğini bilmiyorsa, yalnızca önemsiz bir olasılıkla doğrulayıcıyı kandırabilir;
Sıfır Bilgi Özelliği: Kanıtlama süreci tamamlandıktan sonra, doğrulayıcı yalnızca "kanıtlayıcının bu bilgiye sahip olduğu" bilgisini alır ve herhangi bir ek içerik elde edemez.
)# 2.zk-SNARKs örnekleri
Sıfır bilgi kanıtını 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, meydan okuma ve yanıt.
Birinci adım: Ayarları yap
Bu adımda, kanıtlayıcının amacı, bir gizli sayı s'yi bildiğini kanıtlayan bir kanıt oluşturmak, ancak s'yi doğrudan göstermemektir. Gizli sayı s olarak belirlenmiştir;
İki büyük asal sayı p ve q seçin, bunların çarpımı n'yi hesaplayın. Asal sayılar p ve q'yu belirleyin, elde edilen n'yi hesaplayın;
v=s^2 mod n hesaplanır, burada v, kanıtın bir parçası olarak doğrulayıcıya gönderilir, ancak bu, doğrulayıcının veya herhangi bir gözlemcinin s'yi çıkarması için yeterli değildir.
Rastgele bir tam sayı r seçin, x = r^2 mod n 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 ifşa etmez. Rastgele tam sayı r'yi varsayarak, hesaplanan x'i elde edin.
İkinci adım: Meydan okuma
Doğrulayıcı rastgele bir yer a### seçer, bu 0 veya 1( olabilir, ardından bunu ispatlayıcıya gönderir. Bu "meydan okuma", ispatlayıcının sonraki adımda atması gereken adımları belirler.
Üçüncü adım: Yanıt
Doğrulayıcı tarafından gönderilen a değerine göre, kanıtlayıcı yanıt verir:
Eğer a=0 ise, kanıtlayıcı g=r) gönderir; burada r, daha önce rastgele seçtiği sayıdır (.
Eğer a=1 ise, kanıtlayıcı g=rs mod n hesaplar ve gönderir. Doğrulayıcıdan gelen rastgele bit a olarak kabul edilir, a'nın değerine göre, kanıtlayıcı g'yi hesaplar;
Son olarak, doğrulayıcı alınan g'ye göre x'in g^2 mod n'ye eşit olup olmadığını doğrular. Eşitlik sağlanıyorsa, doğrulayıcı bu kanıtı kabul eder. a=0 olduğunda, doğrulayıcı g^2 mod n'i hesaplar ve sağ tarafta x'i doğrular; a=1 olduğunda ise, doğrulayıcı g^2 mod n'i hesaplar ve sağ tarafta xv'yi doğrular.
Burada, doğrulayıcı tarafından hesaplanan x=g^2 mod n, kanıtlayıcının doğrulama sürecini başarıyla geçtiğini ve aynı zamanda gizli sayısı s'yi ifşa etmediğini gösteriyor. Burada, a'nın yalnızca 0 veya 1 alabileceği nedeniyle, kanıtlayıcının şansa bağlı olarak doğrulamayı geçme olasılığı %50'dir ) a 0 olduğunda (. Ancak doğrulayıcı, daha sonra kanıtlayıcıya n kez meydan okur, kanıtlayıcı ilgili sayıları sürekli 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ığı )1/2(^n ) sonsuza yakın 0( olur, bu da kanıtlayıcının gerçekten bir gizli sayı s bildiği sonucunu kanıtlar. Bu örnek, sıfır bilgi kanıtı sisteminin bütünlüğünü, güvenilirliğini ve sıfır bilgiliğini kanıtlar.
) İki, etkileşimsiz zk-SNARKs
1. Arka plan
zk-SNARKs###ZKP( geleneksel kavramlarda genellikle etkileşimli ve çevrimiçi protokoller şeklindedir; örneğin, Sigma protokolü genellikle doğrulama için üç ila beş etkileşim turu gerektirir. Ancak, anlık işlemler veya oylama gibi senaryolarda, 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 sıfır bilgi ###NIZK( kanıtı kavramını ilk kez önerdiler. Bu, çoklu etkileşime gerek olmadan, kanıtlayıcı )Prover( ile doğrulayıcı )Verifier( arasında kimlik doğrulama sürecinin tamamlanma olasılığını kanıtladı. Bu atılım, anlık işlemler, oylama ve blok zinciri uygulamalarının gerçekleştirilmesini mümkün kıldı.
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.
15 Likes
Reward
15
7
Repost
Share
Comment
0/400
BlockDetective
· 07-15 23:55
zksnark çok güzel
View OriginalReply0
FunGibleTom
· 07-15 04:16
Bunu kim anlayabilir ki... Neredeyse deli oldum.
View OriginalReply0
FlashLoanLord
· 07-14 05:09
Okuyamıyorum, köpek bile anlamıyor.
View OriginalReply0
wagmi_eventually
· 07-14 05:05
zk sadece stark kullandım, diğerlerini anlamıyorum.
View OriginalReply0
JustHereForMemes
· 07-14 04:55
zk bu teknoloji gerçekten inanılmaz
View OriginalReply0
ImpermanentPhilosopher
· 07-14 04:55
DOGE nerede işe yaramadı? zkp daha önce kullanılmadı mı?
View OriginalReply0
DaoGovernanceOfficer
· 07-14 04:53
*sigh* yine bir anket Vitalik'in 2022 zk makalesinden kritik içgörülerini kaçırıyor...
zk-SNARKs teknolojisinin 40 yıllık evrimi: Temelden ZK Rollup'a kapsamlı bir analiz
zk-SNARKs Teknolojisi Üzerine Genel Bakış ve Gelecek Beklentileri
Öz
zk-SNARKs(ZKP), önemli bir kriptografi teknolojisi olarak, blockchain alanında dağıtık defter teknolojisinden sonra en devrimci yeniliklerden biri olarak geniş çapta kabul edilmektedir. Bu makale, ZKP teknolojisinin son kırk yıl içerisindeki gelişim sürecini ve en son araştırmaları sistematik bir şekilde gözden geçirmektedir.
Öncelikle ZKP'nin temel kavramı ve tarihsel arka planı tanıtılmakta, devre tabanlı ZKP teknolojisi üzerine özellikle analiz yapılmakta, zkSNARK, Pinocchio, Bulletproofs gibi modellerin tasarımı, uygulanması ve optimizasyon yöntemleri incelenmektedir. Hesaplama ortamı açısından, bu çalışmada ZKVM ve ZKEVM tanıtılmakta, bunların işlem işleme kapasitesini nasıl artırdığı, gizliliği koruduğu ve doğrulama verimliliğini artırdığı üzerinde durulmaktadır. Makale ayrıca ZK Rollup'ın Layer 2 genişleme çözümü olarak çalışma mekanizması ve optimizasyon yöntemlerini, ayrıca donanım hızlandırma, karma çözümler ve özel ZK EVM'nin en son gelişmelerini açıklamaktadır.
Son olarak, bu makalede ZKCoprocessor, ZKML, ZKThreads, ZK Sharding ve ZK StateChannels gibi yeni kavramlar ele alınmış ve bunların blockchain ölçeklenebilirliği, birlikte çalışabilirlik ve gizlilik koruma konusundaki potansiyeli incelenmiştir.
Bu makale, bu en son teknolojiler ve gelişim trendlerini analiz ederek, ZKP teknolojisini anlama ve uygulama konusunda kapsamlı bir bakış açısı sunmakta, bunun blok zinciri sistemlerinin verimliliğini ve güvenliğini artırmadaki büyük potansiyelini sergilemekte ve gelecekteki yatırım kararları için önemli bir referans sağlamaktadır.
Dizin
Giriş
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
Yedi, zk-SNARKs ikinci katman ağı planı genel görünümü ve gelişimi
Sekiz, zk-SNARKs'in gelecekteki gelişim yönleri
Dokuz, Sonuç
Giriş
Web3 çağının gelmesiyle birlikte, blok zinciri uygulamaları (DApps) patlayıcı bir büyüme sergiliyor, her gün yeni uygulamalar ortaya çıkıyor. Son yıllarda, blok zinciri platformları her gün milyonlarca kullanıcının faaliyetlerini barındırmakta, on milyarlarca işlem gerçekleştirmektedir. Bu işlemlerden kaynaklanan büyük veri genellikle kullanıcı kimlikleri, işlem tutarları, hesap adresleri ve bakiyeleri gibi hassas kişisel bilgileri içermektedir. Blok zincirinin açıklığı ve şeffaflığı göz önüne alındığında, depolanan bu veriler herkesin erişimine açıktır, bu da çeşitli güvenlik ve gizlilik sorunlarını gündeme getirmektedir.
Ş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 yer almaktadır. Homomorfik şifreleme, şifreli verileri çözmeden işlemler yapmayı mümkün kılarak hesap bakiyeleri ve işlem tutarlarının güvenliğini sağlamaya yardımcı olur, ancak hesap adresini koruyamaz. Halka imzaları, imzalayanın kimliğini gizleyebilen özel bir dijital imza biçimi sunarak hesap adresini korur, ancak hesap bakiyesi ve işlem tutarlarının korunmasında etkisizdir. Güvenli çok taraflı hesaplama, birden fazla katılımcı arasında hesaplama görevlerini dağıtmaya olanak tanır ve hiçbir katılımcının diğer katılımcıların verilerini bilmesine gerek yoktur; bu, hesap bakiyeleri ve işlem tutarlarını etkili bir şekilde korur, ancak hesap adresini de koruyamaz. Ayrıca, bu teknikler, işlem tutarını, hesap adresini ve hesap bakiyesini ifşa etmeden, blok zinciri ortamında ispatlayıcının yeterli işlem tutarına sahip olup olmadığını doğrulamakta yetersiz kalır.
zk-SNARKs(ZKP), belirli önermelerin doğruluğunu, herhangi bir aracı veriyi ifşa etmeden doğrulayan daha kapsamlı bir çözümdür. Bu doğrulama protokolü, karmaşık bir kamu anahtarı altyapısı gerektirmez ve tekrar eden uygulamalar kötü niyetli kullanıcılara ek faydalı bilgilere erişim sağlama fırsatı sunmaz. ZKP aracılığıyla, doğrulayıcı, doğrulayıcının yeterli işlem miktarına sahip olup olmadığını, herhangi bir özel işlem verisini ifşa etmeden doğrulama yeteneğine sahiptir. Doğrulama süreci, doğrulayıcının iddia edilen işlem miktarını içeren bir kanıt oluşturmasını, ardından bu kanıtı doğrulayıcıya iletmesini ve doğrulayıcının tanımlı bir hesaplama yaparak nihai bir hesaplama sonucu üretmesini içerir; böylece doğrulayıcının beyanını kabul edip etmeyeceği sonucuna varılır. Eğer doğrulayıcının beyanı kabul edilirse, yeterli işlem miktarına sahip oldukları anlamına gelir. Yukarıdaki doğrulama süreci, herhangi bir sahtecilik olmaksızın blok zincirine kaydedilebilir.
ZKP bu özellik, blok zinciri işlemleri ve kripto para uygulamalarında merkezi bir rol oynamasını sağlıyor, özellikle gizlilik koruma ve ağ genişletme konularında, bu da onu yalnızca akademik araştırmaların odak noktası haline getirmekle kalmayıp, dağıtık defter teknolojisi (, özellikle Bitcoin )'nin başarılı bir şekilde uygulanmasından bu yana en önemli teknolojik yeniliklerden biri olarak geniş çapta kabul edilmektedir. Aynı zamanda sektör uygulamaları ve risk sermayesi için önemli bir alan olmaktadır.
Bunun sonucunda, ZKP tabanlı birçok ağ projesi ortaya çıktı, bunlar arasında ZkSync, StarkNet, Mina, Filecoin ve Aleo gibi projeler yer alıyor. Bu projelerin gelişimiyle birlikte, ZKP'nin algoritma yenilikleri sürekli olarak gündeme gelmekte, neredeyse her hafta yeni bir algoritmanın ortaya çıktığı bildirilmektedir. Ayrıca, ZKP teknolojisiyle ilgili donanım geliştirmeleri de hızla ilerlemekte, ZKP'yi optimize etmek için özel olarak tasarlanmış çipler dahil. Örneğin, Ingonyama, Irreducible ve Cysic gibi projeler büyük ölçekli fonlama toplama işlemlerini tamamladı; bu gelişmeler sadece ZKP teknolojisinin hızlı ilerlemesini göstermekle kalmıyor, aynı zamanda genel donanımdan GPU, FPGA ve ASIC gibi özel donanımlara geçişi de yansıtıyor.
Bu gelişmeler, zk-SNARKs teknolojisinin yalnızca kriptografi alanında önemli bir atılım olmadığını, aynı zamanda daha geniş blockchain teknolojisi uygulamalarının, özellikle gizlilik koruma ve işlem kapasitesini artırma alanlarında ( 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ıraladık (; aynı zamanda, bu alandaki önde gelen projelerin bilgilerini ve beyaz kağıtlarını ) finansman ölçeğine göre sıralayarak detaylı bir şekilde analiz ettik (. Bu kapsamlı veri toplama ve analiz, bu makalenin yazımı için sağlam bir temel sağlamıştır.
) Bir. zk-SNARKs Temel Bilgisi
1. Genel Bakış
1985 yılında, akademisyenler Goldwasser, Micali ve Rackoff, "The Knowledge Complexity of Interactive Proof-Systems" adlı makalelerinde ilk kez zk-SNARKs'ı ###Zero-Knowledge Proof, ZKP ( ve etkileşimli bilgi kanıtı )Interactive Zero-Knowledge, IZK ('yi ortaya koydular. Bu makale, zk-SNARKs'ın temellerini atan bir çalışma olup, sonraki akademik araştırmaları etkileyen birçok kavramı tanımlamıştır. Örneğin, bilginin tanımı "hesaplanması mümkün olmayan bir çıktıdır", yani bilgi bir çıktı olmalı ve hesaplanması mümkün olmamalıdır; bu, basit bir fonksiyon olamayacağı anlamına gelir, karmaşık bir fonksiyon olmalıdır. Hesaplanması mümkün olmayan işlemler genellikle bir NP problemi olarak anlaşılabilir; yani, çözümünün doğruluğunun çok üyeli zaman içinde doğrulanabileceği bir problem, çok üyeli zaman, algoritmanın çalışma süresinin girdi boyutunun çok üyeli bir fonksiyonu ile ifade edilebileceği anlamına gelir. Bu, bilgisayar bilimi alanında algoritmanın verimliliğini ve uygulanabilirliğini ölçmek için önemli bir standarttır. NP problemlerinin çözüm süreci karmaşık olduğundan, hesaplanması mümkün olmayan işlemler olarak kabul edilir; ancak doğrulama süreci görece basit olduğundan, zk-SNARKs doğrulaması için oldukça uygundur.
NP probleminin klasik bir örneği seyahat eden satıcı problemidir. Bu problemde, bir dizi şehri ziyaret edip başlangıç noktasına geri dönmenin en kısa yolunu 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 daha kolaydır. Çünkü belirli bir yolun toplam mesafesi polinom zamanında doğrulanabilir.
Goldwasser ve arkadaşları, etkileşimli kanıt sistemlerinde, kanıtlayıcının doğrulayıcıya ifşa ettiği bilgi miktarını nicelendirerek "bilgi karmaşıklığı" kavramını tanıttılar. Ayrıca, kanıtlayıcı )Prover( ve doğrulayıcı )Verifier('nın belirli bir ifadenin doğruluğunu kanıtlamak için çoklu etkileşimler aracılığıyla etkileşimde bulunduğu etkileşimli kanıt sistemlerini )Interactive Proof Systems,IPS( önerdiler.
Özetle, Goldwasser ve diğerlerinin özetlediği zk-SNARKs tanımı, doğrulayıcının doğrulama sürecinde, ifadenin doğru olup olmadığına dair herhangi bir ek bilgi edinmeden, özel bir etkileşimli kanıt türüdür; ayrıca üç temel özellik önermiştir:
1.Tamamlayıcılık: Eğer kanıt doğruysa, dürüst bir kanıtlayıcı dürüst bir doğrulayıcıyı bu gerçeği ikna edebilir;
2.Güvenilirlik: Eğer kanıtlayıcı beyanın içeriğini bilmiyorsa, yalnızca önemsiz bir olasılıkla doğrulayıcıyı kandırabilir;
)# 2.zk-SNARKs örnekleri
Sıfır bilgi kanıtını 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, meydan okuma ve yanıt.
Birinci adım: Ayarları yap
Bu adımda, kanıtlayıcının amacı, bir gizli sayı s'yi bildiğini kanıtlayan bir kanıt oluşturmak, ancak s'yi doğrudan göstermemektir. Gizli sayı s olarak belirlenmiştir;
İki büyük asal sayı p ve q seçin, bunların çarpımı n'yi hesaplayın. Asal sayılar p ve q'yu belirleyin, elde edilen n'yi hesaplayın;
v=s^2 mod n hesaplanır, burada v, kanıtın bir parçası olarak doğrulayıcıya gönderilir, ancak bu, doğrulayıcının veya herhangi bir gözlemcinin s'yi çıkarması için yeterli değildir.
Rastgele bir tam sayı r seçin, x = r^2 mod n 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 ifşa etmez. Rastgele tam sayı r'yi varsayarak, hesaplanan x'i elde edin.
İkinci adım: Meydan okuma
Doğrulayıcı rastgele bir yer a### seçer, bu 0 veya 1( olabilir, ardından bunu ispatlayıcıya gönderir. Bu "meydan okuma", ispatlayıcının sonraki adımda atması gereken adımları belirler.
Üçüncü adım: Yanıt
Doğrulayıcı tarafından gönderilen a değerine göre, kanıtlayıcı yanıt verir:
Eğer a=0 ise, kanıtlayıcı g=r) gönderir; burada r, daha önce rastgele seçtiği sayıdır (.
Eğer a=1 ise, kanıtlayıcı g=rs mod n hesaplar ve gönderir. Doğrulayıcıdan gelen rastgele bit a olarak kabul edilir, a'nın değerine göre, kanıtlayıcı g'yi hesaplar;
Son olarak, doğrulayıcı alınan g'ye göre x'in g^2 mod n'ye eşit olup olmadığını doğrular. Eşitlik sağlanıyorsa, doğrulayıcı bu kanıtı kabul eder. a=0 olduğunda, doğrulayıcı g^2 mod n'i hesaplar ve sağ tarafta x'i doğrular; a=1 olduğunda ise, doğrulayıcı g^2 mod n'i hesaplar ve sağ tarafta xv'yi doğrular.
Burada, doğrulayıcı tarafından hesaplanan x=g^2 mod n, kanıtlayıcının doğrulama sürecini başarıyla geçtiğini ve aynı zamanda gizli sayısı s'yi ifşa etmediğini gösteriyor. Burada, a'nın yalnızca 0 veya 1 alabileceği nedeniyle, kanıtlayıcının şansa bağlı olarak doğrulamayı geçme olasılığı %50'dir ) a 0 olduğunda (. Ancak doğrulayıcı, daha sonra kanıtlayıcıya n kez meydan okur, kanıtlayıcı ilgili sayıları sürekli 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ığı )1/2(^n ) sonsuza yakın 0( olur, bu da kanıtlayıcının gerçekten bir gizli sayı s bildiği sonucunu kanıtlar. Bu örnek, sıfır bilgi kanıtı sisteminin bütünlüğünü, güvenilirliğini ve sıfır bilgiliğini kanıtlar.
) İki, etkileşimsiz zk-SNARKs
1. Arka plan
zk-SNARKs###ZKP( geleneksel kavramlarda genellikle etkileşimli ve çevrimiçi protokoller şeklindedir; örneğin, Sigma protokolü genellikle doğrulama için üç ila beş etkileşim turu gerektirir. Ancak, anlık işlemler veya oylama gibi senaryolarda, 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 sıfır bilgi ###NIZK( kanıtı kavramını ilk kez önerdiler. Bu, çoklu etkileşime gerek olmadan, kanıtlayıcı )Prover( ile doğrulayıcı )Verifier( arasında kimlik doğrulama sürecinin tamamlanma olasılığını kanıtladı. Bu atılım, anlık işlemler, oylama ve blok zinciri uygulamalarının gerçekleştirilmesini mümkün kıldı.