IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0000994
(2004-12-02)
|
발명자
/ 주소 |
|
출원인 / 주소 |
- Intertrust Technologies Corporation
|
대리인 / 주소 |
Finnegan, Henderson, Farabow, Garrett &
|
인용정보 |
피인용 횟수 :
15 인용 특허 :
38 |
초록
▼
A technique for integrating message authentication with encryption and decryption is disclosed. Intermediate internal states of the decryption operation are used to generate a validation code that can be used to detect manipulation of the encrypted data. The technique is optimized with respect to pr
A technique for integrating message authentication with encryption and decryption is disclosed. Intermediate internal states of the decryption operation are used to generate a validation code that can be used to detect manipulation of the encrypted data. The technique is optimized with respect to processing time, execution space for code and runtime data, and buffer usage. The technique is generally applicable to a variety of block ciphers, including TEA, Rijndael, DES, RC5, and RC6.
대표청구항
▼
What is claimed is: 1. A method for performing a mixing operation for use in authenticating encrypted data, the method comprising the steps of: receiving an input data block; dividing the input data block into a first segment and a second segment; using a first function to combine the first segment
What is claimed is: 1. A method for performing a mixing operation for use in authenticating encrypted data, the method comprising the steps of: receiving an input data block; dividing the input data block into a first segment and a second segment; using a first function to combine the first segment with a first input; using a second function to combine the second segment with a second input; generating a first output by performing a first transformation on an output of the first function, wherein the first transformation is based, at least in part, on the second input; generating a second output by performing a second transformation on an output of the second function, wherein the second transformation is based, at least in part, on the first input; combining the first output and the second output to form an output data block. 2. The method of claim 1, wherein the first transformation comprises a bit-wise rotation of the output of the first function by a number of bits specified by a predefined portion of the second input, and wherein the second transformation comprises a bit-wise rotation of the output of the second function by a number of bits specified by a predefined portion of the first input. 3. The method of 2, wherein the predefined portion of the first input comprises the five lowest order bits of the first input, and wherein the predefined portion of the second input comprises the five lowest order bits of the second input. 4. The method of claim 1, in which the first function comprises an unsigned add function, and in which the second function comprises a logical exclusive-or function. 5. The method of claim 1, in which the first input comprises a first internal round state of a block cipher, and in which the second input comprises a second internal round state of the block cipher. 6. The method of claim 5, in which the block cipher is an implementation of the Tiny Encryption Algorithm. 7. A system for performing a mixing operation for use in authenticating an encrypted file, the system including: first logic for partitioning an input data block into a first segment and a second segment; an adder for adding the first segment to a first input; an exclusive-or calculator for combining the second segment with a second input; second logic for rotating an output of the adder by a number of bits specified by a predefined portion of the second input; third logic for rotating an output of the exclusive-or calculator by a number of bits specified by a predefined portion of the first input; fourth logic for combining an output of the second logic and an output of the third logic to form an output data block. 8. The system of claim 7, wherein at least one of the adder, the exclusive-or calculator, the first logic, the second logic, the third logic, and the fourth logic are implemented in software, the system further including a processor for executing the software. 9. The system of claim 7, wherein the predefined portion of the first input comprises lowest order bits of the first input, and wherein the predefined portion of the second input comprises lowest order bits of the second input. 10. The system of claim 7, wherein the predefined portion of the first input comprises about five lowest order bits of the first input, and wherein the predefined portion of the second input comprises about five lowest order bits of the second input. 11. The system of claim 7, in which the first input and the second input are comprised of internal round state data of a block cipher. 12. A system as in claim 11, in which the first input comprises a first internal round state of the block cipher, and in which the second input comprises a second internal round state of the block cipher. 13. A method for performing a mixing operation for use in authenticating encrypted data, the method comprising the steps of: receiving an input data block; dividing the input data block into a first segment and a second segment; using a first function to combine the first segment with a first input; using a second function to combine the second segment with a second input; generating a first output by performing a first transformation including a bit-wise rotation on an output of the first function, wherein the first transformation is based, at least in part, on the second input; generating a second output by performing a second transformation on an output of the second function; and combining the first output and the second output to form an output data block. 14. The method of claim 13, wherein the bit-wise rotation of the output of the first function is executed as a function of a number of bits specified by a predefined portion of the second input, and wherein the second transformation comprises a bit-wise rotation of the output of the second function by a number of bits specified by a predefined portion of the first input. 15. The method of claim 14, wherein the predefined portion of the first input comprises lowest order bits of the first input, and wherein the predefined portion of the second input comprises lowest order bits of the second input. 16. The method of claim 14, wherein the predefined portion of the first input comprises about five lowest order bits of the first input, and wherein the predefined portion of the second input comprises about five lowest order bits of the second input. 17. The method of claim 13, in which the first function comprises an unsigned add function, and in which the second function comprises a logical exclusive-or function. 18. The method of claim 13, wherein the first input and the second input are comprised of internal round state data of a block cipher. 19. The method of claim 13, wherein the first input comprises a first internal round state of a block cipher, and in which the second input comprises a second internal round state of the block cipher. 20. The method of claim 19, wherein the block cipher is an implementation of the Tiny Encryption Algorithm. 21. A system for performing a mixing operation for use in authenticating an encrypted file, the system including: first logic for partitioning an input data block into a first segment and a second segment; an adder for adding the first segment to a first input; a calculator for combining the second segment with a second input; second logic for rotating an output of the adder by a number of bits specified by a predefined portion of the second input; third logic for rotating an output of the calculator by a number of bits specified by a predefined portion of the first input; fourth logic for combining an output of the second logic and an output of the third logic to form an output data block. 22. The system of claim 21 further comprising: decryption logic; and a first shift register for shifting an output of the adder by a first predefined number of bits derived from an intermediate state of the decryption logic. 23. The system of claim 21, wherein at least one of the adder, the calculator, the first logic, the second logic, the third logic, and the fourth logic are implemented in software, the system further including a processor for executing the software. 24. The system of claim 21, wherein the predefined portion of the first input comprises lowest order bits of the first input, and wherein the predefined portion of the second input comprises lowest order bits of the second input. 25. The system of claim 21, wherein the predefined portion of the first input comprises about five lowest order bits of the first input, and wherein the predefined portion of the second input comprises about five lowest order bits of the second input. 26. The system of claim 21, wherein the first input and the second input comprise internal round state data of a block cipher. 27. The system of claim 26, wherein the first input comprises a first internal round state of the block cipher, and in which the second input comprises a second internal round state of the block cipher.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.