php - 如何使用 openssl_public_encrypt 制作 PKCS5 和 PKCS7 填充
问题描述
如何使用 PKCS5 和 PKCS7 填充openssl_public_encrypt
?
这些是选项:
OPENSSL_PKCS1_PADDING
, OPENSSL_SSLV23_PADDING
, OPENSSL_PKCS1_OAEP_PADDING
,OPENSSL_NO_PADDING
解决方案
如何使用 openssl_public_encrypt 进行 PKCS5 和 PKCS7 填充?
openssl_public_encrypt
与非对称加密(通过公钥加密)一起使用,实际上只有列出的填充可用。
PKCS7 填充与对称加密 (openssl_encrypt) 一起使用。
openssl_encrypt
您可以使用文档pkcs#7 填充。显然(根据评论)在未指定选项时使用 pkcs#7 填充。
似乎在 php 中您必须自己处理,请参阅如何从 AES 加密字符串中添加/删除 PKCS7 填充?
请注意 - 我不是 php 开发人员,所以如果有更好的方法,请评论/更正。
推荐阅读
- kubernetes - 更新使用 ReadWriteOnce 卷的部署将在挂载时失败
- c++ - 试图将未知数量的字符串推入向量,但我的 cin 循环没有终止
- swift - 请在 Swift 中对 cellForRowAt 进行代码审查
- python - 使用 ansible expect 创建 nessus 用户 (nessuscli)
- soapui - 当响应包含 utf-8 时,SOAPUI 开源包含 C-DATA 标记
- php - 如何从文本文件中过滤掉字母(字符串的开头和结尾),然后将它们打印出来
- c# - 如何使用c#将sql数据库服务器连接到windowsform中的用户控件?
- apache - Solr 索引在发布 PDF 时引发错误
- javascript - 如何使用脚本在 HTML 中禁用/启用范围控件?
- html - 具有嵌套固定属性的 CSS 定位