Search Images Maps Play YouTube News Gmail Drive More »
Advanced Patent Search | Web History | Sign in

Patents

A Block-Cipher Cryptographic System utilizing a unique user supplied key to control the cryptographic function and including means for modifying an input data block prior to performing a key-controlled transformation operation thereon. Said means includes means for extracting a segment of data utilized in a prior cryptographic transformation of the system and combining said segment with the input data block. The means for combining comprises a transformation which is a discrete valued function which in the preferred embodiment is an exclusive-or. In the preferred embodiment of the invention a block of ciphertext data is combined with the just succeeding input data block by an exclusive-or operation prior to the key-controlled transformation operation which produces said ciphertext blocks.

InventorLouis Bryant Tuckerman, III
Original AssigneeInternational Business Machines Corporation
Primary Examiner: S. A. Cangialosi
Current U.S. Classification380/37; 380/259; 713/168
International Classification: H04K 106; H04L 902

View patent at USPTO
Search USPTO Assignment Database

Citations

Cited PatentFiling dateIssue dateOriginal AssigneeTitle
US3657699Jun 30, 1970Apr 18, 1972MULTIPATH ENCODER-DECODER ARRANGEMENT
US3740475Aug 16, 1971Jun 1, 1973APPARATUS FOR PRODUCING CODING PULSE
US3798359Jun 30, 19711974HSXA HSSA
US3798360Jun 30, 1971Mar 19, 1974KEY REGISTER
US3911216Dec 17, 19731975NONLINEAR CODE GENERATOR AND DECODER FOR TRANSMITTING DATA SECURELY

Referenced by

