Patent ID: 8131998

Claim:
A non-transitory computer-readable storage medium tangibly embodying a program of instructions executable by a computer to perform a method for embedding a block authentication code into stream data, the method comprising: a) dividing a stream message into a sequence of data blocks, the sequence of data blocks including: i) a first data block; ii) a second data block being the block immediately after the first data block; and iii) a third data block being the block immediately after the second data block; b) generating the block authentication code for the second data block, the block authentication code having n bits, the generating including: i) determining a first digest using: (1) the first data block; (2) part of the second data block; (3) a key; and (4) a hash function; ii) determining a second digest by concatenating: (1) the first digest; and (2) a flag; iii) determining a third digest using: (1) the second data block; (2) part of the third data block; (3) the key; and (4) the hash function; iv) determining a fourth digest by concatenating: (1) the third digest; and (2) the flag; v) taking an exclusive OR of: (1) the last n bits of the second digest; and (2) the first n bits of the fourth digest; and c) embedding the block authentication code into the timing of the second data block by adjusting inter-packet delays between packets in the second data block.