PHP下SSL加密解密、驗證、簽名方法(很簡單)
更新時間:2020年06月28日 09:29:53 投稿:lijiao
這篇文章主要介紹了PHP下SSL加密解密、驗證、簽名方法,方法很簡單,具有一定的參考價值,感興趣的小伙伴們可以參考一下
超級簡單,依賴于OpenSSL擴(kuò)展,這里就不多廢話了,直接奉上代碼
簽名:
function sign($data) {
//讀取私鑰文件
$priKey = file_get_contents('key/rsa_private_key.pem');
//轉(zhuǎn)換為openssl密鑰,必須是沒有經(jīng)過pkcs8轉(zhuǎn)換的私鑰
$res = openssl_get_privatekey($priKey);
//調(diào)用openssl內(nèi)置簽名方法,生成簽名$sign
openssl_sign($data, $sign, $res);
//釋放資源
openssl_free_key($res);
return $sign;
}
驗證:
function verify($data, $sign) {
//讀取支付寶公鑰文件
$pubKey = file_get_contents('key/alipay_public_key.pem');
//轉(zhuǎn)換為openssl格式密鑰
$res = openssl_get_publickey($pubKey);
//調(diào)用openssl內(nèi)置方法驗簽,返回bool值
$result = (bool)openssl_verify($data, $sign, $res);
//釋放資源
openssl_free_key($res);
return $result;
解密
function decrypt($content) {
//讀取商戶私鑰
$priKey = file_get_contents('key/rsa_private_key.pem');
//轉(zhuǎn)換為openssl密鑰,必須是沒有經(jīng)過pkcs8轉(zhuǎn)換的私鑰
$res = openssl_get_privatekey($priKey);
//聲明明文字符串變量
$result = '';
//循環(huán)按照128位解密
for($i = 0; $i < strlen($content)/128; $i++ ) {
$data = substr($content, $i * 128, 128);
//拆分開長度為128的字符串片段通過私鑰進(jìn)行解密,返回$decrypt解析后的明文
openssl_private_decrypt($data, $decrypt, $res);
//明文片段拼接
$result .= $decrypt;
}
//釋放資源
openssl_free_key($res);
//返回明文
return $result;
}
希望本文所述對大家學(xué)習(xí)php程序設(shè)計有所幫助。
您可能感興趣的文章:
- php實現(xiàn)生成PDF文件的方法示例【基于FPDF類庫】
- PHP中使用Imagick讀取pdf并生成png縮略圖實例
- 使用PHP把HTML生成PDF文件的幾個開源項目介紹
- PHP實現(xiàn)HTML生成PDF文件的方法
- PHP在網(wǎng)頁中動態(tài)生成PDF文件詳細(xì)教程
- PHP中使用TCPDF生成PDF文檔實例
- php FPDF類庫應(yīng)用實現(xiàn)代碼
- PHP中使用imagick實現(xiàn)把PDF轉(zhuǎn)成圖片
- PHP實現(xiàn)在線閱讀PDF文件的方法
- PHP使用MPDF類生成PDF的方法
- php 生成簽名及驗證簽名詳解
- php實現(xiàn)往pdf中加數(shù)字簽名操作示例【附源碼下載】
相關(guān)文章
PHP 將dataurl轉(zhuǎn)成圖片image方法總結(jié)
這篇文章主要介紹了PHP 將dataurl轉(zhuǎn)成圖片image方法的相關(guān)資料,這里提供了兩種方法及實現(xiàn)方式,需要的朋友可以參考下2016-10-10
php編寫的mysqli增刪改查數(shù)據(jù)庫操作類示例
這篇文章主要為大家介紹了php編寫的mysqli增刪改查數(shù)據(jù)庫操作類示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
php-fpm超時時間設(shè)置request_terminate_timeout資源問題分析
之前發(fā)現(xiàn)一個php配置之后關(guān)于返回500和502的問題,今天看到一個兄弟寫的非常不錯,記錄一下2019-09-09
PHP FOR MYSQL 代碼生成助手(根據(jù)Mysql里的字段自動生成類文件的)
根據(jù) Mysql里的字段自動生成類文件的實現(xiàn)代碼,學(xué)習(xí)php的朋友可以參考下。2011-07-07
php 智能404跳轉(zhuǎn)代碼,適合換域名沒改變目錄的網(wǎng)站
適合于換域名,但是目錄沒有改變的網(wǎng)站.也可以用做301定向.轉(zhuǎn)自于落伍,收集過來.怕以后需要.需要的兄弟直接copy過去即可.2010-06-06

