Skip to main content
. 2023 Jan 18;23(3):1122. doi: 10.3390/s23031122

Table 8.

Sensor node’s process.

(*—-SNj process—-*)
let SNj =
out(privateChannel2, SIDj);
in(privateChannel2, (XTSIDj:bitstring, XXTIDi:bitstring, XXSi2:bitstring));
event startSNj(SIDj);
in(publicChannel2, (XGM1:bitstring, XGM2:bitstring, XGM3:bitstring, XGM4:bitstring,
XXUiM7:bitstring));
let Xrgw5 = xor(XGM1, XTSIDj) in
let XXTIDi = xor(XGM2, Xrgw5) in
let XXTIDinew = xor(XGM3, Xrgw5) in
let Xru3 = xor(XXUiM7, XXSi2) in
if h(concat(concat(concat(Xrgw5, XTSIDj), XXTIDi), XXTIDinew)) = XGM4 then
new SK:bitstring;
let SNjM1 = xor(SK, XXSi2) in
let SNjM2 = h(concat(concat(SK, XXTIDinew), Xru3)) in
let SNjM3 = h(concat(concat(SNjM1, SNjM2), XTSIDj)) in
let XXTIDi = XXTIDinew in
out(publicChannel2, (SNjM1, SNjM2, SNjM3));
event endSNj(SIDj).