zl程序教程

您现在的位置是:首页 >  后端

当前栏目

图解密码学密钥的分配方式

图解 方式 分配 密钥 密码学
2023-09-11 14:19:53 时间

1、预共享密钥

顾名思义就是事先共享密钥,因为再网络上传播密钥确实是一个难题,而且也很容易被人截获然后造成一定的影响。所以我们可以线下事先互相告知自己使用的密钥是什么,但是一个两个还好,假如我们要使用加密通信的是一个群体那怎么办,每个人都要知道群体中其他所有人的密钥?所以这种密钥的分配方式并不适合一个十分大的群体。

2、密钥中心分配

大家都被自己的密钥交给密钥中心,比如A和B要通信,那么密钥中心就根据本次通信随机生成一个密钥,然后将该会话的密钥使用A的密钥加密后发送给A,然后将该会话密钥使用B的密钥加密后发送给B,这样A和B就使用密钥分配中心产生的临时随机密钥进行通信即可。

3、DH密钥分配算法

DH密钥分配算法的基础是基于离散对数的难解性,像RSA算法和DH算法之间也有相似的地方。我们同样可以不用那么深入的了解内部的数学原理。我来给你比喻一下,就是通信双方A和B首先都持有一些公开的材料,然后A和B随机生成一个随机数然后将其与公开的材料融合,然后互相交换他们各自生成的融合物,最后A和B根据收到的融合物就可以生成最后要通信的密钥了,虽然很神奇,但是数学就是很神奇的东西。中间人无论获取的是A还是B发送的融合物都无法知道它们的会话密钥,因为如果中间人如果要知道那他就必须解出一个十分庞大的离散对数的问题,就是因为这个问题几乎不可能解出来,所以DH算法才会这么放心的将A和B之间的融合物互相交换。融合物就像一个谁都打不开的箱子,里面承载着会话密钥,A和B使用这个坚固的箱子进行会话密钥的协商。

4、非对称加密

非对称加密并不需要关心密钥的分配问题,因为只有私钥才能解开公钥发送的信息,所以只要将公钥给别人,自己用私钥解开就OK了。