Zero-Knowledge Proof (ZKP) Nedir?
Kripto para piyasasında son yıllarda en çok konuşulan teknolojilerden biri de Zero-Knowledge Proof (ZKP), yani Sıfır Bilgi Kanıtı oldu. Ethereum ölçeklendirme çözümlerinden dijital kimlik sistemlerine kadar birçok projede kullanılan bu teknoloji, bir bilginin doğru olduğunu bilginin kendisini paylaşmadan kanıtlamaya olanak tanıyor.
Zero-Knowledge Proof Nedir?
Zero-Knowledge Proof, bir kişinin elindeki bilginin doğru olduğunu karşı tarafa gösterebilmesini, ancak bu bilgiyi açıklamak zorunda kalmamasını sağlayan kriptografik bir yöntemdir.
Örneğin bir internet sitesine giriş yapmak istediğini düşünün. Normalde sisteme şifrenizi gönderirsiniz. ZKP teknolojisinde ise sisteme şifreyi göndermek yerine, şifreyi bildiğinizi matematiksel olarak kanıtlarsınız. Böylece karşı taraf şifrenizi hiç öğrenmeden giriş izni verebilir.
Bu teknoloji sayesinde hem gizlilik korunur hem de güvenli doğrulama yapılabilir.
Zero-Knowledge Proof Nasıl Çalışır?
ZKP sisteminde iki taraf bulunur:
- İspatlayan (Prover): Bilginin sahibi
- Doğrulayan (Verifier): Bu bilginin doğru olup olmadığını kontrol eden taraf.
İspatlayan taraf, elindeki bilginin doğru olduğunu özel matematiksel hesaplamalarla kanıtlar. Doğrulayan taraf ise bu kanıtı kontrol eder ancak bilginin kendisini göremez. Örneğin:
- 18 yaşından büyük olduğunuzu doğum tarihinizi paylaşmadan,
- Bir cüzdanın size ait olduğunu özel anahtarınızı göstermeden,
- Bir işlemin geçerli olduğunu işlem ayrıntılarını açıklamadan
kanıtlayabilirsiniz.
Blockchain İçin Neden Bu Kadar Önemli?
Blockchain ağlarında yapılan işlemler normalde herkes tarafından görüntülenebilir. Bu durum şeffaflık sağlarken gizlilik açısından bazı sorunlar oluşturabilir.
Zero-Knowledge Proof ise iki önemli avantaj sunuyor:
1. Daha Fazla Gizlilik
ZKP sayesinde işlemin geçerli olduğu doğrulanırken gönderen adresi, alıcı adresi veya işlem tutarı gibi bilgiler gizli tutulabiliyor. Bu teknoloji ilk kez geniş ölçekte Zcash tarafından kullanıldı. Ağdaki özel işlemlerde gönderici, alıcı ve gönderilen miktar gizlenirken sistem yine de işlemin geçerli olduğunu doğrulayabiliyor.
Günümüzde dijital kimlik doğrulama sistemlerinde de benzer yöntemler kullanılmaya başlandı. Örneğin bir kişi:
- 18 yaşından büyük olduğunu,
- Belirli bir ülkenin vatandaşı olduğunu
- Belirli bir belgeye sahip olduğunu
kişisel bilgilerini paylaşmadan kanıtlayabiliyor.
2. Blockchain’i Daha Hızlı Hale Getiriyor
Zero-Knowledge Proof yalnızca gizlilik sağlamıyor, aynı zamanda blockchain ağlarının daha hızlı ve ucuz çalışmasına da yardımcı oluyor.
Bunun en yaygın örneği ZK Rollup teknolojisi.
Normalde Ethereum ağında yapılan her işlem tek tek doğrulanıyor. Bu durum yoğunluk oluştuğunda işlem ücretlerinin yükselmesine neden oluyor. ZK Rollup sisteminde ise binlerce işlem önce ana ağ dışında işleniyor. Daha sonra bu işlemlerin tamamı için tek bir Zero-Knowledge Proof oluşturuluyor ve yalnızca bu kanıt Ethereum ağına gönderiliyor. Bu sayede:
- Binlerce işlem tek seferde doğrulanabiliyor.
- Ağ üzerindeki yük azalıyor.
- İşlem ücretleri önemli ölçüde düşüyor.
- İşlemler daha kısa sürede tamamlanıyor.
Günümüzde zkSync Era, Scroll, Polygon zkEVM, Linea ve Taiko gibi birçok Ethereum katman-2 çözümü bu teknolojiyi kullanıyor.
ZKP Türleri Nelerdir?
Blockchain projelerinde yaygın olarak kullanılan iki Zero-Knowledge Proof sistemi bulunuyor:
zk-SNARK
zk-SNARK sistemi oldukça küçük boyutlu kanıtlar üretiyor. Bu sayede doğrulama işlemleri çok hızlı gerçekleşiyor. Ancak bu sistemin çalışabilmesi için başlangıçta Trusted Setup (Güvenilir Kurulum) adı verilen özel bir kurulum sürecinin tamamlanması gerekiyor.
Bu kurulum güvenli şekilde yapılmazsa teorik olarak sistemin güvenliği riske girebiliyor. Günümüzde bu risk, çok sayıda kişinin katıldığı kurulum törenleriyle azaltılabiliyor.
zk-STARK
zk-STARK ise güvenilir kurumlar gerektirmiyor.
Bu nedenle birçok geliştirici tarafından daha güvenilir bir yaklaşım olarak değerlendiriliyor. Ayrıca gelecekte kuantum bilgisayarlara karşı daha dayanıklı olabileceği düşünülüyor.
Bunun karşılığında oluşturduğu kanıtlar zk-SNARK’a göre daha büyük oluyor ve daha fazla depolama alanı gerektiriyor.
Zero-Knowledge Proof Tüm Sorunları Çözüyor mu?
Hayır.
Bu teknoloji oldukça güçlü olsa da tek başına blockchain’deki tüm sorunları ortadan kaldırmıyor. Örneğin ZKP yalnızca yapılan hesaplamanın doğruluğunu kanıtlıyor. Ancak:
- Sistemde yazılım hatası varsa,
- Akıllı sözleşmelerde güvenlik açığı bulunuyorsa,
- Yanlış veriler sisteme girilmişse,
bunlar engellenemiyor.
Ayrıca Zero-Knowledge Proof oluşturmak oldukça yüksek işlem gücü gerektiriyor. Büyük blockchain projelerinde bu kanıtların oluşturulabilmesi için güçlü sunucular ve yüksek donanım kapasitesi kullanılabiliyor.
ZKP Kullanan Projeler
Günümüzde birçok blockchain projesi Zero-Knowledge Proof teknolojisinden yararlanıyor. Başlıca projeler şu şekilde:
- zkSync Era
- Scroll
- Polygon zkEVM
- Linea
- Taiko
- Zcash
- Polygon ID
- Worldcoin
Bu projeler, ZKP’yi ölçeklenebilirlik, gizlilik veya dijital kimlik doğrulama gibi farklı amaçlarla kullanıyor.
ZKP Kullanan Projeler Değerlendirilirken Nelere Dikkat Edilmeli?
Bir blockchain projesi, Zero-Knowledge Proof kullandığını söylüyorsa şu noktalara dikkat etmek faydalı olabilir:
- Akıllı sözleşmeleri ve ZKP sistemi bağımsız güvenlik şirketleri tarafından denetlenmiş mi?
- Trusted Setup kullanıyorsa bu süreç şeffaf şekilde yürütülmüş mü?
- Kanıtların doğrulanmasını zincir üzerinde gerçekleştirebiliyor mu?
- İşlem verileri kullanıcılar tarafından doğrulanabiliyor mu?
Bu sorular, teknolojinin gerçekten güvenli şekilde uygulanıp uygulanmadığını anlamaya yardımcı olabilir.
