sm3是一个国产的加密扩展,与md5加密相似。
下载安装步骤:
1.下载链接:https://github.com/luzhuqun/php-sm3
2.git clone该项目到你的linux php源码ext目录下.
3.进入sm3扩展,执行/usr/local/php/bin/phpize
4.执行代码:
./configure --with-php-config=/usr/local/php/bin/php-config
5.编译:
make && make install
6.添加扩展到你的php.ini文件 extension=sm3.so,重启php
7.测试/usr/local/php/bin/php -r "var_dump(sm3('123'));"
输出string(64) "6e0f9e14344c5406a0cf5a3b4dfb665f87f4a771a31f7edbb5c72874a32b2957"
---------------------------------------------------
8.如mac 不能直接使用sm3()函数,使用第三方包:
composer require lizhichao/one-sm
案例:
<?php
require __DIR__ . '/vendor/autoload.php';
$sm3 = new \OneSm\Sm3();
// 字符串签名
echo $sm3->sign('abc') . PHP_EOL;
echo $sm3->sign(str_repeat("adfas哈哈哈", 100)) . PHP_EOL;
// 文件签名
echo $sm3->signFile(__FILE__) . PHP_EOL;
更多案例 https://github.com/lizhichao/sm 感谢 lizhichao。