BSD使用快速modpow许可Big Integer C lib

时间:2010-07-06 07:54:48

标签: iphone c biginteger

我正在快速搜索(特别是p ^ n mod g操作,应该用montgomery实现)大整数库。我知道有GMP,但GMP是LGPL,不符合我的要求。

我尝试http://www.acme.com/software/bigint/并试图在那里优化modpow。但是,对于数据存储在2 ^ 32的事实而言,在modpow中进行一些优化并不是那么容易。

我也尝试过来自http://www.perfsci.com/free-software.asp的giantint,但这个库有一些混乱的内存管理。它经常与一些malloc / free问题崩溃。 也许OpenSSL的bignum会做我正在寻找的东西?但我不想将整个OpenSSL lib添加到我的项目中。也许可以从OpenSSL中提取bignum部分?

有人有什么建议吗?

P.S。 lib应该在iPhone / iPad上运行。

1 个答案:

答案 0 :(得分:4)

尝试查看libtomcrypt。它必须有一些大整数实现,这可能是小而有效的。似乎没有正式的上游,但是dropbear ssh实现使用它,你可以用dropbear找到源代码。