如何计算rsa私钥的系数?

时间:2015-11-14 05:36:45

标签: math rsa

我一直在尝试制作一个特定的rsa私钥来解码邮件 我有所有的值(p,q,d,n,e,e1,e2),但我无法找到系数,因为它说计算系数的公式是(q^-1 mod p)。但是当我以p=17q=11为例时,系数应为14。但是当我用计算器计算它时,系数变为(0.0909090909)。 请给我一个计算系数的方法或给我下一对的系数。

asn1=SEQUENCE:rsa_key

[rsa_key]
version=INTEGER:0

modulus=INTEGER:1230186684530117755130494958384962720772853569595334792197322452151726400507263657518745202199786469389956474942774063845925192557326303453731548268507917026122142913461670429214311602221240479274737794080665351419597459856902143413

pubExp=INTEGER:65537

privExp=INTEGER:703813872109751212728960868893055483396831478279095442779477323396386489876250832944220079595968592852532432488202250497425262918616760886811596907743384527001944888359578241816763079495533278518938372814827410628647251148091159553

p=INTEGER:878002287614711652531743087737814467999489

q=INTEGER:511279233373417143396810270092798736308917

e1=INTEGER:496787982169740923502343753899982600567297

e2=INTEGER:80295249215525643071102598936432783036457

coeff=INTEGER:?

1 个答案:

答案 0 :(得分:0)

正如评论中指出的那样,q ^ -1 mod p是模乘法逆,你可以在这里阅读更多信息:https://en.wikipedia.org/wiki/Modular_multiplicative_inverse

它是使用扩展欧几里德算法计算的,但是当模数值为素数时,p是17,那么在这种情况下很容易用公式计算模逆:

q^-1 mod p = (q^(p-2)) mod p(仅当p为素数时)

现在答案是:(11 ^ 15)mod 17 = 4177248169415651 mod 17 = 14

另请注意,gcd(p, q) != 1

时不存在模块化逆

我认为您查询的系数是:457212035379609309760218035812085381175325

可能不正确,您可能需要调查更进一步。