首页 理论教育 安全传输协议的多播方案实现及追溯污染攻击算法

安全传输协议的多播方案实现及追溯污染攻击算法

时间:2023-07-01 理论教育 版权反馈
【摘要】:表6-1符号表示6.4.2.1安全传输协议描述方案基于多播环境,为了便于描述,假定源节点S向节点Y发送消息。,l,方案认为在上述等式中,表示使用源节点密钥加密,Hi,j表示消息Mi的u个码字的哈希。该追溯污染攻击的过程描述见算法2。

安全传输协议的多播方案实现及追溯污染攻击算法

方案中用到的符号如表6-1所示。

表6-1 符号表示

6.4.2.1 安全传输协议描述

方案基于多播环境,为了便于描述,假定源节点S向节点Y发送消息。由于每个节点都向安全中心服务器注册密钥,secS表示节点S对应的密钥。节点S用密钥secS生成验证码χ(e)。安全中心服务器为节点Y提供节点S的部分密钥信息,该部分密钥信息表示为ψ(secS,secY)。节点Y可以使用ψ(secS,secY)对χ(e)进行验证。

ψ(secS,secY)的产生过程如下:首先,安全中心服务器将secY映射到一个κ个元素集1,…,η上得到子集F(secY,IDS),κ<η。当η=5,κ=3时,F(secY,IDS)可以表示为{1,3,5}。其次,安全中心服务器通过计算ψi=H(secS,IDY,i)从secS获取η个密钥元素,1≤i≤η。再次,安全中心服务器将ψ(secS,secY初始化为一个空集,然后对于每个i*∈F(secY,IDS),安全中心服务器将ψ*i加入ψ(secS,secY)中。最后,获得的值ψ(secS,secY)安全地提供给节点Y。但是,仅仅从ψ(secS,secY),节点Y不能获得关于密钥secS的有效信息。

验证码χ(e)包括η个值{v1,…,vη},这些值通过计算vi=truncθ(H(e|Seq(e),ψi))得到,1≤i≤η。当节点Y从源节点S接收到e|Seq(e)|χ(e),节点Y通过校验对于所有在ψ(secS,secY)中的,其是否等于truncθ(H(e|Seq(e)))来验证χ(e)的合法性。具有合法验证码的消息将被节点Y接收并被用于编码新的消息或者获取源消息。编码和解码的过程描述见算法1。

特别地,在多播环境下,方案只需要将基于下游节点密钥的验证码连接到发送的消息,下游节点会自动截取验证码并进行验证。

6.4.2.2 详细过程

方案的详细描述如下:

初始化:安全中心服务器为网络中所有节点生成密钥,同时选取安全参数、哈希函数和伪随机函数,并以安全的方式将这些信息发送给所有节点。

•设置两个参数l和u,l表示附加在消息后的MAC值的数量,u表示用于生成MAC值的码字数量。

•有l个随机整数r1,…,rl,rj∈[1,m],j=1,…,l,所有整数被嵌入到MAC中用于识别码字索引

•哈希函数h:→Hq,在该函数中,Hq限制了码字范围,而参数h是公开的。

•伪随机函数F:[1,m]→[1,m],函数F是公开的,且每个节点通过特定的种子使用该函数来计算哈希链表。(www.xing528.com)

生成验证码:源节点S将l个MACs附加在消息(Mi,i=1,…,n,n为源消息数量)上。MAC值是通过将u个随机选择码字与密钥secS和下游节点公共标识ID进行哈希运算得到。对于线性网络编码,编码消息是选择码字的随机线性组合。

详细来说,消息Mi上附加了l个消息验证码MACi,1,…,MACi,l。因此,源节点S生成并传输Mi,MACi,1,…,MACi,l。对于j=1,…,l,方案认为

在上述等式中,表示使用源节点密钥加密,Hi,j表示消息Mi的u个码字的哈希。当码字被选择后,源节点S通过使用函数H生成哈希值。

在上述等式中,系数αi从有限域内选取,k=1,…,u。

算法1:

然后,每个消息后面附加MAC值,每个MAC值通过从u个码字计算得到。

在多播环境下,中继节点P只需要将不同节点对应的MAC值附加到同一个编码消息,因此不需要多次传输相同的编码消息。

发送消息:当节点P接收到了m个消息e1,e2,…,em后,节点P需要生成一个新的消息em+1发送给节点Y。首先计算Seq(em)+1,然后产生基于消息em+1和其序列号Seq(em+1)的验证码χ(em+1),最后,节点P将em+1,Seq(em+1)和χ(em+1)发送给节点Y。

接收消息:当节点Y收到em+1,Seq(em+1)和χ(em+1)后,它通过使用ψ(secP,secY)来验证χ(em+1)对于消息em+1和其序列号Seq(em+1)是否合法。如果不合法,新收到的消息将被丢弃;否则,新收到的消息将存储在缓存内。

检测污染消息:当从源节点S收到e|χ(e),对于所有在ψ(secS,secP)的,中继节点P验证校验码χ(e)的合法性。

当消息e被检测到是一个污染消息后,节点P向安全中心服务器发送警告。作为回应,安全中心服务器将发送一个确认消息ACK给节点P。如果节点P在μ(μ稍微大于mRTT)个时间单位后没有收到确认消息,节点P将持续发送警告直到它收到安全中心服务器的确认消息。为了防止对传输报告的恶意篡改,节点P附加一个HMAC值来提供验证,该HMAC值是使用节点P的密钥来生成的。安全中心服务器可以通过HMAC值来验证消息e是否发自节点P。对于每个在ψ(secS,secP)中的ψj,只有当vj等于truncθ(H(e|Seq(e),ψj))时,安全中心服务器才可以确认消息e是由节点S发送的。否则,消息e被认为是一个不是由节点S发送的消息。该追溯污染攻击的过程描述见算法2。

算法2:

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

我要反馈