Sıfır bilgi kanıtı (ZKP), ilk olarak S. Goldwasser, S. Micali ve C. Rackoff tarafından 1980'lerin başında The Knowledge Complexity Of Interactive Proof Systems başlıklı bir makalede önerilen bir şifreleme teknolojisidir. Bu yazıda, matematiksel ifadelerin kanıtları ortaya koymadan doğrulanması sorununu ele alan teorik bir model olarak kavramsallaştırılmıştır. Bu kavram, geleneksel şifreleme tekniklerinin sınırlarını zorlaması ve hassas bilgilerin işlenmesine yeni bir yaklaşım sağlaması nedeniyle akademik camiada büyük ilgi gördü.
Zamanla ZKP soyut bir teorik kavramdan çeşitli uygulamalara entegre edilebilecek somut protokollere dönüştü. 2010 yılında Groth, ZKP'de önemli bir çözüm olan zk-SNARK'ın geliştirilmesinde ufuk açıcı bir çalışma haline gelen Kısa Eşleştirmeye Dayalı Etkileşimli Olmayan Sıfır Bilgi Argümanları başlıklı bir makale yayınladı. ZKP'nin en önemli pratik uygulaması, Z-cash tarafından 2015 yılında kullanılan ve işlemler ve tutarlar için gizlilik koruması sağlayan sıfır bilgi kanıtlama sistemidir. Daha sonra zk-SNARK akıllı sözleşmelerle birleşerek daha geniş bir uygulama yelpazesine yol açtı.
Geleneksel ZKP'nin uyması gereken ilkeler şunlardır:
ZKP'nin prensibi basit bir örnekle anlaşılabilir: Eğer A'ya B'nin telefon numarasına sahip olduğumu kanıtlamam gerekiyorsa doğrudan A B'nin telefon numarasını söylememe gerek yok. Bunun yerine, doğrudan B'nin telefon numarasını çevirebilirim ve çağrı bağlandığında, bu gerçekten B'nin telefon numarasına sahip olduğumu kanıtlayabilir. Bu işlem B'nin numara bilgisini açıklamaz.
Ve zk-SNARK, bu temelde aşağıdaki özelliklere sahip daha fazla yükseltme yapar:
Groth'un makalesinde, bir hesaplama problemini İkinci Dereceden Aritmetik Programa (QAP) dönüştüren ve ardından eliptik eğri kriptografisi ve hash fonksiyonlarını kullanarak etkili bir kanıt oluşturan, eşleştirmelere dayanan etkileşimli olmayan bir sıfır bilgi kanıt yöntemi önerdi. zk-SNARK'ın sonraki tasarımları genellikle dört adımdan oluşur:
Anlamaya yardımcı olması için basit bir örnek ele alalım: Diyelim ki, gömülü hazinenin tam yerini bulmanızda size rehberlik edebilecek bir hazine haritanız var. Haritanın içeriğini veya hazinenin gerçek yerini açıklamadan birine hazinenin yerini bildiğinizi kanıtlamak istiyorsunuz. zk-SNARK teknolojisini kullanırsanız karmaşık bir hazine haritası bulmacası oluşturmanız gerekir. Bulmacanın küçük bir parçasını (bir kanıt) seçersiniz ve bunu kişiye gösterirsiniz, bu da onları bulmacanın tamamını görmeden tüm bulmacanın birbirine nasıl uyduğunu, yani hazinenin yerini bildiğinize ikna eder. Ancak bunu başarmak için güvenilir bir matbaadan yapboz parçanızın orijinal olduğunu kanıtlayan özel işaretler almanız gerekir.
Sıfır bilgi kanıtlarına geleneksel yaklaşım, kanıtlayıcının doğrulayıcıya sürekli olarak "evet mi hayır mı?" diye sorduğu etkileşimli kanıt yöntemlerini içerir. Doğru cevaba ulaşana kadar sorular. Bu süreç verimsizdir. Ancak zk-SNARK, güvenilir bir üçüncü taraftan CRS alarak tekrarlanan etkileşim ihtiyacını ortadan kaldırır. Tüm kanıtlayıcılar doğruluğu belirlemek için CRS'yi doğrudan karşılaştırabilir. Bu, sıfır bilgi kanıtlarının verimliliğini büyük ölçüde artırır.
Ayrıca zk-SNARK aşağıdaki avantajları da sunar:
zk-SNARK'ın ilk uygulaması, kullanıcıların zk-SNARK kullanarak gönderen, alıcı ve tutar gibi bilgileri gizleyerek tamamen anonim işlemler yapmasına olanak tanıyan Zcash'tir. Mevcut Web3 alanında zk-SNARK teknolojisi, blockchain ölçeklenebilirliği ve döviz rezervi yönetiminde önemli bir rol oynamaktadır.
Blockchain'in konsensüs mekanizması ve güvenlik gereklilikleri nedeniyle verimi ve verimliliği büyük ölçüde sınırlıdır. Bu sorunu çözmek için yaygın bir çözüm, çok sayıda işlemi veya hesaplamayı ana zincirden (Katman1) Katman2'ye taşımak için blok zincirinin üzerinde ek bir katman oluşturan ve böylece sistemin performansını ve kullanılabilirliğini artıran Layer2 teknolojisini kullanmaktır. .
zk-SNARK, Katman2'deki işlemleri veya hesaplamaları küçük ve hızlı bir kanıta sıkıştırabildiğinden ve daha sonra ana zincirde doğrulama için gönderildiğinden, Katman2'nin doğruluğunu ve tutarlılığını sağladığından bu çözümde önemli bir rol oynar. Şu anda zk-SNARK'ı temel alan iki ana Layer2 çözümü bulunmaktadır: ZK-rollup ve Validium.
Kripto para piyasasının değişkenliği ve belirsizliği nedeniyle birçok borsanın potansiyel riskleri veya talepleri karşılamak için belirli miktarda rezerv fonu tutması gerekiyor. Bununla birlikte, bu rezerv fonları çoğu zaman şeffaflıktan ve güvenilirlikten yoksundur ve bu durum, kullanıcıların, borsanın varlıklarını korumaya yetecek kadar rezerv fonuna sahip olup olmadığı konusunda kararsız kalmasına neden olur.
zk-SNARK, belirli varlık ayrıntılarını veya konumlarını açıklamadan, borsaların kullanıcılara veya düzenleyici kurumlara yeterli miktar ve değerde rezerv fonuna sahip olduklarını kanıtlamalarına izin vererek bu konuda bir çözüm sağlayabilir.
Tipik bir örnek, zk-SNARK ve Merkle ağaçlarının bir kombinasyonunu kullanan Gate.io'dur. Kullanıcı verilerini şifreler ve %100 ödeme kabiliyeti yeteneklerini göstermek için kısıtlı devreler kullanarak 100 farklı tokenin rezerv fonunun kanıtlarını üretirler.
Kaynak: https://www.gate.io/proof-of-reserves
İlave Okuma: zk-SNARK, Gate.io Proof of Reserves'i nasıl geliştiriyor?
Web3 uygulamalarına ek olarak zk-SNARK, aşağıdakiler gibi blockchain dışı alanlarda da kullanılabilir:
Önceki bölümde, zk-SNARK'ın CRS oluşturmak için güvenilir bir üçüncü taraf bularak kanıt verimliliğini artırdığından bahseden zk-SNARK'ın teknik ilkelerini tanıtmıştık. Ancak bu aynı zamanda zk-SNARK'ın bazı doğal sınırlamalarına ve zorluklarına da yol açmaktadır.
Özetle, zk-SNARK'ın doğasında olan sınırlamaları ele alan çeşitli yaklaşımlar vardır.
Yenilikçi bir şifreleme teknolojisi olarak zk-SNARK, özellikle gizlilik alanında geniş gelecek uygulama senaryolarına sahiptir:
zk-SNARK teknolojisi, gizliliğin korunması ve şifreli doğrulama alanlarında önemli bir atılımı temsil ediyor. Yalnızca güçlü gizlilik garantileri sağlama konusunda umut verici değil, aynı zamanda blockchain ve diğer çeşitli uygulamaların ölçeklenebilirliğini artırma konusunda da pratiktir. Teknik zorlukların ve sınırlamaların varlığına rağmen, zk-SNARK'ın sürekli araştırma ve yenilik yoluyla gelişmeye devam etmesini, mevcut sistemleri optimize etmesini ve gizliliğin korunması ve şifreleme teknolojisinin ilerlemesini desteklemek için yeni uygulama modellerine ilham vermesini bekliyoruz. Teknolojinin olgunluğu ve toplumda veri gizliliğine verilen önemin artmasıyla birlikte zk-SNARK, dijital çağda vazgeçilmez bir araç olma potansiyeline sahip olup, kullanıcılara bilgileri üzerinde daha fazla kontrol sağlama ve güvenli ve şeffaf dijital etkileşimleri teşvik etme potansiyeline sahiptir.
Sıfır bilgi kanıtı (ZKP), ilk olarak S. Goldwasser, S. Micali ve C. Rackoff tarafından 1980'lerin başında The Knowledge Complexity Of Interactive Proof Systems başlıklı bir makalede önerilen bir şifreleme teknolojisidir. Bu yazıda, matematiksel ifadelerin kanıtları ortaya koymadan doğrulanması sorununu ele alan teorik bir model olarak kavramsallaştırılmıştır. Bu kavram, geleneksel şifreleme tekniklerinin sınırlarını zorlaması ve hassas bilgilerin işlenmesine yeni bir yaklaşım sağlaması nedeniyle akademik camiada büyük ilgi gördü.
Zamanla ZKP soyut bir teorik kavramdan çeşitli uygulamalara entegre edilebilecek somut protokollere dönüştü. 2010 yılında Groth, ZKP'de önemli bir çözüm olan zk-SNARK'ın geliştirilmesinde ufuk açıcı bir çalışma haline gelen Kısa Eşleştirmeye Dayalı Etkileşimli Olmayan Sıfır Bilgi Argümanları başlıklı bir makale yayınladı. ZKP'nin en önemli pratik uygulaması, Z-cash tarafından 2015 yılında kullanılan ve işlemler ve tutarlar için gizlilik koruması sağlayan sıfır bilgi kanıtlama sistemidir. Daha sonra zk-SNARK akıllı sözleşmelerle birleşerek daha geniş bir uygulama yelpazesine yol açtı.
Geleneksel ZKP'nin uyması gereken ilkeler şunlardır:
ZKP'nin prensibi basit bir örnekle anlaşılabilir: Eğer A'ya B'nin telefon numarasına sahip olduğumu kanıtlamam gerekiyorsa doğrudan A B'nin telefon numarasını söylememe gerek yok. Bunun yerine, doğrudan B'nin telefon numarasını çevirebilirim ve çağrı bağlandığında, bu gerçekten B'nin telefon numarasına sahip olduğumu kanıtlayabilir. Bu işlem B'nin numara bilgisini açıklamaz.
Ve zk-SNARK, bu temelde aşağıdaki özelliklere sahip daha fazla yükseltme yapar:
Groth'un makalesinde, bir hesaplama problemini İkinci Dereceden Aritmetik Programa (QAP) dönüştüren ve ardından eliptik eğri kriptografisi ve hash fonksiyonlarını kullanarak etkili bir kanıt oluşturan, eşleştirmelere dayanan etkileşimli olmayan bir sıfır bilgi kanıt yöntemi önerdi. zk-SNARK'ın sonraki tasarımları genellikle dört adımdan oluşur:
Anlamaya yardımcı olması için basit bir örnek ele alalım: Diyelim ki, gömülü hazinenin tam yerini bulmanızda size rehberlik edebilecek bir hazine haritanız var. Haritanın içeriğini veya hazinenin gerçek yerini açıklamadan birine hazinenin yerini bildiğinizi kanıtlamak istiyorsunuz. zk-SNARK teknolojisini kullanırsanız karmaşık bir hazine haritası bulmacası oluşturmanız gerekir. Bulmacanın küçük bir parçasını (bir kanıt) seçersiniz ve bunu kişiye gösterirsiniz, bu da onları bulmacanın tamamını görmeden tüm bulmacanın birbirine nasıl uyduğunu, yani hazinenin yerini bildiğinize ikna eder. Ancak bunu başarmak için güvenilir bir matbaadan yapboz parçanızın orijinal olduğunu kanıtlayan özel işaretler almanız gerekir.
Sıfır bilgi kanıtlarına geleneksel yaklaşım, kanıtlayıcının doğrulayıcıya sürekli olarak "evet mi hayır mı?" diye sorduğu etkileşimli kanıt yöntemlerini içerir. Doğru cevaba ulaşana kadar sorular. Bu süreç verimsizdir. Ancak zk-SNARK, güvenilir bir üçüncü taraftan CRS alarak tekrarlanan etkileşim ihtiyacını ortadan kaldırır. Tüm kanıtlayıcılar doğruluğu belirlemek için CRS'yi doğrudan karşılaştırabilir. Bu, sıfır bilgi kanıtlarının verimliliğini büyük ölçüde artırır.
Ayrıca zk-SNARK aşağıdaki avantajları da sunar:
zk-SNARK'ın ilk uygulaması, kullanıcıların zk-SNARK kullanarak gönderen, alıcı ve tutar gibi bilgileri gizleyerek tamamen anonim işlemler yapmasına olanak tanıyan Zcash'tir. Mevcut Web3 alanında zk-SNARK teknolojisi, blockchain ölçeklenebilirliği ve döviz rezervi yönetiminde önemli bir rol oynamaktadır.
Blockchain'in konsensüs mekanizması ve güvenlik gereklilikleri nedeniyle verimi ve verimliliği büyük ölçüde sınırlıdır. Bu sorunu çözmek için yaygın bir çözüm, çok sayıda işlemi veya hesaplamayı ana zincirden (Katman1) Katman2'ye taşımak için blok zincirinin üzerinde ek bir katman oluşturan ve böylece sistemin performansını ve kullanılabilirliğini artıran Layer2 teknolojisini kullanmaktır. .
zk-SNARK, Katman2'deki işlemleri veya hesaplamaları küçük ve hızlı bir kanıta sıkıştırabildiğinden ve daha sonra ana zincirde doğrulama için gönderildiğinden, Katman2'nin doğruluğunu ve tutarlılığını sağladığından bu çözümde önemli bir rol oynar. Şu anda zk-SNARK'ı temel alan iki ana Layer2 çözümü bulunmaktadır: ZK-rollup ve Validium.
Kripto para piyasasının değişkenliği ve belirsizliği nedeniyle birçok borsanın potansiyel riskleri veya talepleri karşılamak için belirli miktarda rezerv fonu tutması gerekiyor. Bununla birlikte, bu rezerv fonları çoğu zaman şeffaflıktan ve güvenilirlikten yoksundur ve bu durum, kullanıcıların, borsanın varlıklarını korumaya yetecek kadar rezerv fonuna sahip olup olmadığı konusunda kararsız kalmasına neden olur.
zk-SNARK, belirli varlık ayrıntılarını veya konumlarını açıklamadan, borsaların kullanıcılara veya düzenleyici kurumlara yeterli miktar ve değerde rezerv fonuna sahip olduklarını kanıtlamalarına izin vererek bu konuda bir çözüm sağlayabilir.
Tipik bir örnek, zk-SNARK ve Merkle ağaçlarının bir kombinasyonunu kullanan Gate.io'dur. Kullanıcı verilerini şifreler ve %100 ödeme kabiliyeti yeteneklerini göstermek için kısıtlı devreler kullanarak 100 farklı tokenin rezerv fonunun kanıtlarını üretirler.
Kaynak: https://www.gate.io/proof-of-reserves
İlave Okuma: zk-SNARK, Gate.io Proof of Reserves'i nasıl geliştiriyor?
Web3 uygulamalarına ek olarak zk-SNARK, aşağıdakiler gibi blockchain dışı alanlarda da kullanılabilir:
Önceki bölümde, zk-SNARK'ın CRS oluşturmak için güvenilir bir üçüncü taraf bularak kanıt verimliliğini artırdığından bahseden zk-SNARK'ın teknik ilkelerini tanıtmıştık. Ancak bu aynı zamanda zk-SNARK'ın bazı doğal sınırlamalarına ve zorluklarına da yol açmaktadır.
Özetle, zk-SNARK'ın doğasında olan sınırlamaları ele alan çeşitli yaklaşımlar vardır.
Yenilikçi bir şifreleme teknolojisi olarak zk-SNARK, özellikle gizlilik alanında geniş gelecek uygulama senaryolarına sahiptir:
zk-SNARK teknolojisi, gizliliğin korunması ve şifreli doğrulama alanlarında önemli bir atılımı temsil ediyor. Yalnızca güçlü gizlilik garantileri sağlama konusunda umut verici değil, aynı zamanda blockchain ve diğer çeşitli uygulamaların ölçeklenebilirliğini artırma konusunda da pratiktir. Teknik zorlukların ve sınırlamaların varlığına rağmen, zk-SNARK'ın sürekli araştırma ve yenilik yoluyla gelişmeye devam etmesini, mevcut sistemleri optimize etmesini ve gizliliğin korunması ve şifreleme teknolojisinin ilerlemesini desteklemek için yeni uygulama modellerine ilham vermesini bekliyoruz. Teknolojinin olgunluğu ve toplumda veri gizliliğine verilen önemin artmasıyla birlikte zk-SNARK, dijital çağda vazgeçilmez bir araç olma potansiyeline sahip olup, kullanıcılara bilgileri üzerinde daha fazla kontrol sağlama ve güvenli ve şeffaf dijital etkileşimleri teşvik etme potansiyeline sahiptir.