信息技術的不斷發展,對信息的安全提出了更高的要求.在應用公鑰密碼體制的時候,對密鑰長度要求越來越大,處理的速度要求越來越快.而基于橢圓曲線離散對數問題的橢圓曲線密碼體制,因其每比特最大的安全性,受到了越來越廣泛的注意.橢圓曲線密碼體制(ECC:Elliptic curve Cryptosystem)的快速實現也成為一個關注的方面.該文按照確定有限域、選取曲線參數、劃分結構模塊、優化模塊算法、實現模塊設計,驗證模塊功能的順序進行書寫.為了硬件實現上的方便,設計選擇了含有Ⅱ型優化正規基的伽略域GF(2191),并在該域上構造了隨機的橢圓曲線.根據層次化、結構化的設計思路,將橢圓曲線上的標量乘法運算劃分成兩個運算層次:橢圓曲線上的運算和有限域上的運算.模塊劃分之后,利用自底向上的設計思路,主要針對有限域上的乘法運算進行了重要的改進,并對加法群中的標量乘運算的算法進行了分析、證明,以達到面積優化和快速執行的效果.具體設計中,采用硬件描述語言Verilog HDL,在Mentor Graphics公司出品的FPGA Advantage平臺上進行電路設計.完成了各個模塊的設計輸入和仿真.設計選用了Altera公司的APEX Ⅱ系列器件,利用第一方軟件Quartus Ⅱ 2.2進行綜合、布局、布線和時序仿真.文中給出了橢圓曲線上的點加、倍點和標量乘法模塊的具體設計結構框圖.并且根據橢圓曲線的標量乘特點,提出了合適的驗證方案.該設計完成了橢圓曲線上的標量乘法運算.設計主要針對資源受限的應用環境:改進了有限域上的乘法運算、使用了沒有預處理的標量乘算法.改進后的橢圓曲線標量乘法需要2,741,998個邏輯單元,在100MHz的時鐘約束下,運行一次標量乘法運算需要567.69us.該次設計的結果可以直接用來構造橢圓曲線上的簽名、驗證、密鑰交換等算法.
標簽:
FPGA
橢圓曲線
密碼體制
乘法運算
上傳時間:
2013-05-24
上傳用戶:zhuo0008
Intro/: Directory containing introductory examples.
HelloWorld.c A simple program that draws a box and writes "Hello World" in
HelloWorld.f it.
data The data file for the introductory progressive example.
Lines.c Reads the data from file "data" and plots just the curve with
Lines.f no labels, viewport or anything indicating quantity or units.
Viewport.c Restricts the graph to a viewport and frames the viewport,
Viewport.f leaving the remainder of the area for labels, etc.
CharLbls.c Adds labels for the chart title, X-axis title, and Y-axis
CharLbls.f title.
Tics.c Adds tic marks to the viewport edges, but since clipping was
Tics.f not set correctly, tics extend outside the viewport.
Clip.c Sets clipping such that tic marks are clipped at the viewport
Clip.f boundaries.
TicLabels.c Adds numeric tic labels to the graph this is the final
TicLabels.f installment of the progressive example.
標簽:
introductory
HelloWorld
containing
Directory
上傳時間:
2016-03-29
上傳用戶:exxxds