PHP code example of topphp / topphp-rsa
1. Go to this page and download the library: Download topphp/topphp-rsa library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
topphp / topphp-rsa example snippets
命名空间引用:use Topphp\TopphpRsa\RSA2;
$rsaObj = new RSA2();
$data = "要加密的数据";
$eData = $rsaObj->cryptCode($data, "E");// E 加密
$dData = $rsaObj->cryptCode($eData, "D");// D 解密
组件还包含如下方法:
createSecretKey() // 创建公私钥文件
createCertificate() // 创建CA证书文件
cryptReCode() // 私钥加密---公钥解密
getSign() // 私钥生成签名
checkSign() // 公钥验签
certEncrypt() // CA证书公钥加密
certDecrypt() // CA证书私钥解密
助手类(只需要部署时调用一次 RsaHelper::generateSecretKey() 方法,以后加密解密会自动获取公私钥文件内容)
RsaHelper::handler($publicKeyFile, $privateKeyFile);// 返回原始RSA2对象句柄
RsaHelper::generateSecretKey($option);// 生成公私钥文件
RsaHelper::generateCertificate($option);// 生成CA证书文件(有使用CA证书加密解密的需求时,调用此方法生成证书)
RsaHelper::foPubEncrypt($data);// 【公钥加密---私钥解密】 之 加密 支持数组(常用于加密解密)
RsaHelper::foPriDecrypt($pubEncStr);// 【公钥加密---私钥解密】 之 解密(常用于加密解密)
RsaHelper::rePriEncrypt($data);// 【私钥加密---公钥解密】 之 加密 支持数组(常用于签名验签)
RsaHelper::rePubDecrypt($priEncStr);// 【私钥加密---公钥解密】 之 解密(常用于签名验签)
RsaHelper::generateSignature($data);// 生成签名 支持数组
RsaHelper::verifySignature($signStr, $data);// 验证签名
RsaHelper::certEncrypt($data);// 【CA证书公钥加密---私钥解密】 之 加密 支持数组
RsaHelper::certDecrypt($certEncStr, $priPass);// 【CA证书公钥加密---私钥解密】 之 解密
RsaHelper::getErrorMsg();// 获取内部错误信息
更多详细使用方式参看单元测试文件
bash
./vendor/bin/phpunit tests/RSA2Test.php