Citing PatentFiling dateIssue dateOriginal AssigneeTitle
US4157454Dec 19, 1977Jun 5, 1979International Business Machines CorporationMethod and system for machine enciphering and deciphering
US4229818Dec 29, 1978Oct 21, 1980International Business Machines CorporationMethod and apparatus for enciphering blocks which succeed short blocks in a key-controlled block-cipher cryptographic system
US4249180Sep 20, 1978Feb 3, 1981Northern Telecom LimitedPast dependent microcomputer cipher apparatus
US4259720Jan 9, 1978Mar 31, 1981Interbank Card AssociationSecurity system for electronic funds transfer system
US4304961Mar 3, 1980Dec 8, 1981Burroughs CorporationAuthenticator code generator
US4408203Nov 10, 1980Oct 4, 1983MasterCard International, Inc.Security system for electronic funds transfer system
US4658292Apr 27, 1983Apr 14, 1987NEC CorporationEnciphering key distribution system for subscription TV broadcast or catv system
US4661980Jun 25, 1982Apr 28, 1987The United States of America as represented by the Secretary of the NavyIntercept resistant data transmission system
US4731843Dec 30, 1985Mar 15, 1988Paradyne CorporationMethod and device of increasing the execution speed of cipher feedback mode of the DES by an arbitrary multiplier
US4757533Sep 11, 1985Jul 12, 1988Computer Security CorporationSecurity system for microcomputers
US5003596Aug 17, 1989Mar 26, 1991Cryptech, Inc.Method of cryptographically transforming electronic digital data from one form to another
US5068895Apr 26, 1989Nov 26, 1991NEC CorporationEncryption and decryption methods using bit-length preservation decryptor
US5159634Sep 13, 1991Oct 27, 1992AT&T Bell LaboratoriesCryptosystem for cellular telephony
US5235641Mar 12, 1991Aug 10, 1993Hitachi, Ltd.File encryption method and file cryptographic system
US5367410Mar 1, 1993Nov 22, 1994Hewlett-Packard CompanyStorage of data on tape in multi-track frames of interleaved data, with data transfer on individual track basis
US5377266Jul 21, 1993Dec 27, 1994Matsushita Electric Industrial Co., Ltd.Scramble apparatus and descramble apparatus
US5592553Feb 8, 1996Jan 7, 1997International Business Machines CorporationAuthentication system using one-time passwords
US5636279Sep 23, 1994Jun 3, 1997Matsushita Electric Industrial Co., Ltd.Scramble apparatus and descramble apparatus
US5647001Jan 23, 1996Jul 8, 1997Litton Systems, Inc.Nonlinear dynamic substitution devices and methods for block substitutions employing coset decompositions and direct geometric generation
US5664016Oct 17, 1995Sep 2, 1997Northern Telecom LimitedMethod of building fast MACS from hash functions
US5684876Sep 23, 1996Nov 4, 1997Scientific-Atlanta, Inc.Apparatus and method for cipher stealing when encrypting MPEG transport packets
US5724428Nov 1, 1995Mar 3, 1998RSA Data Security, Inc.Block encryption algorithm with data-dependent rotations
US5727062Jul 6, 1995Mar 10, 1998Variable size block ciphers
US5838794Jan 11, 1996Nov 17, 1998Teledyne Electronic TechnologiesMethod and apparatus for inter-round mixing in iterated block substitution systems
US5838795Jul 7, 1997Nov 17, 1998Teledyne Industries, Inc.Method and apparatus for statistical diffusion in iterated block substitution
US5838796Jul 7, 1997Nov 17, 1998Teledyne Industries, Inc.Statistically optimized bit permutations in interated block substitution systems
US5978481Apr 22, 1997Nov 2, 1999Intel CorporationModem compatible method and apparatus for encrypting data that is transparent to software applications
US6038317Apr 8, 1998Mar 14, 2000Secret key cryptosystem and method utilizing factorizations of permutation groups of arbitrary order 2.sup.l
US6154544Jun 11, 1997Nov 28, 2000The Chamberlain Group, Inc.Rolling code security system
US6175312Dec 4, 1992Jan 16, 2001Microchip Technology IncorporatedEncoder and decoder microchips and remote control devices for secure unidirectional communication
US6182216Sep 16, 1998Jan 30, 2001Block cipher method
US6199162Feb 17, 2000Mar 6, 2001Block cipher method
US6215876Dec 31, 1997Apr 10, 2001Transcrypt International, Inc.Apparatus for and method of detecting initialization vector errors and maintaining cryptographic synchronization without substantial increase in overhead
US6249582Dec 31, 1997Jun 19, 2001Transcrypt International, Inc.Apparatus for and method of overhead reduction in a block cipher
US6269163Jun 15, 1998Jul 31, 2001RSA Security Inc.Enhanced block ciphers with data-dependent rotations
US6330678Nov 29, 2000Dec 11, 2001Block cipher method
US6459792Apr 22, 1998Oct 1, 2002Matsushita Electric Industrial Co., Ltd.Block cipher using key data merged with an intermediate block generated from a previous block
US6493449Feb 26, 1998Dec 10, 2002Arithmetica, Inc.Method and apparatus for cryptographically secure algebraic key establishment protocols based on monoids
US6578150Nov 29, 2000Jun 10, 2003Block cipher method
US6690796Jan 21, 2000Feb 10, 2004The Chamberlain Group, Inc.Rolling code security system
US6751319Oct 23, 2001Jun 15, 2004Block cipher method
US6760439Mar 7, 2000Jul 6, 2004Deutsche Telekom AGDevice for implementing a block-ciphering process
US6980655Oct 17, 2001Dec 27, 2005The Chamberlain Group, Inc.Rolling code security system
US7136484Apr 24, 2002Nov 14, 2006Silicon Image, Inc.Cryptosystems using commuting pairs in a monoid
US7260217Mar 6, 2002Aug 21, 2007Cavium Networks, Inc.Speculative execution for data ciphering operations
US7277543Nov 14, 2000Oct 2, 2007Honeywell International Inc.Cryptographic combiner using two sequential non-associative operations
US7376235Jul 29, 2002May 20, 2008Microsoft CorporationMethods and systems for frustrating statistical attacks by injecting pseudo data into a data system
US7412056Sep 29, 2003Aug 12, 2008The Chamberlain Group, Inc.Rolling code security system
US7433470Sep 28, 2004Oct 7, 2008Sony CorporationCryptographic processing apparatus, cryptographic processing method, and computer program
US7492898Jul 2, 2004Feb 17, 2009The Chamberlain Group, Inc.Rolling code security system
US7492905Aug 14, 2002Feb 17, 2009The Chamberlain Group, Inc.Rolling code security system
US7623663Dec 21, 2005Nov 24, 2009The Chamberlain Group, Inc.Rolling code security system
US7673153Mar 14, 2000Mar 2, 2010Sony CorporationData processing method, apparatus and system for encrypted data transfer
US7889864Apr 6, 2006Feb 15, 2011Panasonic CorporationData processing system and method
US8023648Jan 11, 2008Sep 20, 2011Valtion Teknillinen TutkimuskesjusAnonymous telecommunication traffic measurement data associated user identifications
US8031866Sep 16, 2008Oct 4, 2011Sony CorporationCryptographic processing apparatus and cryptographic processing method, and computer program
US8180048Sep 14, 2004May 15, 2012Prahlad P. SinganamalaMethod and system for computational transformation
US8194856Jul 22, 2008Jun 5, 2012The Chamberlain Group, Inc.Rolling code security system
US8233625Jul 22, 2008Jul 31, 2012The Chamberlain Group, Inc.Rolling code security system

