Skip to main content
. 2024 May 13;24(10):3085. doi: 10.3390/s24103085

Table 2.

ProVerif code for defining values and functions.

(*—-channels—-*)
free privateChannel:channel [private].
free publicChannel:channel [private].
(*—-constants—-*)
free ID:bitstring [private].
free N:bitstring [private].
(*—-shared key—-*)
free K:bitstring [private].
(*—-functions—-*)
fun xor(bitstring, bitstring):bitstring.
fun concat(bitstring, bitstring):bitstring.
fun h(bitstring):bitstring.
fun H(bitstring):bitstring.
equation forall a:bitstring, b:bitstring; xor(xor(a, b), b) = a.
(*—-events—-*)
event startfstS(bitstring).
event endfstS(bitstring).
event startfstN(bitstring).
event endfstN(bitstring).
event start2ndS(bitstring).
event end2ndS(bitstring).
event start2ndN(bitstring).
event end2ndN(bitstring).