当前位置:首页 > 技术分享

​CentOS 安装libsodium 支持 crypto_aead_aes256gcm_decrypt 兼容php5.6,php7.2

admin4年前 (2021-12-18)技术分享4355

微信小微商户下载证书返回的密文用 AEAD_AES_256_GCM 算法 解密的方法。其中用到了 string sodium_crypto_aead_aes256gcm_decrypt ( string $ciphertext , string $ad , string $nonce , string $key ) 这个函数。但是这个函数可能你们调用的时候会报错,那是因为使用这个函数需要开启 libsodium 扩展才能使用。


(PHP ≥ 7.2) 直接去 php.ini 开启扩展就行 ,extension=php_sodium.dll 。因为 PHP7.2 版本后 PHP core 中就整合加密库 Libsodium
(PHP < 7.2.0) 需要安装,libsodium

CentOS:安装libsodium


参考:https://zhuanlan.zhihu.com/p/84899708


在http://pecl.php.net/package/libsodium和https://github.com/jedisct1/libsodium-php看了下,


只合适用1.*的版本


wget http://pecl.php.net/get/libsodium-1.0.7.tgz
pecl install libsodium-1.0.7.tgz

 

安装好之后提示:

Build process completed successfully
Installing '/usr/local/php5/lib/php/extensions/no-debug-non-zts-20131226/libsodium.so'
install ok: channel://pecl.php.net/libsodium-1.0.7
configuration option "php_ini" is not set to php.ini location
You should add "extension=libsodium.so" to php.ini

  

vi /usr/local/php/etc/php.ini

添加上

extension=libsodium.so

即可

 

测试代码

<?php
$str='17pV1s3a8bIHpOJrIOtTAuRSEToHhFDU1KFARw==';
$ad = 'fullstackpm'; // 加密证书的随机串
$nonce = '4k3HqbrXwtpg';
$kengen = 'D2Ffwerq2c3242aa2F3RF52B315dff11';
// 解密
$pem=base64_decode($str);
if(version_compare(PHP_VERSION,'7.2.0','<')){
    $v = \Sodium\crypto_aead_aes256gcm_decrypt($pem, $ad, $nonce, $kengen);
}else{
    $v = sodium_crypto_aead_aes256gcm_decrypt($pem, $ad, $nonce, $kengen);
}
var_dump($v);
?>


扫描二维码推送至手机访问。

版权声明:本文由小刚刚技术博客发布,如需转载请注明出处。

本文链接:https://blog.bitefu.net/post/221.html

分享给朋友:

“​CentOS 安装libsodium 支持 crypto_aead_aes256gcm_decrypt 兼容php5.6,php7.2” 的相关文章

php-cgi占用太多cpu资源而导致服务器响应过慢 利用进程和Linux的proc 定位耗资源文件

php-cgi占用太多cpu资源而导致服务器响应过慢 利用进程和Linux的proc 定位耗资源文件

在此环境下,一般php-cgi运行是非常稳定的,但也遇到过php-cgi占用太多cpu资源而导致服务器响应过慢,我所遇到的php-cgi进程占用cpu资源过多的原因有: 1. 一些php的扩展与php版本兼容存在问题,实践证明 e…

超高性比的斐讯盒子T1,刷第三方YYF固件机教程超级详细版

超高性比的斐讯盒子T1,刷第三方YYF固件机教程超级详细版

家里面买了斐讯盒子T1,必不可少的就是刷机,刷机一直爽,一直刷机一直爽,这样的快乐一般人体会不到。原来斐讯盒子N1,T1,还有斐讯K2P路由器也变成了性价比超高的东东,而且众多大神也带来了超多可玩性非常高的固件和破解。楼主今天扒到了相关超高…

2021可用的百度网盘高速下载方法分享

2021可用的百度网盘高速下载方法分享

最新可用方法https://blog.bitefu.net/post/163.html方法很简单就是利用网盘直链下载助手【网盘直链下载助手】是一款免费开源获取网盘文件真实下载地址的油猴脚本,基于PCSAPI,支持Windows,Mac,Li…

贾氏鸣天鼓健耳养肾操

贾氏鸣天鼓健耳养肾操

《贾氏鸣天鼓健耳养肾操》鸣天鼓是健耳强肾治耳病的古法,贾氏越云自创的鸣天鼓健耳养肾操是在古法的基础上创建。顺序:1静坐挺胸。2双手放心脏位置的胸口,左手掌盖住右手掌。3闭目静心,深呼吸19下。4双手相互搓揉,让手掌发热。5用发热的双手手掌严…

php Aes 加密模式ECB填充pkcs5padding base64

最近做支付项目用到了aes加密不过试了好多办法总是和官方给出的结果不一样,找了很久终于找到了测试结果同 http://tool.chacuo.net/cryptaes/ <?php /**  * [Aes&nb…

在CentOS 5.x 6.x里使用yum源 换阿里云国内源换vault.centos.org源

阿里云CentOS 5 的系统,无法用yum来安装应用软件。  原因:CentOS 5 在2017-03-31日已经结束支持,不再提供维护更新,所以包括阿里云镜像站的文件可能都是过时或已经有部分文件缺失。 &n…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。