Binius STARKs Prensip Analizi ve Optimizasyon Düşüncesi
1 Giriş
Eliptik eğri tabanlı SNARK'ların aksine, STARK'lar hash tabanlı SNARK'lar olarak düşünülebilir. Şu anda STARK'ların verimsiz olmasının ana nedenlerinden biri şudur: gerçek programlardaki çoğu sayısal değer oldukça küçüktür, örneğin for döngüsündeki indeksler, boolean değerler, sayaçlar vb. Ancak Merkle ağacı tabanlı kanıtların güvenliğini sağlamak için, Reed-Solomon kodlaması kullanılarak verilerin genişletilmesi sırasında birçok ek fazlalık değeri tüm alanı kaplar, bu nedenle orijinal değer kendisi çok küçük olsa bile. Bu sorunu çözmek için alanın boyutunu küçültmek temel bir strateji haline gelmiştir.
nesil STARKs kodlama bit genişliği 252bit, 2. nesil 64bit, 3. nesil 32bit, ancak 32bit kodlama genişliğinde hala büyük miktarda boş alan bulunmaktadır. Buna karşılık, ikili alan bitler üzerinde doğrudan işlem yapmaya izin verir, kodlama kompakt ve verimlidir ve herhangi bir israf alanı içermez, bu da 4. nesil STARKs olarak görülebilir.
Son yıllarda keşfedilen Goldilocks, BabyBear, Mersenne31 gibi sonlu alanlarla karşılaştırıldığında, ikili alan araştırmaları 1980'li yıllara kadar uzanmaktadır. Şu anda ikili alan, kriptografide yaygın olarak kullanılmaktadır, tipik örnekler şunlardır:
Advanced Encryption Standard ( AES ), F28 alanına dayanıyor.
Galois Mesaj Doğrulama Kodu ( GMAC ), F2128 alanına dayanmaktadır.
QR kodu, F28 tabanlı Reed-Solomon kodlaması kullanarak
Orijinal FRI ve zk-STARK protokolleri ile F28 alanına dayanan ve SHA-3 finaline giren Grøstl hash fonksiyonu, yineleme için son derece uygun bir hash algoritmasıdır.
Küçük bir alan kullanıldığında, genişletme işlemi güvenliğin sağlanmasında giderek daha önemli hale gelir. Binius'un kullandığı ikili alan, güvenliğini ve pratik kullanılabilirliğini sağlamak için tamamen genişletmeye dayanmalıdır. Çoğu Prover hesaplamasında yer alan çok terimli ifadelerin genişletmeye girmesine gerek yoktur; yalnızca temel alanda işlem yaparak küçük alanda yüksek verimlilik sağlanır. Ancak, rastgele nokta kontrolü ve FRI hesaplamaları, gerekli güvenliği sağlamak için daha büyük bir genişletme alanına derinlemesine inmek zorundadır.
İkili alanlara dayalı bir kanıt sistemi inşa ederken, iki pratik sorun bulunmaktadır: STARKs'ta izlerin gösterimi hesaplanırken, kullanılan alanın büyüklüğü, polinomun derecesinden büyük olmalıdır; STARKs'ta Merkle ağacı taahhüdü yapılırken, Reed-Solomon kodlaması yapılması gerektiğinden, kullanılan alanın büyüklüğü, kodlama genişletme sonrası boyutundan büyük olmalıdır.
Binius, bu iki sorunu ayrı ayrı ele alan yenilikçi bir çözüm önerdi ve aynı veriyi iki farklı şekilde temsil ederek bunu başardı: İlk olarak, tek değişkenli polinom yerine çok değişkenli ( çoklu lineer ) polinom kullanarak, "hiperküp" ( üzerindeki değerlerini kullanarak tüm hesaplama izini temsil etti; İkincisi, hiperküpün her bir boyutunun uzunluğu 2 olduğundan, STARKs gibi standart Reed-Solomon genişletmesi yapılamaz, ancak hiperküp kare ) olarak görülebilir ve bu kareye dayanarak Reed-Solomon genişletmesi yapılabilir. Bu yöntem, güvenliğin sağlanmasını sağlarken, kodlama verimliliğini ve hesaplama performansını büyük ölçüde artırmıştır.
2 İlkelerin Analizi
Mevcut çoğu SNARKs sisteminin inşası genellikle aşağıdaki iki bölümden oluşur:
Bilgi Teorisi Çok Terimli Etkileşimli Oracle Kanıtı ( Information-Theoretic Polynomial Interactive Oracle Proof, PIOP ): PIOP, kanıt sisteminin özü olarak, girdi hesaplama ilişkisini doğrulanabilir çok terimli eşitliklere dönüştürür. Farklı PIOP protokolleri, doğrulayıcı ile etkileşim yoluyla, kanıtlayıcının aşamalı olarak çok terim göndermesine olanak tanır; böylece doğrulayıcı, hesaplamanın doğru olup olmadığını doğrulamak için yalnızca az sayıda çok terim değerlendirme sonucunu sorgulayarak kontrol edebilir. Mevcut PIOP protokolleri arasında: PLONK PIOP, Spartan PIOP ve HyperPlonk PIOP gibi, bunlar çok terim ifadelerinin işlenme biçiminde farklılık gösterir ve bu da tüm SNARK sisteminin performansını ve verimliliğini etkiler.
Polinom Taahhüt Şeması ( Polynomial Commitment Scheme, PCS ): Polinom taahhüt şeması, PIOP tarafından oluşturulan polinom denkleminin geçerliliğini kanıtlamak için kullanılır. PCS, bir kriptografik araçtır; bu araç sayesinde, kanıtlayıcı belirli bir polinomu taahhüt edebilir ve daha sonra bu polinomun değerlendirme sonuçlarını doğrulayabilirken, polinomun diğer bilgilerini gizleyebilir. Yaygın polinom taahhüt şemaları arasında KZG, Bulletproofs, FRI ( Fast Reed-Solomon IOPP ) ve Brakedown bulunmaktadır. Farklı PCS'ler, farklı performans, güvenlik ve kullanım senaryolarına sahiptir.
Belirli gereksinimlere göre farklı PIOP ve PCS'ler seçilerek uygun bir sonlu alan veya eliptik eğri ile bir araya getirilerek farklı özelliklere sahip bir kanıt sistemi oluşturulabilir. Örneğin:
• Halo2: PLONK PIOP ile Bulletproofs PCS'nin birleşimi ve Pasta eğrisi üzerine kurulmuştur. Halo2 tasarlanırken, ölçeklenebilirliğe önem verilmiş ve ZCash protokolündeki güvenilir kurulumun kaldırılması hedeflenmiştir.
• Plonky2: PLONK PIOP ve FRI PCS'nin birleştirilmesiyle, Goldilocks alanına dayanır. Plonky2, etkili bir rekürsif gerçekleştirmek için tasarlanmıştır. Bu sistemleri tasarlarken, seçilen PIOP ve PCS, kullanılan sonlu alan veya eliptik eğri ile eşleşmelidir; bu, sistemin doğruluğunu, performansını ve güvenliğini sağlamak için önemlidir. Bu kombinasyonların seçimi, SNARK'ın kanıt boyutunu ve doğrulama verimliliğini etkilemenin yanı sıra, sistemin güvenilir bir kurulum olmadan şeffaflık elde edip edemeyeceğini, rekürsif kanıtlar veya toplu kanıtlar gibi genişletme işlevlerini destekleyip destekleyemeyeceğini de belirler.
Binius: HyperPlonk PIOP + Brakedown PCS + ikili alan. Özellikle, Binius, verimliliğini ve güvenliğini sağlamak için beş ana teknoloji içermektedir. İlk olarak, kule ikili alanların (towers of binary fields) aritmetiği, hesaplamalarının temelini oluşturur ve ikili alan içinde basitleştirilmiş işlemleri gerçekleştirme yeteneğine sahiptir. İkincisi, Binius, etkileşimli Oracle kanıt protokolü (PIOP) içerisinde, HyperPlonk çarpım ve yer değiştirme kontrollerini yeniden uyarlamış, değişkenler ve bunların yer değiştirmeleri arasındaki güvenli ve verimli tutarlılık kontrolünü sağlamıştır. Üçüncüsü, protokol, küçük alanlarda çoklu doğrusal ilişkileri doğrulama verimliliğini optimize eden yeni bir çoklu doğrusal kaydırma kanıtı getirmiştir. Dördüncüsü, Binius, arama mekanizmasına esneklik ve güçlü güvenlik sağlaması için geliştirilmiş Lasso arama kanıtını kullanmıştır. Son olarak, protokol, ikili alan üzerinde verimli bir kanıt sistemi gerçekleştirmesini sağlayan ve genellikle büyük alanlarla ilişkili maliyetleri azaltan küçük alan çokgen taahhüt şemasını (Small-Field PCS) kullanmıştır.
( 2.1 Sonlu Alan: binary alanların kulelerine dayalı aritmetik
Kule tipi ikili alan, hızlı doğrulanabilir hesaplamaların gerçekleştirilmesinde anahtar rol oynamaktadır. Bu, esas olarak iki nedene dayanmaktadır: verimli hesaplama ve verimli aritmetik. İkili alan, doğası gereği yüksek verimli aritmetik işlemleri destekler ve bu da onu performansa duyarlı kriptografik uygulamalar için ideal bir seçim haline getirir. Ayrıca, ikili alan yapısı, ikili alanda gerçekleştirilen işlemlerin sıkıştırılmış ve doğrulanabilir cebirsel bir biçimde temsil edilebileceği basitleştirilmiş bir aritmetik süreç destekler. Bu özellikler ve kule yapısının hiyerarşik özelliklerinden tam olarak yararlanma yeteneği, ikili alanı Binius gibi ölçeklenebilir kanıt sistemleri için özellikle uygun hale getirir.
"canonical" terimi, ikili alan içindeki elemanların benzersiz ve doğrudan temsil biçimini ifade eder. Örneğin, en temel ikili alan olan F2'de, herhangi bir k bitlik dize doğrudan k bitlik bir ikili alan elemanına eşlenebilir. Bu, asal alandan farklıdır; asal alan, belirli bit sayısında bu tür standart bir temsil sağlayamaz. 32 bitlik bir asal alan, 32 bit içinde yer alabilir, ancak her 32 bitlik dize benzersiz bir alan elemanına karşılık gelmeyebilir, oysa ikili alan bu birine bir eşleme kolaylığını sunar. Asal alan Fp'de yaygın olarak kullanılan azaltma yöntemleri arasında Barrett azaltması, Montgomery azaltması ve Mersenne-31 veya Goldilocks-64 gibi belirli sonlu alanlar için özel azaltma yöntemleri bulunmaktadır. İkili alan F2k'de yaygın olarak kullanılan azaltma yöntemleri arasında AES'de kullanılan özel azaltma ), POLYVAL'da kullanılan Montgomery azaltması ### ve Tower( gibi yinelemeli azaltma ) bulunmaktadır. "Exploring the Design Space of Prime Field vs. Binary Field ECC-Hardware Implementations" başlıklı makale, ikili alanın toplama ve çarpma işlemlerinde taşma gerektirmediğini ve ikili alanın kare alma işleminin son derece verimli olduğunu, çünkü (X + Y )2 = X2 + Y 2 basitleştirilmiş kuralını takip ettiğini belirtmektedir.
Şekil 1'de gösterildiği gibi, 128 bitlik bir dizi: Bu dizinin ikili alan bağlamında çeşitli şekillerde yorumlanabilir. 128 bitlik ikili alanında benzersiz bir öğe olarak düşünülebilir veya iki 64 bitlik kule alanı öğesi, dört 32 bitlik kule alanı öğesi, on altı 8 bitlik kule alanı öğesi veya 128 adet F2 alanı öğesi olarak çözümlenebilir. Bu gösterimin esnekliği, herhangi bir hesaplama maliyeti gerektirmeden, yalnızca bit dizisinin tür dönüşümüdür (typecast), oldukça ilginç ve yararlı bir özelliktir. Aynı zamanda, küçük alan öğeleri, ek bir hesaplama maliyeti olmadan daha büyük alan öğeleri olarak paketlenebilir. Binius protokolü, hesaplama verimliliğini artırmak için bu özelliği kullanır. Ayrıca, "On Efficient Inversion in Tower Fields of Characteristic Two" adlı makale, n bitlik kule tarzı ikili alanında ('in m bitlik alt alan ) olarak çarpma, kare alma ve ters alma işlemlerinin hesaplama karmaşıklığını incelemektedir.
( 2.2 PIOP: Uyarlanmış HyperPlonk Ürünü ve Permutasyon Kontrolü------ İkili alan için uygundur
Binius protokolündeki PIOP tasarımı HyperPlonk'tan esinlenmiştir ve çok terimli ve çok değişkenli küme doğruluğunu doğrulamak için bir dizi temel kontrol mekanizması kullanmaktadır. Bu temel kontroller şunları içerir:
GateCheck: Gizli tanıklama ω ve kamuya açık girdi x'in C)x,ω(=0 hesaplama ilişkisini karşılayıp karşılamadığını doğrulamak için, devrenin doğru çalıştığından emin olun.
PermutationCheck: İki çok değişkenli çok terimli f ve g'nin Boolean hiperküpü üzerindeki değerlendirme sonuçlarının bir permütasyon ilişkisi olup olmadığını doğrulamak için f)x### = f(π)x() olarak, çok terimli değişkenler arasındaki sıralamanın tutarlılığını sağlamak.
LookupCheck: Polinomun değerinin verilen arama tablosunda doğrulanması, yani f(Bµ( ⊆ T)Bµ), belirli değerlerin belirtilen aralıkta olduğunu garanti eder.
MultisetCheck: İki çok değişkenli kümenin eşit olup olmadığını kontrol eder, yani {(x1,i,x2,)}i∈H={(y1,i,y2,)}i∈H, birden fazla küme arasındaki tutarlılığı garanti eder.
ProductCheck: Mantıksal hiper küp üzerindeki rasyonel çok terimli polinomun, belirli bir beyan edilen değere ∏x∈Hµ f(x) = s eşit olup olmadığını kontrol ederek, polinom çarpımının doğruluğunu sağlamak.
ZeroCheck: Bir çok değişkenli polinomun Boolean hiperküpündeki herhangi bir noktada sıfır olup olmadığını doğrulama ∏x∈Hµ f(x) = 0, ∀x ∈ Bµ, polinomun sıfır noktalarının dağılımını sağlamak için.
SumCheck: Çok değişkenli polinomların toplamının, beyan edilen değerle eşit olup olmadığını kontrol eder ∑x∈Hµ f(x) = s. Çok değişkenli polinomun değerlendirme sorununu tek değişkenli polinom değerlendirmesine dönüştürerek doğrulayıcı tarafın hesaplama karmaşıklığını azaltır. Ayrıca, SumCheck, rastgele sayılar getirerek birden fazla toplam doğrulama örneğini işlemek için lineer kombinasyonlar oluşturarak toplu işlemeyi de mümkün kılar.
BatchCheck: SumCheck'e dayanarak, birden fazla çok değişkenli çok terimli polinomun değerinin doğruluğunu doğrulamak için protokol verimliliğini artırır.
Binius, HyperPlonk ile protokol tasarımında birçok benzerliğe sahip olmasına rağmen, aşağıdaki 3 alanda iyileştirmeler yapmıştır:
ProductCheck optimizasyonu: HyperPlonk'ta, ProductCheck'in paydası U'nun hiperküp üzerinde her yerde sıfır olmaması ve çarpımın belirli bir değere eşit olması gerekmektedir; Binius, bu değeri 1 olarak özel hale getirerek bu kontrol sürecini basitleştirmiş ve hesaplama karmaşıklığını azaltmıştır.
Sıfıra bölme problemi ile başa çıkma: HyperPlonk, sıfıra bölme durumunu yeterince iyi işlememiştir, bu da U'nun hiper küp üzerindeki sıfırdan farklı olup olmadığını kesin olarak söylemeyi imkansız kılmaktadır; Binius, bu durumu doğru bir şekilde ele almış, hatta paydanın sıfır olduğu durumlarda bile Binius'un ProductCheck'i işlemeye devam edebilmiş ve herhangi bir çarpan değerine genişletilmesine izin vermiştir.
Sütunlar Arası Permutasyon Kontrolü: HyperPlonk bu özelliği desteklemiyor; Binius, birden fazla sütun arasında Permutasyon Kontrolü yapmayı destekliyor, bu da Binius'un daha karmaşık çok terimli sıralama durumlarını ele almasını sağlıyor.
Bu nedenle, Binius mevcut PIOPSumCheck mekanizmasını geliştirerek protokolün esnekliğini ve verimliliğini artırdı; özellikle daha karmaşık çok değişkenli çok terimli doğrulama işlemlerinde daha güçlü işlevsellik sağladı. Bu geliştirmeler yalnızca HyperPlonk'taki sınırlamaları çözmekle kalmadı, aynı zamanda gelecekteki ikili alan tabanlı kanıt sistemleri için de bir temel oluşturdu.
( 2.3 PIOP: yeni çoklu kaydırma argümanı------boolean hiperküp için uygun
Binius protokolünde, sanal çok terimli yapıların oluşturulması ve işlenmesi anahtar teknolojilerden biridir ve giriş kollarından veya diğer sanal çok terimlerden türetilen çok terimleri etkin bir şekilde oluşturup işlemesine olanak tanır.
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.
Binius STARKs İlkeleri Analizi: İkili Alan Yenilikleri ve Performans Optimizasyonu
Binius STARKs Prensip Analizi ve Optimizasyon Düşüncesi
1 Giriş
Eliptik eğri tabanlı SNARK'ların aksine, STARK'lar hash tabanlı SNARK'lar olarak düşünülebilir. Şu anda STARK'ların verimsiz olmasının ana nedenlerinden biri şudur: gerçek programlardaki çoğu sayısal değer oldukça küçüktür, örneğin for döngüsündeki indeksler, boolean değerler, sayaçlar vb. Ancak Merkle ağacı tabanlı kanıtların güvenliğini sağlamak için, Reed-Solomon kodlaması kullanılarak verilerin genişletilmesi sırasında birçok ek fazlalık değeri tüm alanı kaplar, bu nedenle orijinal değer kendisi çok küçük olsa bile. Bu sorunu çözmek için alanın boyutunu küçültmek temel bir strateji haline gelmiştir.
Son yıllarda keşfedilen Goldilocks, BabyBear, Mersenne31 gibi sonlu alanlarla karşılaştırıldığında, ikili alan araştırmaları 1980'li yıllara kadar uzanmaktadır. Şu anda ikili alan, kriptografide yaygın olarak kullanılmaktadır, tipik örnekler şunlardır:
Küçük bir alan kullanıldığında, genişletme işlemi güvenliğin sağlanmasında giderek daha önemli hale gelir. Binius'un kullandığı ikili alan, güvenliğini ve pratik kullanılabilirliğini sağlamak için tamamen genişletmeye dayanmalıdır. Çoğu Prover hesaplamasında yer alan çok terimli ifadelerin genişletmeye girmesine gerek yoktur; yalnızca temel alanda işlem yaparak küçük alanda yüksek verimlilik sağlanır. Ancak, rastgele nokta kontrolü ve FRI hesaplamaları, gerekli güvenliği sağlamak için daha büyük bir genişletme alanına derinlemesine inmek zorundadır.
İkili alanlara dayalı bir kanıt sistemi inşa ederken, iki pratik sorun bulunmaktadır: STARKs'ta izlerin gösterimi hesaplanırken, kullanılan alanın büyüklüğü, polinomun derecesinden büyük olmalıdır; STARKs'ta Merkle ağacı taahhüdü yapılırken, Reed-Solomon kodlaması yapılması gerektiğinden, kullanılan alanın büyüklüğü, kodlama genişletme sonrası boyutundan büyük olmalıdır.
Binius, bu iki sorunu ayrı ayrı ele alan yenilikçi bir çözüm önerdi ve aynı veriyi iki farklı şekilde temsil ederek bunu başardı: İlk olarak, tek değişkenli polinom yerine çok değişkenli ( çoklu lineer ) polinom kullanarak, "hiperküp" ( üzerindeki değerlerini kullanarak tüm hesaplama izini temsil etti; İkincisi, hiperküpün her bir boyutunun uzunluğu 2 olduğundan, STARKs gibi standart Reed-Solomon genişletmesi yapılamaz, ancak hiperküp kare ) olarak görülebilir ve bu kareye dayanarak Reed-Solomon genişletmesi yapılabilir. Bu yöntem, güvenliğin sağlanmasını sağlarken, kodlama verimliliğini ve hesaplama performansını büyük ölçüde artırmıştır.
2 İlkelerin Analizi
Mevcut çoğu SNARKs sisteminin inşası genellikle aşağıdaki iki bölümden oluşur:
Bilgi Teorisi Çok Terimli Etkileşimli Oracle Kanıtı ( Information-Theoretic Polynomial Interactive Oracle Proof, PIOP ): PIOP, kanıt sisteminin özü olarak, girdi hesaplama ilişkisini doğrulanabilir çok terimli eşitliklere dönüştürür. Farklı PIOP protokolleri, doğrulayıcı ile etkileşim yoluyla, kanıtlayıcının aşamalı olarak çok terim göndermesine olanak tanır; böylece doğrulayıcı, hesaplamanın doğru olup olmadığını doğrulamak için yalnızca az sayıda çok terim değerlendirme sonucunu sorgulayarak kontrol edebilir. Mevcut PIOP protokolleri arasında: PLONK PIOP, Spartan PIOP ve HyperPlonk PIOP gibi, bunlar çok terim ifadelerinin işlenme biçiminde farklılık gösterir ve bu da tüm SNARK sisteminin performansını ve verimliliğini etkiler.
Polinom Taahhüt Şeması ( Polynomial Commitment Scheme, PCS ): Polinom taahhüt şeması, PIOP tarafından oluşturulan polinom denkleminin geçerliliğini kanıtlamak için kullanılır. PCS, bir kriptografik araçtır; bu araç sayesinde, kanıtlayıcı belirli bir polinomu taahhüt edebilir ve daha sonra bu polinomun değerlendirme sonuçlarını doğrulayabilirken, polinomun diğer bilgilerini gizleyebilir. Yaygın polinom taahhüt şemaları arasında KZG, Bulletproofs, FRI ( Fast Reed-Solomon IOPP ) ve Brakedown bulunmaktadır. Farklı PCS'ler, farklı performans, güvenlik ve kullanım senaryolarına sahiptir.
Belirli gereksinimlere göre farklı PIOP ve PCS'ler seçilerek uygun bir sonlu alan veya eliptik eğri ile bir araya getirilerek farklı özelliklere sahip bir kanıt sistemi oluşturulabilir. Örneğin:
• Halo2: PLONK PIOP ile Bulletproofs PCS'nin birleşimi ve Pasta eğrisi üzerine kurulmuştur. Halo2 tasarlanırken, ölçeklenebilirliğe önem verilmiş ve ZCash protokolündeki güvenilir kurulumun kaldırılması hedeflenmiştir.
• Plonky2: PLONK PIOP ve FRI PCS'nin birleştirilmesiyle, Goldilocks alanına dayanır. Plonky2, etkili bir rekürsif gerçekleştirmek için tasarlanmıştır. Bu sistemleri tasarlarken, seçilen PIOP ve PCS, kullanılan sonlu alan veya eliptik eğri ile eşleşmelidir; bu, sistemin doğruluğunu, performansını ve güvenliğini sağlamak için önemlidir. Bu kombinasyonların seçimi, SNARK'ın kanıt boyutunu ve doğrulama verimliliğini etkilemenin yanı sıra, sistemin güvenilir bir kurulum olmadan şeffaflık elde edip edemeyeceğini, rekürsif kanıtlar veya toplu kanıtlar gibi genişletme işlevlerini destekleyip destekleyemeyeceğini de belirler.
Binius: HyperPlonk PIOP + Brakedown PCS + ikili alan. Özellikle, Binius, verimliliğini ve güvenliğini sağlamak için beş ana teknoloji içermektedir. İlk olarak, kule ikili alanların (towers of binary fields) aritmetiği, hesaplamalarının temelini oluşturur ve ikili alan içinde basitleştirilmiş işlemleri gerçekleştirme yeteneğine sahiptir. İkincisi, Binius, etkileşimli Oracle kanıt protokolü (PIOP) içerisinde, HyperPlonk çarpım ve yer değiştirme kontrollerini yeniden uyarlamış, değişkenler ve bunların yer değiştirmeleri arasındaki güvenli ve verimli tutarlılık kontrolünü sağlamıştır. Üçüncüsü, protokol, küçük alanlarda çoklu doğrusal ilişkileri doğrulama verimliliğini optimize eden yeni bir çoklu doğrusal kaydırma kanıtı getirmiştir. Dördüncüsü, Binius, arama mekanizmasına esneklik ve güçlü güvenlik sağlaması için geliştirilmiş Lasso arama kanıtını kullanmıştır. Son olarak, protokol, ikili alan üzerinde verimli bir kanıt sistemi gerçekleştirmesini sağlayan ve genellikle büyük alanlarla ilişkili maliyetleri azaltan küçük alan çokgen taahhüt şemasını (Small-Field PCS) kullanmıştır.
( 2.1 Sonlu Alan: binary alanların kulelerine dayalı aritmetik
Kule tipi ikili alan, hızlı doğrulanabilir hesaplamaların gerçekleştirilmesinde anahtar rol oynamaktadır. Bu, esas olarak iki nedene dayanmaktadır: verimli hesaplama ve verimli aritmetik. İkili alan, doğası gereği yüksek verimli aritmetik işlemleri destekler ve bu da onu performansa duyarlı kriptografik uygulamalar için ideal bir seçim haline getirir. Ayrıca, ikili alan yapısı, ikili alanda gerçekleştirilen işlemlerin sıkıştırılmış ve doğrulanabilir cebirsel bir biçimde temsil edilebileceği basitleştirilmiş bir aritmetik süreç destekler. Bu özellikler ve kule yapısının hiyerarşik özelliklerinden tam olarak yararlanma yeteneği, ikili alanı Binius gibi ölçeklenebilir kanıt sistemleri için özellikle uygun hale getirir.
"canonical" terimi, ikili alan içindeki elemanların benzersiz ve doğrudan temsil biçimini ifade eder. Örneğin, en temel ikili alan olan F2'de, herhangi bir k bitlik dize doğrudan k bitlik bir ikili alan elemanına eşlenebilir. Bu, asal alandan farklıdır; asal alan, belirli bit sayısında bu tür standart bir temsil sağlayamaz. 32 bitlik bir asal alan, 32 bit içinde yer alabilir, ancak her 32 bitlik dize benzersiz bir alan elemanına karşılık gelmeyebilir, oysa ikili alan bu birine bir eşleme kolaylığını sunar. Asal alan Fp'de yaygın olarak kullanılan azaltma yöntemleri arasında Barrett azaltması, Montgomery azaltması ve Mersenne-31 veya Goldilocks-64 gibi belirli sonlu alanlar için özel azaltma yöntemleri bulunmaktadır. İkili alan F2k'de yaygın olarak kullanılan azaltma yöntemleri arasında AES'de kullanılan özel azaltma ), POLYVAL'da kullanılan Montgomery azaltması ### ve Tower( gibi yinelemeli azaltma ) bulunmaktadır. "Exploring the Design Space of Prime Field vs. Binary Field ECC-Hardware Implementations" başlıklı makale, ikili alanın toplama ve çarpma işlemlerinde taşma gerektirmediğini ve ikili alanın kare alma işleminin son derece verimli olduğunu, çünkü (X + Y )2 = X2 + Y 2 basitleştirilmiş kuralını takip ettiğini belirtmektedir.
Şekil 1'de gösterildiği gibi, 128 bitlik bir dizi: Bu dizinin ikili alan bağlamında çeşitli şekillerde yorumlanabilir. 128 bitlik ikili alanında benzersiz bir öğe olarak düşünülebilir veya iki 64 bitlik kule alanı öğesi, dört 32 bitlik kule alanı öğesi, on altı 8 bitlik kule alanı öğesi veya 128 adet F2 alanı öğesi olarak çözümlenebilir. Bu gösterimin esnekliği, herhangi bir hesaplama maliyeti gerektirmeden, yalnızca bit dizisinin tür dönüşümüdür (typecast), oldukça ilginç ve yararlı bir özelliktir. Aynı zamanda, küçük alan öğeleri, ek bir hesaplama maliyeti olmadan daha büyük alan öğeleri olarak paketlenebilir. Binius protokolü, hesaplama verimliliğini artırmak için bu özelliği kullanır. Ayrıca, "On Efficient Inversion in Tower Fields of Characteristic Two" adlı makale, n bitlik kule tarzı ikili alanında ('in m bitlik alt alan ) olarak çarpma, kare alma ve ters alma işlemlerinin hesaplama karmaşıklığını incelemektedir.
( 2.2 PIOP: Uyarlanmış HyperPlonk Ürünü ve Permutasyon Kontrolü------ İkili alan için uygundur
Binius protokolündeki PIOP tasarımı HyperPlonk'tan esinlenmiştir ve çok terimli ve çok değişkenli küme doğruluğunu doğrulamak için bir dizi temel kontrol mekanizması kullanmaktadır. Bu temel kontroller şunları içerir:
GateCheck: Gizli tanıklama ω ve kamuya açık girdi x'in C)x,ω(=0 hesaplama ilişkisini karşılayıp karşılamadığını doğrulamak için, devrenin doğru çalıştığından emin olun.
PermutationCheck: İki çok değişkenli çok terimli f ve g'nin Boolean hiperküpü üzerindeki değerlendirme sonuçlarının bir permütasyon ilişkisi olup olmadığını doğrulamak için f)x### = f(π)x() olarak, çok terimli değişkenler arasındaki sıralamanın tutarlılığını sağlamak.
LookupCheck: Polinomun değerinin verilen arama tablosunda doğrulanması, yani f(Bµ( ⊆ T)Bµ), belirli değerlerin belirtilen aralıkta olduğunu garanti eder.
MultisetCheck: İki çok değişkenli kümenin eşit olup olmadığını kontrol eder, yani {(x1,i,x2,)}i∈H={(y1,i,y2,)}i∈H, birden fazla küme arasındaki tutarlılığı garanti eder.
ProductCheck: Mantıksal hiper küp üzerindeki rasyonel çok terimli polinomun, belirli bir beyan edilen değere ∏x∈Hµ f(x) = s eşit olup olmadığını kontrol ederek, polinom çarpımının doğruluğunu sağlamak.
ZeroCheck: Bir çok değişkenli polinomun Boolean hiperküpündeki herhangi bir noktada sıfır olup olmadığını doğrulama ∏x∈Hµ f(x) = 0, ∀x ∈ Bµ, polinomun sıfır noktalarının dağılımını sağlamak için.
SumCheck: Çok değişkenli polinomların toplamının, beyan edilen değerle eşit olup olmadığını kontrol eder ∑x∈Hµ f(x) = s. Çok değişkenli polinomun değerlendirme sorununu tek değişkenli polinom değerlendirmesine dönüştürerek doğrulayıcı tarafın hesaplama karmaşıklığını azaltır. Ayrıca, SumCheck, rastgele sayılar getirerek birden fazla toplam doğrulama örneğini işlemek için lineer kombinasyonlar oluşturarak toplu işlemeyi de mümkün kılar.
BatchCheck: SumCheck'e dayanarak, birden fazla çok değişkenli çok terimli polinomun değerinin doğruluğunu doğrulamak için protokol verimliliğini artırır.
Binius, HyperPlonk ile protokol tasarımında birçok benzerliğe sahip olmasına rağmen, aşağıdaki 3 alanda iyileştirmeler yapmıştır:
ProductCheck optimizasyonu: HyperPlonk'ta, ProductCheck'in paydası U'nun hiperküp üzerinde her yerde sıfır olmaması ve çarpımın belirli bir değere eşit olması gerekmektedir; Binius, bu değeri 1 olarak özel hale getirerek bu kontrol sürecini basitleştirmiş ve hesaplama karmaşıklığını azaltmıştır.
Sıfıra bölme problemi ile başa çıkma: HyperPlonk, sıfıra bölme durumunu yeterince iyi işlememiştir, bu da U'nun hiper küp üzerindeki sıfırdan farklı olup olmadığını kesin olarak söylemeyi imkansız kılmaktadır; Binius, bu durumu doğru bir şekilde ele almış, hatta paydanın sıfır olduğu durumlarda bile Binius'un ProductCheck'i işlemeye devam edebilmiş ve herhangi bir çarpan değerine genişletilmesine izin vermiştir.
Sütunlar Arası Permutasyon Kontrolü: HyperPlonk bu özelliği desteklemiyor; Binius, birden fazla sütun arasında Permutasyon Kontrolü yapmayı destekliyor, bu da Binius'un daha karmaşık çok terimli sıralama durumlarını ele almasını sağlıyor.
Bu nedenle, Binius mevcut PIOPSumCheck mekanizmasını geliştirerek protokolün esnekliğini ve verimliliğini artırdı; özellikle daha karmaşık çok değişkenli çok terimli doğrulama işlemlerinde daha güçlü işlevsellik sağladı. Bu geliştirmeler yalnızca HyperPlonk'taki sınırlamaları çözmekle kalmadı, aynı zamanda gelecekteki ikili alan tabanlı kanıt sistemleri için de bir temel oluşturdu.
( 2.3 PIOP: yeni çoklu kaydırma argümanı------boolean hiperküp için uygun
Binius protokolünde, sanal çok terimli yapıların oluşturulması ve işlenmesi anahtar teknolojilerden biridir ve giriş kollarından veya diğer sanal çok terimlerden türetilen çok terimleri etkin bir şekilde oluşturup işlemesine olanak tanır.