Son yıllarda, STARKs protokol tasarım trendi daha küçük alanlar kullanmaya yönelmiştir. En erken STARKs uygulamaları 256 bit alan kullanıyordu, ancak bu tasarımın verimliliği düşüktü. Bu sorunu çözmek için, STARKs Goldilocks, Mersenne31 ve BabyBear gibi daha küçük alanlar kullanmaya başladı.
Bu dönüşüm, kanıtlama hızını önemli ölçüde artırdı. Örneğin, Starkware M3 dizüstü bilgisayarında saniyede 620.000 Poseidon2 hash'ini kanıtlayabiliyor. Bu, Poseidon2'yi hash fonksiyonu olarak güvenilir bulduğunuzda, verimli ZK-EVM sorununu çözebileceğiniz anlamına geliyor.
Bu makale bu teknolojilerin çalışma prensiplerini, özellikle Circle STARKs çözümüne odaklanarak inceleyecektir. Circle STARKs, Mersenne31 alanı ile uyumlu benzersiz özelliklere sahiptir.
Küçük Alanların Kullanımı ile İlgili Sıkça Sorulan Sorular
Hash tabanlı kanıt oluştururken, önemli bir teknik, çok terimli polinomun rastgele noktalar üzerindeki değerlendirmeleri aracılığıyla polinom özelliklerini dolaylı olarak doğrulamaktır. Bu, kanıt sürecini büyük ölçüde basitleştirir.
Saldırıları önlemek için, saldırganın polinomunu sağladıktan sonra rastgele noktalar seçmemiz gerekiyor. Daha küçük alanlardaki STARKs'ta, seçilebilecek rastgele noktaların sayısı yaklaşık 2 milyar ile sınırlıdır ve bu, kararlı bir saldırgan için güvenli değildir.
İki çözüm var:
Birçok rastgele kontrol gerçekleştirin
Genişletilmiş Alan
Birden fazla kontrol basit ve etkilidir, ancak verimlilik sorunları vardır. Genişletilmiş alanlar, sınırlı alanlara dayalı olarak çoğullara benzer. Bu, daha büyük alanlarda işlem yapmamıza ve güvenliği artırmamıza olanak tanır.
Düzenli CUMA
FRI protokolü, çok terimli polinom derecesinin d olduğunu kanıtlamak için sorunu, derecesi d/2 olan bir sorunun kanıtına indirgeyerek doğrulama yapar. Bu süreç, her seferinde sorunu yarıya indirgemek için birkaç kez tekrarlanabilir.
FRI, veri kümesi boyutunu yarıya indirmek için ikiye bir eşleme kullanır. Bu eşleme tekrarlanabilir, böylece veri kümesi boyutunu sürekli olarak azaltmamıza olanak tanır.
Circle FRI
Circle STARKs'ın inceliği, bir asal p verildiğinde, benzer ikiye bir özelliğe sahip p büyüklüğünde bir grup bulunabilmesidir. Bu grup, belirli koşulları karşılayan noktaları içerir.
İkinci turdan itibaren, haritalama değişiyor:
f_0(2x^2-1) = (F(x) + F(-x))/2
Bu eşleme her seferinde küme boyutunu yarıya indirir. Her x, iki noktayı temsil eder: (x,y) ve (x,-y). (x→2x^2-1), nokta çarpan kuralıdır.
Daire FFT'leri
Circle grubu ayrıca FFT'yi destekler, yapı şekli FRI'ye benzerdir. Ancak Circle FFT'nin işlediği nesneler katı çok terimli değildir, bunun yerine Riemann-Roch uzayıdır.
Geliştirici olarak, bu noktayı neredeyse gözardı edebilirsiniz. STARK'lar, polinomları değerlendirme değerleri olarak depolamanızı sadece gerektirir. FFT'nin gerekli olduğu tek yer, düşük dereceli genişletme yapmaktır.
Bölme
circle group'un STARK'ında, tek bir noktanın lineer fonksiyonu olmadığı için geleneksel çarpma işlemini ikame etmek için farklı teknikler kullanmak gerekmektedir. Genellikle ispatlamak için iki noktada değerlendirme yapmak gerekir.
Kaybolan polinomlar
Dairesel STARK'ta, kaybolan polinom şudur:
Z_1(x,y) = y
Z_2(x,y) = x
Z_{n+1}(x,y) = (2 * Z_n(x,y)^2) - 1
Ters bit sırası
Circle STARKs, özel katlama yapısını yansıtmak için ters sıralamanın ayarlanması gerekir. Son bit hariç her bit ters çevrilmelidir, son bit diğer bitlerin ters çevrilip çevrilmeyeceğini belirlemek için kullanılır.
Verimlilik
Circle STARKs çok verimlidir. Hesaplamalar genellikle şunları içerir:
İş mantığı için yerel aritmetik
Şifreleme için yerel aritmetik
Parametreleri Bul
Anahtar, hesaplama izleme alanını tam olarak kullanmaktır. 2^31 boyutundaki alan, israf alanını azaltır.
Sonuç
Circle STARKs, geliştiriciler için geleneksel STARKs'tan daha karmaşık değildir. Arkasındaki matematik karmaşık olsa da, geliştiriciler için esasen gizlidir.
Circle FRI ve FFT'leri anlamak, diğer özel FFT'leri anlamanın bir yolu olarak kullanılabilir.
Mersenne31, BabyBear ve ikili alan teknolojilerini birleştirerek, STARKs temel katmanının verimlilik sınırına yaklaşıyoruz. Gelecekteki optimizasyon yönleri şunları içerebilir:
Hash fonksiyonları gibi unsurların verimliliğini maksimize eden aritmetik
Daha fazla paralelleştirme sağlamak için yinelemeli yapılandırma yapın
Geliştirici deneyimini iyileştirmek için aritmetik sanal makine
View Original
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.
20 Likes
Reward
20
6
Repost
Share
Comment
0/400
MeltdownSurvivalist
· 07-20 16:08
Teknoloji meraklıları yine yeni bir şeyler yapıyor.
View OriginalReply0
ApeWithNoChain
· 07-20 13:55
Haklısın, alkışlamak lazım.
View OriginalReply0
NFTArchaeologis
· 07-18 11:38
zk-SNARKs'ın dijital dokusunun güzelliği
View OriginalReply0
PriceOracleFairy
· 07-17 21:48
nihayet zk teknolojisi hakkında gerçek bir alpha
View OriginalReply0
CryptoAdventurer
· 07-17 21:40
Yine yeni bir numara öğrendim ama enayiler hala enayiler.
Circle STARKs: Küçük alanların sağladığı verimli zk-SNARKs yeni çözümü
Circle STARKs'i Keşfedin
Son yıllarda, STARKs protokol tasarım trendi daha küçük alanlar kullanmaya yönelmiştir. En erken STARKs uygulamaları 256 bit alan kullanıyordu, ancak bu tasarımın verimliliği düşüktü. Bu sorunu çözmek için, STARKs Goldilocks, Mersenne31 ve BabyBear gibi daha küçük alanlar kullanmaya başladı.
Bu dönüşüm, kanıtlama hızını önemli ölçüde artırdı. Örneğin, Starkware M3 dizüstü bilgisayarında saniyede 620.000 Poseidon2 hash'ini kanıtlayabiliyor. Bu, Poseidon2'yi hash fonksiyonu olarak güvenilir bulduğunuzda, verimli ZK-EVM sorununu çözebileceğiniz anlamına geliyor.
Bu makale bu teknolojilerin çalışma prensiplerini, özellikle Circle STARKs çözümüne odaklanarak inceleyecektir. Circle STARKs, Mersenne31 alanı ile uyumlu benzersiz özelliklere sahiptir.
Küçük Alanların Kullanımı ile İlgili Sıkça Sorulan Sorular
Hash tabanlı kanıt oluştururken, önemli bir teknik, çok terimli polinomun rastgele noktalar üzerindeki değerlendirmeleri aracılığıyla polinom özelliklerini dolaylı olarak doğrulamaktır. Bu, kanıt sürecini büyük ölçüde basitleştirir.
Saldırıları önlemek için, saldırganın polinomunu sağladıktan sonra rastgele noktalar seçmemiz gerekiyor. Daha küçük alanlardaki STARKs'ta, seçilebilecek rastgele noktaların sayısı yaklaşık 2 milyar ile sınırlıdır ve bu, kararlı bir saldırgan için güvenli değildir.
İki çözüm var:
Birden fazla kontrol basit ve etkilidir, ancak verimlilik sorunları vardır. Genişletilmiş alanlar, sınırlı alanlara dayalı olarak çoğullara benzer. Bu, daha büyük alanlarda işlem yapmamıza ve güvenliği artırmamıza olanak tanır.
Düzenli CUMA
FRI protokolü, çok terimli polinom derecesinin d olduğunu kanıtlamak için sorunu, derecesi d/2 olan bir sorunun kanıtına indirgeyerek doğrulama yapar. Bu süreç, her seferinde sorunu yarıya indirgemek için birkaç kez tekrarlanabilir.
FRI, veri kümesi boyutunu yarıya indirmek için ikiye bir eşleme kullanır. Bu eşleme tekrarlanabilir, böylece veri kümesi boyutunu sürekli olarak azaltmamıza olanak tanır.
Circle FRI
Circle STARKs'ın inceliği, bir asal p verildiğinde, benzer ikiye bir özelliğe sahip p büyüklüğünde bir grup bulunabilmesidir. Bu grup, belirli koşulları karşılayan noktaları içerir.
İkinci turdan itibaren, haritalama değişiyor:
f_0(2x^2-1) = (F(x) + F(-x))/2
Bu eşleme her seferinde küme boyutunu yarıya indirir. Her x, iki noktayı temsil eder: (x,y) ve (x,-y). (x→2x^2-1), nokta çarpan kuralıdır.
Daire FFT'leri
Circle grubu ayrıca FFT'yi destekler, yapı şekli FRI'ye benzerdir. Ancak Circle FFT'nin işlediği nesneler katı çok terimli değildir, bunun yerine Riemann-Roch uzayıdır.
Geliştirici olarak, bu noktayı neredeyse gözardı edebilirsiniz. STARK'lar, polinomları değerlendirme değerleri olarak depolamanızı sadece gerektirir. FFT'nin gerekli olduğu tek yer, düşük dereceli genişletme yapmaktır.
Bölme
circle group'un STARK'ında, tek bir noktanın lineer fonksiyonu olmadığı için geleneksel çarpma işlemini ikame etmek için farklı teknikler kullanmak gerekmektedir. Genellikle ispatlamak için iki noktada değerlendirme yapmak gerekir.
Kaybolan polinomlar
Dairesel STARK'ta, kaybolan polinom şudur:
Z_1(x,y) = y Z_2(x,y) = x
Z_{n+1}(x,y) = (2 * Z_n(x,y)^2) - 1
Ters bit sırası
Circle STARKs, özel katlama yapısını yansıtmak için ters sıralamanın ayarlanması gerekir. Son bit hariç her bit ters çevrilmelidir, son bit diğer bitlerin ters çevrilip çevrilmeyeceğini belirlemek için kullanılır.
Verimlilik
Circle STARKs çok verimlidir. Hesaplamalar genellikle şunları içerir:
Anahtar, hesaplama izleme alanını tam olarak kullanmaktır. 2^31 boyutundaki alan, israf alanını azaltır.
Sonuç
Circle STARKs, geliştiriciler için geleneksel STARKs'tan daha karmaşık değildir. Arkasındaki matematik karmaşık olsa da, geliştiriciler için esasen gizlidir.
Circle FRI ve FFT'leri anlamak, diğer özel FFT'leri anlamanın bir yolu olarak kullanılabilir.
Mersenne31, BabyBear ve ikili alan teknolojilerini birleştirerek, STARKs temel katmanının verimlilik sınırına yaklaşıyoruz. Gelecekteki optimizasyon yönleri şunları içerebilir: