【发布时间】:2014-11-10 18:53:50
【问题描述】:
我正在使用 Crypto++ wiki 中的 Raw RSA encryption and decryption. 教程和 Raw RSA 开发一个简单的代码,该代码使用 Crypto++ 使用 RSA 加密/解密字符串。
我正在使用 Visual Studio 2010。代码运行没有错误。但是,我不明白 n, e, d 的意义是什么?为什么不能改?
我尊重 RSA 的算法,我选择了这个值:
// La clé publique est la paire (e, n) et la clé secrète est d, donc aussi p et q.
// p = 3, q = 11, n = 3 x 11, f = (11–1).(3–1) = 20. On choisit d=7 (7 et 20 sont bien premiers entre eux).
// e = 3 car e.d= 20 * 1 + 1
但我总是有调试错误:
有人可以帮我吗?
【问题讨论】:
-
stackoverflow.com/a/20114154/179910 涵盖了 RSA 工作原理的一些基本概念以及您需要给它的数字的用途。
-
JacobHacker 的教程只是抄袭 Crypto++ 的作品,没有署名。您可能应该避免使用 JacobHacker 的东西并坚持使用 Crypto++ wiki。
-
“代码运行没有错误......但我总是有调试错误” - 嗯,是什么?如果有错误,请与问题一起发布。
-
无错误:当我运行发布的代码时出现错误:当我更改 n、e 和 d 的值时
-
原始或“教科书”RSA 不安全。你应该填充你的明文,除非这是一个练习并且你不担心安全性。
标签: c++ encryption rsa public-key-encryption crypto++