问题标签 [php-openssl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3499 浏览

openssl - OpenSSL version for Heartbleed

How does one check the version of OpenSSL for the Heartbleed vulnerability on CentOS systems, and what is the procedure for manually updating it?

0 投票
2 回答
20601 浏览

php - 在使用 curl 时,出于安全原因,如何使我的 cacert.pem 保持最新状态?

我想让我的根证书保持最新,以便与 cURL 和 PHP 的内部curl命令一起使用,但是目前没有参数可以下载正确安全连接所需的当前文件并保持最新。

在 PHP 中使用安全连接的示例curl需要一个名为cacert.pem(PEM 编码的证书链用于验证远程连接)的文件,如下所示:

而大多数人只是简单地设置CURLOPT_SSL_VERIFYPEER为 false,从而忽略了这个问题,这很糟糕。您可以在此处看到证书颁发机构显示,如果您没有当前文件,则连接到安全服务器的唯一方法是禁用证书检查并进一步警告禁用对等验证背后的含义

我要求的是一种维护本地副本的合法方式,cacert.pem以便当我curl在 PHP 中使用与其他服务器通信时,我可以继续安全地这样做。

这不是对外部资源或非现场链接等的请求,但是由于问题的性质,这可能是解决此问题的唯一方法,因为它需要在证书链被吊销时不断更新。迄今为止,无论是作为 curl 本身、php 或 php 的 curl 库的一部分,都无法获取此文件并继续维护它。虽然令人沮丧的是,这不是一个简单的更新命令curl --update-root-ca会很好的东西,但它不以任何形式存在。

0 投票
1 回答
3518 浏览

php - 启用 php_openssl 不起作用

我试图启用 php_openssl 但它不起作用,

我有点和这个问题相同的问题 Enabling the OpenSSL in XAMPP

在我的 php.ini 中没有扩展 extension=php_openssl.dll

但是有这个 OPENSSL_CONF C:/xampp/apache/bin/openssl.cnf

所以我将 extension=php_openssl.dll 添加到我的 php.ini 但是当我添加时,我检查了我的 xampp\php\ext 并且没有 php_openssl.dll 文件,

所以我用谷歌搜索了这个模块,然后我把它放在我的 xampp\php\ext restart apache 中,但仍然出现错误 - 找不到指定的模块

我当前的版本是 xampp 1.7.3 php 5.3.1

如果可以提供模块的下载链接,或者指导...谢谢

0 投票
1 回答
401 浏览

php - PHP 使用多个公钥加密数据

我需要使用公钥/私钥系统对数据进行非对称加密(二进制和文本)。目前我正在使用 openssl_seal,因为我需要使用多个公钥加密数据。结果,我收到了一条加密消息(很好)和两个或更多信封(不太好)。后者不太好,因为我还必须将这些信封存储到数据库中。对于每条小消息,我需要存储至少两个信封,这可能比消息本身还大。

然后我想起了 GnuPG:我可以给多个收件人写一封邮件,并且可以这样加密消息,每个人都可以用他/她自己的私钥解密消息。不需要信封。所以我在 PHP 中寻找了一个 GnuPG 库,但我只找到了一个 linux 解决方案。不满意,因为我们也有 Windows 系统。

是否有任何公钥/私钥库可以使用多个公钥加密消息/数据而无需担心信封?

我需要的是一个可以创建公钥/私钥集的库,2048 或 4096 位强。

该库必须具有使用一个、两个或多个公钥加密任何类型的数据的功能,并且只有一个简单的数据块作为结果。

该库必须具有一个功能,以便可以使用任何相应的私钥对加密数据进行解密。

任何提示或想法?也许OpenSSL中有一个特殊的功能?IIRC,我也可以用 S/MIME 加密给几个收件人写电子邮件。它只是一封包含许多收件人的电子邮件。没有单独的信封。

提前致谢

亨内斯

0 投票
6 回答
33740 浏览

php - 在 Windows 7 上安装 TYPO3 6.2.2 时 PHP OpenSSL 扩展不起作用

我在 Windows 7 上安装了 TYPO3 6.2.2,但收到如下错误消息:

PHP OpenSSL extension not working Something went wrong while trying to create a new private key for testing. Please check the integration of the PHP OpenSSL extension and if it is installed correctly.

我尝试在互联网上找到有关此错误的解决方案,但我无法解决此错误。

任何人都可以帮我找到解决方案吗?谢谢。

0 投票
1 回答
192 浏览

php - PHP openssl_解密数据

我有一种情况,我从供应商那里收到了一些需要解码的加密数据。

数据已使用我的公钥加密并与供应商私有签名,然后进行 base64 编码并作为 POST 变量传输到我的服务器。- 我无法控制这个。对于更多的供应商来说,它正在运行一个.net 系统,而我们的系统是一个 linux 发行版。

我在解密这些数据时遇到了很多困难,因此将不胜感激任何帮助。有人告诉我,我可以在使用我的私钥和供应商公钥对数据进行 base64 解码后“简单地”解码。

我目前拥有的代码如下所示

我熟悉 PHP,但之前从未使用过 openssl 库

它实际上来自 SSO 类型的应用程序,但是我不相信我需要实现 phpSAMP 等,因为我需要做的就是解密发送给我的数据(断言)

我也有点不确定我使用的公钥和私钥是否 100% 正确。当我查看我的公钥时,它更像是私钥的外观而不是十六进制格式。

我的私钥看起来像:

公钥看起来像:

我在互联网上进行了很好的浏览,找不到任何针对此特定问题的工作示例。

提前致谢。

0 投票
1 回答
8089 浏览

php - 在 php 5.3 中使用 openssl_decrypt 中的 OPENSSL_RAW_DATA 参数

我的公司正在我们的网站上实施 V.me 结帐。Visa 为我们提供了一个用于解密数据的 php 帮助函数文件,但其中一个与参数一起使用openssl_decrypt,该OPENSSL_RAW_DATA参数仅在 PHP 5.4.something 中可用。

我们正在运行 PHP 5.3,并且没有升级选项。在没有可用的全局参数的情况下,如何修改此函数以使其仍然执行其设计目的?

0 投票
5 回答
8886 浏览

php - 处理“缺少 openssl 扩展:在 XAMPP 中

我试图在我的 PC 上安装 composer(Windows 8 Pro 64x 和 XAMPP 3.2.1),所以我下载了 Windows Installer 并运行它但我收到了这个错误:

缺少 openssl 扩展,这意味着安全的 HTTPS 传输是不可能的。

我搜索了这个问题并尝试了一些解决方案

扩展=php_openssl.dll

C:\xampp\php\php.ini的 php.ini 文件中取消注释并且我的系统上没有其他 php.ini 文件(我搜索过)

此外,当我在 CMD 中运行“php --ini”命令时,我得到以下信息:

配置文件 (php.ini) 路径:C:\windows

加载的配置文件:(无)

在以下位置扫描其他 .ini 文件:(无)

解析的其他 .ini 文件:(无)

如果有帮助。

我希望有人帮助我。肿瘤坏死因子

0 投票
1 回答
363 浏览

php - PHP 无法启用模块

目前我们正在尝试在 PHP 中启用 openssl 模块。我们做了以下事情:

  1. 取消注释extension=php_openssl.dllphp.ini 中的行(在 phpinfo 页面中定义的路径)。
  2. 在服务窗口中重新启动 Apache 服务器。

检查 phpinfo 页面后,OpenSSL 没有出现在模块列表中,因此我们假设它因此未启用。

是否有任何其他方法可以启用它,或者我是否忽略了一些需要解决的步骤或问题?

0 投票
2 回答
7945 浏览

php - openssl_encrypt,openssl_decrypt 密钥,iv

根据OpenSSLhttps://www.openssl.org/docs/apps/enc.html#OPTIONS)的文档,他们期望and的hex-digit值;这是否意味着只有数字?或者哈希会做吗?(因为 a似乎不可逆)keyivmd5md5

  • 注意我提到key的是iv因为$passwordPHP函数openssl_encrypt实际上是关键。

(几乎)直接来自PHP评论(http://php.net/manual/en/function.openssl-encrypt.php