Patent US5796830A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5796830A Expired / Lapsed US ⏱️ 0.0 years remaining

Interoperable cryptographic key recovery system

Assignee: International Business Machines Corp
•
Filing: 1996-07-29
•
Granted: 1998-08-18
•
Expires: 2016-07-29
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A cryptographic key recovery system that is interoperable with existing systems for establishing keys between communicating parties. The sender uses a reversible key inversion function to generate key recovery values P, Q and (optionally) R as a function of a session key and public information, so that the session key may be regenerated from the key recovery values P, Q and (if generated) R. Key recovery values P and Q are encrypted using the respective public recovery keys of a pair of key recovery agents. The encrypted P and Q values are included along with other recovery information in a session header accompanying an encrypted message sent from the sender to the receiver. The key recovery agents may recover the P and Q values for a law enforcement agent by decrypting the encrypted P and Q values in the session header, using their respective private recovery keys corresponding to the public keys. The R value, if generated, is not made available to the key recovery agents, but is ascertained using standard cryptanalytic techniques in order to provide a nontrivial work factor for law enforcement agents. The receiver checks the session header of a received message to ensure that the sender has included valid recovery information. Only when the receiver has verified that the sender has included valid recovery information does the receiver decrypt the received message.

Inventors

  • 👤 Donald Byron Johnson
  • 👤 Paul Ashley Karger
  • 👤 Charles William Kaufman, Jr.
  • 👤 Stephen Michael Matyas, Jr.
  • 👤 David Robert Safford
  • 👤 Marcel Mordechay Yung
  • 👤 Nevenko Zunic

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 13:47
CPC Classifications
H; H04; H04L; H04L9/00; H04L9/08; H04L9/0894

Claims Analysis

