US6157720A - Method and apparatus for encrypting data - Google Patents

Method and apparatus for encrypting data Download PDF

Info

Publication number
US6157720A
US6157720A US08/806,609 US80660997A US6157720A US 6157720 A US6157720 A US 6157720A US 80660997 A US80660997 A US 80660997A US 6157720 A US6157720 A US 6157720A
Authority
US
United States
Prior art keywords
data
encrypting
parameter
information processing
intermediate result
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
US08/806,609
Other languages
English (en)
Inventor
Hiroshi Yoshiura
Kazuo Takaragi
Mayuko Shimizu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Consumer Electronics Co Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Assigned to HITACHI, LTD. reassignment HITACHI, LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SHIMIZU, MAYUKO, TAKARAGI, KAZUO, YOSHIURA, HIROSHI
Priority to US09/708,564 priority Critical patent/US6504931B1/en
Application granted granted Critical
Publication of US6157720A publication Critical patent/US6157720A/en
Assigned to HITACHI CONSUMER ELECTRONICS CO., LTD. reassignment HITACHI CONSUMER ELECTRONICS CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HITACHI, LTD.
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/30Compression, e.g. Merkle-Damgard construction

Definitions

  • the present invention relates to data encryption, and more particularly to the improvements in processing efficiency of encryption and cipher strength to any cryptanalysis. Furthermore, the present invention relates to the encryption involving data compression and more particularly to the improvements in processing efficiency of data compression and encryption and strength to cryptanalysis.
  • the cryptosystem is executed to convert plaintext into ciphertext through secret parameters.
  • the decryptosystem is executed to transform the ciphertext into the original plaintext through the effect of reverse transform with the same secret parameters as those used in the cryptosystem.
  • the secret parameters are generally called a crypt-key (or just a key).
  • the encrypting procedure is composed of repetition of one or more kinds of fundamental functions. The repetitive times are called rounds.
  • the input data is divided into parts each of which has the same size and the encrypting procedure is applied to each data part. Each data part is called a crypt-block (or just a block).
  • the conventional method for defending the differential or linear cryptanalysis in the conventional encrypting system is executed to reduce the correlation among the plaintext, the ciphertext, and the key by increasing the rounds.
  • the processing time of encryption or decryption is proportional to the rounds.
  • the defense for the differential and the linear cryptanalyses through the effect of the increase of the rounds entails large shortcoming, that is, the increase of the processing time.
  • an information processing method includes the steps of entering or receiving a plaintext and encrypting the plaintext, wherein the method utilizes as a key of a block of the plaintext an intermediate result given in the process of encrypting another block or a value derived on the intermediate result.
  • This method uses a different key to each block depending upon the plaintext data. The present method thus disallows execution of the foregoing statistical operation and allows the ciphertext to be protected from the differential and the linear cryptanalyses.
  • an information processing method includes the steps of entering or receiving the plaintext and encrypting the plaintext, wherein the method of the second aspect is executed to generate a random number for each plaintext and use the random number as the key of the first block of the plaintext to be encrypted.
  • This second method therefore, has a different key of the first block to each plaintext and thus enables to overcome the problem of the foregoing first method.
  • the encryption is often executed in association with data compression.
  • the compression is executed to replace a bit train of the plaintext with a shorter bit train.
  • a plurality of correspondences are provided between the bit trains of the block of the plaintext and the compressed data.
  • the information processing method includes the steps of entering or receiving data and compressing the data, wherein the method of the third aspect is executed to determine the correspondence between the bit trains of the block of the plaintext and the compressed data depending upon the intermediate result given in the process of encrypting another block.
  • the third aspect method therefore, enables to change the correspondence between the bit train of the block of the plaintext and the bit train of the compressed data for each block depending upon the plaintext data. Further, the intermediate result given in the process of encrypting the data cannot be estimated if the key is obtained. It is therefore impossible to grasp how the correspondence between the bit train of the block of the plaintext and the bit train of the compressed data is changed unless the key is obtained.
  • the third aspect method therefore, enables to use the compression as a kind of cryptosystem, offer the same effect as the increase of the rounds, and thereby prevent the differential and the linear cryptanalyses.
  • FIG. 1 is a block diagram showing a functional configuration according to a first embodiment of the present invention
  • FIG. 2 is a flowchart showing an operation of a control process executed in the method and the apparatus according to the first embodiment of the present invention
  • FIG. 3 is a diagram showing a Huffman tree indicating correspondence between plaintext data and compressed data used according to the first embodiment of the present invention
  • FIG. 4 is a diagram showing a transformation of the Huffman tree used in the method and the apparatus according to the first embodiment of the present invention
  • FIG. 5 is a block diagram showing a functional configuration according to a second embodiment of the present invention.
  • FIG. 6 is a flowchart showing an operation of a control process executed in the method and the apparatus according to the second embodiment of the present invention.
  • FIG. 1 is a functional arrangement of the first embodiment of the present invention.
  • a block 101 denotes a completed information processing system.
  • a block 102 is a process implemented by a central processing unit and an input/output (I/O) unit.
  • the block 102 includes an I/O portion 103, a control portion 104, a random number generating portion 105, a key generating portion 106, a correspondence changing portion 107, a compressing portion 108, a pre-encrypting portion 109, and a post-encrypting portion 110.
  • a block 111 is a storage unit such as a RAM or a disk and stores plaintext data 112, random numbers 113, common keys 114, information regarding correspondences 115, work keys 116, and compressed and encrypted data 117.
  • the I/O portion 103 receives a plaintext data from the outside and puts it in the memory 111. Further, the I/O portion 103 receives a compressing and encrypting instruction and passes it to the control portion 104. On the other hand, the I/O portion 103 reads the compressed and encrypted data 117 from the memory 111 and outputs it to the outside.
  • the control portion 104 receives the compressing and encrypting instruction from the I/O portion 103, the control portion 104 starts the random number generating portion 105 for generating a random number and then starts the key generating portion 106 for generating a work key.
  • control portion 104 reads the plaintext data 112 from the memory 111 and iteratively executes the five processes including the compression 108, the pre-encryption 109, the post-encryption 110, the correspondence change 107, and the work key change, thereby compressing and encrypting the plaintext data.
  • the control portion 104 will be discussed below.
  • the random number generating portion 105 it is possible to use the conventional method for generating a random number as is described in pages 61 to 86 of Japanese literature "Introduction to Cryptography Theory", Kyoritu edition (1993). As an example, this method is executed to set a proper initial value to a random number 113 in the memory 111, read the previous random number 113 each time the random number generating portion 105 is started, apply the cryptanalysis to the previous random number 113 inside of the random number generating portion 105, and set the encrypted result as a new random number. Further, the random number 113 in the memory 111 is replaced with a new random number.
  • the key generating portion 106 is executed to generate the work key 116 from the random number 113 and the common key 114.
  • the work key 116 is executed by the method as described in Institution for Electronic, Information and Communication Engineers, Transactions, Vol. E74, No. 8, pp2153 to 2159.
  • the correspondence changing portion 107 is executed to change the correspondence 115 between the bit trains of the plaintext data and the compressed data on the work key.
  • a specific example of the correspondence depends on a specific compression 108.
  • the compressing portion 108 utilizes the Huffman compression.
  • the correspondence between the bit trains of the plaintext and the compressed data in the process of the Huffman compression is represented by tree-structure data called a Huffman tree. This Huffman tree is changed with the change of the correspondence 107.
  • the correspondence changing portion 107 will be discussed below.
  • the compressing portion 108 utilizes the Huffman compression as mentioned above. According to the Huffman tree of the correspondence 115, the bit train of the plaintext data is replaced with the bit train of the compressed data for compressing the plaintext data.
  • the Huffman compression is realized by the conventional method as described in pages 21 to 103 of "Data Compression Handbook", Toppan 1994.
  • the pre-encrypting portion 109 is executed to encrypt the data with the work key 116 as a parameter as described in the pages 33 to 59 of "Introduction to Cipher Theory", Kyouritu, edition., 1993.
  • the post-encrypting portion 110 is executed to encrypt the data with the work key 116 as a parameter by the conventional method.
  • FIG. 2 shows the detail of the operation of the control portion 104.
  • the random number generating portion 105 is started for generating a random number.
  • the key generating portion 106 is started for generating the work key and then setting the initial value of the work key 116.
  • the control portion 104 reads the plaintext data 112.
  • a step 204 when the compressing portion 108 is started, the next symbol of the plaintext data is compressed.
  • the compressing portion 108 is executed to transform the symbol (bit train) of the plaintext data into the compressed bit train according to the correspondence 115.
  • a step 205 it is determined if more of the compressed data than the block size for cryptanalysis is stored. If so, the operation goes to a step 206. If the compressed data is less than the block size, the operation of the step 204 is repeated.
  • one block of the compressed data is applied to the pre-encrypting portion 109 for encrypting the block.
  • the pre-encrypting portion 109 uses the work key 116 as a parameter.
  • the result of the pre-encrypting portion 109 is stored.
  • the pre-encrypted result is applied to the post-encrypting portion 110 for encrypting it.
  • the post-encrypting portion 110 uses the work key 116 as a parameter.
  • the additional data of the work key to the compressed and encrypted data is stored as the compressed and encrypted data 117 in the memory 111.
  • the correspondence 115 between the bit trains of the plaintext data and the compressed data is changed on the pre-encrypted result.
  • the work key 116 is replaced with the pre-encrypted result.
  • step 212 it is determined if a given number of encrypting blocks are processed. If yes, the operation returns to the step 201. If no, the operation returns to the step 204. The reason why the operation returns to the step 201 will be described below.
  • Computer programs implementing the steps of FIG. 2 may be stored in a recording medium such as a semiconductor memory, a floppy disk or a CD-ROM.
  • the intermediate result (pre-encrypted result) in the process of encrypting one block is made to be a parameter for compressing and encrypting the next block.
  • the intermediate result given in the process of decrypting one block is required to be set as a parameter for decrypting and decompressing the next block.
  • the intermediate result in the decrypted block containing the erroneous bit is made erroneous.
  • the parameter for decrypting and decompressing the next block is made erroneous. This error is propagated to the last block of the data.
  • the improvement in the error correcting technique of the communication and the file storage results in substantially protecting an application layer for which the present invention is intended, from being erroneous.
  • the error propagation is negligible in any system to which the present invention applies.
  • the applied systems may be provided where no error correction is done. If the present invention is applied to such systems, it is necessary to restrict the number of the error propagated blocks.
  • FIG. 3 shows an example of a Huffman tree.
  • This Huffman tree is a binary tree in which a right and a left branches are spread at each intermediate node. The right and the left branches contain a value of 0 or 1, respectively.
  • the end node represents one symbol of the plaintext data.
  • the connection of the branch values from the end node to the root node represents a bit train of the compressed data for the symbol represented by the end node. For example, the bit train of the compressed data for i is 1000 and the bit train of the compressed data for h is 010.
  • the correspondence changing portion 107 is started by the control portion 104.
  • the correspondence changing portion 107 is executed to add numbers to the intermediate nodes of the Huffman tree. Specifically, the nodes are numbered in such a manner that a first is added to the root node, a second and a third are added to a second-stage node from left to right, a fourth and a fifth are added to a third-stage node from left to right, and so forth. That is, the numbering is executed from top to down and from left to right. Then, the values given to the right and the left branches of the intermediate node are replaced with each other according to the work key. Specifically, if the i-th bit of the work key is 1, the values given to the right and the left branches of the i-th intermediate node are replaced with each other. (if it is zero, no replacement is done.)
  • a block 401 indicates a transformation of the Huffman tree shown in FIG. 3 on the assumption that the work key is 1100100 . . . .
  • a block 402 indicates a transformation of the Huffman tree shown in the block 401 on the assumption that the work key is 1010110 . . . .
  • the work key is assumed to have a sufficiently large number of bits and if any bit of the work key exceeds the intermediate node number of the Huffman tree, the bit is ignored in the correspondence changing portion 107.
  • the foregoing description is concerned with the first embodiment of the present invention.
  • the conventional encrypting method has been arranged to secure more rounds for preventing the linear and the differential cryptanalyses.
  • This preventing method has a drawback of increasing the processing time.
  • the method of the foregoing embodiment has been arranged to change the work key for each block. This change makes it impossible to perform a statistical operation for estimating the key, thereby keeping the ciphertext data from the differential and the linear cryptanalyses.
  • the work key for each block is an intermediate result given in the process of encrypting the previous block. This method, hence, does not need an extra processing time for changing the work key.
  • the method of this embodiment enables to prevent the differential and the linear cryptanalyses without any increase of the processing time, thereby improving the cipher performance and the strength capability to the cryptanalysis.
  • the correspondence between the plaintext data and the compressed data may be changed for each block depending on the intermediate result given in the process of encrypting the previous block.
  • the intermediate result cannot be estimated unless the key is obtained. It means that the correspondence between the plaintext data and the compressed data is not estimated.
  • the method of this embodiment can use the compression as a kind of encryption.
  • the compression may present the same effect as the increase of the rounds and be used for keeping the ciphertext data from the differential and the linear cryptanalyses.
  • FIG. 5 shows a functional arrangement of a method according to a second embodiment of the present invention. This is intended for decrypting and decompressing the encrypted data compressed by the method of the first embodiment for obtaining the original plaintext data.
  • a block 501 denotes a completed information processing system.
  • a block 502 denotes a process implemented by a central processing unit and an I/O unit, which process includes an I/O portion 503, a control portion 504, a random number reading portion 505, a key generating portion 506, a correspondence changing portion 507, a decompressing portion 508, a pre-decrypting portion 509, and a post-decrypting portion 510.
  • a block 511 denotes a memory realized by a RAM, a disk, or the like. The memory. 111 stores compressed and encrypted data 512, a random number 513, a common key 514, a correspondence 515, a work key 516, and plaintext data 517.
  • the I/O portion 503 is executed to apply the compressed and encrypted data from the outside and store it in a memory 511. At a time, the I/O portion 503 is executed to receive a decrypting and decompressing instruction and pass it to the control portion 504. On the other hand, the I/O portion 503 is also executed to read the plaintext data 517 from the memory 511 and put it to the outside.
  • the control portion 504 receives the decrypting and decompressing instruction from the I/O portion 503
  • the control portion 504 is executed to start the random number reading portion 505 and read a random number added to the compressed and encrypted data 512. Then, the control portion 504 is executed to start the key generating portion 506 for generating the work key.
  • control portion 504 is also executed to read the compressed and encrypted data 512 from the memory 511 and repeat five operations comprised of the pre-decryption 509, the post-decryption 510, the decompression 508, the correspondence change 507, and the change of the work key, to decrypt and decompress the compressed and encrypted data.
  • the control portion 504 will be discussed later in detail.
  • the random number reading portion 505 is executed to read the random number added to the compressed and encrypted data 512. This random number has been used for generating the work key in the method of the first embodiment.
  • the key generating portion 506 is executed to generate a work key 516 from the random number 513 and the common key 514.
  • the common key 514 has the same value as the common key 114 used in the first embodiment.
  • the work key 516 to be generated by the method of the second embodiment is the same as the work key 116 used in the method of the first embodiment.
  • the correspondence changing portion 507 is executed to change a correspondence 515 between the bit trains of the compressed data and the plaintext data on the basis of the work key.
  • the concrete correspondence depends on the concrete decompression 508.
  • the method of this, second embodiment uses the Huffman decompression for the decompressing portion 508.
  • the Huffman decompression is a reverse transform of the Huffman compression.
  • the correspondence between the bit trains of the compressed data and the plaintext data is represented by a Huffman tree.
  • the correspondence changing portion 507 is executed to change the Huffman tree in a similar manner to the correspondence changing portion 107 included in the method of the first embodiment. Since the correspondence changing portion 507 uses the same work key and method of changing the Huffman tree as those used in the method of the first embodiment, the changed Huffman tree is the same as that of the first embodiment.
  • the decompressing portion 508 is executed to perform the Huffman decompression as mentioned above. That is, according to the Huffman tree of the correspondence 515, the bit train of the compressed data is replaced with that of the plaintext data to decompress the compressed data.
  • the decompressing portion 508 is a reverse transform of the compressing portion 108 and uses the same Huffman tree as that of the first embodiment. Hence, the decompressing portion 508 enables to transform the data compressed by the method of the first embodiment back to the original data.
  • the pre-decrypting portion 509 is a reverse transform of the post-encrypting portion included in the method of the first embodiment.
  • the pre-decrypting portion 509 is executed to decrypt the data with the work key 516 as a parameter.
  • the post-decrypting portion 510 is a reverse transform of the pre-encrypting portion included in the method of the first embodiment.
  • the post-decrypting portion 510 is executed to decrypt the data with the work key 516 as a parameter.
  • the pre-decryption is a reverse transform of the post-encryption included in the first embodiment
  • the post-decryption is a reverse transform of the pre-encryption therein
  • the same work key as that of the first embodiment is used for the decryption.
  • FIG. 6 shows the detail of the operation of the control portion 504.
  • the operation is executed to start the random number reading portion 505 for reading the random number.
  • the key generating portion 506 is started for generating the work key.
  • the initial value of the work key 516 is set as the same value as the initial value of the work key 116 used in the first embodiment.
  • the operation is executed to read the compressed and encrypted data 512.
  • the pre-decrypting portion 509 is started for decrypting one block of the compressed and encrypted text.
  • the pre-decrypting portion 509 uses the work key 516 as a parameter.
  • the pre-decrypted result is stored.
  • the pre-decrypting portion 509 is a reverse transform of the post-decrypting portion 110 included in the first embodiment.
  • the pre-decrypted result has the same value as the value immediately before the post-decryption performed in the first embodiment, that is, the pre-decrypted result.
  • the post-decrypting portion 510 is started to further decrypt the result of the pre-decrypting portion 509.
  • the post-decrypting portion 510 is a reverse transform of the pre-decrypting portion 110 included in the first embodiment. Hence, the post-decrypted result is the same as the value immediately before the pre-decryption performed in the first embodiment, that is, the compressed text of one block obtained by the compressing portion 108.
  • the decompressing portion 508 is started to decompress one symbol from the head of the compressed text of one block.
  • the decompressing portion 508 is a reverse transform of the compressing portion 108 included in the first embodiment.
  • the Huffman tree for representing the correspondence between the compressed text and the plaintext is the same as the tree used in the first embodiment.
  • the operation is executed to obtain the value before the compression, that is, the symbol of the plaintext used in the first embodiment.
  • the correspondence changing portion 507 is started for changing the correspondence 515, that is, the Huffman tree depending on the pre-decrypted result.
  • the pre-decrypted result is the same as the result pre-encrypted by the first embodiment.
  • the correspondence 515 before change is the same as the correspondence 115 of the first embodiment. Hence, the correspondence 515 is the same as that of the first embodiment even after the correspondence 515 is changed.
  • the work key 516 is replaced with the pre-decrypted result.
  • the pre-decrypted result has the same value as the pre-encrypted result used in the method of the first embodiment. Hence, the work key 516 has the same value as that used in the method of the first embodiment even after it is changed.
  • a step 611 it is determined if the overall data of the compressed and encrypted text is processes. If yes, the operation is terminated. If no, the operation goes to a step 612. At this step 612, it is determined if a given number of blocks have been processed. If yes, the operation returns to the step 601 at which the random number is newly read from the compressed and encrypted text 512. If no, the operation returns to the step 604 at which the the next block of the compressed and encrypted data is decrypted.
  • the number of blocks used for the determination at the step 612 is set as the same value as that used in the method of the first embodiment. As a result, the period of updating the random number is the same as that used in the method of the first embodiment.
  • Computer programs for implementing the steps of FIG. 6 may be stored in a recording medium to be loaded in the system.
  • the method has been arranged to decompress and decrypt the data compressed and encrypted by the method of the first embodiment for recovering the original plaintext data.
  • Many of the currently used encryptions are arranged to repeat the fundamental functions for encrypting the plaintext data or repeat the reverse functions of those fundamental functions for decrypting the ciphertext data.
  • the repetitive times of the reverse functions used in the decryption are equal to the repetitive times of the functions used in the encryption.
  • the method of the first embodiment has been arranged to cope with the differential and the linear cryptanalyses without having to increase the rounds (repetitive times of the fundamental functions). Hence, the method of the second embodiment does not need to increase the rounds for the decryption.
  • the methods of the first and the second embodiments enable to encrypt the data and decrypt it as keeping the high-level encryption without having to increase the processing time.
  • the method according to the present invention is arranged to prevent the differential and the linear cryptanalyses without increasing the processing time in the encrypting process and the compressing and encrypting process. This makes it possible to improve the processing performance and the cipher strength to the differential and linear cryptanalyses.
  • the information processing system according to the present invention may include a usually used hardware or software means for allowing down-loading of the programs implementing the steps of FIG. 2 and/or FIG. 6.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Collating Specific Patterns (AREA)
  • Testing And Monitoring For Control Systems (AREA)
