• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種基于蒙哥馬利模乘的數據處理方法技術

    技術編號:8489627 閱讀:294 留言:0更新日期:2013-03-28 08:30
    本發明專利技術公開了一種基于蒙哥馬利模乘的數據處理方法,屬于計算機技術領域。本發明專利技術的方法包括:CPU初始化第五隨機存儲器,對第二隨機存儲器中內容按字為單位執行以下操作:1)調用乘加模塊將第二隨機存儲器中內容的一個字與第一隨機存儲器的內容相乘后與第五隨機存儲器的內容相加,2)從1)的運算結果中提取一個字和常數寄存器的內容相乘,并將相乘結果的低位字寫入第四寄存器,3)調用乘加模塊將第四寄存器的內容與第三隨機存儲器的內容相乘后與第五隨機存儲器的內容相加;最后根據第三存儲器中內容長度輸出第五隨機存儲器的內容。

    【技術實現步驟摘要】

    本專利技術屬于計算機
    ,尤其涉及。技術背景在目前的大整數模乘算法的硬件實現中,蒙哥馬利(Montgomery)模乘算法被認 為是最高效的,也是最適合用硬件實現的一種算法。目前,實現大整數模乘的模乘器的設計中大多采用Montgomery算法及其變形,現 有的模乘器的設計是對中間結果進行儲存,下一循環需要用到時再讀取,需要對存儲設備 進行頻繁的讀寫,而對存儲設備的讀寫是需要花費時鐘周期的,從而影響了模乘器的工作 效率,降低基于蒙哥馬利模乘的數據處理速率,比如現有的Montgomery算法存在的在硬件 上實現起來運算速度慢的缺陷,會導致RSA、ECC等加密算法的效率低,速度低。
    技術實現思路
    為解決現有技術中存在的問題,本專利技術提出了一種高效的基于蒙哥馬利模乘的數 據處理方法。本專利技術采取的技術方案是,第一隨機存 儲器用于存儲乘數,第二隨機存儲器用于存儲被乘數,第三隨機存儲器用于存儲模數,所述 方法包括以下步驟步驟1:CPU初始化第五隨機存儲器,初始化第一偏移量、第二偏移量;其中,所述 第一偏移量用于表示所述第二隨機存儲器中相對于基地址的偏移地址,所述第二偏移量用 于表示所述第五隨機存儲器中相對于基地址的偏移地址。步驟2 =CPU根據第一偏移量從所述第二隨機存儲器中讀取一個字寫入第一運算 寄存器;步驟3 =CPU調用乘加模塊執行第一運算寄存器的內容與所述第一隨機存儲器的 內容相乘后與所述第五隨機存儲器的內容相加的運算,根據第二偏移量將得到的運算結果 從低位到高位寫入所述第五隨機存儲器;步驟4 =CPU根據第二偏移量從所述第五隨機存儲器中讀取一個字寫入第二運算 寄存器,將所述第二運算寄存器的內容和常數寄存器的內容相乘,并將相乘結果的低位字 寫入第四寄存器;步驟5 =CPU讀取所述第四寄存器、所述第三隨機存儲器和所述第五隨機存儲器的 內容,調用乘加模塊執行所述第四寄存器的內容與所述第三隨機存儲器的內容相乘后與所 述第五隨機存儲器的內容相加的運算,將第二偏移量加1,根據第二偏移量將得到的運算結 果從低位到高位寫入所述第五隨機存儲器;步驟6 :CPU判斷第一偏移量是否等于預設步長,是則執行步驟8,否則執行步驟 7 ;步驟7 :第一偏移量加I,返回執行步驟2 ;步驟8 =CPU讀取所述第五隨機存儲器和所述第三隨機存儲器的內容,判斷所述第 五隨機存儲器的內容的值是否大于等于第三隨機存儲器的內容的值,是則執行步驟9,否則 執行步驟10 ;步驟9 :CPU用讀取到的所述第五隨機存儲器的內容與第三隨機存儲器的內容相 減,并根據第二偏移量將相減結果從低位到高位寫入所述第五隨機存儲器,執行步驟10 ;步驟10 =CPU輸出所述第五隨機存儲器的內容。所述步驟2具體為讀取從第二隨機存儲器的基地址起向左移動第一偏移量后對 應的字寫入第一運算寄存器。所述乘加模塊用于實現CPU支持的乘法和加法運算。步驟3所述CPU調用乘加模塊執行第一運算寄存器的內容與所述第一隨機存儲 器的內容相乘后與所述第五隨機存儲器的內容相加的運算具體包括以下步驟步驟201 CPU判斷第一偏移量是否為0,是則執行步驟210,否則執行步驟202 ;步驟202 :初始化進位寄存器,初始化索引變量;步驟203 =CPU根據索引變量從第一隨機存儲器和第五隨機存儲器中各獲取一個 字分別寫入第三運算寄存器和第四運算寄存器;步驟204 :CPU將第一運算寄存器的內容和第三運算寄存器的內容相乘,相乘結果 與第四運算寄存器的內容相加得到第一計算結果;步驟205 =CPU將第一計算結果與進位寄存器的內容相加得到第二計算結果;步驟206 =CPU將第二計算結果的高位起第一個字寫入進位寄存器,其余字根據索 引變量寫入第五隨機存儲器;步驟207 =CPU判斷索引變量是否等于預設字長,是則執行步驟209,否則執行步驟 208 ;步驟208 :索引變量加1,然后返回執行步驟203 ;步驟209 =CPU讀取進位寄存器的內容,并根據索引變量將進位寄存器的內容寫入 第五隨機存儲器;步驟210 :CPU輸出第五隨機存儲器的內容作為步驟3所述運算結果。所述步驟203具體為從第一隨機存儲器和第五隨機存儲器中獲取與當前索引變 量對應的存儲位置上的字分別寫入第三運算寄存器和第四運算寄存器。步驟206所述其余字根據索引變量寫入第五隨機寄存器具體為CPU將第二計算 結果中除高位起第一個字之外的其余字按照從低位到高位的順序從第五隨機存儲器中與 當前索引變量對應的存儲位置開始依次寫入。步驟3和步驟5所述根據第二偏移量將得到的運算結果從低位到高位寫入第五隨 機存儲器具體為將運算結果按照從低位到高位的順序從第五隨機存儲器中基地址起向左 移第二偏移量的位置開始依次寫入。步驟4所述CPU根據第二偏移量從第五隨機存儲器中讀取一個字寫入第二運算寄 存器具體為讀取從第五隨機存儲器的基地址起向左移動第二偏移量后對應的字寫入第二 運算寄存器。步驟5所述調用乘加模塊執行所述第四寄存器的內容與所述第三隨機存儲器的 內容相乘后與所述第五隨機存儲器的內容相加的運算,具體包括以下步驟步驟301 =CPU判斷第一偏移量是否為0,是則執行步驟310,否則執行步驟302 ;步驟302 :初始化進位寄存器,初始化索引變量;步驟303 =CPU根據索引變量從第三隨機存儲器和第五隨機存儲器中各獲取一個字分別寫入第三運算寄存器和第四運算寄存器;步驟304 :CPU將第三運算寄存器的內容與第四寄存器的內容相乘,相乘結果與第四運算寄存器的內容相加得到第三計算結果;步驟305 :CPU將第三計算結果與進位寄存器的內容相加得到第四計算結果;步驟306 :CPU將第四計算結果的高位起第一個字 寫入進位寄存器,其余字根據索引變量寫入第五隨機存儲器;步驟307 =CPU判斷索引變量是否等于預設字長,是則執行步驟309,否則執行步驟 308 ;步驟308 :索引變量加1,然后返回執行步驟303 ;步驟309 =CPU讀取進位寄存器的內容,并根據索引變量將進位寄存器的內容寫入第五隨機存儲器;步驟310 :CPU輸出第五隨機存儲器的內容作為步驟5所述運算結果。步驟9所述根據第二偏移量將相減結果從低位到高位寫入第五隨機存儲器具體為將相減結果按照從低位到高位的順序從第五隨機存儲器中基地址起向左移第二偏移量的位置開始依次寫入。本專利技術提供的一種高效的基于蒙哥馬利模乘的數據處理方法,能夠達到降低系統運行的周期和通過提高模乘效率提高數據處理速率的效果,尤其使其應用于數據加密算法中時,能夠提高數據加解密的效率和速度。附圖說明圖1是本專利技術提出的流程圖2是圖1中步驟103所述調用乘加模塊進行運算過程示意圖3是圖1中步驟106所述調用乘加模塊進行運算的過程示意圖。具體實施方式為使本專利技術的目的、技術方案和優點更加清楚,下面將結合附圖對本專利技術實施方式作進一步地詳細描述。本實施例提供了,以計算機的CPU處理器對數據進行的模乘運算處理過程為例進行介紹,本實施例中,第一隨機存儲器用于存儲模乘運算中的乘數,第二隨機存儲器用于存儲模乘運算中的被乘數,第三隨機存儲器用于存儲模乘運算中的模數,第四寄存器用于存儲中間操作數,第五隨機存儲器用于存儲模乘運算的運算結果和模乘運算過程中的乘加模塊的運算結果,常本文檔來自技高網...

    【技術保護點】
    一種基于蒙哥馬利模乘的數據處理方法,其特征在于:第一隨機存儲器用于存儲乘數,第二隨機存儲器用于存儲被乘數,第三隨機存儲器用于存儲模數,所述方法包括:步驟1:CPU初始化第五隨機存儲器,初始化第一偏移量、第二偏移量;步驟2:CPU根據第一偏移量從所述第二隨機存儲器中讀取一個字寫入第一運算寄存器;步驟3:CPU調用乘加模塊執行第一運算寄存器的內容與所述第一隨機存儲器的內容相乘后與所述第五隨機存儲器的內容相加的運算,根據第二偏移量將得到的運算結果從低位到高位寫入所述第五隨機存儲器;步驟4:CPU根據第二偏移量從所述第五隨機存儲器中讀取一個字寫入第二運算寄存器,將所述第二運算寄存器的內容和常數寄存器的內容相乘,并將相乘結果的低位字寫入第四寄存器;步驟5:CPU讀取所述第四寄存器、所述第三隨機存儲器和所述第五隨機存儲器的內容,調用乘加模塊執行所述第四寄存器的內容與所述第三隨機存儲器的內容相乘后與所述第五隨機存儲器的內容相加的運算,將第二偏移量加1,根據第二偏移量將得到的運算結果從低位到高位寫入所述第五隨機存儲器;步驟6:CPU判斷第一偏移量是否等于預設步長,是則執行步驟8,否則執行步驟7;步驟7:第一偏移量加1,返回執行步驟2;步驟8:CPU讀取所述第五隨機存儲器和所述第三隨機存儲器的內容,判斷所述第五隨機存儲器的內容的值是否大于等于第三隨機存儲器的內容的值,是則執行步驟9,否則執行步驟10;步驟9:CPU用讀取到的所述第五隨機存儲器的內容與第三隨機存儲器的 內容相減,并根據第二偏移量將相減結果從低位到高位寫入所述第五隨機存儲器,執行步驟10;步驟10:CPU輸出所述第五隨機存儲器的內容。...

    【技術特征摘要】

    【專利技術屬性】
    技術研發人員:陸舟于華章
    申請(專利權)人:飛天誠信科技股份有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 一本加勒比hezyo无码专区| 熟妇人妻系列av无码一区二区| 亚洲AV中文无码乱人伦下载| 久久精品成人无码观看56| 人妻无码第一区二区三区| 色综合热无码热国产| 无码AV中文字幕久久专区| 久久亚洲AV成人无码国产电影| 国产AV无码专区亚洲AV漫画| AV无码精品一区二区三区| 高潮潮喷奶水飞溅视频无码| av无码国产在线看免费网站| 国产乱子伦精品无码码专区| 好爽毛片一区二区三区四无码三飞| 国产成人A人亚洲精品无码| 国产精品久久无码一区二区三区网| 国产产无码乱码精品久久鸭| 国产精品无码不卡一区二区三区| 亚洲国产精品无码久久98| 亚洲AV无码精品蜜桃| 亚洲av永久无码精品漫画| 久久无码一区二区三区少妇| 国产精品午夜无码AV天美传媒| 日韩免费无码一区二区三区| 国产在线无码视频一区二区三区 | 国产精品国产免费无码专区不卡 | 亚洲av永久无码精品秋霞电影影院 | 久久久久久AV无码免费网站| 国产精品毛片无码| 无码办公室丝袜OL中文字幕 | 亚洲午夜无码久久久久小说 | 蕾丝av无码专区在线观看| 伊人无码精品久久一区二区| 亚洲国产成人无码AV在线| 亚洲爆乳无码精品AAA片蜜桃| 免费无码精品黄AV电影| 中文字幕人成无码人妻综合社区| 一本大道无码av天堂| 无码人妻H动漫中文字幕| 国产成人无码免费视频97| 中文无码熟妇人妻AV在线|