Blockchain Gizliliğini Artırma: Güvenli İşlemlerde Sıfır Bilgi Kanıtlarının Rolü yazısı ilk olarak Coinpedia Fintech Haberleri’nde çıktı
giriiş
Verilerin yeni petrol olduğu bir bilgi dünyasında yaşıyoruz. Dolayısıyla verilerle her şey ve her şey mümkündür. Bu veri odaklı gerçeklik, özellikle özel ve hassas bilgilerin korunmasını sağlama konusunda önemli sorumluluklar getiriyor. Blockchain teknolojisi, gizlilikten ziyade şeffaflığa öncelik veren güçlü bir araçtır. Şeffaflık, merkezi olmayan bir sistemde güven için gerekli olsa da, özellikle gizli işlemler veya kişisel bilgiler içeren uygulamalarda her zaman arzu edilmeyebilecek hassas ayrıntıları açığa çıkarabilir.
Bu sınırlamaların üstesinden gelmek için geliştiriciler, aşağıdakiler gibi bir dizi gizliliği artıran teknolojiler sunmuştur: Sıfır Bilgi Kanıtları (ZKP), zk-SNARK’lar, gibi gizlilik paraları Monero ve Zcashve gelişmiş şifreleme teknikleri gibi homomorfik şifreleme (HE).
Bu teknolojiler arasında bir denge sağlar. şeffaflık Ve kullanıcı gizliliği.
Bu makalede, gizliliği artıran bu araçların nasıl çalıştığını ve bunların blockchain geliştirmedeki uygulamalarını inceleyeceğiz.
Öyleyse başlayalım!
Blockchain’in Teknoloji Alanındaki en güvenli ve en şeffaf seçenek olduğunu düşünüyor olmalısınız değil mi? Ama hâlâ bazı kusurları var. Mesela Bitcoin’i ele alalım, şeffaf bir para birimidir (Public Blockchain). Adreslerinizin takma ad olduğu yer. Ama bir sorun var! Madenciler, blok zincirindeki verilere resmi olarak zincire eklenmeden önce hâlâ erişme gücüne sahip olabilir. Korkunç değil mi?
Bu nedenle tüm bu tür durumlardan kaçınmak için gizliliği artıran seçenekleri tercih ediyoruz ve bunlardan biri de ZPks’tir. Haydi şuna bir göz atalım!
Sıfır Bilgi Kanıtları ve zk-SNARK’lar
Sıfır Bilgi kanıtları nelerdir?
Sıfır bilgi kanıtı bir kriptografi protokolü bir kanıtlayıcı ve bir doğrulayıcının olduğu yer. Burada Kanıtlayıcının, yalnızca ifadenin doğru olduğu gerçeğinin ötesinde başka herhangi bir gerçek veya bilgiyi açıklamadan, bazı ifadelerin doğru olduğuna doğrulayıcıyı ikna etmesi gerekir.
Gerçek hayattan bir örnek alarak bunu daha sezgisel olarak anlayalım:
Diyelim ki renk körü bir arkadaşınız Carl var ve iki topunuz var (biri kırmızı, diğeri yeşil) ve onun hangi topun hangisi olduğunu açıklamadan ikisini de ayırt etmesine ihtiyacınız var.
Yani burada siz kanıtlayıcısınız ve Carl da doğrulayıcıdır. Şimdi Carl’dan her iki topu da arkaya koymasını istiyorsunuz ve o da rastgele bir top seçebiliyor ve size basit bir soru sorabiliyor: Topları değiştirdim mi? Bu prosedür daha sonra tekrarlanarak yapılabilir ve %50 olasılıkla Carl’ın topların gerçekten farklı renkte olduğuna ikna olması (“tamlık”) gerekir.
Yani adından da anlaşılacağı gibi ifadenizin doğruluğunu kanıtlamış oluyorsunuz ve arkadaşınız hangi topun yeşil hangisinin kırmızı olduğunu asla öğrenemiyor; aslında topları nasıl ayırt edeceğine dair hiçbir bilgi sahibi değildir. Yani bu bilgi daha sonra üçüncü tarafa da aktarılabilir.
Kod Örneği:
# Basit ZKP simülasyonu hashlib’den sha256’yı içe aktar # Varsayalım ki ispatlayıcı ‘gizli’ şifreyi biliyor # Prover ‘gizli_şifre’yi açıklamadan bilgiyi kanıtlamak istiyor # Doğrulayıcı, karmaları eşleştirerek kanıtlayıcının bilgisini doğrular |
zk-SNARK’lar: Sıfır Bilgili Kısa ve Etkileşimli Olmayan Bilgi Argümanları
zk-SNARK’lar anlamına gelir Sıfır Bilgi Kısa ve Etkileşimli Olmayan Bilgi Argümanları. Bu, kanıtlayıcının doğrulayıcıyla etkileşime girmeden gerçeği veya mülkiyetini kanıtlaması gereken bir kanıt yapısıdır. Bu sadece ZKPs.zk-SNARK’ın daha spesifik bir versiyonudur, örneğin gerçek zamanlı iletişim olmadan çevrimiçi işlemler gibi iki taraf arasında iletişim imkanının olmadığı durumlarda daha kullanışlıdır.
Bu kavramın anlaşılması biraz zor, kısacası karşınızdaki kişiye sırrını bildiğinizi söylemeden, sırrın ne olduğunu söylemeden, ispatlayarak söylüyorsunuz diyebiliriz.
Biliyor musun? zk-SNARK’ların, korumalı işlemleriyle bilinen bir gizlilik parası olan Zcash’te uygulandığını mı düşünüyorsunuz?
Alıştırma: libsnark ile zk-SNARK oluşturun
Basit bir zk-SNARK kurmak ve doğrulamak için libsnark’ı kullanın veya zk-SNARK geçirmez yapıya ilişkin örnek projeler için kütüphanenin belgelerine bakın.
Şimdi Soru şu: Bu Etkileşimsiz ZKP nasıl çalışıyor?
- Kurulum: zk-SNARK’lar, kanıt oluşturmak için kullanılan kriptografik anahtarlar için tek seferlik kurulum gerektirir.
- Kanıt Oluşturma: Kanıtlayıcı, kamuya açık olarak doğrulanabilecek kısa ve öz bir kanıt oluşturmak için özel bilgileri kullanır.
- Doğrulama: Doğrulayıcılar, kanıtlayıcının ayrıntıları bilmeden belirli bir bilgiye sahip olduğunu doğrulayabilir.
Gizlilik Paraları
Gizlilik paraları, gizliliğe öncelik vermek ve kullanıcının kimliğini gizlemek için özel olarak tasarlanmış kripto para birimleridir.
Monero
Monero(XMR) gelişmiş gizliliğe sahip bir kripto para birimidir. Bir kullanır özel blok zinciri Bu işlem ayrıntılarını gizleyerek yabancıların Monero’yu kimin gönderdiğini veya aldığını, ne kadar gönderildiğini veya hesap bakiyelerini görmesini neredeyse imkansız hale getiriyor. Bu, anonimliği korur ve Monero’nun tüm birimlerinin takas edilebilir olmasını sağlar.
Değiştirilebilir (değiştirilebilir): izlenebilir bir geçmişe sahip olmayan bir Monero’nun her zaman diğerine eşit olduğu anlamına gelir.
Monero özel işlemleri nasıl sağlıyor?
Monero, özel işlemleri sağlamak için aşağıdaki gibi benzersiz teknikler uygulamaktadır. Şimdi bu tekniklere bir göz atalım:
Halka İmzaları: Gerçek kaynağı gizlemek için bir kullanıcının işlem imzasını diğer imzalarla birleştirir.
Kod örneği:
rastgele içe aktar # Katılımcılar için ortak anahtarların listesi katılımcılar = [“Alice”, “Bob”, “Charlie”, “Dave”] # “Gönderen” olarak rastgele bir katılımcı seçin # Gönderenin imzasını başkalarıyla karıştırma print(“Zil İmza Grubu:”, karışık_imzalar) |
Gizli Adresler: Her işlem için benzersiz, tek kullanımlık adresler oluşturarak yalnızca gönderenin ve alıcının hedefi bilmesini sağlar.
Halka Gizli İşlemler (RingCT): Üçüncü tarafların işlemleri bağlamasını önlemek için işlem tutarını gizler.
.article-inside-link { kenar boşluğu-sol: 0 !önemli; kenarlık: 1 piksel düz #0052CC4D; kenarlık-sol: 0; sağ kenarlık: 0; dolgu: 10px 0; metin hizalama: sol; } .entry ul.article-inside-link li { yazı tipi boyutu: 14px; satır yüksekliği: 21 piksel; yazı tipi ağırlığı: 600; liste stili türü: yok; kenar boşluğu alt: 0; ekran: satır içi blok; } .entry ul.article-inside-link li:son-çocuk { display: none; }
- Ayrıca Okuyun:
- Basitleştirilmiş Blockchain Ölçeklendirmesi: Verimli Katman 1 ve Katman 2 Çözümleri Kılavuzu
- ,
Zcash
Zcash(ZEC) üzerine inşa edilmiş bir gizlilik parasıdır. Bitcoin’in kod tabanı. Düzenli ve şeffaf işlemler gibi Bitcoin ile birçok benzerliği paylaşıyor ancak aynı zamanda korumalı işlemler için de bir seçenek sunuyor.
Korumalı işlem: Zcash’te korumalı işlemler kullanan özel işlemlerdir. kriptografik yöntem adı verildi zk-SNARK’lar (Sıfır Bilgi Kısa ve Etkileşimli Olmayan Bilgi Argümanları) işlem ayrıntılarını tamamen gizli tutmak.
Dolayısıyla Zcash hem şeffaf hem de korumalı işlemleri desteklemektedir. T adresleri(Standart gibi çalışan şeffaf adresler Bitcoin) Ve Z adresleri (İşlem ayrıntılarını gizleyen korumalı adresler).
Zcash’in korumalı işlemleri, gizlilik gerektiren senaryolar için mükemmel bir seçimdir. B2B işlemleri Veri gizliliğinin çok önemli olduğu tedarik zinciri yönetiminde.
Kurmak
# Zcash istemcisini kurun sudo apt-get güncelleme && sudo apt-get zcash’i yükle # Korumalı bir adres oluşturun zcash-cli z_getnewaddress # Korumalı adrese gönder zcash-cli z_sendmany |
Homomorfik Şifreleme ve Blockchain’deki Rolü
Homomorfik şifreleme(HE) veriler üzerinde hesaplamalar yapmanızı sağlayan bir şifreleme türüdür şifrelenmiş. Bu, yapmanıza gerek olmadığı anlamına gelir şifresini çözmek onunla çalışacak veriler. Sonunda sonuçların şifresini çözdüğünüzde, sanki hesaplamaları orijinal, şifrelenmemiş veriler üzerinde yapmışsınız gibi olur.
Bu teknik, hassas verilerin ifşa edilmeden harici sunucularda (bulutta olduğu gibi) saklanmasına ve işlenmesine olanak tanıdığından özellikle gizlilik açısından kullanışlıdır.
Homomorfik Şifreleme tekniklerinin iki ana türü vardır:
- Kısmen Homomorfik Şifreleme (PHE): Kısmi HE, veriler üzerinde yalnızca Toplama ve Çarpma gibi belirli işlemlere izin verir.
- Tamamen Homomorfik Şifreleme (FHE): FHE, şifrelenmiş veriler üzerinde rastgele işlemleri destekler. Ancak kaynak yoğundur
Örnek Kod:
mühür içe aktarımından EncryptionParameters, SEALContext, IntegerEncoder # Şifreleme parametrelerini ayarlayın parms = EncryptionParameters(scheme_type.BFV) parms.set_poly_modulus_degree(1024) parms.set_coeff_modulus(coeff_modulus_128(1024)) # Şifreli ekleme örneği |
Çözüm
Sıfır Bilgi Kanıtları (ZKP’ler), zk-SNARK’lar, gizlilik paraları ve homomorfik şifreleme gibi gizliliği artıran teknolojiler, gizlilik ve şeffaflık arasında önemli bir denge oluşturarak blockchain’de neyin mümkün olduğunu yeniden tanımlıyor. Geliştiriciler için bu evrim heyecan verici fırsatlar getiriyor. Geliştiriciler, bu gizlilik özelliklerini merkezi olmayan uygulamalara entegre ederek finans, sağlık hizmetleri ve IoT gibi gizliliğin gerekli olduğu sektörlerin ihtiyaçlarını karşılayabilir.
Öğrenmeye ve Mutlu Kodlamaya Devam Edin!!
Kaynak : CoinPedia