常见的几种加密算法

加密,是将明文通过一定的算法变成密文,使其成为 不可读 的一段代码,达到保护明文的作用。
解密,就是将密文按照某种算法重新变成明文,使其可读。

常见的加密算法

单向散列算法

单向散列算法,又称hash函数,Hash函数(也称杂凑函数或杂凑算法)就是把任意长的输入消息串变化成固定长的输出串的一种函数。这个输出串称为该消息的杂凑值。一般用于产生消息摘要,密钥加密等。

MD5(单项散列算法):

单向的算法不可逆(被MD5加密的数据不能被解密),通过哈希函数实现。
是RSA数据安全公司开发的一种单向散列算法,MD5被广泛使用,可以用来把不同长度的数据块进行暗码运算成一个128位的数值。

SHA-1:

是和 MD5 一样流行的 消息摘要算法(不可逆),然而 SHA1 比 MD5 的 安全性更强。可以对任意长度的数据运算生成一个160位的数值。

对称加密算法

在对称加密算法中,数据发信方将明文(原始数据)和加密密钥(mi yue)一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。

DES:

DES算法全称为Data Encryption Standard,即数据加密算法。
DES算法的入口参数有三个:Key、Data、Mode。
其中Key为8个字节共64位,是DES算法的工作密钥;
Data也为8个字节64位,是要被加密或被解密的数据;
Mode为DES的工作方式,有两种:加密或解密。

AES:

高级加密标准(Advanced Encryption Standard,AES),又称
高级加密标准Rijndael加密法,是美国联邦政府采用的一种区块加密标准。
AES为分组密码,分组密码也就是把明文分成一组一组的,每组长度相等,每次加密一组数据,直到加密完整个明文。

公开密钥加密算法

公开密钥加密(public-key cryptography)也称为非对称密钥加密(asymmetric cryptography),是一种密码学算法类型。该加密算法使用两个不同的密钥:加密密钥和解密密钥。
公钥密码体制根据其所依据的难题一般分为三类:大素数分解问题类、离散对数问题类、椭圆曲线类。

RSA:

加密算法是基于一个十分简单的数论事实:将两个大素数相乘十分容易,但是想要对其乘积进行因式分解极其困难,因此可以将乘积公开作为加密密钥。虽然RSA的安全性一直未能得到理论上的证明,但它经历了各种攻击至今未被完全攻破。

优点:加密和解密的密钥不一致,公钥是可以公开的,只需保证私钥不被泄露即可,这样就密钥的传递变的简单很多,从而降低了被破解的几率。

其他算法
Base64:

严格意义讲,Base64并不能算是一种加密算法,而是一种编码格式,是网络上最常见的用于传输8bid字节代码的编码方式之一。

发布了19 篇原创文章 · 获赞 21 · 访问量 980

猜你喜欢

转载自blog.csdn.net/weixin_43742894/article/details/105245643