IP Library Granted Patent US 6,845,449
Granted Patent B1
US 6,845,449 · App. 09/621,056 · Granted Jan 18, 2005

System and method for fast nested message authentication codes and error correction codes

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,845,449
App. No.
09/621,056
Granted
Jan 18, 2005
Kind
B1
Abstract

A system and method for detecting and correcting errors using an authentication mechanism is described. In particular, a reversible inner function is used in a nested message authentication code configuration to provide both error detection and error correction in high performance applications.

Claims (33)

1. A method for detecting errors in a message comprising:

receiving at least one message data word and an authentication tag, said authentication tag produced from said at least one message data word according to a nested message authentication code having a reversible inner function;

processing said received at least one message data word according to said nested message authentication code to produce an authentication tag;

determining whether said produced authentication tag is the same as said received authentication tag;

wherein said receiving comprises receiving at least one message data word, an authentication tag, and an intermediate result from said reversible inner function.

2. The method of claim 1 , wherein said receiving comprises receiving an encrypted intermediate result from said reversible inner function.

3. The method of claim 2 , further comprising decrypting said encrypted intermediate result if said produced authentication tag is not the same as said received authentication tag.

4. The method of claim 2 , wherein said processing comprises processing said received at least one message data word according to said nested message authentication code to produce an authentication tag and an intermediate result from said reversible inner function.

5. The method of claim 4 , further comprising determining whether said decrypted intermediate result is the same as said produced intermediate result.

6. The method of claim 5 , further comprising correcting an erroneous message data word if said decrypted intermediate result is not the same as said produced intermediate result.

7. The method of claim 5 , wherein said correcting comprises identifying said erroneous message data word using a reverse inner function corresponding to said reversible inner function.

8. A system for detecting errors in a message comprising:

means for receiving at least one message data word and an authentication tag, said authentication tag produced from said at least one message data word according to a nested message authentication code having a reversible inner function;

means for processing said received at least one message data word according to said nested message authentication code to produce an authentication tag;

means for determining whether said produced authentication tag is the same as said received authentication tag;

wherein said receiving comprises receiving at least one message data word, an authentication tag, and an intermediate result from said reversible inner function.

9. The system of claim 8 , wherein said receiving comprises receiving an encrypted intermediate result from said reversible inner function.

10. The system of claim 9 , further comprising means for decrypting said encrypted intermediate result if said produced authentication tag is not the same as said received authentication tag.

11. The system of claim 9 , wherein said processing comprises processing said received at least one message data word according to said nested message authentication code to produce an authentication tag and an intermediate result from said reversible inner function.

12. The system of claim 11 , further comprising means for determining whether said decrypted intermediate result is the same as said produced intermediate result.

13. The system of claim 12 , further comprising means for correcting an erroneous message data word if said decrypted intermediate result is not the same as said produced intermediate result.

14. The system of claim 12 , wherein said correcting comprises identifying said erroneous message data word using a reverse inner function corresponding to said reversible inner function.

15. A computer program product embodied on a computer readable medium for detecting errors in a message comprising:

computer code for receiving at least one message data word and an authentication tag, said authentication tag produced from said at least one message data word according to a nested message authentication code having a reversible inner function;

computer code for processing said received at least one message data word according to said nested message authentication code to produce an authentication tag;

computer code for determining whether said produced authentication tag is the same as said received authentication tag;

wherein said receiving comprises receiving at least one message data word, an authentication tag, and an intermediate result from said reversible inner function.

16. The computer program product of claim 15 , wherein said receiving comprises receiving an encrypted intermediate result from said reversible inner function.

17. The computer program product of claim 16 , further comprising computer code for decrypting said encrypted intermediate result if said produced authentication tag is not the same as said received authentication tag.

18. The computer program product of claim 16 , wherein said processing comprises processing said received at least one message data word according to said nested message authentication code to produce an authentication tag and an intermediate result from said reversible inner function.

19. The computer program product of claim 18 , further comprising computer code for determining whether said decrypted intermediate result is the same as said produced intermediate result.

20. The computer program product of claim 19 , further comprising computer code for correcting an erroneous message data word if said decrypted intermediate result is not the same as said produced intermediate result.

21. The computer program product of claim 19 , wherein said correcting comprises identifying said erroneous message data word using a reverse inner function corresponding to said reversible inner function.

Assignments (3)
MERGER Recorded Oct 17, 2007
From: NETWORKS ASSOCIATES TECHNOLOGY, INC.
To: MCAFEE, INC.
Reel/Frame 019974/0526 →
CONFIRMATORY LICENSE Recorded May 10, 2001
From: NETWORKS ASSOCIATES TECHNOLOGY, INC.
To: UNITED STATES AIR FORCE
Reel/Frame 011793/0174 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2000
From: CARMAN, DAVID W.; HEYMAN, MICHAEL D.; SHERMAN, ALAN T.
To: NETWORKS ASSOCIATES TECHNOLOGY, INC.
Reel/Frame 011416/0793 →