首页 理论教育 实现IBC算法与线性网络编码反窃听的方案

实现IBC算法与线性网络编码反窃听的方案

时间:2023-07-01 理论教育 版权反馈
【摘要】:本章中,方案的实现主要包括三个阶段:IBC算法密钥对生成阶段,私钥注入IBCKEY-800阶段和反窃听实现阶段。为了易于描述,本章主要关注第三个阶段,即结合IBC算法和线性网络编码实现反窃听的阶段,但是,前两个阶段的完成是前置条件。私钥存储在特定的USB设备IBCKEY-800上,该USBKEY为32位芯片并且支持IBC算法和PKI框架。图5-3方案实现示例图

实现IBC算法与线性网络编码反窃听的方案

对于两跳网络中经典的蝴蝶型拓扑结构,本章没有必要详细讨论其简化。本章中,方案的实现主要包括三个阶段:IBC算法密钥对生成阶段,私钥注入IBCKEY-800阶段和反窃听实现阶段。在本方案中,有限域大小设定为216。为了易于描述,本章主要关注第三个阶段,即结合IBC算法和线性网络编码实现反窃听的阶段,但是,前两个阶段的完成是前置条件。

密钥对生成:根据IBC算法,密钥服务器根据每个节点对应的身份标识为节点生成密钥对,并且以一种安全的方式分发给每个节点。特别地,通过配置密钥服务器和每个节点的公钥,密钥生成器为节点生成密钥。对应的加密机型号为SYJ137。私钥存储在特定的USB设备IBCKEY-800上,该USBKEY为32位芯片并且支持IBC算法和PKI框架

包头格式:本方案的数据包头基于COPE,是在COPE数据包头的基础上插入新的一块而得到。虽然COPE是基于成对异或编码的编码策略,而本方案的编码方案是线性的,但这对本方案的实现并没有本质的影响。如图5-2所示。新插入的数据块主要包括三个部分:局部链路编码系数向量PKT_COE,加密的数据包编码系数ENC_COE和对应的签名SIGN.

实现过程:为便于描述,本章略去了插入数据块的第三部分,并以数据包体进行替代。本方案的实现过程简要描述如图5-3所示。

(www.xing528.com)

图5-2 数据包头格式

在蝴蝶型网络拓扑结构中,源节点1传输数据a=5,b=1给目的节点6和7。节点选取系数对[3,2]和[5,1],并且对发送的数据进行线性组合,最后得到编码后的数据3a+2b和5a+b,也就是13和10。源节点1用节点2和3对应的公钥加密编码系数[3,2]和[5,1],从而得到链路1→2和1→3上加密数据,而剩下的两部分以明文形式存在。同时,节点用私钥对整个数据块进行签名以形成签名数据Sig 1。对于中继节点4,它只需要使用前驱节点对应的身份标识(如IP地址)对收到的数据进行完整性验证。若验证通过,则对数据进行解密以获得编码系数。由于节点4有两条进入链路,它将收到的来自两条链路的数据进行求和运算从而得到新的编码数据包。对于目的节点6和7,它们首先对收到的数据进行完整性验证,然后解密编码系数并使用高斯消元法简化编码系数矩阵,最后得到源节点发送的原始数据。虽然链路5→6和5→7上传输的数据和链路4→5上的数据不同,但这对目的节点6和7解码获取原始数据是没有影响的,这是因为三条链路上的数据是线性相关的。

图5-3 方案实现示例图

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