US08/806,609 1996-02-28 1997-02-26 Method and apparatus for encrypting data Expired - Lifetime US6157720A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US09/708,564 US6504931B1 (en) 1996-02-28 2000-11-09 Method and apparatus for encrypting data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP8-040931 1996-02-28
JP04093196A JP3746098B2 (ja) 1996-02-28 1996-02-28 データの暗号化装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US09/708,564 Continuation US6504931B1 (en) 1996-02-28 2000-11-09 Method and apparatus for encrypting data

Publications (1)

Publication Number Publication Date
US6157720A true US6157720A (en) 2000-12-05

Family

ID=12594257

Family Applications (2)

Application Number Title Priority Date Filing Date
US08/806,609 Expired - Lifetime US6157720A (en) 1996-02-28 1997-02-26 Method and apparatus for encrypting data
US09/708,564 Expired - Lifetime US6504931B1 (en) 1996-02-28 2000-11-09 Method and apparatus for encrypting data

Family Applications After (1)

Application Number Title Priority Date Filing Date
US09/708,564 Expired - Lifetime US6504931B1 (en) 1996-02-28 2000-11-09 Method and apparatus for encrypting data

Country Status (9)

Country Link
US (2) US6157720A (de)
EP (1) EP0793366B1 (de)
JP (1) JP3746098B2 (de)
KR (2) KR100471738B1 (de)
CN (1) CN1139221C (de)
AU (1) AU693733B2 (de)
DE (1) DE69736148T2 (de)
IN (1) IN191843B (de)
SG (1) SG79936A1 (de)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001073567A1 (en) * 2000-03-28 2001-10-04 Oak Technology, Inc. Secure compact disc technology
US20020006204A1 (en) * 2001-06-27 2002-01-17 Paul England Protecting decrypted compressed content and decrypted decompressed content at a digital rights management client
US6504931B1 (en) * 1996-02-28 2003-01-07 Hitachi, Ltd. Method and apparatus for encrypting data
US20030212868A1 (en) * 2002-05-13 2003-11-13 Nvidia Corporation Method and apparatus for providing an integrated virtual disk subsystem
US20030212683A1 (en) * 2002-05-13 2003-11-13 Nvidia Corporation Method and apparatus for providing an integrated file system
US20040025039A1 (en) * 2002-04-30 2004-02-05 Adam Kuenzi Lock box security system with improved communication
US20040161105A1 (en) * 2003-02-17 2004-08-19 Tae-Gon Park Device for block level offset codebook mode operation and method thereof
US20050169465A1 (en) * 2004-01-30 2005-08-04 Fujitsu Limited Data compression method, data decompression method, data conversion method and program for same
US6970561B1 (en) * 1999-04-21 2005-11-29 Nec Corporation Encryption and decryption with endurance to cryptanalysis
US7061367B2 (en) 2002-04-30 2006-06-13 General Electric Company Managing access to physical assets
US20090307250A1 (en) * 2006-05-31 2009-12-10 Storwize Ltd. Method and system for transformation of logical data objects for storage
US7673153B1 (en) * 1999-03-15 2010-03-02 Sony Corporation Data processing method, apparatus and system for encrypted data transfer
US8769311B2 (en) 2006-05-31 2014-07-01 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US20150067339A1 (en) * 2012-11-07 2015-03-05 Centri Technology, Inc. Single-pass data compression and encryption
US9670694B2 (en) 2007-04-12 2017-06-06 Utc Fire & Security Americas Corporation, Inc. Restricted range lockbox, access device and methods
US10325094B2 (en) 2014-08-28 2019-06-18 Mitsubishi Electric Corporation Process analysis apparatus, process analysis method, and process analysis for determining input/output relation of a block of execution trace to detect potential malware

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6154542A (en) * 1997-12-17 2000-11-28 Apple Computer, Inc. Method and apparatus for simultaneously encrypting and compressing data
CA2372810A1 (en) * 1999-05-04 2000-11-09 General Instrument Corporation Method and apparatus for access control of pre-encrypted on-demand television services
JP2002009757A (ja) * 2000-06-20 2002-01-11 Casio Comput Co Ltd データ暗号化装置及びデータ復号化装置
JP2002082732A (ja) * 2000-09-06 2002-03-22 Nec Corp プログラムコードの不正改竄防止システム及びその方法並びにその制御プログラムを記録した記録媒体
CN1547702A (zh) * 2001-04-27 2004-11-17 ��������ķ������ 高速服务器系统
US20030043852A1 (en) * 2001-05-18 2003-03-06 Bijan Tadayon Method and apparatus for verifying data integrity based on data compression parameters
US6700513B2 (en) * 2002-05-14 2004-03-02 Microsoft Corporation Method and system for compressing and decompressing multiple independent blocks
FR2867337B1 (fr) * 2004-03-08 2006-05-12 Medialive Procede et systeme de distribution securisee de textes numeriques compresses
FR2889637B1 (fr) * 2005-08-04 2007-10-19 Everbee Networks Sa Procede et systeme de chiffrement a haut debit
CN101064595B (zh) * 2006-04-27 2011-07-27 联想(北京)有限公司 一种计算机网络安全输入认证系统和方法
WO2011110003A1 (zh) * 2010-08-24 2011-09-15 华为技术有限公司 二叉树建立、压缩和查找的方法和装置
US8645713B2 (en) * 2011-03-22 2014-02-04 Fujitsu Limited Encrypting method, recording medium of encrypting program, decrypting method, and recording medium of decrypting program
JP2014116753A (ja) * 2012-12-07 2014-06-26 Mega Chips Corp データ処理装置及び制御プログラム並びにデータ処理装置の動作方法
JP2015114771A (ja) * 2013-12-10 2015-06-22 パテネット株式会社 データ暗号化装置、データ復元装置、データ暗号化方法、データ復元方法、データ暗号化プログラムおよびデータ復元プログラム
WO2020186125A1 (en) 2019-03-13 2020-09-17 The Research Foundation For The State University Of New York Ultra low power core for lightweight encryption
KR102630287B1 (ko) * 2020-12-14 2024-01-30 주식회사 네오수텍 가상카드번호 생성 스마트카드와 가상카드번호 복호화 장치

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991018460A1 (de) * 1990-05-19 1991-11-28 Rolf Trautner Verfahren zur blockweisen chiffrierung von digitalen daten
WO1992002089A1 (en) * 1990-07-20 1992-02-06 Ericsson Ge Mobile Communications Holding Inc. Encryption system for digital cellular communications
WO1992022159A1 (fr) * 1991-05-30 1992-12-10 Christian Besnard Dispositif cryptographique de chiffrage par bloc sans usage de cle
GB2257419A (en) * 1991-05-20 1993-01-13 Additive Systems Inc An automotive fuel additive dispensing and blending system.
US5285497A (en) * 1993-04-01 1994-02-08 Scientific Atlanta Methods and apparatus for scrambling and unscrambling compressed data streams
AU5776494A (en) * 1993-03-11 1994-09-15 Nec Corporation Hardware arrangement for enciphering bit blocks while renewing a key at each iteration
US5351299A (en) * 1992-06-05 1994-09-27 Matsushita Electric Industrial Co., Ltd. Apparatus and method for data encryption with block selection keys and data encryption keys
EP0635956A2 (de) * 1993-07-20 1995-01-25 Canon Kabushiki Kaisha Verfahren und Kommunikationssystem unter Verwendung einer Verschlüsselungseinrichtung
US5479512A (en) * 1991-06-07 1995-12-26 Security Dynamics Technologies, Inc. Method and apparatus for performing concryption
US5517614A (en) * 1992-05-29 1996-05-14 Kabushiki Kaisha Toshiba Data compression/encryption processing apparatus

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6129232A (ja) 1984-07-20 1986-02-10 Hitachi Ltd デ−タ暗号化伝送方式
US5115467A (en) * 1991-01-23 1992-05-19 General Instrument Corporation Signal encryption apparatus for generating common and distinct keys
JPH05344118A (ja) 1992-06-05 1993-12-24 Matsushita Electric Ind Co Ltd データ攪乱装置
US5631960A (en) * 1995-08-31 1997-05-20 National Semiconductor Corporation Autotest of encryption algorithms in embedded secure encryption devices
JP3746098B2 (ja) * 1996-02-28 2006-02-15 株式会社日立製作所 データの暗号化装置

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1991018460A1 (de) * 1990-05-19 1991-11-28 Rolf Trautner Verfahren zur blockweisen chiffrierung von digitalen daten
WO1992002089A1 (en) * 1990-07-20 1992-02-06 Ericsson Ge Mobile Communications Holding Inc. Encryption system for digital cellular communications
GB2257419A (en) * 1991-05-20 1993-01-13 Additive Systems Inc An automotive fuel additive dispensing and blending system.
WO1992022159A1 (fr) * 1991-05-30 1992-12-10 Christian Besnard Dispositif cryptographique de chiffrage par bloc sans usage de cle
US5479512A (en) * 1991-06-07 1995-12-26 Security Dynamics Technologies, Inc. Method and apparatus for performing concryption
US5517614A (en) * 1992-05-29 1996-05-14 Kabushiki Kaisha Toshiba Data compression/encryption processing apparatus
US5351299A (en) * 1992-06-05 1994-09-27 Matsushita Electric Industrial Co., Ltd. Apparatus and method for data encryption with block selection keys and data encryption keys
AU5776494A (en) * 1993-03-11 1994-09-15 Nec Corporation Hardware arrangement for enciphering bit blocks while renewing a key at each iteration
US5285497A (en) * 1993-04-01 1994-02-08 Scientific Atlanta Methods and apparatus for scrambling and unscrambling compressed data streams
WO1994023511A1 (en) * 1993-04-01 1994-10-13 Scientific-Atlanta, Inc. Methods and apparatus for scrambling and unscrambling compressed data streams
EP0635956A2 (de) * 1993-07-20 1995-01-25 Canon Kabushiki Kaisha Verfahren und Kommunikationssystem unter Verwendung einer Verschlüsselungseinrichtung

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Bruce Schneier, "Applied Cryptography" Second Edition, 175, 270-277, 513-514, Oct. 1995.
Bruce Schneier, Applied Cryptography Second Edition, 175, 270 277, 513 514, Oct. 1995. *
Schneier, Applied Cryptography, 2nd edition, pp. 173 and 174. *
Takaragi, K., Hashimoto, K. and Nakamura, T., "Differential Cryptanalysis", IEICE transactions, vol. E 74, No. 8, Aug. 1991.
Takaragi, K., Hashimoto, K. and Nakamura, T., Differential Cryptanalysis , IEICE transactions , vol. E 74, No. 8, Aug. 1991. *

