Home >Backend Development >PHP Tutorial > Mcrypt中加密算法和加密模式的有关问题

Mcrypt中加密算法和加密模式的有关问题

WBOY
WBOYOriginal
2016-06-13 12:59:33931browse

Mcrypt中加密算法和加密模式的问题
1, 学习php的加密与解密,想了解这些加密算法和加密模式到底是什么原理,应该看哪些资料?

2, 这些加密与解密是在什么基础上的?比如,是不是把UTF-8的文本转化为16进制的数字然后再加密,还是直接转化成二进制进行加密,再或者是其它形式的?

3, 通常,可逆转的加密肯定是用什么密钥协助下,替换明文吧?
------解决方案--------------------
1.原理就是 明文+密钥=密文  密文+密钥=明文  算法没有绝对的 算法的复杂程度决定你加密之后的安全性,当然越复杂数据长度会越大。根据程序选择吧,特别重要的信息,比如用户密码这些 你可以选择复杂性高些的加密算法。
2.每个算法 加密解密规则有出入,用来加密的算法 当然不会都统一,你自己也可以写个加密算法。
3.密钥的原理:
通过工具(我上次是直接用linux的openssl命令生成的)生产一对公钥,私钥。
公钥是可以告诉别人的,而私钥是留给自己的。
别人用公钥加密之后,发送数据,这个数据只能用私钥解密,在过程中被别人看到公钥加密后的数据,对他而言是无用的。
非对称加密:公钥a 私钥b  客户端数据c  c+a=z  z发送到服务端  z+b=c
现在非对称性主要的优点在于他相比其他加密模式要安全得多,而主要的缺点就是算法复杂,加密速度慢,加密后的数据也很大。
所以对称性加密和非对称性各有优劣,程序设计者要根据不同需求选择加密方式!
(都是个人看法和观点,有不对的地方,请高手不吝指出!)

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn