zoukankan      html  css  js  c++  java
  • PHP中几种加密形式

    1.Md5加密和Crypt都是单向加密:

    登陆时把登录密码转为md5值,然后和数据库中的进行比较。

     

    其中crypt中的盐值支持多种:
    以CRYPT_STD_DES是以/0-9A-Za-z/中的两个字符为盐值,如果是以CRYPT_MD5中以$1$开始的12个字符的字符串盐值
    例如:crypt('imooc','this is zmj')就会只取th为盐值和加密后的imooc拼接。
     
    2.sha1加密算法:也是单向加密

    3.URL编码加密技术:

    区别:urlencode把空格变成了+,经过rawurlencode是把空格变成了%20

    url编码用途:可以编码汉字,还可以针对url传参数时,参数的值为abd&dff形式
     
    4.

    这样就可以输出图片
     
    总结:

     

     

     //加密字符串

     1 function encrypt($encrypt,$key="key") {
     2 
     3     $iv = mcrypt_create_iv ( mcrypt_get_iv_size ( MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB ), MCRYPT_RAND );
     4 
     5     $passcrypt = mcrypt_encrypt ( MCRYPT_RIJNDAEL_256, $key, $encrypt, MCRYPT_MODE_ECB, $iv );
     6 
     7     $encode = base64_encode ( $passcrypt );
     8 
     9     return $encode;
    10 
    11 }

    //解密字符串

    1 function decrypt($decrypt,$key="key") {
    2     $decoded = base64_decode ( $decrypt );
    3     $iv = mcrypt_create_iv ( mcrypt_get_iv_size ( MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB ), MCRYPT_RAND );
    4     $decrypted = mcrypt_decrypt ( MCRYPT_RIJNDAEL_256, $key, $decoded, MCRYPT_MODE_ECB, $iv );
    5     return $decrypted;
    6 
    7 }

    1.mcrypt简单介绍

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

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

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

     

    2.支持的算法和加密模式

    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_MODE_来表示,如下面Mcrypt应用的

  • 相关阅读:
    BZOJ 2034 【2009国家集训队】 最大收益
    vijos P1780 【NOIP2012】 开车旅行
    BZOJ 2115 【WC2011】 Xor
    BZOJ 3631 【JLOI2014】 松鼠的新家
    BZOJ 4717 改装
    BZOJ 2957 楼房重建
    BZOJ 4034 【HAOI2015】 T2
    BZOJ 1834 【ZJOI2010】 network 网络扩容
    BZOJ 2440 【中山市选2011】 完全平方数
    BZOJ 2733 【HNOI2012】 永无乡
  • 原文地址:https://www.cnblogs.com/redfire/p/7695802.html
Copyright © 2011-2022 走看看