Research Article
On Formal and Automatic Security Verification of WSN Transport Protocols
subA1() = | /* A1 sends a data packet to I, without receiving any message, OR */ | A1NotRcvSndPck2I() | /* After receiving a data packet on channel chSAPck */ | chSAPck?seq.ear.rtx.seq1.seq2.Kack.seq3.seq4.Knack -> | ( | /* A1 sends a data packet to I, OR */ | A1RcvPckSndPck2I() | /* A1 forwards the packet unchanged to I */ | chIAPck!seq.ear.rtx.seq1.seq2.Kack.seq3.seq4.Knack -> subA1() | ) | | subA2() = | /* A2 sends a data packet to I, without receiving any message, OR */ | A2NotRcvSndAck2I() | /* After getting a data on channel chIAPck, A2 sends ACK with seqA2 to I */ | chIAPck?seq.ear.rtx.seq1.seq2.Kack.seq3.seq4.Knack -> A2RcvPckSndAck2I() | | SDTPsubA1subA2() = | UpLayer() procS() subA1() procI() subA2() procD() |
|