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

Method and apparatus for improving the security of an electronic codebook encryption scheme utilizing a data dependent encryption function

Assignee: Apple Inc
•
Filing: 1994-02-08
•
Granted: 1995-09-19
•
Expires: 2014-02-08
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An apparatus and method for improving the security of an electronic codebook encryption scheme comprises a transmitter unit for encoding or encrypting data and a separate authorized receiver for decoding or decrypting data. Both the transmitter and receiver share a common secret key that has been communicated through a separate channel. The transmitter includes a Mapping Table (MTable) that comprises a table of functions, where a first series of incrementally numbered expressions are equated with a second series of randomly generated numbers. The plaintext is input into the transmitter and applied to the MTable to provide ciphertext. The PN generator supplies a unique random sequence of binary digits. The ciphertext byte and random number byte associated with each byte of plaintext data are exchanged to change the relationships within the MTable. An Inverse Mapping Table (IMTable) is included in the receiver and is created by reversing the relationships between the sequential numbers and the mapping numbers in the MTable. From the encrypted communication, the ciphertext is separated and the respective functions for each ciphertext byte and random number byte are again exchanged, and the associated plaintext byte and random number byte are further exchanged to produce an MTable identical to that of the transmitter and unencrypted plaintext data identical to that originally encoded.

Inventors

  • 👤 James O. Normile
  • 👤 Ke-Chiang Chu

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-28 11:30
CPC Classifications
H; H04; H04L; H04L9/00; H04L9/06; H04L9/065; H04L9/0656; H04L9/0662

Claims Analysis

