MIRACL中GF(2 ^ m)上ECC的无进位乘法优化

时间:2014-05-21 17:16:36

标签: c cryptography compiler-optimization elliptic-curve galois-field

Link到CertiVox的MIRACL加密库

按照fastgf2m.txt中的说明,我已经能够编译所有内容。但是,执行后,基准(bmark.exe)程序在评估GF(2 ^ m)上的曲线时会出现错误,"这不是曲线上的一个点!"

我可以在没有优化的情况下使一切工作正常,但我不确定问题出在哪里。我没有修改任何曲线参数并按照分布中的说明进行操作。我正在使用Intel i7-3520M在64位Windows 8.1上进行编译。

如果有人对如何纠正这一点有任何建议,我们将不胜感激。

谢谢!

1 个答案:

答案 0 :(得分:2)

fastgf2m.txt中概述的方法用于生成与在编译时确定的固定m值相关联的展开代码。 bmark程序在运行时更改m,因此在这种情况下展开的代码通常不正确。在这一点上,文件可能更加清晰。

还要确保您的处理器支持PCLMULQDQ指令 - 许多较旧的处理器不支持。

最好在ecsgen2 / ecssign2 / ecsver2计划上测试该方法,以便在ECDSA上实施GF(2^283)