Faster residue multiplication modulo 521-bit mersenne prime and application to ecc
- Global styles
- Apa
- Bibtex
- Chicago Fullnote
- Help
Abstract
Toeplitz Matris - Vektör Çarpma (TMVP) kullanan, 32-ve 64-bit platformlarda çalışan ve 521-bit Mersenne asal modlarındaki modüler çarpmalar için daha hızlı algoritmalar sunmaktayız. Önerilen algoritmalarımızın toplam aritmetik maliyeti mevcut algoritmalar ile kıyaslandığında daha azdır, ayrıca test makinalarmızda en iyi zamanlama sonuçlarına sahip olan algoritmalar, 32- ve 64-bit modüler çarpmaları seçilmiştir. 64-bit modüler çarpma için aritmetik maliyetleri ile birlikte algoritmamızın üç versiyonu gösterilmiştir ve uygulama bakış açısından, her bir versiyonun zamanlama sonuçları da verilmiştir. Limb sayısı iki katına çıkarken limb bit uzunluğu yarıya azaldığı için 64-ten 32-bit kalıntı çarpımına geçiş zorluklarla doludur. Biz 32-bit modüler çarpmaları için hem aritmetik maliyetleri hem de zamanlama sonuçları ile birlikte üç teknik önermekteyiz. Uygulamamızda herhangi bir yapısal ve SIMD / montaj talimatı kullanmadan Intel (R) Core i5 - 6402P CPU @ 2.80GHz'de sırasıyla 64- ve 32-bit modüler çarpmalar için 136- ve 550- devir bulunmuştur. Standart NIST eğrisi P-521 ve Edwards eğrisi E-521 için sabit-zamanlı değişken ve sabit-bazlı skaler çarpmalar uygulanmıştır. Bizim modüler çarpmalarımız kullanıldığı zaman, özellikle değişenbazlı skaler çarpım için E-521, P-521'den daha verimli bulunmuştur. We present faster algorithms for the residue multiplication modulo 521-bit Mersenne prime on 32- and 64-bit platforms by using Toeplitz Matrix-Vector Product (TMVP). The total arithmetic cost of our proposed algorithms is less than the existing algorithms and we select the ones, 32- and 64-bit residue multiplication, with the best timing results on our testing machine(s). For the 64-bit residue multiplication we have presented three versions of our algorithm along with their arithmetic cost and from implementation point of view, we provide the timing results of each version. The transition from 64- to 32-bit residue multiplication is full of challenges because the number of limbs becomes double and the bitlength of the limbs reduces by half. We propose three technique for 32-bit residue multiplication such that both the arithmetic cost and the timing results of each one is provided. Without use of any intrinsics and SIMD/assembly instructions in our implementation, on Intel(R) Core i5 -- 6402P CPU @ 2:80GHz, we find 136- and 550-cycle for our 64- and 32-bit residue multiplications, respectively. We implement constant-time variable- and fixed-base scalar multiplication on the standard NIST curve P-521 and Edwards curve E-521. Using our residue multiplication(s), we find E-521 more efficient than P-521 especially for variable-base scalar multiplication.
Collections