加解密相关

对称加密算法(私钥)

RC4

DES(常用)

数据加密标准,速度较快,适用于加密大量数据的场合

3DES

是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高。

AES(常用)

高级加密标准,是下一代的加密算法标准,速度快,安全级别高。

​ AES 算法基于排列和置换运算。排列是对数据重新进行安排,置换是将一个数据单元替换为另一个。AES 使用几种不同的方法来执行排列和置换运算。

​ AES 是一个迭代的、对称密钥分组的密码,它可以使用128、192 和 256 位密钥,并且用 128 位(16字节)分组加密和解密数据。与公共密钥密码使用密钥对不同,对称密钥密码使用相同的密钥加密和解密数据。通过分组密码返回的加密数据的位数与输入数据相同。迭代加密使用一个循环结构,在该循环中重复置换和替换输入数据。

非对称加密算法(公钥加私钥)

RSA(常用)

由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的。

DSA

数字签名算法,是一种标准的 DSS(数字签名标准),仅能用于签名,不能用于加解密。

DSS

数字签名标准,既能用于签名,也可以用于加解密。

ECC

椭圆曲线密码编码学。

HASH算法

MD5

SHA1

SHA256

概念

数字摘要

发送消息生成的hash 值

数字签名

经过加密的数字摘要,就是人们所说的”数字签名“!数字签名只能验证数据的完整性,数据本身是否加密不属于数字签名的控制范围。

综上所述,数字签名有两种功效:一是能确定消息确实是由发送方签名并发出来的,因为别人假冒不了发送方的签名。二是数字签名能确定消息的完整性。

数字证书

用户首先产生自己的密钥对,并将公共密钥及部分个人身份信息传送给认证中心。认证中心在核实身份后,将执行一些必要的步骤,以确信请求确实由用户发送而来,然后,认证中心将发给用户一个数字证书,该证书内包含用户的个人信息和他的公钥信息,同时还附有认证中心的签名信息。用户就可以使用自己的数字证书进行相关的各种活动。数字证书由独立的证书发行机构发布。数字证书各不相同,每种证书可提供不同级别的可信度。可以从证书发行机构获得您自己的数字证书。

应用

ssh

ssl

SSL的基本思想是用非对称加密来建立链接(握手阶段),用对称加密来传输数据(传输阶段)。这样既保证了密钥分发的安全,也保证了通信的效率。

上一篇:对称加密算法:长期有效的加密


下一篇:几种常用加密算法简析与比较