php 加解密处理openssl_decrypt
生活随笔
收集整理的這篇文章主要介紹了
php 加解密处理openssl_decrypt
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
基礎定義
openssl_encrypt
# 以指定的方式和 key 加密數據,返回原始或 base64 編碼后的字符串 openssl_encrypt(string $data,string $cipher_algo,string $passphrase,int $options = 0,string $iv = "",string &$tag = null,string $aad = "",int $tag_length = 16 ): string|falsedata 待加密的明文信息數據。cipher_algo 密碼學方式。openssl_get_cipher_methods() 可獲取有效密碼方式列表。passphrase 口令(passphrase)。 若 passphrase 比預期長度短,將靜默用 NUL 填充; 若比預期長度更長,將靜默截斷。options options 是以下標記的按位或: OPENSSL_RAW_DATA 、 OPENSSL_ZERO_PADDING。iv 非 NULL 的初始化向量。tag 使用 AEAD 密碼模式(GCM 或 CCM)時傳引用的驗證標簽。aad 附加的驗證數據。tag_length 驗證 tag 的長度。GCM 模式時,它的范圍是 4 到 16。openssl_decrypt
# 采用原始或base64編碼的字符串,并使用給定的方法和密鑰對其進行解密 openssl_decrypt(string $data,string $method,string $key,int $options = 0,string $iv = "",string $tag = "",string $aad = "" ): stringdata 將被解密的密文。method 加密算法,使用openssl_get_cipher_methods()函數獲取可用的加密算法列表。key 密鑰。options options can be one of OPENSSL_RAW_DATA, OPENSSL_ZERO_PADDING.iv 非空的初始化向量。tag AEAD密碼模式中的身份驗證標簽。 如果是錯誤的,驗證失敗,函數返回false.aad 額外的認證數據。操作
<?php $arr = ['a'=>1, 'b'=>2]; $data = json_encode($arr);//加密明文$method = 'DES-ECB';//加密方法$passwd = '12344321';//加密密鑰$options = 0;//數據格式選項(可選)$iv = '';//加密初始化向量(可選)$result = openssl_encrypt($data, $method, $passwd, $options); var_dump($result);$res = openssl_decrypt($result, $method, $passwd, $options); var_dump($res); var_dump(json_decode($res, true));結果
string(24) "GJv+LHgxK4NZzNFcjfJPhg==" string(13) "{"a":1,"b":2}" array(2) {["a"]=>int(1)["b"]=>int(2) }總結
以上是生活随笔為你收集整理的php 加解密处理openssl_decrypt的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring实战学习笔记整理(4)-AO
- 下一篇: 动态规划算法php,php算法学习之动态