我正在 php 中搜索 RSA。在 php 中使用 RSA 加密/解密文本,在这个站点中我找到了我在搜索的内容: Encrypt and Decrypt text with RSA in PHP
但是第一个和第二个答案不同!第一个答案是一个库(外部文件),但第二个答案是一个内置命令 openssl_public_encrypt(); .
那么库(外部文件)和 openssl_public_encrypt() 有什么不同? 。 因为库(外部文件)可以用RSA加密,而且只能用RSA加密,但是第二个是openssl! 我不明白 openssl 与 RSA 在做什么!
最佳答案
两者PHP OpenSSL和 phpseclib是图书馆。当然,PHP 的 OpenSSL 库总是使用用 C 编写的外部库。使用 phpseclib,您似乎可以选择使用 PHP 代码或 OpenSSL 外部库(在稍微查看了 1615903 提供的源代码之后)。
请注意,OpenSSL 是一个广泛的项目,包含 SSL 的实现(例如,由 Apache Web 服务器的 mod_ssl 模块使用)、一个相当通用的加密库,支持 PKI 和 CMS 以及使用的命令行这些功能。所以也许这就是让你感到困惑的地方;本项目使用 OpenSSL 作为加密库,它不是通过命令行界面调用的。
OpenSSL 是一个被广泛使用的库(您可能希望获得比它实际提供的更好的安全性)。对于加密操作,C 代码比 PHP 代码快得多;大多数脚本语言不太适合加密操作。
关于php - php 中的 RSA 令人困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27719196/