小编给大家分享一下php文字如何加密,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!
php文字加密方法有:1,通过MD5实现加密;2,通过Crype实现加密;3,通过Sha1实现加密;4,通过“urlencode (string str美元)“实现加密;5,通过base64_encode实现加密等等。
引用><强> php文字加密方法强>
<强> php中的加密方式有如下几种强>
<强> 1。MD5加密
强>字符串MD5 (string str美元[,bool raw_output美元=false)
参数
str,——,原始字符串。
raw_output,,,如果可选的raw_output被设置为真,那么MD5报文摘要将以16字节长度的原始二进制格式返回。
这是一种不可逆加密,执行如下的代码
$密码=& # 39;123456 & # 39;;
回声MD5(密码)美元;
得到结果是e10adc3949ba59abbe56e057f20f883e<强> 2。Crype加密
强>字符串墓穴(string str美元[string盐美元])crypt()返回一个基于标准UNIX DES算法或系统上其他可用的替代算法的散列字符串。
参数
str,,,待散列的字符串。
盐,,,可选的盐值字符串。如果没有提供,算法行为将由不同的算法实现决定,并可能导致不可预料的结束。
这是也一种不可逆加密,执行如下的代码
代码如下:
password 美元;=,& # 39;123456 & # 39;;=$ salt “test"//,只取前两个 echo 隐窝(密码美元,,盐);得到的结果是teMGKvBPcptKo
使用自动盐值的例子如下:
代码如下:
password 美元;=,地下室(& # 39;我的密码# 39;);,//,自动生成盐值/*,你应当使用,crypt(),得到的完整结果作为盐值进行密码校验,以此来避免使用不同散列算法导致的问题。(如上所述,基于标准,DES 算法的密码散列使用,2,字符盐值,但是基于,MD5 算法的散列使用,12,个字符盐值)。*/if (crypt(& # 39;我的密码# 39;,,密码)美元,==,美元密码),{ ,,echo “Password 验证!“; }执行结果是输出密码验证!
以不同散列类型使用crypt()的例子如下:
代码如下:
if (==CRYPT_STD_DES 1), { ,,,echo & # 39; Standard DES:, & # 39;,只隐窝(& # 39;rasmuslerdorf& # 39;,, & # 39; rl # 39;),只“\ n"; } if (CRYPT_EXT_DES ==, 1), { ,,,echo & # 39; Extended DES:, & # 39;,只隐窝(& # 39;rasmuslerdorf& # 39;,, & # 39; _J9 . . rasm& # 39;),只“\ n"; } if (CRYPT_MD5 ==, 1), { ,,,echo & # 39; MD5:,,,,,,,,,, & # 39;,只隐窝(& # 39;rasmuslerdorf& # 39;,, & # 39; $ 1 $ rasmusle $ & # 39;),只“\ n"; } if (CRYPT_BLOWFISH ==, 1), { ,,,echo & # 39;河豚:,,,,,& # 39;,只隐窝(& # 39;rasmuslerdorf& # 39;,, & # 39; $ 2 $ 07 usesomesillystringforsalt & # 39;美元),只“\ n"; } if (CRYPT_SHA256 ==, 1), { ,,,echo & # 39; sha - 256:,,,,,, & # 39;,只隐窝(& # 39;rasmuslerdorf& # 39;,, & # 39; 5轮美元=5000 usesomesillystringforsalt & # 39;美元),只“\ n"; } if (CRYPT_SHA512 ==, 1), { ,,,echo & # 39; sha - 512:,,,,,, & # 39;,只隐窝(& # 39;rasmuslerdorf& # 39;,, & # 39; 6轮美元=5000 usesomesillystringforsalt & # 39;美元),只“\ n"; }其结果如下
Standard DES: rl.3StKT.4T8M Extended DES: _J9 . . rasmBYk8r9AiWNc MD5:,,,,,,,,,, 1美元rasmusle rISCgZzpwk3UhDidwXvin0美元 河豚:,,,,,07年usesomesillystringfore2uDLvp1Ii2e.美元/U9C8sBjqp8I90dH6hi 2美元 sha - 256:,,,,,, 5轮美元=5000 usesomesillystri KqJWpanXZHKq2BOB43TSaYhEWsQ1Lr5QNyPCDH/Tp.6美元 sha - 512:,,,,,, 6轮美元=5000 usesomesillystri D4IrlXatmP7rx3P3InaxBeoomnAihCKRVQP22JZ6EY47Wc6BkroIuUUBOov1i.S5KPgErtP/EN5mcO.ChWQW21美元 在,crypt(),函数支持多重散列的系统上、下面的常量根据相应的类型是否可用被设置为,0,或,1: CRYPT_STD_DES 安康;基于标准,DES 算法的散列使用,“。/0-9A-Za-z",字符中的两个字符作为盐值。在盐值中使用非法的字符将导致,crypt(),失败。 CRYPT_EXT_DES 安康;扩展的基于,DES 算法的散列,其盐值为,9,个字符的字符串,由,1,个下划线后面跟着,4,字节循环次数和,4,字节盐值组成。它们被编码成可打印字符,每个字符,6,位,有效位最少的优先.0 到,63年,被编码为,“。/0-9A-Za-z"。在盐值中使用非法的字符将导致,crypt(),失败。 CRYPT_MD5 安康;MD5 散列使用一个以,1美元,开始的,12,字符的字符串盐值。 CRYPT_BLOWFISH 安康;Blowfish 算法使用如下盐值:$ 2 $,一个两位,cost 参数,“$”,以及,64,位由,“。/0-9A-Za-z”,中的字符组合而成的字符串。在盐值中使用此范围之外的字符将导致,crypt(),返回一个空字符串。两位,cost 参数是循环次数以,2,为底的对数,它的范围是,04-31,超出这个范围将导致,crypt(),失败。 CRYPT_SHA256 安康;sha - 256,算法使用一个以,5美元,开头的,16,字符字符串盐值进行散列。如果盐值字符串以,“轮=& lt; N> $”,开头,N 的数字值将被用来指定散列循环的执行次数,这点很像,Blowfish 算法的,cost 参数。默认的循环次数是,5000年,最小是,1000年,最大是,999999999年。超出这个范围的,N 将会被转换为最接近的值。 null null null null null null null null null null null null null null null null null null null null null nullphp文字如何加密