描述
椭圆曲线组核心是用于计算另外的椭圆曲线群的两个元素,并且另外的椭圆曲线群中$ C $相同的元素。
椭圆曲线的超奇异$ E :Y ^ 2 = X ^ 3 - X +1 $在仿射坐标在一个有限域GF $ ( 3 ^ M ) $ , $ M =定义的97 $,它的不可约多项式为$ X ^ 97 + X ^ 12 +2 $ 。
椭圆曲线组是一整套解决方案$ ( X,Y) $ $超过GF( 3 ^ M) $至$ E $的方程,以及在无穷远处一个额外的点,记为$ ? $的。椭圆曲线组中的元素也被称为“点” 。椭圆曲线群是阿贝尔。在文档/规格组法进行描述。
椭圆曲线集团核心包括两个模块,一个计算增加两个椭圆曲线族元素( $ P_1 + P_2 $)和其它计算增加许多相同的椭圆曲线族元素( $ C ? P_1 $ )的。第一个模块被称为$ point_add $ 。第二模块称为$ $ point_scalar_mult 。
的核心是用2001的Verilog ,并且被仔细地对FPGA进行了优化。例如,输入信号是同步和采样时钟的上升沿。输出信号由触发器驱动,而不是由组合逻辑直接连接到输入信号。有没有锁,只有一个在整个核心时钟域。
在$ point_add $模块运行在192 MHz的上的Xilinx Virtex - 4 XC4VLX200 - 11FF1513 FPGA板。它计算一个加法在2.7微秒,如果有一个100MHz的时钟。在$ point_add $模块使用12,099 ( 6 % )的LUT , 6,694 ( 7 % )切片, 6,141 ( 3 % )触发器的XC4VLX200 - 11FF1513 FPGA板的。
在$ point_scalar_mult $模块运行在148 MHz的上的Xilinx Virtex - 4 XC4VLX200 - 11FF1513 FPGA板。它计算一个加法内0.552毫秒为单位,如果有一个100MHz的时钟。在$ point_scalar_mult $模块使用13,780 ( 7 % )的LUT , 7,272 ( 8 % )片, 7,451 ( 4 % )触发器的XC4VLX200 - 11FF1513 FPGA板的。
其核心是开源的,根据LGPL第3版的许可证。 |