Total Claims: 29
Claim 1
Independent Claim 79 words
An apparatus for the communication of encrypted data, the apparatus comprising a transmitter for encoding plaintext data, the transmitter comprising: a first Pseudorandom Number (PN) generator for generating and outputting a first Pseudorandom Number (PN) sequence; and a Mapping Table (MTable) comprising a plurality of storage positions, the MTable having inputs for receiving plaintext data and the first PN sequence and an output for communicating encrypted ciphertext, the ciphertext being produced by the data dependent mapping of plaintext data.
Claim 2
Independent Claim 79 words
An apparatus for the communication of encrypted data, the apparatus comprising a transmitter for encoding plaintext data, the transmitter comprising: a first Pseudorandom Number (PN) generator for generating and outputting a first Pseudorandom Number (PN) sequence; and a Mapping Table (MTable) comprising a plurality of storage positions, the MTable having inputs for receiving plaintext data and the first PN sequence and an output for communicating encrypted ciphertext, the ciphertext being produced by the data dependent mapping of plaintext data.
Claim 3
Dependent Claim 23 words
The apparatus according to claim 1 in which the transmitter MTable maps the plaintext data to produce ciphertext according to the function: Ciphertext(i)=MTable[Plaintext(i)].
Claim 4
Dependent Claim 25 words
The apparatus according to claim 1 in which the transmitter MTable is initialized using a secret key and the numbers from the first PN sequence.
Claim 5
Dependent Claim 24 words
The apparatus according to claim 1 wherein the transmitter MTable substitutes values between the plaintext data and the first PN sequence to produce ciphertext.
Claim 6
Dependent Claim 24 words
The apparatus according to claim 1 wherein the transmitter MTable reorders data between storage positions following the mapping of plaintext data to produce ciphertext.
Claim 7
Dependent Claim 21 words
The apparatus according to claim 4 wherein the transmitter MTable substitutes values according to the function: Swap: MTable[Plaintext(i)] and MTable[PN Seq(i)].
Claim 8
Dependent Claim 21 words
The apparatus according to claim 5 wherein the transmitter MTable reorders data according to the function: Swap: MTable[Plaintext(i)] and MTable[PN Seq(i)].
Claim 9
Dependent Claim 103 words
The apparatus according to claim 1 further comprising a receiver for decoding the encoded plaintext produced by the transmitter, the receiver comprising: a second PN generator for generating and outputting a second PN sequence, wherein the first and second PN sequences are identical; and an Inverse Mapping Table (IMTable) comprising a plurality of storage positions, the IMTable having an output and having inputs for receiving the ciphertext data from the transmitter and the second PN sequence, the IMTable storing the inverse of the MTable contained in the transmitter for reversing the mapping of the ciphertext in order to produce the original plaintext data.
Claim 10
Dependent Claim 58 words
The apparatus according to claim 8 wherein the receiver further includes an MTable from which the IMTable is constructed, the MTable comprising a plurality of storage positions and having inputs for receiving the decoded ciphertext from the IMTable, the MTable reversing the mapping of the decoded ciphertext and the second PN sequence to produce the original plaintext data.
Claim 11
Dependent Claim 24 words
The apparatus according to claim 8 wherein the IMTable reverse maps the ciphertext to produce decoded plaintext data in accordance with the function: Plaintext(i)=IMTable[Ciphertext(i)].
Claim 12
Dependent Claim 16 words
The apparatus according to claim 9 wherein the MTable is initialized using the second PN sequence.
Claim 13
Dependent Claim 20 words
The apparatus according to claim 11 wherein the IMTable reorders data according to the function: Swap: IMTable[Ciphertext(i)] and IMTable[MTable[PN Seq(i)]].
Claim 14
Dependent Claim 27 words
The apparatus according to claim 12 wherein following the reorder function of claim 9, the MTable further reorders according to the function: Swap: MTable[Plaintext(i)] and MTable[PN Seq(i)].
Claim 15
Dependent Claim 34 words
The apparatus according to claim 8 wherein the first PN generator and the second PN generator are both initialized using a secret key which is commonly utilized by both the transmitter and the receiver.
Claim 16
Dependent Claim 20 words
The apparatus according to claim 8 wherein the transmitter and receiver are implemented using at least one general purpose computer.
Claim 17
Dependent Claim 51 words
A data dependent encryption system comprising: means for generating a first Pseudorandom Number (PN) sequence; and encoding means for receiving and storing in a Mapping Table (MTable) plaintext data and the PN sequence and for encrypting the plaintext data to produce ciphertext by encoding the data according to the function: Ciphertext(i)=MTable[Plaintext(i)].
Claim 18
Dependent Claim 51 words
A data dependent encryption system comprising: means for generating a first Pseudorandom Number (PN) sequence; and encoding means for receiving and storing in a Mapping Table (MTable) plaintext data and the PN sequence and for encrypting the plaintext data to produce ciphertext by encoding the data according to the function: Ciphertext(i)=MTable[Plaintext(i)].
Claim 19
Dependent Claim 30 words
The data dependent encryption system of claim 16 in which, following the encoding of the plaintext data, the MTable is reordered according to the function: Swap: MTable[Plaintext(i)] and MTable[PN Seq(i)].
Claim 20
Dependent Claim 28 words
The data dependent encryption system of claim 17, further comprising: decoding means for receiving the ciphertext and the PN sequence and for reversing the encoding of the ciphertext.
Claim 21
Dependent Claim 17 words
The data dependent encryption system of claim 18, further comprising: means for generating a second PN sequence.
Claim 22
Dependent Claim 35 words
The data dependent encryption system of claim 18 in which the ciphertext data is imported by an Inverse Mapping Table (IMTable) within the decoding means and the ciphertext is decoded according to the function: Plaintext(i)=IMTable[Ciphertext(i)].
Claim 23
Dependent Claim 37 words
The data dependent encryption system of claim 18 in which, following the decoding of the ciphertext, the IMTable and MTable is reordered according to the function: Swap: IMTable[Ciphertext(i)] and IMTable[MTable[PN Seq(i)]]; and Swap: MTable[Plaintext(i)] and MTable[PN Seq(i)].
Claim 24
Dependent Claim 89 words
A computer implemented method for encoding a sequence of plaintext data, the method comprising the steps: (i) generating a first Pseudorandom Number (PN) sequence; (ii) initializing a Mapping Table (MTable) using the first PN sequence; (iii) receiving plaintext data into the MTable; (iv) encrypting plaintext data to produce ciphertext according to the function: Ciphertext(i)=MTable[Plaintext(i)]; (v) reordering the MTable in accordance with the function: Swap: MTable[Plaintext(i)] and MTable[PN Seq(i)]; (vi) exporting the encrypted communication; and (vii) repeating steps (iii) through (vi) until the sequence of plaintext data has been encrypted.
Claim 25
Dependent Claim 89 words
A computer implemented method for encoding a sequence of plaintext data, the method comprising the steps: (i) generating a first Pseudorandom Number (PN) sequence; (ii) initializing a Mapping Table (MTable) using the first PN sequence; (iii) receiving plaintext data into the MTable; (iv) encrypting plaintext data to produce ciphertext according to the function: Ciphertext(i)=MTable[Plaintext(i)]; (v) reordering the MTable in accordance with the function: Swap: MTable[Plaintext(i)] and MTable[PN Seq(i)]; (vi) exporting the encrypted communication; and (vii) repeating steps (iii) through (vi) until the sequence of plaintext data has been encrypted.
Claim 26
Dependent Claim 105 words
The method for encoding data according to claim 22 further including a method for decoding the encrypted communication comprising the steps: (i) generating a second PN sequence; (ii) initializing a Mapping Table (MTable) using the second PN sequence and construct and Inverse Mapping Table (IMTable) from the MTable; (iii) receiving the encrypted communication into the IMTable; (iv) decrypting the received encrypted communication to produce plaintext in accordance with the function: Plaintext(i)=IMTable[Ciphertext(i)]; (v) reordering the MTable and IMTable in accordance with the functions: Swap: IMTable[Ciphertext(i)] and IMTable[MTable[PN Seq(i)]], and Swap: MTable[Plaintext(i)] and MTable[PN Seq(i)]; and (vi) repeating steps (iii) through (v) for all available encrypted communication.
Claim 27
Dependent Claim 17 words
The method according to claim 23 wherein the first PN sequence and second PN sequence are identical.
Claim 28
Dependent Claim 24 words
The method according to claim 22 wherein the first PN sequence is generated by combining a Pseudorandom Number (PN) generator and a secret key.
Claim 29
Dependent Claim 24 words
The method according to claim 23 wherein the second PN sequence is generated by combining a Pseudorandom Number (PN) generator and a secret key.

References Cited (Backward Citations)

US4233577A Cited
US4890324A Cited
US5351299A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-09-18 1999-03-20 1999-09-19 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-09-18 2003-03-20 2003-09-19 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-09-18 2007-03-20 2007-09-19 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag