EP0914732A2

Methods and apparatus for multiple-iteration cmea encryption and decryption for improved security for wireless telephone messages

Abstract

This record has no abstract on file.

Term

Term ended

Projected expiry passed 14 April 2018, 8.4 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

2 claims: 1 independent, 1 dependent

  1. 1
    Claims of equivalent WO 9847262 A2 We claim:1. A method of data encryption, comprising the steps of: introducing a plaintext message;performing an iteration of a CMEA process on the plaintext to produce an intermediate ciphertext;and performing one or more further iterations of the CMEA process on the intermediate ciphertext message, each further iteration of the CMEA process prior to the final iteration producing a further intermediate ciphertext message, the final iteration of the CMEA process producing a final output ciphertext message. 2. The method according to claim 1 wherein each iteration of the CMEA process is performed using a different CMEA key. 3. The method according to claim 2 wherein each message input to an iteration of the CMEA process is subjected to an input transformation before the iteration of the CMEA process and each message output from an iteration of the CMEA process is subjected to an output transformation following the iteration of the CMEA process. 4. The method according to claim 3 wherein each iteration of the CMEA process employs a tbox function with inputs permuted by one or more secret offsets. 5. A method of data encryption comprising the steps of: introducing a plaintext message;performing a first input transformation on the plaintext message to produce a first input transformed message;performing a first iteration of a CMEA process on the first input transformed message, using a first CMEA key, to produce a first intermediate ciphertext message;and performing an output transformation on the first intermediate ciphertext message to produce a first output transformed message. 6. The method of claim 5 and also including the steps of: performing a second input transformation on the first output transformed message to produce a second input transformed message;performing a second iteration of the CMEA process on the second input transformed message, using a second CMEA key, to produce a second intermediate ciphertext message;and performing a second output transformation on the second intermediate ciphertext message to produce a second output transformed message. 7. The method of claim 6 wherein the first input transformed message is subjected to a tbox function including permutation of each input to a tbox function by first and second secret offsets during the first iteration of the CMEA process and the second input transformed message is subjected to a tbox function including permutation of each input to the tbox function by third and fourth secret offsets during the second iteration of the CMEA process. 8. A method of decryption of a ciphertext message, comprising the steps of: introducing a ciphertext message;performing a first inverse output transformation on the ciphertext message to produce a first inverse output transformed message;performing a first iteration of a CMEA process on the first inverse output transformed message, using a second CMEA key, to produce a first intermediate decrypted ciphertext message;and performing a first inverse input transformation on the first intermediate decrypted ciphertext message to produce a first inverse input transformed message. 9. The method of claim 8 and also including the steps of: performing a second inverse output transformation on the first inverse input transformed message to produce a second inverse output transformed message;performing a second iteration of the CMEA process on the second inverse output transformed message, using a first CMEA key, to produce a second intermediate decrypted ciphertext message;and performing a second inverse input transformation on the second intermediate decrypted ciphertext message to produce a second inverse input transformed message. 10. The method of claim 9 and also including the steps of retrieving first, second, third and fourth offsets created during encryption of a plaintext message to produce the ciphertext message, and subjecting the first inverse output transformed message to a tbox function including permutation of each tbox function input by the third and fourth offsets during the first iteration of the CMEA process and subjecting the second inverse output transformed message to a tbox function including permutation of each tbox function input by the first and second offsets during the second iteration of the CMEA process. 11. A method of decryption of a ciphertext message encrypted by two iterations of a CMEA process, comprising the steps of: introducing the ciphertext message;performing a first iteration of a CMEA process on the plaintext message, using a second CMEA key, to produce a first intermediate ciphertext message;and performing a second iteration of the CMEA process on the first intermediate ciphertext message, using a first CMEA key;and producing a final plaintext. 12. The method of claim 11 , wherein each iteration of the CMEA process is permuted by one or more secret offsets. 13. The method of claim 12, wherein each message on which an iteration of the CMEA process is performed is subjected to an inverse output transformation before the iteration of the CMEA process and each message produced by an iteration of the CMEA process is subjected to an inverse input transformation after the iteration of the CMEA process. 14. An encrypting wireless telephone comprising: a transceiver;an input/output interface for receiving and routing incoming messages from the transceiver and transmitting outgoing messages to the transceiver, the input/output interface being operative to distinguish an incoming message from an outgoing message and produce a signal identifying the message as an incoming or outgoing message;a message generator for receiving user inputs and formatting the user inputs into an outgoing message, the outgoing message being passed to the input/output interface;memory for storing secret data;a key generator for receiving secret data from the memory and using the secret data to generate one or more encryption keys;an encryption/decryption processor, the encryption decryption processor receiving a message and a message identification signal from the input/output interface and first and second encryption keys from the key generator, the encryption decryption processor being operative for each incoming message to: perform a first input transformation on the message to produce a first input transformed message;perform a first iteration of a CMEA process on the first input transformed message, using the first encryption key, to produce an intermediate ciphertext message;perform a first output transformation on the first intermediate ciphertext message to produce a first output transformed message;perform a second input transformation on the first output transformed message to produce a second input transformed message;perform a second iteration of the CMEA process on the second input transformed message, using the second encryption key, to produce a second intermediate ciphertext message;perform a second output transformation on the second intermediate ciphertext message;and pass the final second intermediate ciphertext message to the input/output interface for appropriate routing. 15. The encrypting telephone of claim 14, wherein the first input transformed message is subjected to a tbox function including permutation of each tbox function input by a first and a second offset during the first iteration of the CMEA process and the second input transformed message is subjected to a tbox function including permutation of each tbox function input by a third and a fourth offset during the second iteration of the CMEA process. 16. The encrypting telephone of claim 14, wherein the encryption/decryption processor is operative for incoming messages to: perform a first inverse output transformation on the message to produce a first inverse output transformed message;perform a first iteration of a CMEA process on the message, using the second encryption key, to produce a first decrypted intermediate ciphertext message;perform a first inverse input transformation on the first decrypted intermediate ciphertext message;perform a second inverse output transformation on the first decrypted intermediate ciphertext message to produce a second inverse output transformed message;perform a second iteration of the CMEA process on the second inverse output transformed message, using the first encryption key, to produce a second decrypted intermediate ciphertext message;perform a second inverse input transformation on the second decrypted intermediate ciphertext message;and pass the final output message to the input/output interface for appropriate routing. 17. The encrypting telephone of claim 16, wherein the first inverse output transformed message is subjected to a tbox function including permutation of each tbox function input by the third and fourth offsets during the first iteration of the CMEA process and the second inverse output transformed message is subjected to a tbox function including permutation of each tbox function input by the first and the second offsets during the second iteration of the CMEA process. 18. A method of data decryption of a ciphertext message previously encrypted by multiple iterations of a plaintext message, comprising the steps of: introducing the ciphertext message, performing a first iteration of a CMEA process on the ciphertext to produce an inter mediate decrypted ciphertext;and performing one or more further iterations of the CMEA process on the intermediate decrypted ciphertext message, each further iteration of the CMEA process prior to the final iteration producing a further intermediate decrypted ciphertext message, the final iteration of the CMEA process producing a final output plaintext message. 19. The method according to claim 18 wherein each iteration of the CMEA process is performed using a different CMEA key. 20. The method according to claim 19 wherein the iterations of the CMEA process are applied in a reverse order from an order in which the iterations of the CMEA process were previously applied to perform data encryption, and wherein each iteration of the CMEA process employs a CMEA key corresponding to the CMEA key previously employed by a corresponding iteration of the CMEA process to perform data encryption on a previous plaintext message to produce the ciphertext message.