精华内容
下载资源
问答
  • PHP加密扩展库Mcrypt安装和实例mcrypt简单介绍PHP程序员们在编写代码程序时,除了要保证代码的高性能之外,还有一点是非常重要的,那就是程序的安全性保障。PHP除了自带的几种加密函数外,还有功能更全面的PHP加密...

    PHP加密扩展库Mcrypt安装和实例

    mcrypt简单介绍

    PHP程序员们在编写代码程序时,除了要保证代码的高性能之外,还有一点是非常重要的,那就是程序的安全性保障。PHP除了自带的几种加密函数外,还有功能更全面的PHP加密扩展库Mcrypt和Mhash。

    其中,Mcrypt扩展库可以实现加密解密功能,就是既能将明文加密,也可以密文还原。

    mcrypt 是 php 里面重要的加密支持扩展库,linux环境下:该库在默认情况下不开启。window环境下:PHP>=5.3,默认开启mcrypt扩展。

    1、Mcrypt()库的安装

    mcypt是一个功能十分强大的加密算法扩展库。在标准的PHP安装过程中并没有把Mcrypt安装上,但PHP的主目录下包含了libmcrypt.dll文件,所以我们只用将PHP配置文件中的这行:extension=php_mcrypt.dll前面的分号去掉,然后重启服务器就可以使用这个扩展库了。

    支持的算法和加密模式

    Mcrypt库支持20多种加密算法和8种加密模式,具体可以通过函数mcrypt_list_algorithms()和mcrypt_list_modes()来显示[1]加密算法

    Mcrypt支持的算法有:

    cast-128

    gost

    rijndael-128

    twofish

    arcfour

    cast-256

    loki97

    rijndael-192

    saferplus

    wake

    blowfish-compat

    des

    rijndael-256

    serpent

    xtea

    blowfish

    enigma

    rc2

    tripledes

    加密模式

    Mcrypt支持的加密模式有:

    cbc

    cfb

    ctr

    ecb

    ncfb

    nofb

    ofb

    stream

    这些算法和模式在应用中要以常量来表示,写的时候加上前缀MCRYPT_和MCRYPT_来表示,如下面Mcrypt应用的

    例子

    DES算法表示为MCRYPT_DES;

    ECB模式表示为MCRYPT_MODE_ECB;

    $str = "我的名字是?一般人我不告诉他!"; //加密内容

    $key = "key:111"; //密钥

    $cipher = MCRYPT_DES; //密码类型

    $modes = MCRYPT_MODE_ECB; //密码模式

    $iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher,$modes),MCRYPT_RAND);//初始化向量

    echo "加密明文:".$str."

    ";

    $str_encrypt = mcrypt_encrypt($cipher,$key,$str,$modes,$iv); //加密函数

    echo "加密密文:".$str_encrypt."

    ";

    $str_decrypt = mcrypt_decrypt($cipher,$key,$str_encrypt,$modes,$iv); //解密函数

    echo "还原:".$str_decrypt;

    ?>

    运行结果:

    加密明文:我的名字是?一般人我不告诉他!

    加密密文: 锍??]??q???L 笑 ??"? ?

    还原:我的名字是?一般人我不告诉他!

    <1>由例子中可看到,使用PHP加密扩展库Mcrypt对数据加密和解密之前,首先创建了一个初始化向量,简称为iv。由 $iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher,$modes),MCRYPT_RAND);可见创建初始化向 量需要两个参数:size指定了iv的大小;source为iv的源,其中值MCRYPT_RAND为系统随机数。

    <2>函数mcrypt_get_iv_size($cipher,$modes)返回初始化向量大小,参数cipher和mode分别指算法和加 密模式。

    <3>加密函数$str_encrypt = mcrypt_encrypt($cipher,$key,$str,$modes,$iv); 该函数的5个参数分 别如下:cipher——加密算法、key——密钥、data(str)——需要加密的数据、mode——算法模式、 iv——初始化向量

    <4>解密函数 mcrypt_decrypt($cipher,$key,$str_encrypt,$modes,$iv); 该函数和加密函数的参数几乎 一样,唯一不同的是data,也就是说data为需要解密的数据$str_encrypt,而不是原始数据$str。

    注:加密和解密函数中的参数cipher、key和mode必须一一对应,否则数据不能被还原

    总结

    mcrypt库常量

    Mcrypt库支持20多种加密算法和8种加密模式。可以通过函数mcrypt_list_algorithms()和mcrypt_list_modes()来查看。相关阅读:

    Windows 10首年免费升级 结束后定价仍是谜

    cocos2dx骨骼动画Armature源码剖析(一)

    JS控制弹出新页面窗口位置和大小的方法

    php中DOMElement操作xml文档实例演示

    CSS层透明实现方法

    javascript实现英文首字母大写

    C#实现将程序锁定到Win7任务栏的方法

    第一次编写Java流布局图形界面

    深入理解node exports和module.exports区别

    Android下保存简单网页到本地(包括简单图片链接转换)实现代码

    PHP 常用的header头部定义汇总

    Win10升级提示 抢镜美国天气预报电视直播

    JS使用正则表达式过滤多个词语并替换为相同长度星号的方法

    alert出数组中的随即值代码

    展开全文
  • MacOSx下安装mcrypt

    2021-04-22 01:03:32
    #本博客已迁移至 [www.0x520.com][1] [1]:... sudo port -v selfupdate Now, install memcached: sudo port install php5-mcrypt Copy the newly created shared object for mcrypt into Mac OS X’s default ...

    #本博客已迁移至 [www.0x520.com][1] [1]:http://www.0x520.com

    Download and install MacPorts from http://macports.org.

    The following steps are performed in the Terminal:

    Force MacPorts to update (will only work if Apple's Xcode installed):

    sudo port -v selfupdate

    Now, install memcached:

    sudo port install php5-mcrypt

    Copy the newly created shared object for mcrypt into Mac OS X’s default PHP5 extension directory:

    sudo cp /opt/local/lib/php/extensions/no-debug-non-zts-20090626/mcrypt.so /usr/lib/php/extensions/no-debug-non-zts-20090626/

    Next, you need to edit php.ini to add the extensions. Find the phrase Dynamic Extensions, and add:

    extension=mcrypt.so

    And finally, restart Apache:

    sudo apachectl restart

    展开全文
  • PHP程序员们在编写代码程序时,除了要保证代码的高性能之外,还有一点是非常重要的,那就是程序的安全性保障。...1.PHP加密扩展库Mcrypt安装在标准的PHP安装过程中并没有把Mrcypt安装上,但PHP的主目录下包含了libmc...

    PHP程序员们在编写代码程序时,除了要保证代码的高性能之外,还有一点是非常重要的,那就是程序的安全性保障。PHP除了自带的几种加密函数外,还有功能更全面的PHP加密扩展库Mcrypt和Mhash。

    其中,Mcrypt扩展库可以实现加密解密功能,就是既能将明文加密,也可以密文还原。

    1.PHP加密扩展库Mcrypt安装

    在标准的PHP安装过程中并没有把Mrcypt安装上,但PHP的主目录下包含了libmcrypt.dll和libmhash.dll文件 (libmhash.dll是Mhash扩展库,这里可以一起装上)。首先,将这两个文件复制到系统目录windows/system32下,然后在 PHP.ini文件中按Ctrl+F快捷键跳出查找框,并找到;extension=php-mcrypt.dll和; extension=php_mhash.dll这两个语句,接着将前面的“;”去掉;最后,保存并重启Apache服务器即可生效。

    2.PHP加密扩展库Mcrypt的算法和加密模式

    Mcrypt库支持20多种加密算法和8种加密模式,具体可以通过函数mcrypt_list_algorithms()和mcrypt_list_modes()来显示,结果如下:

    Mcrypt支持的算法有:cast-128 gost rijndael-128 twofish arcfour cast-256 loki97 rijndael-192 saferplus wake blowfish-compat des rijndael-256 serpent xtea blowfish enigma rc2 tripledes

    Mcrypt支持的加密模式有:cbc cfb ctr ecb ncfb nofb ofb stream

    这些算法和模式在应用中要以常量来表示,写的时候加上前缀MCRYPT_和MCRYPT_来表示,如下面Mcrypt应用的例子:

    DES算法表示为MCRYPT_DES;

    ECB模式表示为MCRYPT_MODE_ECB;

    3.PHP加密扩展库Mcrypt应用

    先看一个例子,了解Mcrypt的工作流程,再来看看部分流程使用的函数:

    ";  $str_encrypt = mcrypt_encrypt($cipher,$key,$str,$modes,$iv);  //加密函数  echo "加密密文:".$str_encrypt." 

    ";  $str_decrypt = mcrypt_decrypt($cipher,$key,$str_encrypt,$modes,$iv);  //解密函数  echo "还原:".$str_decrypt;  ?>

    运行结果:

    加密明文:我的名字是?一般人我不告诉他!

    加密密文: 锍盌?]鸴?q攦軄L 笑 郺葄"簻 黙

    还原:我的名字是?一般人我不告诉他!

    <1>由例子中可看到,使用PHP加密扩展库Mcrypt对数据加密和解密之前,首先创建了一个初始化向量,简称为iv。由 $iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher,$modes),MCRYPT_RAND);可见创建初始化向 量需要两个参数:size指定了iv的大小;source为iv的源,其中值MCRYPT_RAND为系统随机数。

    <2>函数mcrypt_get_iv_size($cipher,$modes)返回初始化向量大小,参数cipher和mode分别指算法和加 密模式。

    <3>加密函数$str_encrypt = mcrypt_encrypt($cipher,$key,$str,$modes,$iv); 该函数的5个参数分 别如下:cipher——加密算法、key——密钥、data(str)——需要加密的数据、mode——算法模式、 iv——初始化向量

    <4>解密函数 mcrypt_decrypt($cipher,$key,$str_encrypt,$modes,$iv); 该函数和加密函数的参数几乎 一样,唯一不同的是data,也就是说data为需要解密的数据$str_encrypt,而不是原始数据$str。

    注:加密和解密函数中的参数cipher、key和mode必须一一对应,否则数据不能被还原

    展开全文
  • 本节讲解LAMP环境搭建过程中mhash和mcrypt源码包的安装过程。mhash源码包安装mhash 是基于离散数学原理的不可逆向的 PHP 加密方式扩展库。mhash 可以用于创建校验数值,消息摘要,消息认证码,以及无须原文的关键...

    本节讲解LAMP环境搭建过程中 mhash和mcrypt源码包的安装过程。

    mhash源码包安装

    mhash 是基于离散数学原理的不可逆向的 PHP 加密方式扩展库。mhash 可以用于创建校验数值,消息摘要,消息认证码,以及无须原文的关键信息保存(如密码)等。

    安装步骤如下:

    [root@localhost ~]# cd /usr/local/src/mhash-0.9.9.9.tar.gz

    [root@localhost ~]# cd /usr/local/src/mhash-0.9.9.9.tar.gz

    #进入解压缩目录

    [root@localhost mhash-0.9.9.9]#./configure

    #没有指定安装位置。因为在mcrypt包安装时,会在默认位置查找mhash包,如果指定了安装位置,

    #那么mcrypt包在安装时会报错

    [root@localhost mhash-0.9.9.9]# make

    #编译

    [root@localhost mhash-0.9.9.9]# make install >> /root/mhash_install.log

    #编译安装。把安装过程保存在mhash_install.log文件中,便于删除

    mcrypt源码包安装

    mcrypt是 PHP 里面重要的加密支持扩展库。mcrypt 库支持 20 多种加密算法和 8 种加密模式。mcrypt 要比 libmcrypt 更加先进,在很多项目中必须使用 mcrypt 加密方式。请大家注意,在安装 mcrypt 之前,必须先正确安装 libmcrypt 和 mhash。

    安装步骤如下:

    [root@localhost mhash-0.9.9.9]# cd /usr/local/src/mcrypt-2.6.8

    #进入源码目录

    [root@localhost mcrypt-2.6.8]#

    LD_LIBRARY_PATH=/usr/local/libmcrypt/lib:/usr/ local/lib./configure --with-libmcrypt-prefix=/usr/local/libmcrypt

    #LD_LIBRARY_PATH用于指定libmcrypt和mhash库的位置

    #./configure为编译前准备命令,——with-libmcrypt-prefix用于指定libmcrypt软件位置

    [root@localhost mcrypt-2.6.8]# make

    #编译

    [root@localhost mcrypt-2.6.8]# make install

    #编译安装

    请大家注意,在这里 mcrypt 并没有安装完成。因为 mcrypt 是 PHP 的模块,所以需要等到 PHP 安装完成之后,再继续安装。

    有关PHP模块的安装过程,可以参照《Linux安装PHP过程详解》一文进行安装。

    PHP 模块安装成功后,才能按照以下步骤继续安装 mcrypt。

    1)编译安装

    命令如下:

    [root@localhost memcache-3.0.8]# cd /lamp/php-5.4.25/ext/mcrypt/

    #进入PDO模块的解压缩目录

    [root@localhost mcrypt]# /usr/local/php/bin/phpize

    #使用phpize加载PDO模块

    [root@localhost mcrypt]# ./configure \ #编译前配置

    --with-php-config=/usr/local/php/bin/php-config \#指定php-config文件的位置

    --with-mcrypt=/usr/local/libmcrypt/ #调用libmcrypt

    [root@localhost mcrypt]# make

    #编译

    [root@localhost mcrypt]# make install

    #编译安装

    2) 修改PHP配置文件

    要让 PHP 可以识别和使用 memcache 和 mcrypt 模块,还需要修改一下 PHP 的配置文件,命令如下:

    [root@localhost mcrypt]# vi /usr/local/php/etc/php.ini

    #修改PHP配置文件

    extension_dir = "./"

    #在这个文件中找到这句话,把它改为以下这句话

    extension_dir="/usr/local/php//lib/php/extensions/no-debug-non-zts-20060613/"

    #新加入以下两句话

    extension="memcache.so";

    extension="mcrypt.so";

    安装完成之后,重启 apache,就可以在 phpinfo 页面中看到这两个模块了。

    展开全文
  • libmcrypt是加密算法扩展库,支持 DES、3DES、RIJNDAEL、...安装步骤如下。1) 进入解压缩目录命令如下:[root@localhost libxml2-2.9.1]# cd /usr/local/src/libmcrypt-2.5.82) 编译前配置,并指定安装位置命令如下...
  • php7.3安装mcrypt扩展

    2021-08-01 16:40:30
    安装的php7.3,在扩展列表中没有了mcrypt这个扩展,所以只能手动安装。具体安装方法如下: 重点: 编辑/etc/ld.so.conf文件把库文件目录加上 vim /etc/ld.so.conf include ld.so.conf.d/*.conf # 默认只有这一行 /...
  • 首先我们看看报错问题:Call to undefined function App\Http\PayModels\Online\mcrypt_get_block_size(),然后我就不断的去找度娘,各种办法都试过了,依然没有得到解决,报错如下图所示:首先我们按照度娘解决办法...
  • mcrypt简单介绍PHP程序员们在编写代码程序...其中,Mcrypt扩展库可以实现加密解密功能,就是既能将明文加密,也可以密文还原。mcrypt 是 php 里面重要的加密支持扩展库,linux环境下:该库在默认情况下不开启。wind...
  • 环境:ubuntu 18.04 ...安装步骤: sudo apt-get -y install gcc ...注意:安装完扩展后,使用php -m命令,查看是否有mcrypt扩展,如果没有,需要在php.ini文件内增加 extension=mcrypt.so;保存,推出,再查看是否有该扩
  • 在php中如果我们要使用PHP Mcrypt加密扩展库就必须先安装好这个加密扩展库,然后再可以使用,因为它与gd库一样默认是未安装的哦。mcrypt简单介绍PHP程序员们在编写代码程序时,除了要保证代码的高性能之外,还有一点...
  • 更新2015/10为El Captian:与OS X...解使用Homebrew包管理器无痛地构建和安装完整的PHP,并在Apache的配置中替换它。如果您按照以下步骤,整个过程只需要大约十分钟。快速(但完整)步行(注1:我在这里使用Homebrew,O...
  • PHP模块mcrypt模块安装

    2021-04-19 09:03:10
    今天想了解一下PHP的加密函数,但是需要mcrypt模块,就自己编译一遍,没想到如此复杂,所以记录下来,也好和大家分享PHP模块mcrypt安装步骤:1. 确认是否已安装libmcryptldconfig -p | grep libmcrypt如果没有安装:...
  • 安装mcrypt扩展模块

    2021-02-02 08:02:04
    CentOS下php安装mcrypt扩展(以下步骤均为本人实际操作,可能与你的安装方法有所区别,但我会尽量排除疑惑)大致步骤(1)安装mcrypt,(2)安装php对mcrypt的扩展,(3)重启apache(1)、确认你的linux没有安装mcrypt库,...
  • Linux 和 mac os 下php安装mcrypt扩展 1、下载 libmcrypt, mcrypt源码压缩包(gz或tgz格式) libmcrypt-2.5.8.tar.gz或者去这里libmcrypt下载你需要的版本。 例如 libmcrypt-2.5.8.tar.gz, mcrypt-1.0.4.tgz ...
  • PHP安全处理之Mcrypt使用总结: 我们知道在编写代码程序时,除了要保证代码的高性能,还有一个非常重要的,就是数据的安全。对于php而言,它本身提供了几种加密数据的办法,不过还是有限,对于满足特殊数据加解密...
  • 这篇文章主要为大家介绍了CentOS系统下通过yum安装php mcrypt扩展的方法,需要的朋友可以参考下使用 yum install php-mcrypt 安装mcrypt扩展时会提示没有安装包Setting up Install ProcessNo package php-mcrypt ...
  • PHP程序员们在编写代码程序...其中,Mcrypt扩展库可以实现加密解密功能,就是既能将明文加密,也可以密文还原。mcrypt 是 php 里面重要的加密支持扩展库,linux环境下:该库在默认情况下不开启。window环境下:PHP&...
  • 下面两种情况都可以考虑下是否是mcrypt这个库未安装 提示:Call to undefined function mcrypt_module_open() 安装mcrypt扩展库 人人商城登录失败也可以看下是否是自己未安装mcrypt扩展库,默认是用mcrypt库进行AES...
  • 源码编译安装,去http://www.sourceforge.net下载Libmcrypt,mhash,mcrypt安装包libmcrypt(libmcrypt-2.5.8.tar.gz ):mcrypt(mcrypt-2.6.8.tar.gz ):mhash(mhash-0.9.9.9.tar.gz ):2 .先安装Libmcrypt#tar -zxvf ...
  • (以下步骤均为本人实际操作,可能与你的安装方法有所区别,但我会尽量排除疑惑)大致步骤(1)安装mcrypt,(2)安装php对mcrypt的扩展,(3)重启apache(1)、确认你的linux没有安装mcrypt库,如果已安装,跳过安装步骤...
  • linux安装mcrypt扩展

    2020-12-24 01:47:24
    #tar-zxvflibmcrypt-2.5.8.tar.gz#cdlibmcrypt-2.5.8#./configure#make#makeinstall说明:libmcript默认安装在/usr/local 安装完后重启机器3.安装mhash#tar-zxvfmhash-0.9.9.9.tar.gz#cdmhash-0.9.9.9#./configure#...
  • php 7.0 安装mcrypt

    2021-04-11 12:26:33
    java中字节流与字符流的区别字节流 在I/O类库中,java.io.InputStream和java.io.OutputStream分别表示字节输入流和字节输出流,它们都是抽象类,不能实例化,数据流中的最小单位是字节,所以叫做字 ......
  • Mcrypt 简介Mcrypt 库提供了对多种块算法的支持, 包括:DES,TripleDES,Blowfish (默认), 3-WAY,SAFER-SK64,SAFER-SK128,TWOFISH,TEA,RC2 以及 GOST,并且支持 CBC,OFB,CFB 和 ECB 密码模式安装过程 ...
  • 本篇排错的前提是只想用 yum 安装,不想使用源码包编译安装。 ▪ 错误 MySQL 安装依赖 libmcrypt 包,最快捷的方法就是使用 yum 安装: $ yum -y install libmcrypt 执行以后出现以下错误: Setting up Install ...
  • 使用第三方源实现yum安装,推荐使用RPMforge,在centos下配置该yum源,配置后即可尝试yum install libmcrypt, yum install libmcrypt-devel, yum install mcrypt-devel 安装该库。本人没有实际操作,不确定具体该包...
  • 以前安装opencart的时候倒是不需要mcrypt 这个库。但是新版本需要了。加上自己的 是mac环境。当时闲麻烦,就一直没装。这次下午就寻思给装上吧! 1.首先你要先安装xcode这个工具。不然没办法编译! xcode这个可以在...
  • mcrypt扩展,是一个加密库。mcrypt扩展的主要问题在于它基于自2007年开发的libmcrypt。因此,它已经有10年了,该库仍在使用。由于mcrypt扩展的开发已经结束,PHP 7.2中的扩展也被移除并转移到非官方的PECL存储库。...
  • 为yum方式安装的php添加mcrypt扩展安装mcrypt库yum install libmcrypt libmcrypt-develmcrypt mhash安装php的mcrypt扩展(动态加载编译)下载php的源码编译包...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 27,546
精华内容 11,018
关键字:

mcrypt安装