Sıfır Bilgi Kanıtı sistemi, ilk olarak 1985 yılında Goldwasser, Micali ve Rackoff'un araştırma sonuçlarından kaynaklanmıştır. Onlar, etkileşimli sistemlerde, bir ifadenin doğruluğunu kanıtlamak için gereken bilgi miktarını çoklu etkileşimlerle tartışmışlardır. Eğer herhangi bir bilgi alışverişi olmadan kanıt tamamlanabiliyorsa, buna sıfır bilgi kanıtı denir.
Erken dönem sıfır bilgi kanıtı sistemleri verimlilik ve pratiklik açısından yetersizlikler göstermekteydi, esasen teorik düzeyde kalıyordu. Son 10 yılda, kriptografinin kripto para alanındaki yükselişi ile birlikte, sıfır bilgi kanıtları hızla gelişmeye başladı ve önemli bir araştırma yönü haline geldi. Bu bağlamda, genel, etkileşimsiz, sınırlı ölçekli sıfır bilgi kanıtı protokollerinin geliştirilmesi, önemli araştırma yönlerinden biri olarak öne çıkmaktadır.
Sıfır bilgi kanıtlarının önemli bir atılımı, Groth'un 2010 yılında önerdiği kısa eşleme etkileşimsiz sıfır bilgi kanıtıdır. Bu, zk-SNARK'ların teorik temelini oluşturmuştur. 2015'te, Zcash sıfır bilgi kanıtı sistemini kullanarak işlem gizliliğini sağlamış ve sıfır bilgi kanıtlarının geniş çapta kullanılmaya başlandığını göstermiştir.
Diğer bazı önemli akademik bulgular şunlardır:
2013'teki Pinocchio: Kanıt ve doğrulama süresini kullanılabilir bir aralığa sıkıştırdı
2017'de Bulletproofs: Güvenilir bir kurulum gerektirmeyen kısa kanıtlar önerdi.
2018'deki zk-STARKs: Güvenilir bir kurulum gerektirmeyen yeni bir protokol önerildi.
Ayrıca, PLONK, Halo2 gibi önemli gelişmeler de bulunmaktadır ve zk-SNARK'larda iyileştirmeler yapılmıştır.
zk-SNARKs'in Uygulamaları
zk-SNARKs'in en yaygın iki uygulaması gizlilik koruma ve ölçeklendirmedir.
Gizlilik Koruma
Erken dönem gizlilik ticareti projeleri olan Zcash ve Monero piyasaya sürüldükten sonra önemli bir yön haline geldi. Ancak gizlilik ticaretine olan ihtiyaç beklenen seviyeye ulaşmadığı için bu tür projeler giderek ikinci ve üçüncü ligdeki projelere kaydı.
Zcash, zk-SNARKs teknolojisini kullanır. İşlem adımları şunlardır: sistem ayarı, kamu-özel anahtar üretimi, madencilik, kanıt üretimi, doğrulama ve alım. Ancak Zcash, UTXO modeline dayanmaktadır ve yalnızca bazı işlem bilgilerini gizlemektedir, tamamen görünmez hale getirmemektedir. Gizli işlem kullanım oranı %10'dan azdır.
Tornado Cash, Ethereum ağına dayalı olarak tek bir büyük karışık havuz tasarımı kullanır ve zk-SNARKs teknolojisini kullanır. Yalnızca yatırılan paraların çekilebileceğini garanti eder, her para yalnızca bir kez çekilebilir ve kanıt süreci iptal bildirimine bağlanmaktadır.
genişletme
ZK genişlemesi, birinci katman ağında ( gibi Mina ) veya ikinci katman ağında ( yani zk-rollup ) üzerinde gerçekleştirilebilir. zk-rollup, Sequencer ve Aggregator olmak üzere iki tür rol içerir. Sequencer, işlemleri paketlemekten sorumludur, Aggregator ise çok sayıda işlemi birleştirerek zk-SNARKs oluşturur ve Ethereum durum ağacını günceller.
zk-rollup'un avantajları düşük maliyet ve hızlı nihai sonuç elde etmektir, dezavantajları ise yüksek hesaplama yükü ve potansiyel güvenlik sorunlarıdır.
Şu anda ana zk-rollup projeleri arasında StarkNet, zkSync, Aztec Connect, Polygon Hermez/Miden, Loopring, Scroll gibi projeler bulunmaktadır. Bu projelerin SNARK/STARK seçimi ve EVM uyumluluğu açısından farklılıkları vardır.
EVM uyumluluğu her zaman bir sorun olmuştur. Bazı projeler kendi sanal makinelerini ve dillerini geliştirmeyi seçti, ancak bu geliştiricilerin öğrenme maliyetlerini artırdı. Şu anda sektörde iki ana çözüm var: tamamen Solidity opcode uyumluluğu veya yeni ZK dostu bir sanal makine tasarlayıp Solidity ile uyumluluğu sağlamak. Son zamanlarda EVM uyumluluğunda önemli ilerlemeler kaydedildi ve geliştiricilerin sorunsuz bir şekilde geçiş yapması bekleniyor.
ZK-SNARKs gerçekleştirme prensibi
ZK-SNARK(Sıfır Bilgi Kısa Etkileşimsiz Bilgi Argümanı)bir sıfır bilgi kanıtı sistemidir ve aşağıdaki özelliklere sahiptir:
zk-SNARKs: Kanıt süreci ek bilgi sızdırmaz.
Basit: Doğrulama hacmi küçük
Etkileşimli değil: Birden fazla etkileşime gerek yok
Güvenilirlik: Sınırlı hesaplama gücüne sahip bir kanıtlayıcı kanıtı sahteleyemez.
Bilgilendirme: Kanıtlayıcının kanıt oluşturmak için geçerli bilgilere sahip olması gerekir.
Groth16'nın ZK-SNARK kanıtlama süreci şunları içerir:
Sorunu devreye dönüştür
Devreyi R1CS biçimine dönüştür
R1CS'in QAP biçimine dönüştürülmesi
Güvenilir bir kurulum oluşturun, proving key ve verifying key oluşturun
ZK-SNARKs kanıtlarını oluşturma ve doğrulama
zk-SNARKs teknolojisi hızla gelişmeye devam ediyor, gelecekte gizlilik koruma, ölçeklenebilirlik gibi alanlarda daha büyük bir rol oynaması bekleniyor.
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.
zk-SNARKs teknolojisinin gelişimi ve uygulamaları: Gizlilik korumadan Layer2 ölçeklendirmeye
zk-SNARKs'ın Gelişimi ve Uygulamaları
zk-SNARKs'in Tarihi
Sıfır Bilgi Kanıtı sistemi, ilk olarak 1985 yılında Goldwasser, Micali ve Rackoff'un araştırma sonuçlarından kaynaklanmıştır. Onlar, etkileşimli sistemlerde, bir ifadenin doğruluğunu kanıtlamak için gereken bilgi miktarını çoklu etkileşimlerle tartışmışlardır. Eğer herhangi bir bilgi alışverişi olmadan kanıt tamamlanabiliyorsa, buna sıfır bilgi kanıtı denir.
Erken dönem sıfır bilgi kanıtı sistemleri verimlilik ve pratiklik açısından yetersizlikler göstermekteydi, esasen teorik düzeyde kalıyordu. Son 10 yılda, kriptografinin kripto para alanındaki yükselişi ile birlikte, sıfır bilgi kanıtları hızla gelişmeye başladı ve önemli bir araştırma yönü haline geldi. Bu bağlamda, genel, etkileşimsiz, sınırlı ölçekli sıfır bilgi kanıtı protokollerinin geliştirilmesi, önemli araştırma yönlerinden biri olarak öne çıkmaktadır.
Sıfır bilgi kanıtlarının önemli bir atılımı, Groth'un 2010 yılında önerdiği kısa eşleme etkileşimsiz sıfır bilgi kanıtıdır. Bu, zk-SNARK'ların teorik temelini oluşturmuştur. 2015'te, Zcash sıfır bilgi kanıtı sistemini kullanarak işlem gizliliğini sağlamış ve sıfır bilgi kanıtlarının geniş çapta kullanılmaya başlandığını göstermiştir.
Diğer bazı önemli akademik bulgular şunlardır:
Ayrıca, PLONK, Halo2 gibi önemli gelişmeler de bulunmaktadır ve zk-SNARK'larda iyileştirmeler yapılmıştır.
zk-SNARKs'in Uygulamaları
zk-SNARKs'in en yaygın iki uygulaması gizlilik koruma ve ölçeklendirmedir.
Gizlilik Koruma
Erken dönem gizlilik ticareti projeleri olan Zcash ve Monero piyasaya sürüldükten sonra önemli bir yön haline geldi. Ancak gizlilik ticaretine olan ihtiyaç beklenen seviyeye ulaşmadığı için bu tür projeler giderek ikinci ve üçüncü ligdeki projelere kaydı.
Zcash, zk-SNARKs teknolojisini kullanır. İşlem adımları şunlardır: sistem ayarı, kamu-özel anahtar üretimi, madencilik, kanıt üretimi, doğrulama ve alım. Ancak Zcash, UTXO modeline dayanmaktadır ve yalnızca bazı işlem bilgilerini gizlemektedir, tamamen görünmez hale getirmemektedir. Gizli işlem kullanım oranı %10'dan azdır.
Tornado Cash, Ethereum ağına dayalı olarak tek bir büyük karışık havuz tasarımı kullanır ve zk-SNARKs teknolojisini kullanır. Yalnızca yatırılan paraların çekilebileceğini garanti eder, her para yalnızca bir kez çekilebilir ve kanıt süreci iptal bildirimine bağlanmaktadır.
genişletme
ZK genişlemesi, birinci katman ağında ( gibi Mina ) veya ikinci katman ağında ( yani zk-rollup ) üzerinde gerçekleştirilebilir. zk-rollup, Sequencer ve Aggregator olmak üzere iki tür rol içerir. Sequencer, işlemleri paketlemekten sorumludur, Aggregator ise çok sayıda işlemi birleştirerek zk-SNARKs oluşturur ve Ethereum durum ağacını günceller.
zk-rollup'un avantajları düşük maliyet ve hızlı nihai sonuç elde etmektir, dezavantajları ise yüksek hesaplama yükü ve potansiyel güvenlik sorunlarıdır.
Şu anda ana zk-rollup projeleri arasında StarkNet, zkSync, Aztec Connect, Polygon Hermez/Miden, Loopring, Scroll gibi projeler bulunmaktadır. Bu projelerin SNARK/STARK seçimi ve EVM uyumluluğu açısından farklılıkları vardır.
EVM uyumluluğu her zaman bir sorun olmuştur. Bazı projeler kendi sanal makinelerini ve dillerini geliştirmeyi seçti, ancak bu geliştiricilerin öğrenme maliyetlerini artırdı. Şu anda sektörde iki ana çözüm var: tamamen Solidity opcode uyumluluğu veya yeni ZK dostu bir sanal makine tasarlayıp Solidity ile uyumluluğu sağlamak. Son zamanlarda EVM uyumluluğunda önemli ilerlemeler kaydedildi ve geliştiricilerin sorunsuz bir şekilde geçiş yapması bekleniyor.
ZK-SNARKs gerçekleştirme prensibi
ZK-SNARK(Sıfır Bilgi Kısa Etkileşimsiz Bilgi Argümanı)bir sıfır bilgi kanıtı sistemidir ve aşağıdaki özelliklere sahiptir:
Groth16'nın ZK-SNARK kanıtlama süreci şunları içerir:
zk-SNARKs teknolojisi hızla gelişmeye devam ediyor, gelecekte gizlilik koruma, ölçeklenebilirlik gibi alanlarda daha büyük bir rol oynaması bekleniyor.