【非对称加密openssl协议在php7实践】教程文章相关的互联网学习教程文章

php – MCrypt rijndael-128到OpenSSL aes-128-ecb转换【代码】

由于Mcrypt已被弃用,我想在我的代码中使用OpenSSL,因为我们已经在我们的服务器中使用了PHP 7.0.17并且没有告诉他们何时升级它. 某些第三方API(可能在PHP 5.x上托管并使用mcrypt)正在使用加密数据.他们提供了用于加密/解密字符串的方法. 他们是这样的$secret = 'a0a7e7997b6d5fcd55f4b5c32611b87c' ;public function encrypt128($str){$block = mcrypt_get_block_size("rijndael_128", "ecb");$pad = $block - (strlen($str) % $b...

php – 用OpenSSL替换Mcrypt【代码】

目前我们在我们的系统上有一个mcrypt实现,用于在PHP应用程序中隐藏一些敏感数据.现在我们有了一个新的要求,我们必须将crypt模块更改为openssl.另一件重要的事情是我们使用密码河豚和模式ecb.所以我开始测试有什么区别以及如何使用openssl解密mcrypt加密字符串. 我使用标准的PHP函数: > mcrypt_encrypt与openssl_encrypt> mcrypt_decrypt与openssl_decrypt 两种方法都会产生不同的结果.第二件事是在两种类型的给定密码(河豚)和模式...

php – 回显OpenSSL的所有预定义常量【代码】

是否可以在PHP 5.x中回显所有predefined constants的OpenSSL,例如通过一个循环?解决方法:get_defined_constants()将返回所有已定义的常量,您可以从中提取具有OpenSSL前缀的常量.foreach (get_defined_constants() as $c => $val) {if (strpos($c, "OPENSSL_") === 0 || strpos($c, "PKCS7_") === 0 || strpos($c, "X509_") === 0) {echo $c . "\n";} }

哪个openssl版本支持php中的sha256

我为我们的客户编写了一个简单的php库.该库使用openssl验证和签名方法,使用SHA256算法.我认为SHA256的这种算法支持对PHP和openssl来说是一种新的.但我不知道支持SHA256的版本已经开始. 这会导致使用早期版本的openssl和php的客户端出现一些问题.我找不到上面指定的版本. 那么版本是什么,openssl首先开始在rsa签名和验证中支持sha256? 提前致谢.解决方法:由于PHP DOCS OPENSSL_ALGO_SHA256恒定输入首先在PHP 5.4.8中添加. 我在尝试...

php – 使用Blowfish和ECB将mcrypt迁移到OpenSSL【代码】

我不能为我的生活弄清楚如何将我的传统mcrypt代码迁移到OpenSSL.我得到了CBC的Blowfish和CBC的Rijndael,但是欧洲央行的Blowfish正在躲避我. 是的,我读了Moving from mcrypt with Blowfish & ECB to OpenSSL,我尝试对数据进行零填充,而不是对数据进行零填充,对键进行零填充,在键上循环以及它们的任何组合,似乎没有任何效果. 这是我的代码:<?php function encrypt_with_mcrypt($data, $key) {return mcrypt_encrypt(MCRYPT_BLOWFISH...

php – 为什么我不能使用openssl_encrypt?

我正在尝试在客户端的Web服务器上实现对openssl_encrypt的调用,并且我收到致命错误未知函数:openssl_encrypt().我认为要求是PHP 5.3.0及以上?从phpinfo() dump看,服务器运行5.3.3. 是什么赋予了?解决方法:要使用openssl_函数,您必须a)拥有OpenSSL installed,以及b)使用OpenSSL支持构建PHP.见PHP OpenSSL docs.To use PHP’s OpenSSL support you must also compile PHP --with-openssl[=DIR]

software-installation – 如何使用OpenSSL 1.0.1在solaris 10上安装php7【代码】

我想在Solaris 10上安装php7. OpenSSL 1.0.1从https://www.opencsw.org/packages/libssl1_0_0/开始安装 检查已安装的ssl我做了pkginfo -i | grep -i "ssl" 我得到了这个输出:application CSWlibssl1-0-0 libssl1_0_0 - Openssl 1.0 runtime libraries GNOME2 SUNWopenjade DSSSL-Engine for SGML documents GNOME2 SUNWopenjade-devel DSSSL-Engine for SGML docu...

apt – PHP OpenSSL扩展有一个包吗?【代码】

我知道OpenSSL扩展是PHP源代码,但是当我执行apt-get install php5时我无法启用它.甚至没有apt-get install php5-openssl.我该怎么办?解决方法:我认为SSL支持不依赖于扩展,它已经内置到Ubuntu的PHP中.尝试使用以下内容在Web服务器中创建PHP文件:<?php phpinfo() ?>然后在浏览器中访问它(http://< server> /< file> .php).你应该看到: 和 我只安装了这些PHP软件包:libapache2-mod-php5,php5-cli,php5-common,php5-gd,php5-mcryp...

php – openssl_csr_sign返回false无法获取证书【代码】

所以,我尝试使用PHP和Openssl创建自己的CA(证书颁发机构).我尝试创建用户CSR并签名.function addcsr(){$dn = array("countryName" => $_POST['CountryName'],"stateOrProvinceName" => $_POST['StateOrProvince'],"localityName" => $_POST['LocalityName'],"organizationName" => $_POST['OrganizationalName'],"organizationalUnitName" => $_POST['OrganizationalUnitName'],"commonName" => $_POST['CommonName'],"emailAddres...

php – OPENSSL_RAW_DATA有什么作用?

我对PHP加密(以及一般的加密)很新,我一直在阅读使用PHP的openssl_encrypt()函数. 可以选择添加一个名为OPENSSL_RAW_DATA的标志.这实际上做了什么,我在哪里可以看到PHP如何在PHP源代码中使用它?解决方法:OPENSSL_RAW_DATA只是告诉openssl_encrypt()将cipherText作为…原始数据返回.默认情况下,它返回Base64编码. 源代码是easy to find,但不是很有用,因为它不像标志做任何额外的事情……相反 – 它告诉PHP不要做Base64编码的额外步骤...

php – 警告:openssl_pkcs7_sign():使用WAMP获取私钥时出错【代码】

我试图使用TCPDF签署PDF,但我有这个错误:Warning: openssl_pkcs7_sign(): error getting private key in C:\wamp\www\tcpdf\tcpdf.php on line 7594. 我的PHP版本是5.5.12和TCPDF 6.2.11. Windows 7的. 其他例子运行良好,但失败了.我试过了:'file://'.( dirname(FILE)).'./path/to/file' and again $certificate = 'file://'.realpath('../tcpdf.crt'); 但对我不起作用.解决方法:我认为file://不正确.你用dirname(__ FILE__)来...

带有openSSL的PHP​​ – 提供的密钥参数不能强制转换为私钥【代码】

我正在尝试使用openssl_sign()函数签名文件.我有以下私钥: —–开始EC私钥—–MHQCAQEEIDzQVg9bJ1kZFsZDoLeqadA4OTgKc40ukSmQ3MVzcV0soAcGBSuBBAAKoUQDQgAEvzUNKCE3UVimCLUePomOUH / kfy0ujHdN5Kmn7ez3TtokJDy5ksVnOgf6WzpmzY46zvKAnQ44Cgx5Kdqx5dVDiw ==—–结束EC私钥—– 我正在使用以下函数:openssl_sign(“test”,$signature,$private_key,OPENSSL_ALGO_SHA256);. 我有一个服务器能够使用给定的密钥进行签名而另一个服务器不...

java – 使用PHP openssl_verify()函数来验证Android客户端APP创建的签名和数据【代码】

我在openssl_verify()上看过帖子 我想问一些与openssl_verify()有关的问题. 因为我的PHP代码无法验证从Java创建的签名… 对于服务器端,这是我的PHP代码<?php $data =$_POST['data']; $signature=$_POST['sig']; $pub_key=$_POST['pubkey'];function print_input() {global $data;global $signature;global $pub_key; //////////////////////////////////////////////////////////////// // I output the public key to file, and c...

php – 卷曲错误:OpenSSL SSL_read:SSL_ERROR_SYSCALL,错误54【代码】

我一直收到这个错误,我正在运行OS X,PHP71,Apache 2.4,OpenSSL php -i | grep“SSL Version”返回SSL Version => OpenSSL的/ 1.0.2k PHP和CURL已经安装如下:$brew install --with-openssl curl$brew install --with-homebrew-curl --with-httpd24 php71解决方法:如果它发生在安装家园laravel时然后以下命令解决了我的问题: vagrant box add laravel / homestead https://atlas.hashicorp.com/laravel/boxes/homestead 而不仅仅是...

在PHP中调用openssl_pkcs7_verify时指定输入格式类型【代码】

我有一个加密/ php问题,我希望有人可以帮助我.我的问题是我有一个签名的PKCS7块,我试图在PHP中验证.但是,当我运行以下PHP命令时:openssl_pkcs7_verify($myfile, PKCS7_BINARY | PKCS7_NOVERIFY, $signers_file);我收到以下错误:PKCS7 routines:SMIME_read_PKCS7:no content type如果我使用ruby这样做:p7container = OpenSSL::PKCS7.new(file_contents); mystore = OpenSSL::X509::Store.new p7container.verify(nil, store, nil...

OPENSSL - 相关标签
PHP7 - 相关标签