数字签名和对称以及非对称加密过程

数字签名

数字签名是笔迹签名的模拟,用于保证信息传输的完整性、发送者身份认证,以及防止交易中抵赖行为等。 

 公钥签名体制的基本思路是:

   ①发送者A用自己的私钥加密信息,从而对文件签名

   ②将签名的文件发送给接受者B

   ③B利用A的公钥(可以从CA机构等渠道获得)解密文件,从而验证签名。

非对称加密算法流程

AB之间要进行加密通信,非对称加密流程是:

AB都要产生一对用于加密和解密的加密密钥和解密密钥

A生成一对密钥,将公用密钥向其他方公开。将公钥传送给B,将私钥自己保管。B将公钥传送给A,将私钥自己保管。

A发送消息给B时,先用B的公钥对信息进行加密,再将密文发送给B

B收到A发来的消息时,用自己的私钥解密

注意:AB都只能用其专用私钥加密由其公钥加密后的任何信息。

非对称加密为数据的加密与解密提供了一个非常安全的方法,它使用了一对密钥,公钥(public key)和私钥(private key)。私钥只能由一方安全保管,不能外泄,而公钥则可以发给任何请求它的人。非对称加密使用这对密钥中的一个进行加密,而解密则需要另一个密钥。比如,你向银行请求公钥,银行将公钥发给你,你使用公钥对消息加密,那么只有私钥的持有人--银行才能对你的消息解密。与对称加密不同的是,银行不需要将私钥通过网络发送出去,因此安全性大大提高。

目前最常用的非对称加密算法是RSA算法,是Rivest, Shamir, Adleman1978年发明,他们那时都是在MIT.NET中也有RSA算法,

 

对称加密

对称加密是最快速、最简单的一种加密方式,加密(encryption)与解密(decryption)用的是同样的密钥(secret key)。对称加密有很多种算法,由于它效率很高,所以被广泛使用在很多加密协议的核心当中。

对称加密通常使用的是相对较小的密钥,一般小于256 bit。因为密钥越大,加密越强,但加密与解密的过程越慢。如果你只用1 bit来做这个密钥,那黑客们可以先试着用0来解密,不行的话就再用1解;但如果你的密钥有1 MB大,黑客们可能永远也无法破解,但加密和解密的过程要花费很长的时间。密钥的大小既要照顾到安全性,也要照顾到效率,是一个trade-off

原文地址:https://www.cnblogs.com/benpao1314/p/10429548.html