Each packet is prefixed with a 8 byte timestamp. It consists of the number of seconds since the 1st of January 1970 and a 16 bit counter. The timestamp and the data are used as input for a SHA-256 hash. This hash is used to calculate a 256 bit elliptic curve signature. By including the timestamp we ensure that playback of previously recorded packets can be detected.
8 byte timestamp | data | 64 byte signature | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
48 bit second counter | 16 bit packet counter | data | 256 bit elliptic curve signature based on SHA-256 hash |