Cited By (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6504931B1 (en) * 1996-02-28 2003-01-07 Hitachi, Ltd. Method and apparatus for encrypting data
US7673153B1 (en) * 1999-03-15 2010-03-02 Sony Corporation Data processing method, apparatus and system for encrypted data transfer
US6970561B1 (en) * 1999-04-21 2005-11-29 Nec Corporation Encryption and decryption with endurance to cryptanalysis
WO2001073567A1 (en) * 2000-03-28 2001-10-04 Oak Technology, Inc. Secure compact disc technology
US20020006204A1 (en) * 2001-06-27 2002-01-17 Paul England Protecting decrypted compressed content and decrypted decompressed content at a digital rights management client
US7239708B2 (en) * 2001-06-27 2007-07-03 Microsoft Corporation Protecting decrypted compressed content and decrypted decompressed content at a digital rights management client
US20040025039A1 (en) * 2002-04-30 2004-02-05 Adam Kuenzi Lock box security system with improved communication
US7061367B2 (en) 2002-04-30 2006-06-13 General Electric Company Managing access to physical assets
US20030212868A1 (en) * 2002-05-13 2003-11-13 Nvidia Corporation Method and apparatus for providing an integrated virtual disk subsystem
US6920484B2 (en) * 2002-05-13 2005-07-19 Nvidia Corporation Method and apparatus for providing an integrated virtual disk subsystem
US7120653B2 (en) * 2002-05-13 2006-10-10 Nvidia Corporation Method and apparatus for providing an integrated file system
US20030212683A1 (en) * 2002-05-13 2003-11-13 Nvidia Corporation Method and apparatus for providing an integrated file system
US20040161105A1 (en) * 2003-02-17 2004-08-19 Tae-Gon Park Device for block level offset codebook mode operation and method thereof
US20050169465A1 (en) * 2004-01-30 2005-08-04 Fujitsu Limited Data compression method, data decompression method, data conversion method and program for same
US8868930B2 (en) 2006-05-31 2014-10-21 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US9110913B2 (en) 2006-05-31 2015-08-18 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US20100036863A1 (en) * 2006-05-31 2010-02-11 Storewize Ltd. Method and system for transformation of logical data objects for storage
US20090307249A1 (en) * 2006-05-31 2009-12-10 Storwize Ltd. Method and system for transformation of logical data objects for storage
US8626726B2 (en) 2006-05-31 2014-01-07 International Business Machines Corporation Method and system for transformation of logical data objects for storage
US8769311B2 (en) 2006-05-31 2014-07-01 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US8788467B2 (en) 2006-05-31 2014-07-22 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US8793510B2 (en) 2006-05-31 2014-07-29 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US8819454B2 (en) 2006-05-31 2014-08-26 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US8832043B2 (en) 2006-05-31 2014-09-09 International Business Machines Corporation Method and system for transformation of logical data objects for storage
US20090307250A1 (en) * 2006-05-31 2009-12-10 Storwize Ltd. Method and system for transformation of logical data objects for storage
US8924367B2 (en) 2006-05-31 2014-12-30 International Business Machines Corporation Method and system for transformation of logical data objects for storage
US8930329B2 (en) 2006-05-31 2015-01-06 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US8954403B2 (en) 2006-05-31 2015-02-10 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US8954756B2 (en) 2006-05-31 2015-02-10 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US8959064B2 (en) 2006-05-31 2015-02-17 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US8958482B2 (en) 2006-05-31 2015-02-17 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US10380071B2 (en) 2006-05-31 2019-08-13 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US9104688B2 (en) 2006-05-31 2015-08-11 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US20100017423A1 (en) * 2006-05-31 2010-01-21 Storwize Ltd. Method and system for transformation of logical data objects for storage
US9176976B2 (en) 2006-05-31 2015-11-03 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US9176975B2 (en) 2006-05-31 2015-11-03 International Business Machines Corporation Method and system for transformation of logical data objects for storage
US9218355B2 (en) 2006-05-31 2015-12-22 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US9218297B2 (en) 2006-05-31 2015-12-22 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US9251158B2 (en) 2006-05-31 2016-02-02 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US9262427B2 (en) 2006-05-31 2016-02-16 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US9311320B2 (en) 2006-05-31 2016-04-12 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US9317516B2 (en) 2006-05-31 2016-04-19 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US9323773B2 (en) 2006-05-31 2016-04-26 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US9367555B2 (en) 2006-05-31 2016-06-14 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US9479616B2 (en) 2006-05-31 2016-10-25 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US10372680B2 (en) 2006-05-31 2019-08-06 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US10268696B2 (en) 2006-05-31 2019-04-23 International Business Machines Corporation Systems and methods for transformation of logical data objects for storage
US9670694B2 (en) 2007-04-12 2017-06-06 Utc Fire & Security Americas Corporation, Inc. Restricted range lockbox, access device and methods
US9503434B2 (en) * 2012-11-07 2016-11-22 Centri Technology, Inc. Single-pass data compression and encryption
US20150067339A1 (en) * 2012-11-07 2015-03-05 Centri Technology, Inc. Single-pass data compression and encryption
US10325094B2 (en) 2014-08-28 2019-06-18 Mitsubishi Electric Corporation Process analysis apparatus, process analysis method, and process analysis for determining input/output relation of a block of execution trace to detect potential malware

Also Published As

Publication number Publication date
CN1171682A (zh) 1998-01-28
AU1495297A (en) 1997-09-18
IN191843B (de) 2004-01-10
CN1139221C (zh) 2004-02-18
EP0793366A2 (de) 1997-09-03
DE69736148T2 (de) 2007-01-11
DE69736148D1 (de) 2006-08-03
KR970064059A (ko) 1997-09-12
KR100420552B1 (ko) 2004-03-02
US6504931B1 (en) 2003-01-07
AU693733B2 (en) 1998-07-02
KR100471738B1 (ko) 2005-07-18
JP3746098B2 (ja) 2006-02-15
JPH09230786A (ja) 1997-09-05
EP0793366A3 (de) 2003-05-14
EP0793366B1 (de) 2006-06-21
SG79936A1 (en) 2001-04-17

Similar Documents

Publication Publication Date Title
US6157720A (en) Method and apparatus for encrypting data
US6298136B1 (en) Cryptographic method and apparatus for non-linearly merging a data block and a key
US8577023B2 (en) Encryption processing method, apparatus, and computer program utilizing different types of S-boxes
EP1005191B1 (de) Vorrichtung zum Verschlüsseln/Entschlüsseln und Speichermedium
DE102008016530B4 (de) Effizienter Advanced Encryption Standard (AES)-Datenweg mittels hybrider Rijndael-S-Box
US5442705A (en) Hardware arrangement for enciphering bit blocks while renewing a key at each iteration
KR20020006475A (ko) 암호화장치, 복호장치 및 확대키 생성장치, 확대키생성방법 및 기록매체
JPS63287882A (ja) 暗号装置
EP0896451B1 (de) Verschlüsselungsvorrichtung und rechnerlesbares Aufzeichnungsmedium mit Ausführungsprogramm
KR100458339B1 (ko) 해독화방법및전자기기
US7103180B1 (en) Method of implementing the data encryption standard with reduced computation
JPH05324485A (ja) ファイル圧縮暗号処理装置
AU716807B2 (en) Method and apparatus for encrypting data
RU2188513C2 (ru) Способ криптографического преобразования l-битовых входных блоков цифровых данных в l-битовые выходные блоки
US7142673B1 (en) Method for the cryptographic conversion of L-bit input blocks of digital data into L-bit output blocks
KR100494560B1 (ko) Rijndael암호를 이용한 블록 데이터 실시간암호복호화 장치 및 방법
JP4644053B2 (ja) 暗号化装置及び方法、復号化装置及び方法
JP2934431B1 (ja) 暗号鍵スケジュール装置、およびそのプログラム記録媒体
JP2003333036A (ja) メッセージ認証装置、メッセージ認証方法とメッセージ認証プログラムおよび該プログラムを記録したコンピュータ読取り可能な記録媒体
JPH10303883A (ja) 暗号化方法
JP3795315B2 (ja) 暗号化・復号化回路
JP4335374B2 (ja) データ変換装置及びデータ変換方法
JP2003500681A (ja) 暗号テキストの分散性を高めるためにデータアレイに基数変換、論理演算及び疑似乱数ジェネレータを用いる暗号化エンジン
JP3006490B2 (ja) 多重剰余暗号の暗号鍵生成方法および装置
WO2000069112A9 (en) Precomputing des key schedules for quick access to encrypted databases

Legal Events

Date Code Title Description
AS Assignment

Owner name: HITACHI, LTD., JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:YOSHIURA, HIROSHI;TAKARAGI, KAZUO;SHIMIZU, MAYUKO;REEL/FRAME:008420/0492

Effective date: 19970219

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 8

FEPP Fee payment procedure

Free format text: PAYER NUMBER DE-ASSIGNED (ORIGINAL EVENT CODE: RMPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 12

AS Assignment

Owner name: HITACHI CONSUMER ELECTRONICS CO., LTD., JAPAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HITACHI, LTD.;REEL/FRAME:035254/0684

Effective date: 20150217