php加密技能事理浅析(一):单向散列加密
对称加密
对称加密(也叫私钥加密)指加密和解密利用相同密钥的加密算法。有时又叫传统密码算法,便是加密密钥能够从解密密钥中推算出来,同时解密密钥也可以从加密密钥中推算出来。而在大多数的对称算法中,加密密钥和解密密钥是相同的,以是也称这种加密算法为秘密密钥算法或单密钥算法。它哀求发送方和吸收方在安全通信之前,商定一个密钥。对称算法的安全性依赖于密钥,泄露密钥就意味着任何人都可以对他们发送或吸收的解密,以是密钥的保密性对通信性至关主要。常见的是: DES 算法。
php 代码示例:
/ urlencode/echo 'urlencode: ' . PHP_EOL;var_dump(urlencode('http://www.baidu.com')); // 编码url字符串,此字符串中除了 -_. 之外的所有非字母数字字符都将被更换成百分号(%)后跟两位十六进制数,空格则编码为加号(+)。此编码与 WWW 表单 POST 数据的编码办法是一样的,同时与 application/x-www-form-urlencoded 的媒体类型编码办法一样。与其对应的逆向解密函数为urldecodevar_dump(htmlspecialchars('<a href=\"大众test\"大众\>Test</a\>')); // 将分外字符转换为 HTML 实体,与其对应的逆向解密函数为htmlspecialchars_decode。不足用的话用htmlentities,会把所有具有 HTML 实体的字符都转换了。/ base64_encode/echo 'base64_encode: ' . PHP_EOL;var_dump(base64_encode('password string.')); // 利用 MIME base64 对数据进行编码,设计此种编码是为了使二进制数据可以通过非纯 8-bit 的传输层传输,例如电子邮件的主体。// Base64-encoded 数据要比原始数据多占用 33% 旁边的空间。与其对应的逆向解密函数为base64_decode
猪哥亮 出品,转载还烦请注明出处,不然报警啦~