← Back to Patent Explorer
EP0021401A1 Expired / Lapsed EP ⏱️ 0.0 years remaining

A method and apparatus for transaction and identity verification

Assignee: International Business Machines Corp
•
Filing: 1980-06-24
•
Granted: —
•
Expires: 2000-06-24
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus whereby the senders and receivers of messages sent over a transmission system including a Host CPU may guarantee the integrity of the data content of the message and also the absolute identity of the sender. Each user of the system as well as the Host CPU contains an identical key-controlled block-cipher cryptographic device with data chaining for encrypting and decrypting messages as required, wherein each user has knowledge of only his own cryptographic key and wherein the Host CPU has access to the unique cryptographic keys of all users of the system stored in a high security storage area available only to said CPU. Stated very generally, the originator of a mesage A sends a message to a receiver B which includes a transaction or message portion X and a unique digital signature portion Y which is a function both of the message and the senders unique cryptographic key K A . The receiver then communicates with the CPU for verification of the signature Y. The CPU accesses the sender's key K A from a secure memory and computes the digital signature Y utilizing the message portion X received from B and the key K A . Upon a successful verification of the signatures by the CPU, the CPU notifies B via an additional message that the signature of A is valid based on the data content of the message and the key K A . Based on the information received from the CPU, B may be certain that the signature and message originated with A and A may not later deny having sent the message as it would be virtually impossible for the signature to be forged since it is a complex function of the message content itself. A may also be assured that B cannot alter the message as the signature would no longer be valid. According to other aspects of the invention the interrupting of communications between A and B by an eavesdropper and the subsequent sending of stale messages is prevented. As a still further feature of the invention, an eavesdropper is prevented from sending the "forged" approval from the CPU to the receiver B.

Inventors

  • 👤 Alan Gustave Konheim

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-10-28 00:32
CPC Classifications
H; H04; H04L; H04L9/00; H04L9/32; H04L9/3247; G; G06; G06Q; G06Q20/00; G06Q20/38; G06Q20/40; G06Q20/401; G07; G07B; G07B17/00; G07B17/00733; G07F; G07F7/00; G07F7/08; G07F7/10; G07F7/1016; H04L9/06; H04L9/0618; H04L9/0625; H04L9/3271; G07B2017/00741; G07B2017/00758; G07B2017/00766; H04L2209/00; H04L2209/56

Claims Analysis

