1357
吴振强等:物联网安全传输模型
8期
R—TIS响应消息Message初始化算法.
算法1.
输入:①R—TIS、1..TIS及网络节点集合{R-Tfs(风),R1,R2。R3’..· ,R”,DTIS(R一+1))
②R-TIS、各节点的身份Hash{I£{H(IDR.11s)。H(IDRl),H(IDR2),H(IDR3), ,H(IDs.)· H(IDL· 伪)}
(3)R-TIS、各节点的签密公钥{PKR-11s,PKRI· PKR2· PKR3,PKR4, ,PKs。,PKL· m}
INF)
ST SP
0
II
0
SQII Ta-m
trusted
0
H(IDE-Tm)0‰ 怕II
输出:Messagc=E(KD‘R-T1S,Rl,· H(IDRl)II
to m=n一1
Begin
15.For m=0
into
of
path
if
1.Add the
the
response,Only theRis
Ri
H(IDa.,+I)I
‰ +l。k
Nodel
b。+1 2H(FR_+1),
End For1
2FR(9H(IDL.ws)I
/*计算R—TIS与各节点的会话密钥kta-Tm.Ri)*/
2.For m=1to m=n
16.FR+l
k(R-TtS。膏辨)=e(q H(IDE-Tts),H(IDR。))’
17.LE。+l 2H(Fa.+1),
18.1nitiaZ(SP)l
End
ForI
3.k(R-TIS,I.-TIS)=e(q H(IDR.ns),H(IDL.TIS));
to m=1
19.Form—n+1
/*封装查询响应数据,其中JP。为节点R。的IP地址,Information
为物品的详细信息*/
4.Data=E{k<R.TIS.L-TIS),In/ormation),
SP.Push(LR),
End
For!
20.
KD(aTIS.R1)一H(IDE.Tm)oH(IDRl)I
Data}#
5.Data=E{k(R—TIS.R.),IPL,TIS|I
21. Initial(SQ)l
6.For m=n一1 to m=1
22. SQ.Push(PKL.rm)l
0
Data},
Data2E{k(R.11s.%),IPR.,+l
End ForI
For i=nto m=2
23.
SQ.Push(PKE.)l
/*计算各节点的路由鉴别信息*/
End
For;
7.JRl=H(IDR-TLs)@H(IDEl)oH(JDR2)I
8.For m=1 to m=n一1
24. Num c[1.Q一1]}
25.
Keyl=g“modP,
Keyz=H(PKr“nodP),
26.
JE=+l=H(IDE)oH(JD%+1)OH(IDR+2)f
End
27.
28.
For;
INF=E(Keyz,Data)I
硼一H(Keyl,fNF);
9.JE。+l=H(IDR。)oH(fDL.TIS)C芏)H(IDams)I
10.1nitiaZ(ST);
29. z—Num(1+"SKo)-1roodQI
time
is Ta-TIS;
stamp
30.R-TIS(Ro)generated
m=n+1 to m=1
11.For
ST.Push(JR.);
End Forl
SP
STII
0 SCtII
31.MessagP—E(KD(R-TIS.R1”H(IDRl)0
TRms H(IDg-Tm)0
INF)I
0口II
II
0
FEo
to
32.R—TIS(Ro)Send
Rl
I
13.FRo—H(/DR· 11S)}
14· L202H(凡o);
Message
End
图6响应消息初始化算法
算法2.
节点R,转发来自R,一1的响应消息Message.
ST SP
输入:Message=E(KD(R,一l。R。,,H(IDR)
INF)
I I , U
H(
11
0
0
0
f|SQ 0
一1)0 FR,—1
n,一l
IDa,
ST'0 SP钏sQ,0
输出:Message7=E(KD‘R‘.Ri+1)’H(IDsj+1)II
H(IDs.f)II凡,0%,II∥0£,¨ INF')
andsend error
else
stop
message!
Begin
End If:
/*验证转发数据的完整性*/
14..,R=ST.Get()l
15.Sr—ST.Pop();
1.Keyl=(gPK7-1)‘roodP’
2.Key2=H(Keys“,roodP),
3.D口£口一D(Keyz,INF)l
16.H(IDR,+1)-H(IDEJ-1)oH(,DR)o.,一’
17.K(R,m.R,一1)=e(qH(IDR-TIS),H(ID%一1)),
to 5}
4.If H(KPyl'INF)一一"then go
the Data
1
else
and send error
message;
stop
18.Rj
K(R-TIS.RH)decryption
End if
19.Data’一D(K(R.TIS.R.一t),Data)l
20.Nun c[1,Q一13I
/*鉴别转发路径的真实性*/
5.KD(R.,一I.巳’一H(IDa,一I)oH(JD巳),
21.PKR;+1=SQ.Get(),
22.SQ’=SQ.Pop()I
6.Use
Message
the
1
KD(R,一1一,'decryption
7.R,get they=H(IDR.)from
Message!
23.KPyl—g““nodP;
/*R,检查H(IDa.)与自身计算的是否相等*/
cheek
24.Key2=H(PKN,+unlsnodP)I
25.IN,;E(Keyz,Data’)I
26.1∥=H(Ke,l’INF,)'
the y=H(ID%)which decryption
8.RJ
from
H(IDa.)with
1
Message
the check
27.一一Num(1+tu’SK
r)一1nodg;
from the
R,+1
then
passes
and send error
to
10f
9.If
else
go
the IP of
get
Datal
29-KD‘RJ.勺+1)2 H(IDE)oH(儿)膏J+1),
time
28.RJ
stop
message;
EndIf1
is
30.马generated
stamp
n.;
10.LR=SP.Get()I
11.SP’=SP.POP();
Sr SP7
0
0
31.Messaget-一-E(KD懈,.R+1),H(IDR,+1)0
SQ钏H(IDE;)II n;0%;II√lI
32.RJ SendMessage7
z钏fN一)l
oH(,功),
12.FE‘=FsH
13.If(LR==14(FR.))
to马+lI
End
to
14I
go
图7响应消息节点转发算法
万方数据
全部评论(0)