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

Method for encrypting transmitted data using a unique key

Assignee: Hewlett Packard Development Co LP
•
Filing: 1989-03-14
•
Granted: 1990-06-12
•
Expires: 2009-03-14
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The invention comprises a method for encrypting data for communication between a host computer and each of a plurality of remote terminals in a network. A method is provided for periodically generating a unique dynamic encryption key for each of said plurality of terminals using a system seed key residing only in the host computer. The dynamic encryption key generated for use by said terminal in encrypting data transmitted to said host computer and for decrypting data received from said host computer. The method includes storing at said terminal the dynamic key previously generated by said host for said terminal.

Inventors

  • 👤 Ralph R. Bestock
  • 👤 Jae-Young Kim
  • 👤 Webster D. Hopkins
  • 👤 Martin M. Atalla

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-26 09:11
CPC Classifications
H; H04; H04L; H04L63/00; H04L63/06; G; G06; G06Q; G06Q20/00; G06Q20/38; G06Q20/382; G06Q20/3829; G07; G07F; G07F7/00; G07F7/08; G07F7/10; G07F7/1016; H04L63/08; H04L63/083; H04L9/00; H04L9/08; H04L9/0816; H04L9/0819; H04L9/0822; H04L9/0891; H04L2209/00; H04L2209/56

Claims Analysis