Total Claims: 18
Claim 1
Independent Claim 283 words
A method for effecting a high security transaction verification operation in a computer based communications system comprising a central Host CPU, characterized in that said Host CPU includes a high security Verify Unit (VAULT) therein said system including at least two remotely located terminals selectively connectable to said Host CPU and wherein said Verify Unit and each of said terminals includes substantially identical key-controlled block cipher cryptographic devices with block chaining included therein said method comprising: User A (originator) at a first terminal sending User B (receiver) at a second terminal a message M having a data portion (X) and a signature portion (Y) said signature portion being a block cipher function of A's key K A and the data portion (X), such that M = (X,Y); User B on receipt of the message (X,Y) reencrypting same under his own key K B to form a message U, sending said message U to the Host CPU together with the identities of User A and User B (originator, receiver), and requesting a verification operation from said Host CPU, the Host CPU, after receiving said message, obtaining the keys K A and K B from a secure storage means and decrypting U under key K B to obtain message U which presumptively comprises a message portion U 1 and a signature portion U 2 ; the Host CPU then forming a signature utilizing U 1 as the data input and K A as the key input to the cryptographic device and comparing this signature with the signature value U 2 received from User B, and the most CPU returning an accept/reject signal to User B depending upon whether or not the two signatures are identical.
Claim 2
Independent Claim 283 words
A method for effecting a high security transaction verification operation in a computer based communications system comprising a central Host CPU, characterized in that said Host CPU includes a high security Verify Unit (VAULT) therein said system including at least two remotely located terminals selectively connectable to said Host CPU and wherein said Verify Unit and each of said terminals includes substantially identical key-controlled block cipher cryptographic devices with block chaining included therein said method comprising: User A (originator) at a first terminal sending User B (receiver) at a second terminal a message M having a data portion (X) and a signature portion (Y) said signature portion being a block cipher function of A's key K A and the data portion (X), such that M = (X,Y); User B on receipt of the message (X,Y) reencrypting same under his own key K B to form a message U, sending said message U to the Host CPU together with the identities of User A and User B (originator, receiver), and requesting a verification operation from said Host CPU, the Host CPU, after receiving said message, obtaining the keys K A and K B from a secure storage means and decrypting U under key K B to obtain message U which presumptively comprises a message portion U 1 and a signature portion U 2 ; the Host CPU then forming a signature utilizing U 1 as the data input and K A as the key input to the cryptographic device and comparing this signature with the signature value U 2 received from User B, and the most CPU returning an accept/reject signal to User B depending upon whether or not the two signatures are identical.
Claim 3
Dependent Claim 114 words
A method as set forth in claim 1 wherein, after determining the validit of the received signature U 2 the Host CPU then generating a new signature V for the received message U which is a predetermined function of the key K B and the previously decrypted message U also depending upon the result of said signature comparison operation, and sending the message V to User B; Hser B on receipt of the message V computing a signature V' which is a predetermined function of his own key K B and the message (X,Y) initially received from User A and comparing same with the message V for correspondence, the outcome serving as accept/reject signal.
Claim 4
Dependent Claim 92 words
A transaction verification method as set forth in claim 2, including said Verify Unit utilizing the data ~U (the logical complement of U) for generating the signature message V when a valid signature from User A is to be acknowledged and utilizing the data U to produce the signature V when the signature for User A is found to be incorrect, and said User B utilizing the data ~(X,Y) (the logical complement of X,Y) to produce the signature message V' and comparing V' with the signature message V received from Host CPU.
Claim 5
Dependent Claim 74 words
A transaction verification method as set forth in any of claims 1-3, whereby the security of the individual user keys K Z is maintained by storing all said individual user keys in the Host CPU under a master system key K HV and accessing a particular encrypted key K belonging to an identified User Z from the Host CPU memory and decrypting same under said master key K HV in the said Verify Unit.
Claim 6
Dependent Claim 81 words
A transaction verification method as set forth in any of claims 1-4, including utilizing a master system transmission key K T for all communications between Users and between any User and the Host CPU subject to eavesdropping and wherein said transmission encryption operation is superimposed upon all messages between such system entities wherein all messages must first be encrypted under the system transmission key K T before transmission and decrypted under said transmission key K T upon receipt from another unit.
Claim 7
Independent Claim 74 words
A method for transaction verification as set forth in any of claims 1-5, including forming all signatures in the present system by selecting as said signatures a predetermined final number of bytes of the block chained encryption of the full data input to said key controlled block-cipher cryptographic device with chaining wherein said signature is a direct funtion of and fully dependent upon the entire content of the data input to said cryptographic device.
Claim 8
Dependent Claim 116 words
A transaction verification method as set forth in any of claims 1-6, including the User A forming the initial message M utilizing the unique counter value from his own terminal (CT orig ), a unique counter value (CT rec ) obtained from the receiver's (User B) terminal and the current date, and utilizing this information as a header on the message (X) and said User B, upon receiving said initial message, checking the date, and the value of the counter CT rec for correspondence with a stored value which was previously sent User A upon the initial contact between User A and User B and aborting said transaction if either of said values fails to agree.
Claim 9
Dependent Claim 307 words
A transaction verification method as set forth in any of claims 1-7, wherein the Host CPU, upon receipt of said message from User B, requesting a verify operation from its associated Verify Unit and providing the message information (A,B,U) to said Verify Unit; said Verify Unit obtaining the keys K A and K B from a secure storage means located in said Host CPU and decrypting U under key K B to obtain message U which comprises a data portion U 1 and a signature .portion U 2 , the Verify Unit then forming a signature utilizing the data portion U 1 as the data input and the key K A as the key input to its associated cryptographic device and comparing the signature so generated with the signature value U 2 received from User B, said Verify Unit after determining the validity of the received signature U 2 then generating a new signature V for the message U which signature is a predetermined function of the key K B and the previously decrypted message U the particular function being dependent upon the result of said signature comparison operation and sending the message V to User B through the Host CPU; User B upon receipt of the message V computing a signature V' which is a predetermined function of his own key K B and the message (X,Y) initially received from User A and comparing same with the message V for correspondence; and wherein all signature generation operations in the previous enumerated signature generating steps comprise selecting as said signatures a predetermined final number of bytes of the block chained encryption of the full data input to said associated key-controlled block-cipher cryptographic devices with chaining wherein each said signature is a direct function of and fully dependent upon the entire data content supplied to said cryptographic device.
Claim 10
Dependent Claim 92 words
A transaction verification method as set forth in claim 8 wherein the individual User keys K are stored in the Host CPU system memory in encrypted form under a Verify Unit master key K HV and said individual keys are obtained from said Host CPU by the Verify Unit by accessing said Host at addresses derived from the identities of the Users A and B supplied to said Varify Unit, and decrypting said keys under the master key K HV to obtain the original User's keys K A and K B .
Claim 11
Dependent Claim 381 words
A computer based communications system having a high security transaction verification feature incorporated therein, said system comprising a Host CPU and a plurality of remotely located terminals including means for selectively connecting each terminal to said Host CPU or to another terminal via the communications network associated therewith, said system characterized by said Host CPU including a high security Verify Unit therein, said Verify Unit and each of said terminals including substantially identical key-controlled block-cipher cryptographic devices equipped with a block chaining feature, each terminal including means actuable when said terminal is used as an originating device (Terminal A) in a transaction to send a message M to another terminal acting as a receiver (Terminal B) said message M having a data portion (X) and a signature portion (Y), means for actuating the cryptographic device located in said terminal to form said signature (Y) as a block-cipher function of Terminal A's key K A and the data portion (X) such that M = (X,Y); means in the receiving terminal (Terminal B) actuable on receipt of the message M from the originating device (Terminal A) for reencrypting said message under the terminal's own key K B to form a message U and means for sending said message U to the Host CPU together with the identities of the originating and receiving terminals (Terminal A and Terminal B) and means for requesting a verification operation from said Host CPU; means in said Host CPU actuable upon the receipt of said message for obtaining the keys K A and K B from memory and for requesting a verify operation from the Verify Unit associated therewith; means in said Verify Unit for decrypting the message U under 'terminal B's key K B to obtain a decrypted message U which comprises a message portion U 1 and a signature portion U 2 , means in said Verify Unit for forming a signature utilizing U 1 as a data input and the originating terminal's key K A as the key input to the cryptographic device contained therein and means for comparing the signature so generated with the signature value U 2 received from terminal B; means in said Verify Unit for returning an accept/reject signal to receiving terminal B depending upon whether the two signatures are identical.
Claim 12
Dependent Claim 381 words
A computer based communications system having a high security transaction verification feature incorporated therein, said system comprising a Host CPU and a plurality of remotely located terminals including means for selectively connecting each terminal to said Host CPU or to another terminal via the communications network associated therewith, said system characterized by said Host CPU including a high security Verify Unit therein, said Verify Unit and each of said terminals including substantially identical key-controlled block-cipher cryptographic devices equipped with a block chaining feature, each terminal including means actuable when said terminal is used as an originating device (Terminal A) in a transaction to send a message M to another terminal acting as a receiver (Terminal B) said message M having a data portion (X) and a signature portion (Y), means for actuating the cryptographic device located in said terminal to form said signature (Y) as a block-cipher function of Terminal A's key K A and the data portion (X) such that M = (X,Y); means in the receiving terminal (Terminal B) actuable on receipt of the message M from the originating device (Terminal A) for reencrypting said message under the terminal's own key K B to form a message U and means for sending said message U to the Host CPU together with the identities of the originating and receiving terminals (Terminal A and Terminal B) and means for requesting a verification operation from said Host CPU; means in said Host CPU actuable upon the receipt of said message for obtaining the keys K A and K B from memory and for requesting a verify operation from the Verify Unit associated therewith; means in said Verify Unit for decrypting the message U under 'terminal B's key K B to obtain a decrypted message U which comprises a message portion U 1 and a signature portion U 2 , means in said Verify Unit for forming a signature utilizing U 1 as a data input and the originating terminal's key K A as the key input to the cryptographic device contained therein and means for comparing the signature so generated with the signature value U 2 received from terminal B; means in said Verify Unit for returning an accept/reject signal to receiving terminal B depending upon whether the two signatures are identical.
Claim 13
Dependent Claim 166 words
A communication system as set forth in claim 10 wherein said means in said Verify Unit for returning an accept/reject signal to the receiving terminal B comprises means for generating a new signature V including means for supplying a predetermined function, depending upon whether or not the two signatures are identical, of the decrypted data message U, previously received from terminal B as the data input to the cryptographic device in the Verify Unit, and for supplying the key K B as the key input to said cryptographic device and means for transmitting said derived signature V to the terminal B; means in said terminal actuable on receipt of the signature V to generate a signature V' using a predetermined function of the original message M as the data input to said terminal's cryptographic device and the terminal B's key K B as the key input to said device and means for comparing the generated signature V' with the signature V received from the Verify Unit.
Claim 14
Dependent Claim 109 words
A communication system as set forth in claim 11 wherein said means for generating the signature V within the Verify Unit comprises means actuable in response to the comparison between the signature U and that generated from U 1 and K A to supply the logical complement of U to the encryption device in the Verify Unit upon a successful comparison and for supplying the true value of U to said encryption device if said comparison is unsuccessful; said means to generate the signature V' within said terminal comprising means for supplying the logical complement of said original message M as the data input to said terminal's cryptographic device.
Claim 15
Dependent Claim 107 words
A communication system as set forth in any of claims 10-12 including key storage means in the Host CPU for storing all of the individual user keys K 2 in system memory in encrypted form under a master storage key K HV which is resident in a high security storage means within the Verify Unit; means for generating key storage addresses based on the communicated identity of the particular terminals involved in a given transaction and for transmitting accessed, encrypted keys K Z to the Verify Unit and means operative therein to decrypt said keys to obtain the actual keys for use in the transaction verification operations.
Claim 16
Dependent Claim 62 words
A communication system as set forth in any of claims 10-13 including transmission encryption means resident in all terminals of said system and in the Host CPU for encrypting all messages transmitted between terminals and between a terminal and the Host CPU under a master transmission key K T and means for decrypting all received messages under said same encryption key KT.
Claim 17
Dependent Claim 75 words
A communication system as set forth in any of claims 10-14, including means associated with the cryptographic device in said terminals and said Host CPU for forming all signatures utilized within the system by selecting a predetermined final number of bytes of the encrypted output of said cryptographic devices said output being derived from the entire data message input to said cryptographic device whereby said signatures are dependent upon the entire data message being encrypted.
Claim 18
Dependent Claim 133 words
A communication system as set forth in any of claims 10-15, including counter means resident in each terminal for producing a time dependent count value and means for including a predetermined current count value of the counters in both the originating and receiving terminals as a part of a message header which is incorporated in the data portion (X) of the message M transmitted from the originating terminal A to the receiving terminal B, means resident in each terminal for placing a quantity indicative of the date of a particular transaction as a portion of the header in any message M transmitted to another terminal, and means within each terminal for verifying the proper relationship of the count values and date for any received message wherein a transaction verification is to be requested.

References Cited (Backward Citations)

GB2008363A Cited

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag