Python 模数结果不正确

标签 python

我完全被难住了。我正在使用以下值计算 RSA 中数字 54 的密码:

p=5; q=29; n=145 d=9; e=137

因此加密后的数字 54 将是:

54^137 模 145

或在 python 中等效:

import math
math.pow(54,137)%145

我的计算器给出了 24,我的 python 语句给出了 54.0。 Python 显然是错误的,但我不知道为什么或如何。在您安装的 Python 上尝试一下。我的版本是 2.5.1,但我也在 2.6.5 上试过,结果同样不正确。

最佳答案

>>> pow(54,137,145)
24

math.pow 是 float 。你不想要那个。浮点值的有用精度少于 17 位。 54**137 有 237 位。

关于Python 模数结果不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5099745/

相关文章:

python - 拆分后与 Python 的缩进不一致

python - 从 Point Django 获取坐标

javascript - python json.dumps() 生成的字符串在转义双引号处使用 javascript JSON.parse() 加载时出错

Python 统计一秒钟有多少次点击

python - 根据值字典编写一个包含空单元格的表格

python - 将 Matlab (Octave) 组着色代码翻译成 python (numpy, pyplot)

python - 我的 if 语句不断为空列表返回 'None'

python - 如何使用 python3 -i 加载脚本,但没有 name == main run?

python - 数学运算符作为函数参数

python - Django 使用登录的 Windows 域用户进行身份验证