【问题标题】:RSA encryption numbers not working, why?RSA 加密号码不起作用,为什么?
【发布时间】:2017-02-18 23:02:05
【问题描述】:

我正在为一个执行简单 RSA 加密和解密的类编写程序。程序运行一个实例时产生的数字如下:

encryption:
p = 37
q = 11
n = 407
phi = 360
e = 17
d = 24
Enter the message you wish to encrypt: hello
ASCII: 104
ASCII: 101
ASCII: 108
ASCII: 108
ASCII: 111
Here is your encrypted message:
:Žřřo
decryption:
Enter in a value for n:407
Enter in a value for d:24
Enter the message you wish to decrypt::Žřřo
ASCII: 158
ASCII: 223
ASCII: 47
ASCII: 47
ASCII: 111
Here is your decrypted message:
ß//o

我的问题是,为什么解密后不能返回正确的 ASCII 值?满足 RSA 的所有规则:
1. p 和 q 是独立的素数
2. e 和 phi 互质
3. d 是 e 的模乘逆,使得 e * d mod n = 1

程序随机生成 p、q 和 e,并在每次运行时计算 n、phi 和 d。其他示例也类似,符合所有 RSA 规则但仍无法正确解密。

【问题讨论】:

    标签: python rsa


    【解决方案1】:

    也许这只是您问题中的一个错字,但我认为d 应该是ephi(n) 的乘法逆,而不是n

    【讨论】:

    • 您先生刚刚正式保存了我的成绩。根据我的教授告诉我们它应该是正确的 e*d mod n,我已经在这个项目上工作了 20 多个小时。但你是对的。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-15
    • 2016-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多