← Back to Patent Explorer
US4229818A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for enciphering blocks which succeed short blocks in a key-controlled block-cipher cryptographic system

Assignee: International Business Machines Corp
•
Filing: 1978-12-29
•
Granted: 1980-10-21
•
Expires: 1998-12-29
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for providing improved error-recovery and cryptographic strength when enciphering blocks which succeed short blocks in a Key-Controlled Block-Cipher Cryptographic System with chaining. Beginning with a pre-existing current chaining value (V), the system determines whether a current input block (X) of data to be encrypted is a full block or a short block. Both in the previous system and in proposed improvement, if the block is a full block, the system first combines the chaining value (V) with said full block (X) by a reversible operation such as exclusive-or and then block-enciphers the result of said exclusive-or under control of the user's cryptographic key (K) to produce an output cipher full block (Y); but if the block is a short block, of length L s then the system first block-enciphers the current chaining value (V) under control of the user's key (K), producing a result W, and then combines the short block (X), in a reversible operation, with the left-most portion, of length L s , of W to produce an output cipher short block (Y), of length L s . In either case, in the proposed improvement, the system then sets a new chaining value (V') for the system, as being equal to the terminal full block's length of the concatenation of the current chaining value (V) with the produced block of ciphertext (Y), and causes this new chaining value (V') to be the chaining value (V) for the next block. In the case of a short block this gives increased strength to, and speeded error-recovery for, the succeeding block or blocks to be enciphered, over the previous practice, in which the new chaining value was the last-previous output (W) of the block-cipher system.

Inventors

  • 👤 Stephen M. Matyas
  • 👤 Carl H. W. Meyer
  • 👤 Louis B. Tuckerman, III

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 01:26
CPC Classifications
H; H04; H04L; H04L9/00; H04L9/06; H04L9/0618; H04L9/0637; H04L2209/00; H04L2209/12

Claims Analysis

Total Claims: 13
Claim 1
Independent Claim 114 words
In a key-controlled block-cipher cryptographic process which includes taking an input data block and cryptographically transforming same into an input data block as a function of a unique user supplied key, initially transforming each new full input data block of length L.sup.(f) by a mathematically invertible function which depends on a preexisting data word which existed during a previous cryptographic transformation and using said initially transformed data block as the input block to said key-controlled cryptographic transformation, the improvement which comprises utilizing as the preexisting data word the immediately preceding cryptographically transformed output data string of length L.sup.(f) resulting from immediately preceding cryptographic transformations regardless of the length of the preceding encrypted data block.
Claim 2
Dependent Claim 114 words
In a key-controlled block-cipher cryptographic process which includes taking an input data block and cryptographically transforming same into an input data block as a function of a unique user supplied key, initially transforming each new full input data block of length L.sup.(f) by a mathematically invertible function which depends on a preexisting data word which existed during a previous cryptographic transformation and using said initially transformed data block as the input block to said key-controlled cryptographic transformation, the improvement which comprises utilizing as the preexisting data word the immediately preceding cryptographically transformed output data string of length L.sup.(f) resulting from immediately preceding cryptographic transformations regardless of the length of the preceding encrypted data block.
Claim 3
Dependent Claim 28 words
A block cipher cryptographic system as set forth in claim 1 including using a predetermined data word as the preexisting data word for initiating operation of the system.
Claim 4
Dependent Claim 77 words
A cryptographic process as set forth in claim 1 including detecting that a short block of input data of length L.sup.(s) is to be transformed by the cryptographic system, determining said length L.sup.(s) of the short block, cryptographically transforming said preexisting data word of length L.sup.(f) and utilizing same to produce a short output data block which is a mathematically invertible function of said input short block, said function depending on said cryptographically transformed preexisting data word.
Claim 5
Dependent Claim 127 words
A cryptographic method as set forth in claim 1 including detecting that a short data block is to be transformed by the cryptographic system, determining the length L.sup.(s) of the short data block, transforming said preexisting data word by said key-controlled cryptographic transformation, selecting a portion of said cryptographically transformed preexisting data word equal in length to said short block, combining the short input block with said selected portion of said cryptographically transformed data word by a mathematically invertible function, outputting the result of said combining step as the output short block of the cryptographic system and utilizing said output short block as the most recent portion of length L.sup.(s) of said preexisting data word of length L.sup.(f) to be used in the next subsequent cryptographic step.
Claim 6
Dependent Claim 32 words
A cryptographic method as set forth in claim 4 including utilizing an exclusive-OR operation as the mathematically invertible function for combining the short data block and the cryptographically transformed preexisting data word.
Claim 7
Dependent Claim 213 words
In a block cipher cryptographic system for enciphering blocks of incoming data of a fixed predetermined size L.sup.(f) as a function of a unique user supplied encryption key to produce a cryptographically transformed output block of the same size as the input data block, the improvement which comprises a method for cryptographically transforming short data blocks of length L.sup.(s) being less than said predetermined block size L.sup.(f) to produce an output cryptographically transformed short data block of the same size L.sup.(s) as the input data block, said improved method including recognizing when a short input data block of length L.sup.(s) is encountered, obtaining the immediately preceding cryptographically transformed output data string from the system of length L.sup.(f), cryptographically transforming said output data string of length L.sup.(f), extracting a predetermined portion of said cryptographically transformed data string of length L.sup.(s) and combining said transformed string and data block of length L.sup.(s) in a mathematically invertible function utilizing the output of said combination as the cryptographically transformed short data block, and utilizing the cryptographically transformed data block segment of length L.sup.(s) as the most recent portion of said immediately preceding output data string for use in the next encipherment regardless of the length (L.sup.(f) or L.sup.(s)) of the next input data block to be enciphered.
Claim 8
Dependent Claim 213 words
In a block cipher cryptographic system for enciphering blocks of incoming data of a fixed predetermined size L.sup.(f) as a function of a unique user supplied encryption key to produce a cryptographically transformed output block of the same size as the input data block, the improvement which comprises a method for cryptographically transforming short data blocks of length L.sup.(s) being less than said predetermined block size L.sup.(f) to produce an output cryptographically transformed short data block of the same size L.sup.(s) as the input data block, said improved method including recognizing when a short input data block of length L.sup.(s) is encountered, obtaining the immediately preceding cryptographically transformed output data string from the system of length L.sup.(f), cryptographically transforming said output data string of length L.sup.(f), extracting a predetermined portion of said cryptographically transformed data string of length L.sup.(s) and combining said transformed string and data block of length L.sup.(s) in a mathematically invertible function utilizing the output of said combination as the cryptographically transformed short data block, and utilizing the cryptographically transformed data block segment of length L.sup.(s) as the most recent portion of said immediately preceding output data string for use in the next encipherment regardless of the length (L.sup.(f) or L.sup.(s)) of the next input data block to be enciphered.
Claim 9
Dependent Claim 221 words
In a block cipher cryptographic system for encrypting blocks of incoming data of a fixed predetermined size L.sup.(f) as a function of a unique user supplied encryption key to produce a cryptographically transformed output block Y of the same length L.sup.(f) as the input data block, a chaining method for cryptographically transforming short data blocks of length L.sup.(s) being less than said predetermined block size L.sup.(f) to produce an output cryptographically transformed short data block Y.sup.(s) of the same length L.sup.(s) as the input data block, said improved method including recognizing when a short input data block of length L.sup.(s) is encountered, utilizing as the chaining value V for a current encipherment step the last full block's-length L.sup.(f) of the system cipher-text output regardless of the length of previous output blocks Y i , cryptographically transforming said chaining value, extracting a predetermined portion of said cryptographically transformed chaining value of length L.sup.(s) and combining same with said input short data block in a mathematically invertible function utilizing the output of said combination as the cryptographically transformed short data block, and utilizing the cryptographically transformed data block of length L.sup.(s) as the most recent portion of the chaining value V for use in the next encipherment regardless of the length (L.sup.(f) or L.sup.(s)) of the next input data block to be enciphered.
Claim 10
Dependent Claim 221 words
In a block cipher cryptographic system for encrypting blocks of incoming data of a fixed predetermined size L.sup.(f) as a function of a unique user supplied encryption key to produce a cryptographically transformed output block Y of the same length L.sup.(f) as the input data block, a chaining method for cryptographically transforming short data blocks of length L.sup.(s) being less than said predetermined block size L.sup.(f) to produce an output cryptographically transformed short data block Y.sup.(s) of the same length L.sup.(s) as the input data block, said improved method including recognizing when a short input data block of length L.sup.(s) is encountered, utilizing as the chaining value V for a current encipherment step the last full block's-length L.sup.(f) of the system cipher-text output regardless of the length of previous output blocks Y i , cryptographically transforming said chaining value, extracting a predetermined portion of said cryptographically transformed chaining value of length L.sup.(s) and combining same with said input short data block in a mathematically invertible function utilizing the output of said combination as the cryptographically transformed short data block, and utilizing the cryptographically transformed data block of length L.sup.(s) as the most recent portion of the chaining value V for use in the next encipherment regardless of the length (L.sup.(f) or L.sup.(s)) of the next input data block to be enciphered.
Claim 11
Dependent Claim 29 words
A block cipher cryptographic system as set forth in claim 7 wherein said combining step comprises exclusive-ORing the cryptographically transformed current chaining value with the input short data block.
Claim 12
Dependent Claim 70 words
A block cipher cryptographic system as set forth in claim 7 wherein said current output data block Y i is combined with the previous output data to form the chaining value for the next encipherment step wherein Y i has a length of n bytes and wherein said last combining step comprises discarding the oldest n bytes of the most recent chaining value and replacing same with Y i .
Claim 13
Dependent Claim 28 words
A block cipher cryptograhic system as set forth in claim 9 including using a predetermined data word as an initial chaining value for initiating operation of the system.

References Cited (Backward Citations)

US4074066A Cited
US4078152A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1983-10-21 1984-04-21 1984-10-21 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1987-10-21 1988-04-21 1988-10-21 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1991-10-21 1992-04-21 1992-10-21 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag