Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

php加密和解密

作者:硝烟   发布日期:2025-04-19   浏览:890

PHP提供了多种加密和解密的函数和算法,常用的有以下几种:

  1. md5加密:使用md5函数进行加密,返回一个32位的字符串,无法解密。

    $password = '123456';
    $encrypted_password = md5($password);
  2. sha1加密:使用sha1函数进行加密,返回一个40位的字符串,无法解密。

    $password = '123456';
    $encrypted_password = sha1($password);
  3. base64加密和解密:使用base64_encode函数进行加密,使用base64_decode函数进行解密。

    $data = 'Hello World';
    $encrypted_data = base64_encode($data);
    $decrypted_data = base64_decode($encrypted_data);
  4. 对称加密和解密:使用openssl_encrypt函数进行加密,使用openssl_decrypt函数进行解密。需要提供一个密钥和一个初始化向量(IV)。

    $data = 'Hello World';
    $key = 'mykey';
    $iv = '1234567890123456';
    $encrypted_data = openssl_encrypt($data, 'AES-128-CBC', $key, OPENSSL_RAW_DATA, $iv);
    $decrypted_data = openssl_decrypt($encrypted_data, 'AES-128-CBC', $key, OPENSSL_RAW_DATA, $iv);
  5. 非对称加密和解密:使用openssl_public_encrypt函数进行加密,使用openssl_private_decrypt函数进行解密。需要提供一个公钥和一个私钥。

    $data = 'Hello World';
    $public_key = openssl_pkey_get_public(file_get_contents('public.pem'));
    $private_key = openssl_pkey_get_private(file_get_contents('private.pem'));
    openssl_public_encrypt($data, $encrypted_data, $public_key);
    openssl_private_decrypt($encrypted_data, $decrypted_data, $private_key);

需要注意的是,对称加密和非对称加密的密钥和初始化向量需要妥善保管,避免被泄露。

上一篇:nginx升级php(nginx升级TCP)

下一篇:php 垂直树型(php垂直居中)

大家都在看

php session用法

phpisset函数

php后端

php爬虫框架

php读取csv文件

php 三元表达式

php文件加密

php 拆分字符串

php pcntl

php ||

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站