montgomery-multiplication

    2熱度

    2回答

    我需要在我的應用程序中執行快速伽羅瓦域算術。我有一個用匯編編寫的乘法函數,它已經針對我的平臺MSP430微控制器進行了優化。該函數計算兩個大數的任意大小的乘積,但每個數字必須表示爲一個16位整數數組。但是,在我的項目中,伽羅華域元素表示爲16個64位整數的數組。如何將16位64位整數的數組轉換爲我優化的基於彙編的乘法函數(即64位16位整數數組)所需的表示形式?當然,簡單地將數組轉換爲(UInt1

    0熱度

    1回答

    蒙哥馬利乘法是如何在RSA加密中使用加速計算c = m^e%n的加密過程的? 我知道蒙哥馬利乘法可以有效地乘a * b%n,但是當試圖找到m^e%n時,是否有比乘以m * me次數更有效的方法,而不是每次循環和計算蒙哥馬利乘法? mpz_class mod(mpz_class &m, mpz_class &exp, mpz_class &n) { //End goal is to re

    -1熱度

    1回答

    我設計了一個16 * 16蒙哥馬利乘數。該代碼使用16 * 16乘法器執行三次乘法。乘法運算使用相同的乘法器一個接一個地執行,每個乘法的結果存儲在寄存器中。單個16×16乘法器以大約1550MHz的頻率執行,但是當三個乘法串聯執行時,蒙哥馬利乘法器(其使用單個16×16乘法器三次)的頻率減小到接近500MHz。我想避免頻率下降,並希望以單倍頻的頻率操作。在這方面需要幫助。 的代碼與一起提供。 `d

    -2熱度

    1回答

    我在Verilog中有一些相當好的結構建模經驗,但我幾乎沒有任何其他建模方法。所以,請幫助我。代碼編譯得很好,但是在模擬時只是掛起。什麼都沒發生。 如果它很重要,代碼是蒙哥馬利模塊化乘法器。它略高於我的學術水平,但我已經設法瞭解算法並編寫代碼。爲什麼模擬不會運行?提前感謝! module MMM42(A1,A2,B1,B2,N,S1,S2,clk); input clk; input [3:0

    0熱度

    1回答

    我正在將JavaCard中的軟件開發爲ECC中的附加點。 問題是我需要一些基礎操作,所以目前,我需要乘法和倒置,我已經有了加法和減法。 我試圖發展蒙哥馬利乘法,但它是GF(2^m)(我認爲)。 所以我的例子是: public static void multiplicationGF_p2(){ byte A = (byte) 7; byte p = (byte) 5;

    0熱度

    1回答

    我在Python 3.x上嘗試蒙哥馬利乘法算法。這是寫在下面給出 Input: Modulus N(n bit), gcd(n, 2) = 1, Multipler: A (n bit), Multiplicant: B (n bit) Output: R = (A x B x 2^(-n)) mod N R = 0 for (i = 0; i < n; i++) { q =