Patent ID: 7254233

Claim:
A method for encrypting and authenticating data as a single entity, comprising: forming a plurality of plaintext blocks from the data; specifying at least one cleartext position; determining a plurality of noise blocks using a nonce value; determining a first plurality of ciphertext blocks and a first plurality of authentication blocks associated with the at least one cleartext position, wherein each of the first plurality of ciphertext blocks is formed by setting a corresponding ciphertext block equal to a corresponding one of the first plurality of plaintext blocks, and each of the first plurality of authentication blocks is formed by: combining a plaintext block with a corresponding noise block to form a corresponding intermediate ciphertext block; decrypting the corresponding intermediate ciphertext block into a corresponding intermediate plaintext block; and combining the corresponding intermediate plaintext block with the corresponding noise block to form an authentication block; determining a second plurality of ciphertext blocks and a second plurality of authentication blocks not associated with the at least one cleartext position, wherein each of the second plurality of authentication blocks is equal to a corresponding plaintext block, and each of the second plurality of ciphertext blocks is formed by: combining a plaintext block with a corresponding noise block to form a corresponding intermediate plaintext block; encrypting the corresponding intermediate plaintext block into a corresponding intermediate ciphertext block; combining the corresponding intermediate ciphertext block with the corresponding noise block to form a ciphertext block; computing a checksum value based on the first plurality of authentication blocks and second plurality of authentication blocks; computing an authentication tag by combining the checksum value with a noise block, encrypting the combined checksum value and combining the encrypted checksum value with another noise block; and appending the authentication tag to a plurality of transmission blocks, wherein the transmission blocks comprise the first plurality of ciphertext blocks and the second plurality of ciphertext blocks.