Claims

1. In a cryptographic system which includes a key-controlled block-cipher cryptographic process which comprises taking an input data block of fixed size, called a full-block and cryptographically transforming same into an output data block of the same fixed size as a function of a unique user supplied key, the improvement which comprises

combining each new block of input data and initially transforming same by a mathematically invertible function which depends on a data word which existed during a previous key-controlled block-cipher cryptographic transformation and using said transformed data block as the input block to said key-controlled block-cipher cryptographic transformation.

2. A cryptographic method as set forth in claim 1 including using the output data block of a previous key-controlled block-cipher cryptographic transformation as said previously existing data word.

3. A cryptographic method as set forth in claim 2 including selecting the output data block of the immediately preceding key-controlled block-cipher cryptographic transformation as said previously existing data word.

4. A cryptographic method as set forth in claim 3 including using a predetermined constant in place of said previously existing data word during an encryption sequence when there is no available data word.

5. A cryptographic method as set forth in claim 4 wherein the invertible mathematical transformation utilized in combining a new input data block with a previously existing data word is a bitwise exclusive-or operation.

6. A cryptographic method as set forth in claim 3 including detecting that a data block that is shorter than the fixed full-block size required by the block-cipher cryptographic process, is to be transformed by the cryptographic system comprising;

determining the length of the short-block,
transforming a previously existing data word by the block-cipher cryptographic process, to produce a full output data block, then
transforming said input short block into an output short block of the same size by a mathematically invertible function of said input short block, said function depending on said full output data word.

7. A cryptographic method as set forth in claim 6, including utilizing the cryptographically transformed output data block of the previous cryptographic transformation as the previously existing data word for said further block-cipher cryptographic process for producing said short output data block and further including the step of retaining said further cryptographically tranformed data word for use in the combining operation for the next input data block if one is present.

8. In a key-controlled block-cipher cryptographic system including input data chaining means for cryptographically transforming an input data block x.sub.i ' into an output data block y.sub.i under control of a unique user supplied key K whereby the output data block is cryptographically transformed in accordance with the relationship:

