【发布时间】:2014-02-25 01:46:18
【问题描述】:
在 Python 的 gmpy2 扩展模块中,有一个称为 mpz 的多精度整数类型。它包含一个powmod(x, y, m) 函数,而我在Ruby 中一直缺少那个函数。我最近得知 Ruby 实际上有一个powmod。它隐藏在 OpenSSL 模块中。
require 'openssl'
result = a_big_int.to_bn.mod_exp(exponent, modulo)
另一个函数,也是在 gmpy2 中,我一直缺少的是divm(...)。
divm(a, b, m) 返回 x 使得 b * x == a 模 m。如果不存在这样的值 x,则引发 ZeroDivisionError 异常。
您知道 OpenSSL 模块是否还有另一个惊喜,或者有任何具有这种功能的宝石?如果它是一个快速的将非常有帮助。
【问题讨论】:
标签: python ruby cryptography openssl gmpy