×

Data encryption system for encrypting plaintext data

  • US 6,246,768 B1
  • Filed: 07/13/1998
  • Issued: 06/12/2001
  • Est. Priority Date: 05/06/1998
  • Status: Expired due to Fees
First Claim
Patent Images

1. A data encryption system for encrypting plaintext data of 8n bits, n being a positive integer, comprising:

  • an input unit for dividing the plaintext data into a first and a second half plaintext data block, each plaintext data block having 4n bits;

    a key scheduling device for providing four n-bit constant values and N sets of round subkeys from an 8n-bit master key, N being a positive integer and each set of round subkeys having a first and a second 2n-bit round subkey and a first and a second n-bit round subkey;

    N data encryption stages connected in series, each data encryption stage processing a first and a second 4n-bit input to provide a first and a second 4n-bit output, the first half and the second half plaintext data block being provided to a first data encryption stage as a first and a second 4n-bit input thereof, a second 4n-bit input of each data encryption stage being provided as a second 4n-bit output thereof, and a first and a second 4n-bit output of a data encryption stage being provided to its next data encryption stage as a second and a first 4n-bit input thereof, respectively; and

    an output unit for combining a first and a second 4n-bit output of a last data encryption stage to generate 8n-bit ciphertext data;

    wherein an ith (i being 1 to N) data encryption stage includes an encrypter for encrypting a second 4n-bit input of the ith data encryption stage by using an ith set of round subkeys and the four n-bit constant values to provide an 4n-bit encrypted data block and an EX-OR gate for EX-ORing a first 4n-bit input thereof with the 4n-bit encrypted data block to provide a first 4n-bit output of the ith data encryption stage, and wherein the encrypter of the ith data encryption stage includes;

    a first division unit for dividing the second 4n-bit input of the ith data encryption stage to provide a first and a second 2n-bit data subblock;

    a first key adding circuit for EX-ORing the first and the second 2n-bit data subblock with a first and a second 2n-bit round subkey of an ith set of round subkeys to generate a first and a second 2n-bit added data subblock;

    a second division unit for dividing the first 2n-bit key added data subblock into a first and a second n-bit key added data subblock and dividing the second 2n-bit key added data subblock into a third and a fourth n-bit key added data subblock;

    a second key adding circuit having a first addition unit for performing an addition modulo 2n operation on the first and the third n-bit key added data subblock and a first multiplication unit for performing a multiplication modulo 2n+1 operation based on an output of the first addition unit and a first n-bit round subkey of the ith set of round subkeys to generate a first n-bit key/data added data subblock;

    a third key adding circuit having a second addition unit for performing the addition modulo 2n operation on the second and the fourth n-bit key added data subblock and a second multiplication unit for performing the multiplication modulo 2n+1 operation based on an output of the second addition unit and a second n-bit round subkey of the ith set of round subkeys to provide a second n-bit key/data added data subblock; and

    means for processing the n-bit key added data subblocks and the n-bit key/data added data subblocks by using the four constant values to provide the 4n-bit encrypted data block.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×