Total Claims: 35
Claim 1
Independent Claim 140 words
A method of providing, in a manner verifiable by a possessor of a cryptographic key, for the recovery of said key using a plurality of cooperating key recovery agents, comprising the steps of: generating a plurality of shared key recovery values from which said key may be recovered, said key recovery values being generated as a function only of said key and public information; encrypting said shared key recovery values under respective keys of said key recovery agents to generate encrypted recovery values; and transmitting said encrypted recovery values over a communications channel to make said shared key recovery values available to said key recovery agents, whereby said shared key recovery values may be regenerated from said cryptographic key and said public information by a possessor of said key to verify said encrypted recovery values without requiring additional secret information.
Claim 2
Independent Claim 140 words
A method of providing, in a manner verifiable by a possessor of a cryptographic key, for the recovery of said key using a plurality of cooperating key recovery agents, comprising the steps of: generating a plurality of shared key recovery values from which said key may be recovered, said key recovery values being generated as a function only of said key and public information; encrypting said shared key recovery values under respective keys of said key recovery agents to generate encrypted recovery values; and transmitting said encrypted recovery values over a communications channel to make said shared key recovery values available to said key recovery agents, whereby said shared key recovery values may be regenerated from said cryptographic key and said public information by a possessor of said key to verify said encrypted recovery values without requiring additional secret information.
Claim 3
Dependent Claim 18 words
The method of claim 1 in which a pair of communicating parties use said cryptographic key to intercommunicate.
Claim 4
Dependent Claim 25 words
The method of claim 2 in which said cryptographic key is established by one of said parties and communicated to the other of said parties.
Claim 5
Dependent Claim 20 words
The method of claim 1 in which said cryptographic key is established by both of said parties acting in concert.
Claim 6
Dependent Claim 19 words
The method of claim 1 in which said cryptographic key is completely determined by said shared key recovery values.
Claim 7
Dependent Claim 54 words
The method of claim 1 in which said generating step comprises the further step of: generating a nonshared key recovery value as a function of said cryptographic key that is not shared with any key recovery agent, said key being completely determined by said shared key recovery values and said nonshared key recovery value.
Claim 8
Dependent Claim 77 words
The method of claim 1 in which said generating step comprises the steps of: generating a first input value as a first invertible function of said cryptographic key; concatenating at least a portion of said first input value with a second input value to generate a lengthened input value; generating an output value as a second invertible function of said lengthened input value; and partitioning said output value into subportions to create said shared key recovery values.
Claim 9
Dependent Claim 20 words
The method of claim 7 in which said second input value is generated as a function of said cryptographic key.
Claim 10
Dependent Claim 55 words
The method of claim 7 in which only a portion of said first input value is concatenated with said second input value to generate said lengthened input value, the remaining portion of said first input value being used to generate a nonshared key recovery value that is not made available to any key recovery agent.
Claim 11
Dependent Claim 24 words
The method of claim 9 in which said second input value is generated as a function of said remaining portion of said input value.
Claim 12
Dependent Claim 15 words
The method of claim 7 in which said first invertible function is a pseudorandom function.
Claim 13
Dependent Claim 29 words
The method of claim 7 in which said first invertible function is such that each bit of said first input value depends on each bit of said cryptographic key.
Claim 14
Dependent Claim 15 words
The method of claim 7 in which said second invertible function is a pseudorandom function.
Claim 15
Dependent Claim 29 words
The method of claim 7 in which said second invertible function is such that each bit of said output value depends on each bit of said lengthened input value.
Claim 16
Dependent Claim 26 words
The method of claim 7 in which all of said first input value is concatenated with said second input value to generate said lengthened input value.
Claim 17
Dependent Claim 15 words
The method of claim 7 in which said first invertible function is a non-pseudorandom function.
Claim 18
Dependent Claim 31 words
The method of claim 7 in which one of said subportions of said output value is a nonshared key recovery value that is not made available to any key recovery agent.
Claim 19
Dependent Claim 65 words
The method of claim 1, further comprising the steps of: regenerating said shared key recovery values from said key and said public information; encrypting said regenerated shared key recovery values under said encryption keys of said key recovery agents to generate comparison encrypted recovery values; and comparing said transmitted encrypted recovery values with said comparison encrypted recovery values to verify said transmitted encrypted recovery values.
Claim 20
Dependent Claim 53 words
The apparatus of claim 18 in which said generating means further comprises: means for generating a nonshared key recovery value as a function of said cryptographic key that is not shared with any key recovery agent, said key being completely determined by said shared key recovery values and said nonshared key recovery value.
Claim 21
Dependent Claim 82 words
The apparatus of claim 18 in which said generating means comprises: means for generating a first input value as a first invertible function of said cryptographic key; means for concatenating at least a portion of said first input value with a second input value to generate a lengthened input value; means for generating an output value as a second invertible function of said lengthened input value; and means for partitioning said output value into subportions to create said shared key recovery values.
Claim 22
Dependent Claim 18 words
The method of claim 1 in which said keys of said key recovery agents are public encryption keys.
Claim 23
Dependent Claim 55 words
The program storage of claim 21 in which said generating step comprises the further step of: generating a nonshared key recovery value as a function of said cryptographic key that is not shared with any key recovery agent, said key being completely determined by said shared key recovery values and said nonshared key recovery value.
Claim 24
Dependent Claim 79 words
The program storage device of claim 21 in which said generating step comprises the steps of: generating a first input value as a first invertible function of said cryptographic key; concatenating at least a portion of said first input value with a second input value to generate a lengthened input value; generating an output value as a second invertible function of said lengthened input value; and partitioning said output value into subportions to create said shared key recovery values.
Claim 25
Dependent Claim 14 words
The method of claim 7 in which said first input value comprises said key.
Claim 26
Dependent Claim 14 words
The apparatus of claim 20 in which said first input value comprises said key.
Claim 27
Dependent Claim 16 words
The program storage device of claim 23 in which said first input value comprises said key.
Claim 28
Dependent Claim 142 words
Apparatus for providing, in a manner verifiable by a possessor of a cryptographic key, for the recovery of said key using a plurality of cooperating key recovery agents, comprising: means for generating a plurality of shared key recovery values from which said key may be recovered, said key recovery values being generated as a function only of said key and public information; means for encrypting said shared key recovery values under respective keys of said key recovery agents to generate encrypted recovery values; and means for transmitting said encrypted recovery values over a communications channel to make said shared key recovery values available to said key recovery agents, whereby said shared key recovery values may be regenerated from said cryptographic key and said public information by a possessor of said key to verify said encrypted recovery values without requiring additional secret information.
Claim 29
Dependent Claim 142 words
Apparatus for providing, in a manner verifiable by a possessor of a cryptographic key, for the recovery of said key using a plurality of cooperating key recovery agents, comprising: means for generating a plurality of shared key recovery values from which said key may be recovered, said key recovery values being generated as a function only of said key and public information; means for encrypting said shared key recovery values under respective keys of said key recovery agents to generate encrypted recovery values; and means for transmitting said encrypted recovery values over a communications channel to make said shared key recovery values available to said key recovery agents, whereby said shared key recovery values may be regenerated from said cryptographic key and said public information by a possessor of said key to verify said encrypted recovery values without requiring additional secret information.
Claim 30
Dependent Claim 68 words
The apparatus of claim 27, further comprising: means for regenerating said shared key recovery values from said key and said public information; means for encrypting said regenerated shared key recovery values under said encryption keys of said key recovery agents to generate comparison encrypted recovery values; and means for comparing said transmitted encrypted recovery values with said comparison encrypted recovery values to verify said transmitted encrypted recovery values.
Claim 31
Dependent Claim 18 words
The apparatus of claim 27 in which said keys of said key recovery agents are public encryption keys.
Claim 32
Dependent Claim 160 words
A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for providing, in a manner verifiable by a possessor of a cryptographic key, for the recovery of said key using a plurality of cooperating key recovery agents, said method steps comprising: generating a plurality of shared key recovery values from which said key may be recovered, said key recovery values being generated as a function only of said key and public information; encrypting said shared key recovery values under respective keys of said key recovery agents to generate encrypted recovery values; and transmitting said encrypted recovery values over a communications channel to make said shared key recovery values available to said key recovery agents, whereby said shared key recovery values may be regenerated from said cryptographic key and said public information by a possessor of said key to verify said encrypted recovery values without requiring additional secret information.
Claim 33
Dependent Claim 160 words
A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for providing, in a manner verifiable by a possessor of a cryptographic key, for the recovery of said key using a plurality of cooperating key recovery agents, said method steps comprising: generating a plurality of shared key recovery values from which said key may be recovered, said key recovery values being generated as a function only of said key and public information; encrypting said shared key recovery values under respective keys of said key recovery agents to generate encrypted recovery values; and transmitting said encrypted recovery values over a communications channel to make said shared key recovery values available to said key recovery agents, whereby said shared key recovery values may be regenerated from said cryptographic key and said public information by a possessor of said key to verify said encrypted recovery values without requiring additional secret information.
Claim 34
Dependent Claim 67 words
The program storage device of claim 30, said method steps further comprising: regenerating said shared key recovery values from said key and said public information; encrypting said regenerated shared key recovery values under said encryption keys of said key recovery agents to generate comparison encrypted recovery values; and comparing said transmitted encrypted recovery values with said comparison encrypted recovery values to verify said transmitted encrypted recovery values.
Claim 35
Dependent Claim 20 words
The program storage device of claim 30 in which said keys of said key recovery agents are public encryption keys.

References Cited (Backward Citations)

US5276737A Cited
US5315658A Cited
US5276737B1 Cited
US5315658B1 Cited
WO1995019672A2 Cited
WO1996005673A1 Cited
US5557765A Cited
US5557346A Cited
US5647000A Cited
US5633928A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-08-17 2002-02-16 2002-08-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-08-17 2006-02-16 2006-08-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-08-17 2010-02-16 2010-08-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag