Türkçe
o1js’nin yeni yayınlanmış bitwise işlemler araçlarıyla SHA256 devresinin uygulanmasını, 32-bitlik kelimeleri (32 alan öğesi) tek bir alan öğesi olarak işletmek için yerel ikili araçları kullanarak optimize ediyor. Bu depo, ZK-HACK Istanbul sırasında o1js SDK’sını kullanarak SHA256 karma algoritmasının geliştirilmesine yönelik bir kanıt olarak hizmet ediyor. o1js SDK, Mina blockchain üzerindeki sıfır bilgi uygulamaları için etkili bir SHA2 devresi oluşturmayı kolaylaştıran sağlam yerel ikili işlevler sağlar. Optimizasyonlar: Genellikle SHA2 devreleri, ikili (0 veya 1) bir tam alan öğesinin yerini aldığından verimsizliklerle karşılaşır. Alan öğeleri olarak temsil edilen ikililer üzerinde çoklu ikili işlemler, SHA2 algoritmasını kısıt yoğun bir devre haline getirir. Bununla başa çıkmak için o1js SDK, 32-bitlik kelimeleri (32 alan öğesi) tek bir alan öğesi olarak ele alarak devre uygulamasını optimize etmeyi hedefler. Bu yaklaşım, SHA256 yapısının (Merkle–Damgård) 32-bitlik kelimeler üzerinde çalıştığı göz önüne alındığında özellikle önemlidir. SHA-256 Nasıl Çalışır: SHA-2 algoritmaları genellikle iki aşamaya ayrılır: önişleme ve karma hesaplama. Önişleme, bir mesajı doldurma, doldurulmuş mesajı m-bitlik bloklara ayırma ve sonraki karma hesaplamada kullanılmak üzere başlangıç değerlerini belirleme işlemini içerir. Karma hesaplama, doldurulmuş mesajdan bir mesaj programı oluşturur ve bu programı, işlevler, sabitler ve kelime işlemleri ile birlikte kullanarak ardışık karma değerleri üretir. Karma hesaplama yoluyla elde edilen nihai karma değeri, mesaj özetini belirler. ‘Chewing Glass’ Ödülü Sahibi ZK Hack Istanbul