y.sub.i = f.sub.K (x.sub.i ')

and wherein x.sub.i ' may be retrieved in accordance with the relationship:
x.sub.i ' = f.sub.K.sup.-1 (y.sub.i)
the improvement which comprises means for chaining successive blocks (x.sub.i) of input data and performing an initial transformation thereon prior to said block-cipher cryptographic transformation defined by the relationship:
x.sub.i ' = x.sub.i + u.sub.i
where u.sub.i comprises a data word which was utilized in the block-cipher cryptographic system during a preceding transformation and wherein + comprises a logical element which performs a dyadic operation having a right inverse.

9. A key-controlled cryptographic system as set forth in claim 8 including exclusive-or circuit means for performing said + function and means for introducing a cryptographically transformed output block u.sub.i from a prior block-cipher cryptographic transformation to said exclusive-or means as one input thereto, means for supplying a current input block x.sub.i as the other output.

10. In a block-cipher cryptographic system including a key-controlled block-cipher cryptographic subsystem having means for cryptographically transforming an input of data block of a fixed predetermined length into a output block of the same length as a function of a unique user supplied key, the improvement which comprises an initial transformation system including means for combining each new block of input data in an initial transformation as a mathematically invertible function, said transformation depending on an output data block from a previous cryptographic transformation and means for supplying said data word to said combining means as each new input block is received, said combining means including logic means for performing said mathematically invertible function on said input data block which function depends on said supplied data word, and means for supplying said initially transformed input data block to the key-controlled cryptographic subsystem as the input data block thereto.

11. A key-controlled cryptographic system as set forth in claim 10 wherein said supplying means includes means for transferring the output data block of the immediately preceding cryptographic transformation to said combining means.

12. A key-controlled cryptographic system as set forth in claim 10 including means for detecting that an input block of a length shorter than said fixed predetermined length is to be transformed by the cryptographic system including means for determining the length of the short block, means for supplying a predetermined data word to said block-cipher cryptographic subsystem and causing a key-controlled cryptographic transformation to occur thereon, means for taking the cryptographically transformed output of said subsystem and selecting a portion thereof equal in length to the length of said short block, and supplying said two equal length blocks as the input to said combining means and means for gating the output of said combining means as the output of said cryptographic system for said short input block which is the same length as said short input block.

13. A key-controlled cryptographic system as set forth in claim 12 including means for selectively utilizing the cryptographically transformed output data block of the preceding key-controlled cryptographic transformation or a predetermined constant as the predetermined data word to be supplied to said cryptographic subsystem prior to combining with an input short data block and means for retaining said cryptographically transformed data word for use in a subsequent initial transformation.

14. In a block-cipher cryptographic system including a key-controlled block-cipher cryptograhic subsystem, having means for performing a cryptographic transformation on an input data block of a fixed predetermined size, said transformation being a function of a unique user supplied key, the improvement which comprises:

an initial transformation subsystem including first register means for receiving an input block of data to be transformed;
second register means for receiving a unique data block which existed at a prior time in the key-controlled block-cipher cryptographic subsystem;
means for gating the output of said cryptographic subsystem onto a system output bus and selectively into said second register;
logic means for effecting a mathematically invertible initial transformation on the contents of said first register means which is a function of the contents of said second register means;
means for gating the output of said logic means into said cryptographic subsystem means as a input data block to be cryptographically transformed thereby; and
means for selectively loading said second register means when a data word from a previous cryptographic transformation is not available.

15. A block-cipher cryptographic system as set forth in claim 14 including first means for determining that a block of data shorter than said fixed predetermined length has been received at the system input;

second means for determining the length of said short block,
means responsive to said first determining means for gating the current contents of said second register means directly to said cryptographic subsystem means where a cryptographicc transformation is performed thereon;
means for reloading the second register means with the output of said cryptographic transformation;
means under control of said second determining means for gating the short block contents of said first register and as many bits of the cryptographically transformed contents of said second register as there are bits in said short block to said logic means; and
means for transferring the output of said logic means directly to said system output bus as the short block output of said block-cipher cryptographic system.

16. A block-cipher cryptographic system as set forth in claim 14 wherein said logic means comprises an exclusive-or circuit having as one input the N-bit contents of said first register means, and which has as a second input the N-bit contents of said second register means to produce an N-bit output word.