繁体   English   中英

bash中的RSA算法(私钥计算)

[英]RSA Algorithm (private key calculation) in bash

当给出p,q和e时,寻求有关如何在bash脚本“ d”中计算RSA密钥的帮助。

尽管我知道这个查询以前已经提出过,但是我似乎发现的只是在给出p,q和e时计算RSA私钥的理论建议。

我正在尝试将计算放在bash脚本中,因此我真的想对bash中的计算(使用expr或bc)进行一些解释。

我发现了一个基本上可以提供以下建议的网站; (其中“ t”是p * q的总和,或者更确切地说是“ n”的总和)

d=$(echo "((2 * $t) + 1) / $e" | bc)

但这似乎仅适用于该特定情况,并且在尝试不同情况时无法提供正确的输出。

关于如何为该计算编写bash公式的任何帮助?

从RSA的定义

| e * d | = 1(mod fi(p * q))

其中fi(n)是Euler函数

因此,您需要计算此模的e的倒数。 不要忘记检查GCD(e,fi(p * q))= 1,否则您可能找不到给定模中e的倒数。

您可以使用扩展欧几里得算法来实现。 网络上有很多伪代码。 您需要更多帮助吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM