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

时间: 2024-10-31 06:40:38

PHP 使用 mcrypt 扩展中的 mcrypt_encrypt() 和 mcrypt_decrypt() 对数据进行加密和解密的相关文章

Java中的加密与解密

Java中的加密与解密主要对数据的安全性提供保障,分为对称和非对称的,对称表示加密密钥和解密密钥是同一个密钥,因此也常常称作私密密钥或秘密密钥,非对称密钥表示加密密钥和解密为两个不同的密钥,一个为公共密钥,另一个则为私密密钥.对称加密解密算法有DES.AES等,非对称加密解密算法有RSA.DH等.对于数据的加密与解密我们通常通过生成密钥,然后通过加密与解密操作类利用密钥对数据进行加密与解密,接下来我们看看Java中如何实现对称.非对称加密与解密. 对称加密与解密:通过KeyGenerator(密

安装和使用php的mcrypt扩展

安装和使用php的mcrypt扩展 PHP程序员们在编写代码程序时,除了要保证代码的高性能之外,还有一点是非常重要的,那就是程序的安全性保障.PHP除了自带的几种加密函数外,还有功能更全面的PHP加密扩展库Mcrypt和Mhash. 其中,Mcrypt扩展库可以实现加密解密功能,就是既能将明文加密,也可以密文还原.PHP加密扩展库Mcrypt的算法和加密模式 Mcrypt库支持20多种加密算法和8种加密模式,具体可以通过函数mcrypt_list_algorithms()和mcrypt_list

PHP加密扩展库—Mcrypt扩展库

在本文开始正文开始之前,我们先来了解一下什么是PHP加密扩展库:PHP中不但几种加密函数(md5,crypt,sha1),在此之外,PHP中还有一些功能比较全面的加密扩展库!就好比php本来不支持操作某种功能 ,但在新版本想对它提供支持,就以扩展的方式来提供,这样,我们在配置php时,如果我们不用此功能,我们就可以让php不加载他.从而节省服务器资源.提供其性能.直线电机选型 在以前的三篇文章<PHP加密函数—crypt()函数加密>.<PHP加密函数—md5()函数加密>以及&l

php7.2 安装mcrypt扩展

升级 php 7.2 后,提示 call to undefined function mcrypt_module_open() :mcrypt 扩展从 php 7.1.0 开始废弃:自 php 7.2.0 起,会移到 pecl.还好,安装过程不复杂,用root用户运行以下命令. pecl apt-get install php-pecl 2.相关扩展 apt-get install libmcrypt-dev libreadline-dev 3.mcrypt pecl install mcryp

ubuntu14php5.5安装mcrypt扩展

安装php5-mcrypt sudo apt-get install php5-mcrypt 编辑php配置文件 sudo gedit /etc/php5/apache2/php.ini 在extension下面加上(任何独立一行就行) extension=php_mcrypt.so (原来的php5-mcrypt.so无效) 保存,重启apache2 sudo /etc/init.d/apache2 restart 如果重启后你的phpinfo里面并没有mcrypt扩展的话: 方案一: cd 

Chrome扩展开发之三——Chrome扩展中的数据本地存储和下载

目录: 0.Chrome扩展开发(Gmail附件管理助手)系列之〇——概述 1.Chrome扩展开发之一——Chrome扩展的文件结构 2.Chrome扩展开发之二——Chrome扩展中脚本的运行机制和通信方式 3.Chrome扩展开发之三——Chrome扩展中的数据本地存储和下载 4.Chrome扩展开发之四——Gmail API的简单介绍 5.Chrome扩展开发之五——OAuth2的理解 6.Chrome扩展开发之六——GmailAssist核心功能的实现(包括Gmail API的使用中的

IIS Web服务扩展中没有Asp.net 2.0

服务器上安装了ASP.NET v2.0组件,但是在IIS的Web服务扩展中并没有找到ASP.NET v2.050727这项,这导致基于.NET2.0开发的网页都无法正常浏览. 解决方法:打开IIS,转至Web服务扩展中,点击右侧窗口任务下的“添加一个新的Web服务扩展”,在弹出的窗口中,点击添加,然后找到 x:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll(x为系统安装盘符, 一盘为C),再点击确定按钮保存设置,最后再设置

Linux下php5.3.3安装mcrypt扩展

具体操作: 一.下载软件包 1.下载php(版本要与系统安装的一致) http://pan.baidu.com/s/1mifTbfE 2.下载libmcrypt(安装mcrypt需要此软件包) http://pan.baidu.com/s/1mifTbfE 3.下载mhash(安装mcrypt需要此软件包) http://pan.baidu.com/s/1mifTbfE 4.下载mcrypt http://pan.baidu.com/s/1mifTbfE 或者: wget http://down

php扩展函数调用扩展中的标准函数

这几天在写php的扩展函数,在网上学习步骤什么的都有,一般问题也都能查到,所以就不再此啰嗦,写这篇博客的原因是因为遇到的一个问题,百度谷歌都没找到,对于初学者,这个或许有用,对于过来人,我想他们肯定也遇到过,所以想想还是写出来吧. 问题:在php的扩展中想调用c已经写好的东西,但是不知道怎么调用,此处想调用的是standard中的标准函数 首先把要调用的标准库的头文件include 进来 如:#include "ext/standard/php_rand.h"  把随机数的头文件加载进