Total Claims: 39
Claim 1
Independent Claim 291 words
A method of encrypting data for on-line data communication between a host computer and each of a plurality of remote terminals, wherein a unique dynamic key is periodically generated for each said terminal using a system seed key residing only in the host computer, said dynamic key being for use by said terminal in encrypting data transmitted to said host computer and for decrypting data received from said host computer, each said terminal further including means for storing a previously generated dynamic key for said terminal, said method comprising the steps of: a. receiving at said host computer a new dynamic key request from one of said terminals, said new dynamic key request including a predetermined terminal identifier for said terminal; b. determining in said host computer the dynamic key previously generated for said terminal by said host wherein said dynamic key previously generated by said host is currently stored in said terminal; c. generating in said host computer a new dynamic key for said terminal as a function of said seed key and said predetermined terminal identifier for said terminal; d. encrypting said new dynamic key in said host computer using said dynamic key previously generated by said host computer; e. transmitting said encrypted new dynamic key from said host computer to said terminal; f. decrypting said new dynamic key at said terminal using said dynamic key previously generated by said host currently stored in said terminal; g. encrypting data at said terminal using said new dynamic key and transmitting said encrypted data to said host; h. decrypting said encrypted data at said host using said new dynamic key; and i. storing said new dynamic key in said terminal in place of said dynamic key previously generated by said host.
Claim 2
Independent Claim 291 words
A method of encrypting data for on-line data communication between a host computer and each of a plurality of remote terminals, wherein a unique dynamic key is periodically generated for each said terminal using a system seed key residing only in the host computer, said dynamic key being for use by said terminal in encrypting data transmitted to said host computer and for decrypting data received from said host computer, each said terminal further including means for storing a previously generated dynamic key for said terminal, said method comprising the steps of: a. receiving at said host computer a new dynamic key request from one of said terminals, said new dynamic key request including a predetermined terminal identifier for said terminal; b. determining in said host computer the dynamic key previously generated for said terminal by said host wherein said dynamic key previously generated by said host is currently stored in said terminal; c. generating in said host computer a new dynamic key for said terminal as a function of said seed key and said predetermined terminal identifier for said terminal; d. encrypting said new dynamic key in said host computer using said dynamic key previously generated by said host computer; e. transmitting said encrypted new dynamic key from said host computer to said terminal; f. decrypting said new dynamic key at said terminal using said dynamic key previously generated by said host currently stored in said terminal; g. encrypting data at said terminal using said new dynamic key and transmitting said encrypted data to said host; h. decrypting said encrypted data at said host using said new dynamic key; and i. storing said new dynamic key in said terminal in place of said dynamic key previously generated by said host.
Claim 3
Dependent Claim 15 words
The method of claim 1 wherein steps a through i are repeated for each transaction.
Claim 4
Dependent Claim 63 words
The method of claim 1 including generating at said host computer and said terminal a plurality of transaction data encryption keys using a plurality of variants, wherein said plurality of variants are common to said host system and said of terminal, and wherein said plurality of variants generate said plurality of transaction data encryption keys as a function of said new dynamic key.
Claim 5
Dependent Claim 29 words
The method of claim 3 wherein transaction data transmitted between said host computer and said one of said plurality of terminals is encrypted with said transaction data encryption keys.
Claim 6
Dependent Claim 23 words
The method of claim 4 wherein said transaction data encryption keys include at least a key encryption key and a PIN encryption key.
Claim 7
Dependent Claim 36 words
The method of claim 5 wherein said variant generating means includes a plurality of variant numbers, each of said plurality of variant numbers corresponding to one of each of said plurality of transaction data encryption keys.
Claim 8
Dependent Claim 39 words
The method of claim 6 wherein said variant generating means includes means for exclusively or-ing each of said plurality of variant numbers with said first dynamic key wherein each of said corresponding plurality of transaction data keys is formed.
Claim 9
Dependent Claim 54 words
The method of claim 7 wherein said variant numbers are comprised of a 4 bit data input and wherein said means for exclusively or-ing said variant numbers with said first dynamic key exclusively or's said 4 bit input with a selected 4 bits in the first 8 bits of said dynamic key input string.
Claim 10
Dependent Claim 15 words
The method of claim 3 wherein steps a through i are repeated for each transaction.
Claim 11
Dependent Claim 16 words
The method of claim 3 wherein steps a through i are selectively repeated at predetermined intervals.
Claim 12
Dependent Claim 23 words
The method of claim 3 wherein one of said plurality of transaction encryption keys is used to encrypt said data at said terminal.
Claim 13
Dependent Claim 19 words
The method of claim 1 wherein said new dynamic key request further includes a transaction number for said terminal.
Claim 14
Dependent Claim 37 words
The method of claim 12 wherein said new dynamic key is generated by said host as a function of said seed key and said predetermined terminal identifier for said terminal, and said transaction number for said terminal.
Claim 15
Dependent Claim 22 words
The method of claim 1 wherein said host computer and said plurality of terminals comprises a card activation and pin selection system.
Claim 16
Dependent Claim 25 words
The method of claim 1 wherein said host computer and said plurality of terminals comprises an Electronic Funds Transfer System with Point of Sale Terminals.
Claim 17
Dependent Claim 19 words
The method of claim 1 wherein said host computer and said plurality of terminals comprises an Automated Teller Network.
Claim 18
Dependent Claim 18 words
The method of claim 1 wherein said dynamic key is comprised of a 64 bit data input string.
Claim 19
Dependent Claim 29 words
The method of claim 1 including one or more additional seed keys and wherein said one or more additional seed keys are used to generate said new dynamic key.
Claim 20
Dependent Claim 20 words
The method of claim 1 further including a plurality of seed keys for use in generating said new dynamic key.
Claim 21
Dependent Claim 21 words
The method of claim 19 wherein each of said seed keys is selectively variable through input means of the host computer.
Claim 22
Dependent Claim 67 words
The method of claim 1 including generating at said host computer and said terminal a plurality of transaction data encryption keys using a plurality of variants, wherein said plurality of variants are common to said host system and said one of said plurality of terminals, and wherein said plurality of variants generate said plurality of transaction data encryption keys as a function of said new dynamic key.
Claim 23
Dependent Claim 304 words
In a network comprising a host computer and a plurality or remote terminals, a method for safeguarding the on-line transmission of data between said host computer and any one of said plurality of remote terminals wherein a unique encryption key is used for each transmission of data between said host computer and said one of said plurality of terminals, said unique encryption key being derived as function of a unique dynamic key generated using a system seed key residing only in said host computer wherein a plurality of unique dynamic keys may be generated as a function of said seed key, and wherein N is a finite integer greater than or equal to 1 that defines the number of unique dynamic keys generated as a function of said seed key, said generation of said unique dynamic keys being programmable to occur at preselected intervals, comprising the steps of: a. generating in said host computer an nth dynamic key for said one of said plurality of terminals, wherein said nth dynamic key is a function of said seed key and a predetermined terminal identifier for said one of said plurality of terminals; b. encrypting said nth dynamic key in said host computer using the (n-1) th dynamic key, wherein said (n-1) th dynamic key is also stored at said one of said plurality of terminals; c. transmitting said encrypted nth dynamic key from said host computer to said one of said plurality of terminals; d. decrypting said nth dynamic key at said terminal using said (n-1) th dynamic key stored at said one of said plurality of terminals; e. encrypting data at said one of said plurality of terminals using said nth dynamic key and transmitting said encrypted data to said host; f. decrypting said encrypted data at said host using said nth dynamic key.
Claim 24
Dependent Claim 304 words
In a network comprising a host computer and a plurality or remote terminals, a method for safeguarding the on-line transmission of data between said host computer and any one of said plurality of remote terminals wherein a unique encryption key is used for each transmission of data between said host computer and said one of said plurality of terminals, said unique encryption key being derived as function of a unique dynamic key generated using a system seed key residing only in said host computer wherein a plurality of unique dynamic keys may be generated as a function of said seed key, and wherein N is a finite integer greater than or equal to 1 that defines the number of unique dynamic keys generated as a function of said seed key, said generation of said unique dynamic keys being programmable to occur at preselected intervals, comprising the steps of: a. generating in said host computer an nth dynamic key for said one of said plurality of terminals, wherein said nth dynamic key is a function of said seed key and a predetermined terminal identifier for said one of said plurality of terminals; b. encrypting said nth dynamic key in said host computer using the (n-1) th dynamic key, wherein said (n-1) th dynamic key is also stored at said one of said plurality of terminals; c. transmitting said encrypted nth dynamic key from said host computer to said one of said plurality of terminals; d. decrypting said nth dynamic key at said terminal using said (n-1) th dynamic key stored at said one of said plurality of terminals; e. encrypting data at said one of said plurality of terminals using said nth dynamic key and transmitting said encrypted data to said host; f. decrypting said encrypted data at said host using said nth dynamic key.
Claim 25
Dependent Claim 16 words
The method of claim 22 wherein steps a through f are selectively repeated at predetermined intervals.
Claim 26
Dependent Claim 29 words
The method of claim 22 including one or more additional seed keys and wherein said one or more additional seed keys are used to generate said (n+1) dynamic key.
Claim 27
Independent Claim 238 words
A method of encrypting data for on-line data communication between a host computer and each of a plurality of remote terminals, wherein a unique dynamic key is periodically generated for each said terminal using a system seed key residing only in the host computer, said dynamic key being for use by said terminal in encrypting data transmitted to said host computer and for decrypting data received from said host computer, each said terminal further including means for storing a previously generated dynamic key for said terminal, said method comprising the steps of: a. receiving at said host computer a new dynamic key request from one of said terminals, said new dynamic key request including a predetermined terminal identifier for said terminal; b. determining in said host computer the dynamic key previously generated for said terminal by said host wherein said dynamic key previously generated by said host is currently stored in said terminal; c. generating in said host computer a new dynamic key for said terminal as a function of said seed key and said predetermined terminal identifier for said terminal; d. encrypting said new dynamic key in said host computer using said dynamic key previously generated by said host computer; e. transmitting said encrypted new dynamic key from said host computer to said terminal; f. decrypting said new dynamic key at said terminal using said dynamic key previously generated by said host currently stored in said terminal;
Claim 28
Independent Claim 238 words
A method of encrypting data for on-line data communication between a host computer and each of a plurality of remote terminals, wherein a unique dynamic key is periodically generated for each said terminal using a system seed key residing only in the host computer, said dynamic key being for use by said terminal in encrypting data transmitted to said host computer and for decrypting data received from said host computer, each said terminal further including means for storing a previously generated dynamic key for said terminal, said method comprising the steps of: a. receiving at said host computer a new dynamic key request from one of said terminals, said new dynamic key request including a predetermined terminal identifier for said terminal; b. determining in said host computer the dynamic key previously generated for said terminal by said host wherein said dynamic key previously generated by said host is currently stored in said terminal; c. generating in said host computer a new dynamic key for said terminal as a function of said seed key and said predetermined terminal identifier for said terminal; d. encrypting said new dynamic key in said host computer using said dynamic key previously generated by said host computer; e. transmitting said encrypted new dynamic key from said host computer to said terminal; f. decrypting said new dynamic key at said terminal using said dynamic key previously generated by said host currently stored in said terminal;
Claim 29
Dependent Claim 67 words
The method of claim 25 including generating at said host computer and said terminal a plurality of transaction data encryption keys using a plurality of variants, wherein said plurality of variants are common to said host system and said one of said plurality of terminals, and wherein said plurality of variants generate said plurality of transaction data encryption keys as a function of said new dynamic key.
Claim 30
Dependent Claim 29 words
The method of claim 26 wherein said plurality of transaction data encryption keys are used to encode data transmitted between said host and one of said plurality of terminals.
Claim 31
Dependent Claim 16 words
The method of claim 27 wherein steps a through f are selectively repeated at predetermined intervals.
Claim 32
Dependent Claim 29 words
The method of claim 25 including one or more additional seed keys and wherein said one or more additional seed keys are used to generate said first dynamic key.
Claim 33
Dependent Claim 21 words
The method of claim 29 wherein each of said seed keys is selectively variable through input means of the host computer.
Claim 34
Independent Claim 245 words
A method of encrypting data for on-line data communication between a host computer and each of a plurality of remote terminals, wherein a unique dynamic key is periodically generated for each said terminal using a system seed key residing only in the host computer, said dynamic key being for use by said terminal in encrypting data transmitted to said host computer and for decrypting data received from said host computer, each said terminal further including means for storing a previously generated dynamic key for said terminal, said method comprising the steps of: a. sending a new dynamic key request to said host computer, said new dynamic key request comprising at least a terminal identification number for said terminal and a terminal transaction number for said terminal; b. receiving from said host computer an encrypted new dynamic key, wherein said new dynamic key is generated as a function of said new dynamic key request and said new dynamic key is encrypted by said host with a previously generated dynamic key; c. decrypting said new dynamic key at said terminal using said dynamic key previously generated by said host currently stored in said terminal; d. encrypting data at said terminal using said new dynamic key and transmitting said encrypted data to said host; e. decrypting said encrypted data at said host using said new dynamic key; and f. storing said new dynamic key in said terminal in place of said dynamic key previously generated by said host.
Claim 35
Independent Claim 245 words
A method of encrypting data for on-line data communication between a host computer and each of a plurality of remote terminals, wherein a unique dynamic key is periodically generated for each said terminal using a system seed key residing only in the host computer, said dynamic key being for use by said terminal in encrypting data transmitted to said host computer and for decrypting data received from said host computer, each said terminal further including means for storing a previously generated dynamic key for said terminal, said method comprising the steps of: a. sending a new dynamic key request to said host computer, said new dynamic key request comprising at least a terminal identification number for said terminal and a terminal transaction number for said terminal; b. receiving from said host computer an encrypted new dynamic key, wherein said new dynamic key is generated as a function of said new dynamic key request and said new dynamic key is encrypted by said host with a previously generated dynamic key; c. decrypting said new dynamic key at said terminal using said dynamic key previously generated by said host currently stored in said terminal; d. encrypting data at said terminal using said new dynamic key and transmitting said encrypted data to said host; e. decrypting said encrypted data at said host using said new dynamic key; and f. storing said new dynamic key in said terminal in place of said dynamic key previously generated by said host.
Claim 36
Dependent Claim 67 words
The method of claim 31 including generating at said host computer and said terminal a plurality of transaction data encryption keys using a plurality of variants, wherein said plurality of variants are common to said host system and said one of said plurality of terminals, and wherein said plurality of variants generate said plurality of transaction data encryption keys as a function of said new dynamic key.
Claim 37
Dependent Claim 29 words
The method of claim 32 wherein said plurality of transaction data encryption keys are used to encode data transmitted between said host and one of said plurality of terminals.
Claim 38
Dependent Claim 29 words
The method of claim 31 including one or more additional seed keys and wherein said one or more additional seed keys are used to generate said first dynamic key.
Claim 39
Dependent Claim 21 words
The method of claim 34 wherein each of said seed keys is selectively variable through input means of the host computer.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1993-06-11 1993-12-11 1994-06-12 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1997-06-11 1997-12-11 1998-06-12 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2001-06-11 2001-12-11 2002-06-12 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag