PHP 使用 mcrypt 擴展中的 mcrypt_encrypt() 和 mcrypt_decrypt() 對數據進行加密和解密


<?php

/* 使用 mcrypt 擴展中的 mcrypt_encrypt() 和 mcrypt_decrypt() 對數據進行加密和解密 */

// 加密
$algorithm = MCRYPT_BLOWFISH; // 加密算法
$key = 'mycryptkey'; // 加密密鑰
$data = '12345'; // 要加密或解密的數據
$mode = MCRYPT_MODE_CBC; // 加密或解密的模式

// 初始向量
$iv = mcrypt_create_iv(mcrypt_get_iv_size($algorithm, $mode), MCRYPT_DEV_URANDOM);

// 加密數據
$encrypted_data = mcrypt_encrypt($algorithm, $key, $data, $mode, $iv);
$plain_text = base64_encode($encrypted_data);
var_dump($plain_text);
// 每次都會變化的長度12的字符串,例如 vDJCatqAGdg=

///////////////////////////////////////

// 解密
$encrypted_data = base64_decode($plain_text);
$decoded = mcrypt_decrypt($algorithm, $key, $encrypted_data, $mode, $iv);
var_dump(trim($decoded)); // trim刪除末尾增加的NULL字節
// 12345

  

參考:

<PHP Cookbook>3'rd


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM