Patent ID: 7907725

Claim:
A method for generating a simple universal hash value, the method comprising: configuring at least one processor to perform the steps of functions: inputting at least one of a plurality of Plaintext blocks into an integrity aware encryption scheme using at least one of two secret keys to obtain a plurality of Ciphertext blocks; computing a Plaintext checksum value from the plurality of Plaintext blocks; dividing at least one of the plurality of Ciphertext blocks into a plurality of equal sized segments; assigning each one of a plurality of bits from a third key to each of the plurality of segments, respectively; selecting a single bit from an assigned segment in correspondence with the plurality of bits of the third key; concatenating a plurality of single bits selected from each of the segments to obtain a partial Ciphertext; combining partial Ciphertexts to obtain a Ciphertext checksum; and combining the Plaintext checksum and the Ciphertext checksum to obtain the simple universal hash value.