WO2006022058A1 - 暗号文生成装置、平文復元装置 - Google Patents

暗号文生成装置、平文復元装置 Download PDF

Info

Publication number
WO2006022058A1
WO2006022058A1 PCT/JP2005/009473 JP2005009473W WO2006022058A1 WO 2006022058 A1 WO2006022058 A1 WO 2006022058A1 JP 2005009473 W JP2005009473 W JP 2005009473W WO 2006022058 A1 WO2006022058 A1 WO 2006022058A1
Authority
WO
WIPO (PCT)
Prior art keywords
key
ciphertext
initial input
input value
value
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.)
Ceased
Application number
PCT/JP2005/009473
Other languages
English (en)
French (fr)
Inventor
Kazuhiko Minematsu
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Publication of WO2006022058A1 publication Critical patent/WO2006022058A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

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
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • 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/12Details relating to cryptographic hardware or logic circuitry
    • 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

  • Ciphertext generation apparatus plaintext restoration apparatus, cryptographic communication system, ciphertext generation method, plaintext restoration method, program for ciphertext generation method, program for plaintext restoration method, and computer-readable information recording medium on which these programs are recorded
  • the present invention relates to a cryptographic communication system, and in particular, a cryptographic communication system using stream encryption by a combination of highly secure cryptographic processing and high-speed cryptographic processing, and a computer on which an encrypted communication program is recorded.
  • the present invention relates to a readable information recording medium. Background art
  • stream cipher One type of common key cryptography is called stream cipher.
  • a stream cipher takes a short secret key as input and generates a pseudo-random number sequence (called a key stream) of any length.
  • the ciphertext is obtained by performing a simple operation (in most cases, bitwise exclusive OR) between the plaintext and the key stream of the same length as the plaintext.
  • stream ciphers do not require padding into plaintext, and depending on the cipher, the keystream can be calculated separately from the plaintext. Can be calculated in advance.
  • stream ciphers are said to be encryption schemes suitable for high-speed cipher communication.
  • RC4 stream cipher is used for wireless LAN communication.
  • RC4 stream cipher is disclosed in Non-Patent Document 1.
  • Patent Document 1 One example of such an approach is disclosed in Patent Document 1. Such an approach has the problem that it is difficult to prove force safety, which is realistic.
  • Another approach is to increase the speed of stream ciphers in the secure block cipher mode by introducing components that are cryptographically weaker than the block ciphers but operate faster.
  • the former approach uses a block cipher component (part of the encryption processing), but this approach uses the block cipher itself.
  • Patent Document 2 As this approach, there are an invention disclosed in Patent Document 2 and a method disclosed in Non-Patent Document 2.
  • the invention disclosed in Patent Document 2 is a method of expanding the output of cryptographic processing secure against a selected plaintext attack by using a plurality of cryptographic processing secure against known plaintext attacks.
  • the “cryptographic processing that is safe against selected plaintext attacks” required by this method can be obtained, for example, by operating a secure block cipher in a certain mode.
  • Non-Patent Document 2 proposes a cryptographic hash function as a secure cryptographic process against known plaintext attacks.
  • the selected plaintext attack is an attack in which an attacker can obtain a ciphertext corresponding to an arbitrary plaintext
  • a known plaintext attack is a ciphertext corresponding to a randomly selected plaintext.
  • a cipher that is secure against a selected plaintext attack is P1
  • a cipher that is safe against a known plaintext attack is P2.
  • P1's key be Kl
  • ⁇ 2's mutually independent t keys t is a predetermined positive integer
  • Equation (1) the key stream G for one block is expressed by Equation (1).
  • Y represents the output P1 [K1] (c) of P1 when the initial input is c and the key is K1.
  • Patent Document 2 US Pat. No. 6,104,811
  • Non-Special Reference 1 Applied Cryptography: Protocols, Algorithms, and bource Code in, 2nd Edition, Bruce Schneier, Wiley
  • Non-Patent Document 2 W. Aiello, S. Rajagopalan and R. Venkatesan, High-Speed Pseudoran dom Number Generation with Small Memory, Fast Software Encryption, 6th International Workshop, FSE'99, Lecture Notes in Computer Science; Vol. 1636
  • Patent Document 2 has the following problems.
  • the first problem is that the method of the invention disclosed in Patent Document 2 requires a long time to start outputting a key stream because the time required for key setup is long.
  • the reason for this is that when the enlargement factor is 3 ⁇ 4, the invention disclosed in Patent Document 2 requires one key for cipher P1 and t keys for cipher P2, so the bit length of the secret key is long. Because it becomes.
  • processing such as a protocol using public key cryptography is generally required. Since the time required for this process increases according to the length of the secret key, the problem arises that time is required for key setup.
  • a second problem is that the invention disclosed in Patent Document 2 is capable of higher speed.
  • “Cryptographic processing secure against selected plaintext attack” and “Cryptographic processing safe against known plaintext attack” used in the invention disclosed in Patent Document 2 can be used. Under such conditions, the key stream to be generated can be lengthened with the same calculation amount as the invention disclosed in Patent Document 2.
  • Patent Document 2 includes a lot of waste in cryptographic key processing.
  • the present invention has been made in view of an energetic problem, and a ciphertext generation device, a plaintext restoration device, a ciphertext communication system, a ciphertext generation method, and a high-speed cipher communication that requires a short time for key setup. It is an object to provide a plaintext restoration method, a ciphertext generation method program, a plaintext restoration method program, and a computer-readable information recording medium in which these programs are recorded.
  • the present invention provides, as a first aspect, an initial input generation means for generating an initial input value, and an encryption means for generating an intermediate input value by encrypting the initial input value.
  • An intermediate output enlarging means for enlarging the intermediate input value to generate an enlarged output value
  • a concatenating means for concatenating the intermediate output value and the enlarged output value to generate a key stream
  • a plaintext to be encrypted The present invention provides a ciphertext generation device having a plaintext acquisition unit for acquiring, and a ciphertext generation unit for generating a ciphertext from a key stream, an initial input value, and plaintext.
  • the first aspect of the present invention it is preferable to further include means for transmitting the ciphertext to another device via a network.
  • a master key storing means for storing a master key, a means for generating an initial input value for scheduling, an initial value for scheduling and a master key
  • Intermediate key generation means for generating an intermediate key from the master key stored in the storage means
  • intermediate key expansion means for generating an extended key by expanding the intermediate key
  • the initial input generation means stores the number of times the encryption key means has been operated before, and uses the number as the initial input value. It is preferable. Alternatively, the initial input generation means may use the intermediate input value output immediately before by the encryption key means. The initial input value is preferable. Alternatively, the initial input generation means preferably uses a part of the ciphertext generated immediately before by the ciphertext generation means as the initial input value.
  • the present invention provides a ciphertext acquisition unit that acquires ciphertext, an initial input reading unit that extracts an initial input value from the ciphertext, and an initial input.
  • An encryption unit that encrypts a value to generate an intermediate output value
  • an intermediate output expansion unit that expands the intermediate output value to generate an expanded output value
  • the present invention provides a plaintext restoration apparatus having a connecting means for generating, and a plaintext generating means for generating a plaintext from a key stream, an initial input value and a ciphertext.
  • the second aspect of the present invention it is preferable to further include means for receiving the ciphertext by another device via the network.
  • a master key storing means for storing a master key, a means for generating an initial input value for scheduling, an initial value for scheduling and a master key
  • Intermediate key generation means for generating an intermediate key from the master key stored in the storage means
  • intermediate key expansion means for generating an extended key by expanding the intermediate key
  • a key scheduling device provided with expanded key setting means as a key of the means.
  • the initial input generation means stores the number of times the encryption key means has been operated before, and uses the number as the initial input value. It is preferable.
  • the initial input generating means preferably uses the intermediate input value output immediately before by the encryption key means as the initial input value.
  • the initial input generation means preferably uses a part of the ciphertext generated immediately before by the ciphertext generation means as the initial input value.
  • the present invention provides, as a third aspect, an encryption communication system that performs encryption communication using a common key stream cipher between a transmission device and a reception device.
  • the first input generation means for generating the initial input value, the first encryption means for encrypting the initial input value to generate the first intermediate input value, and the first intermediate input value are expanded to the first
  • a second encryption means for generating a second intermediate output value, a second intermediate output enlargement means for generating a second enlarged output value by expanding the second intermediate output value, and a second A concatenating means for concatenating the intermediate output value and the second expanded output value to generate a second key stream; and a plaintext generating means for generating plaintext from the second key stream, the initial input value and the ciphertext.
  • the present invention provides an encryption communication system characterized by comprising:
  • each of the transmission device and the reception device includes a master key storage unit that stores a master key, a unit that generates an initial input value for scheduling, and an initial value for scheduling.
  • a master key stored in the master key storage means and a key scheduling device comprising: an intermediate key generation means for generating an intermediate key; and an intermediate key expansion means for expanding the intermediate key to generate an extended key.
  • the key scheduling apparatus of the transmitting device includes first expanded key setting means that uses the expanded key as a key of the first encryption means and the first intermediate output expanding means, and the key scheduling apparatus of the receiving apparatus is It is preferable that a second expanded key setting unit that uses the expanded key as a key of the second encryption unit and the second intermediate output expansion unit is provided.
  • the initial input generation means stores the number of times the encryption key means has been operated before, and uses the number as the initial input value. It is preferable.
  • the initial input generating means preferably uses the intermediate input value output immediately before by the encryption key means as the initial input value.
  • the initial input generation means preferably uses a part of the ciphertext generated immediately before by the ciphertext generation means as the initial input value.
  • the present invention provides, as a fourth aspect, an initial input generation step for generating an initial input value and an encryption key for generating an intermediate input value by encrypting the initial input value. It is the target of encryption, an intermediate output expansion step that generates an expanded output value by expanding the intermediate input value, a concatenation step that generates a key stream by concatenating the intermediate output value and the expanded output value, and encryption.
  • a plaintext acquisition process for acquiring plaintext, and encryption from the key stream, initial input value, and plaintext The present invention provides a ciphertext generation method including a ciphertext generation manual step for generating a sentence.
  • the initial input value for scheduling is stored in the initial value for scheduling and the master key storage means.
  • An intermediate key generation process for generating an intermediate key from the master key, an intermediate key expansion process for generating an extended key by expanding the intermediate key, and an extended key using the extended key as a key in the encryption process and the intermediate output expansion process More preferably, the key scheduling process including the setting means is performed separately from the series of processes from the initial input generation process to the ciphertext refining process.
  • the initial input value is the number of times the ciphering process has been executed previously. Yes.
  • the intermediate input value output in the encryption process executed immediately before is used as the initial input value.
  • a part of the ciphertext generated in the ciphertext generation step executed immediately before is used as the initial input value.
  • the present invention provides a ciphertext acquisition step of acquiring ciphertext, an initial input reading step of extracting an initial input value from the ciphertext, and an initial input.
  • the key stream is generated by concatenating the intermediate output value and the enlarged output value, the encryption step for encrypting the value to generate the intermediate output value, the intermediate output expanding step for generating the enlarged output value by expanding the intermediate output value, and the intermediate output value.
  • the present invention provides a plaintext restoration method having a concatenation step of generating, and a plaintext generation step of generating plaintext from a key stream, an initial input value, and a ciphertext.
  • the ciphertext is also received by another device through the network.
  • a step of generating an initial input value for scheduling, a master key stored in the initial value for scheduling and the master key storage means, and An intermediate key generation process for generating an intermediate key from A key scheduling process comprising an intermediate key expansion process for generating an extended key and an expanded key setting process using the expanded key as a key in the encryption process and the intermediate output expansion process is performed from the ciphertext acquisition process to the plaintext generation process. It is preferable to do this separately from the series of processing.
  • the initial input value is the number of times the encryption means has been operated before in the initial input generation step.
  • the initial input generation step it is preferable to use the intermediate input value output in the encryption step executed immediately before as the initial input value.
  • the initial input generation it is preferable that a part of the ciphertext generated in the ciphertext generation process executed immediately before is used as the initial input value.
  • the present invention provides, as a sixth aspect, an initial input generation step for generating an initial input value and an intermediate input by encrypting the initial input value in a substantial computer.
  • An encryption step for generating a force value for generating a force value
  • an intermediate output expansion step for generating an expanded output value by expanding the intermediate input value for generating an expanded output value by expanding the intermediate input value
  • a ciphertext generation method characterized by executing a plaintext acquisition step of acquiring plaintext to be encrypted, and a ciphertext generation manual step of generating ciphertext from a key stream, an initial input value, and plaintext.
  • a program is provided.
  • the ciphertext transmission step of transmitting the ciphertext to another device via the network is further executed by a substantial computer after the ciphertext generation step. Is preferred.
  • the step of generating the initial input value for scheduling is stored in the substantial computer, and the initial value for scheduling and the master one key storage means are stored.
  • An intermediate key generation step for generating an intermediate key from the master key, an intermediate key expansion step for generating an extended key by expanding the intermediate key, and the extended key as a key in the encryption step and the intermediate output expansion step It is preferable that the key scheduling process including the expanded key setting unit is performed separately from a series of processes from the initial input generation process to the ciphertext generation process.
  • the process of setting the initial input value as the number of times the encryption process has been executed previously is substantially performed.
  • Co Preferably executed by a computer.
  • the present invention provides, as a seventh aspect, a ciphertext acquisition step of acquiring a ciphertext in a substantial computer, and an initial input value extracted from the ciphertext.
  • An input reading process, an encryption process that encrypts the initial input value to generate an intermediate output value, an intermediate output expansion process that generates an expanded output value by expanding the intermediate output value, and an intermediate output value and an expanded output Provided is a plaintext restoration method program characterized in that a concatenation step of concatenating values to generate a key stream and a plaintext generation step of generating plaintext from the keystream, the initial input value and ciphertext are provided. To do.
  • the ciphertext acquisition step it is preferable to cause a substantial computer to perform a process of receiving ciphertext from another device via a network.
  • a substantial computer it is preferable to cause a substantial computer to perform processing for reading the information recording medium on which the ciphertext is recorded.
  • the step of generating an initial input value for scheduling in the substantial computer, the initial value for scheduling, and the master one-key storage means are stored.
  • An intermediate key generation step for generating an intermediate key from the master key, an intermediate key expansion step for generating an extended key by expanding the intermediate key, and the extended key as a key in the encryption step and the intermediate output expansion step The key scheduling process including the expanded key setting process is preferably performed separately from a series of processes from the ciphertext acquisition process to the plaintext generation process.
  • the process of setting the initial input value as the number of times the encryption means has been operated before is substantially performed by a computer. It is preferable to let this be performed.
  • execute immediately before It is preferable to cause a substantial computer to execute a process in which a part of the ciphertext generated in the ciphertext generation step is an initial input value.
  • the present invention provides, as an eighth aspect, a computer in which a program of a ciphertext generation method that works in the configuration of any of the sixth aspect of the present invention is recorded.
  • a readable information recording medium is provided.
  • the present invention provides a computer in which a program of a plaintext restoration method that works on the configuration of any of the seventh aspect of the present invention is recorded.
  • a readable information recording medium is provided.
  • a ciphertext generation apparatus a plaintext restoration apparatus, a cryptographic communication system, a ciphertext generation method, a plaintext restoration method, and a ciphertext generation that can perform high-speed cryptographic communication with a short key setup time. It is possible to provide a method program, a plaintext restoration method program, and a computer-readable information recording medium in which these programs are recorded.
  • the master key is expanded by a process called key scheduling that can be executed separately on the transmission side and the reception side, and the encryption key is expanded. Used for.
  • Key setup includes the time required for key scheduling. This time is much shorter than the time spent on the protocol for sharing secret keys. Therefore, the time required for key setup is shortened, and the time until the key stream starts to be output is also shortened.
  • key scheduling is separately performed on the transmission side and the reception side and the master key is expanded and used for encryption, when compared with the invention disclosed in Patent Document 2, a longer key with the same amount of computation is used. A stream can be generated. For this reason, a higher-speed stream cipher is realized.
  • the present invention can be used in any situation where a stream cipher has been conventionally used.
  • a stream cipher called RC4 is generally used.
  • the present invention can be used for a wireless LAN cipher as well.
  • the master key may be shared by communication using a cryptographic protocol.
  • the master key may be recorded on a portable information recording medium (such as a magnetic disk) and physically moved to share the master key between the transmitting side and the receiving side. In any case, it is not limited to these methods.
  • FIG. 1 shows the configuration of an encryption communication system that works on this embodiment.
  • This encryption communication system has a configuration in which a sender encryption communication device 10 and a receiver encryption communication device 12 are connected.
  • the sender's encryption communication device 10 is composed of an encryption device 100 and a key scheduling 110.
  • the encrypted communication device 12 for recipients is composed of a decryption device 120 and a key scheduling 130.
  • the sender encryption communication device 10 and the receiver encryption communication device 12 include a control unit 1001, 120 1 (CPU, MPU, etc.), a main storage device 1002, 1202 (memory), and an auxiliary storage device 1003, 12 03. This can be realized by using an information processing device equipped with a communication control device 1004, 1204 (such as a modem). Each unit in the sender's encryption communication device 10 and the receiver's encryption communication device 12 reads the program stored in the auxiliary storage devices 1003, 1203 by the control unit 1001, 1201 onto the main storage devices 1002, 1202. This is possible by executing.
  • the sender cryptographic communication device 10 and the receiver cryptographic communication device 12 are connected via a computer network (such as the Internet).
  • a computer network such as the Internet
  • the key scheduling 110 includes an initial value generation unit 111 for scheduling, an intermediate key generation unit 112, a master key input unit 113, an intermediate key expansion unit 114, and an extended key setting unit 115.
  • the intermediate key generation unit 112 generates an intermediate key using the scheduling initial value output from the scheduling initial value generation unit 111 and the master key.
  • the expanded key setting unit 115 sets the expanded key output by the intermediate key expanding unit 114 as the key for the encryption unit 101 and the intermediate output expanding unit 103.
  • the encryption device 100 includes an initial input generation unit 101, an encryption unit 102, an intermediate output expansion unit 103, a concatenation unit 104, a plaintext input unit 105, a ciphertext calculation unit 106, and a ciphertext transmission unit 107.
  • the generation unit 101 generates an initial input necessary for generating a key stream. The initial input is generated so that there is little or no overlap with the initial input generated in the past.
  • the counter value incremented by 1 each time the encryption unit 102 is operated the output of the past encryption unit 102, part of the past key stream and ciphertext, etc. are applied as the initial input. Is possible. For example, if the counter value is used as the initial input, the initial value should be 0, and increment the count by 1 each time the initial input is output.
  • the method of updating the counter value is not limited to this, and it is always sufficient to update the counter value so that it does not overlap with the past value.
  • the encryption key unit 102 encrypts the initial input with the extended key K1 to obtain an intermediate output. More specifically, the cipher unit 102 encrypts the initial input generated by the initial input generation unit 101 using the cryptographic process P 1 [K1], and outputs the ciphertext as an intermediate output.
  • the intermediate output enlargement unit 103 enlarges the intermediate output output from the encryption unit 102 to obtain an enlarged output.
  • the concatenation unit 104 concatenates the intermediate output and the enlarged output to obtain a key stream.
  • the plaintext input unit 105 is an IZF for the user to input plaintext that is the target of encryption, and is realized by a character input device such as a keyboard.
  • the plaintext input unit 105 may be an information recording medium (such as a magnetic disk) reader.
  • the ciphertext calculation unit 106 calculates a ciphertext from the key stream and plaintext.
  • a typical example of the operation is a method of taking an exclusive OR for each bit.
  • the ciphertext is represented by (initial input, (exclusive OR of plaintext and key stream)).
  • simple operations such as arithmetic sums are not limited to exclusive ORs.
  • the ciphertext transmission unit 107 transmits the ciphertext output by the ciphertext calculation unit 106 to the receiver's cipher communication device 12 via a computer network (such as the Internet).
  • a computer network such as the Internet
  • the receiver encryption communication device 12 will be described.
  • Key scheduling 130 is an initial value generator 131 for scheduling, master key input Unit 132, intermediate key generation unit 133, intermediate key expansion unit 134, and extended key setting unit 135.
  • the intermediate key generation unit 133 generates an intermediate key using the scheduling initial value output from the scheduling initial value generation unit 131 and the master key.
  • the intermediate key expansion unit 134 expands the intermediate key.
  • the expanded key setting unit sets the expanded key output by the intermediate key expanding unit 134 as a key for the encryption unit 122 and the intermediate output expanding unit 123.
  • the decryption device 120 includes an initial input reading unit 121, an encryption unit 122, an intermediate output expansion unit 123, a concatenation unit 125, a ciphertext input unit 126, a plaintext calculation unit 127, and a plaintext output unit 128.
  • the initial input reading unit 121 reads the initial input from the ciphertext sent from the transmission side.
  • the encryption key unit 122 encrypts the initial input with the extended key K1 to obtain an intermediate output.
  • the intermediate output enlargement unit 123 enlarges the intermediate output output from the encryption key unit 122 to obtain an enlarged output.
  • the concatenation unit 124 concatenates the intermediate output and the enlarged output to obtain a key stream.
  • the ciphertext input unit 125 inputs the ciphertext that has also been transmitted by the transmitting side.
  • the plaintext calculation unit 126 calculates a plaintext from the key stream, the initial input, and the ciphertext.
  • the plaintext output unit 127 outputs plaintext.
  • the master key input unit 113 generates a master key.
  • the master key is a secret key shared between the sender's encryption communication device 10 and the receiver's encryption communication device 12.
  • Scheduling initial value generation section 111 generates an initial value for scheduling necessary for key scheduling. This can be achieved by using several different inputs to cipher P1 as initial values for scheduling. Specifically, it is only necessary to generate three different initial inputs. For example, if the master key is 128 bits, the 128-bit block cipher AES (Advanced Encryption Standard) with a 128-bit key is used as the cipher P1, and the initial value for scheduling is a numerical value in the 128-bit space 1, 2 , 3 can be realized. However, cipher P1 needs to be secure against selective plaintext attacks.
  • the intermediate key generation unit 112 generates an intermediate key using the scheduling initial value output from the scheduling initial value generation unit 111 and the master key output from the master key input unit 113. Specifically, the ciphertext obtained by setting the encryption P1 key as the master key and encrypting the initial value for scheduling is the intermediate key. For example, for scheduling If the initial values are 1, 2, and 3 and the master key is MK, the intermediate keys are (P1 [MK] (1), P1 [MK] (2), PI [MK] (3)).
  • the intermediate key expansion unit 114 expands the intermediate key output by the intermediate key generation unit 112 using the encryption P2 that is secure against a known plaintext attack, and generates an extended key.
  • the extended key L is (Kl, K2, R) as the intermediate key.
  • P2 [K2 # (i-l)] (R) indicates the ciphertext when R is encrypted by setting the key of cipher P2 with K2ffi-1.
  • t is a positive integer as in the equation (1), and is also referred to as an enlargement factor.
  • the enlargement ratio t is a parameter that represents how much the intermediate output is enlarged in the intermediate output enlargement unit 103 and the intermediate output enlargement unit 123. The larger the t, the longer the output after enlargement.
  • P2 must not be a cipher for which an existing selective plaintext attack has been reported. This means that it is impossible to use DES (Data Encryption Standard), which is capable of known plaintext attacks, as P2.
  • DES Data Encryption Standard
  • the intermediate key expansion unit 114 can be realized by using, for example, an existing block cipher whose known plaintext attack is not known.
  • a block cipher having a multi-level structure is a block cipher that performs ciphering by repeating a process called a round function.
  • 128-bit key AES has 10 rounds of round function, so P 1 can be realized by using AES, and P2 can be realized by using AES in block cipher with 7 rounds of round function.
  • 7-stage AES for example, the selected plaintext attack is known / recognized by the following literature. However, the known plaintext attack has been discovered in spite of many studies, so it is safer against the known plaintext attack. It can be regarded as having.
  • the expanded key setting unit 115 sets the expanded key element as the key of the encryption device 110.
  • the key of the cipher P1 is K1
  • the key of the cipher P2 is K2-1, ⁇ 2_2, ⁇ ⁇ 2—t, and t + 1 cipher processing PI [Kl], Prepare P2 [K2_2], ..., P2 [K2_t].
  • the scheduling initial value generation unit 111 when the master key is twice the key length of P1, the scheduling initial value generation unit 111 generates two different inputs to P1.
  • the intermediate key generation unit 112 concatenates two ciphertexts obtained by encrypting with the initial value P1 for scheduling and half of the master key to obtain an intermediate key.
  • the intermediate key is (MK1, P1 [MK2] (1), PI [MK2] (2))
  • the master key is three times the length of P1
  • the master key is (MK1, MK2, MK3)
  • the intermediate key is simply the master key itself (MK1, MK2, MK3). In this case, P 1 does not need to be used at all.
  • the intermediate key expansion unit 114 and the extended key setting unit 115 are the same as when the master key is equal to the key length of P1.
  • the intermediate output enlarging unit 103 enlarges the intermediate output output from the encryption key unit 102 and outputs it as an enlarged output.
  • the enlargement output E is expressed by equation (3).
  • K2— 1, K2_2, ... K2—t is an intermediate key element.
  • the intermediate output enlarging unit 103 may perform the process of the expression (3) a plurality of times and set the sum of these results as the expanded output. Specifically, when the expansion rate t is a product of a positive integer s and d, the expanded output E is expressed by Equation (4).
  • the matrix element of the expanded output E is composed of the exclusive OR of the finer vectors, so the security of the entire cipher is generally improved.
  • the intermediate output enlargement unit 103 may include other simple processing before and after the processing of Expression (3).
  • the intermediate output may be cyclically shifted by a constant bit, and this may be used as X to perform the processing of equation (3).
  • the circulation direction and the number of stages to be shifted can be arbitrarily set.
  • the concatenation unit 104 concatenates the intermediate output generated by the encryption unit 102 and the expanded output output by the intermediate output expansion unit 103 to generate a key stream.
  • the order in which the intermediate output and the enlarged output are connected is arbitrary.
  • the connecting unit 104 may output only the enlarged output. This is particularly effective when the cipher P2 is a block cipher and the intermediate output enlargement unit 103 performs the processing of equation (4).
  • the ciphertext calculation unit 106 performs an operation on the key stream output from the concatenation unit 104 and the plaintext output from the plaintext input unit 105, and outputs the result and the initial input generated by the initial input generation unit 101. Concatenated and output as ciphertext.
  • the ciphertext input unit 125 is a device for taking in the ciphertext sent from the sender's cipher communication device 10 via the network into the decryption device 120. It is Nobe.
  • the initial input reading unit 121 extracts the initial input from the ciphertext output by the ciphertext input unit 125.
  • the plaintext calculation unit 126 performs an operation on the portion obtained by removing the initial input from the ciphertext output by the ciphertext input unit 125 and the key stream output by the concatenation unit 124 to generate plaintext.
  • the calculation rule used is the same as that used by the ciphertext calculation unit 106 of the encryption device 100.
  • the plaintext output unit 127 is a device that outputs the plaintext calculated by the plaintext calculation unit 126. Examples are monitor displays and printers.
  • the encryption unit 122, the intermediate output enlargement unit 123, and the concatenation unit 124 are the same as the encryption unit 102, the intermediate output enlargement unit 103, and the concatenation unit 104, respectively, included in the encryption device 100.
  • the flow of operations of the cryptographic communication system that works on this embodiment will be described.
  • Fig. 2 shows the operational flow of the cryptographic communication system that is relevant to the embodiment.
  • the control unit 1001 confirms whether or not the communication with the receiver encryption communication device 12 is the first time (step S101). If it is the first communication (step SlOlZYes), the control unit 1001 operates the key scheduling 110 to obtain an expanded key (step S102).
  • step S103 When the communication with the receiver encryption communication device 12 is not the first time (step SlOlZNo) or when the generation of the extended key is completed, the control unit 1001 generates an initial input by the initial input generation unit 101 (step S103). . Thereafter, the control unit 1001 operates the encryption unit 102, expands the initial input using the expanded key, and obtains an intermediate output (step S104). Next, the control unit 1001 causes the intermediate output enlarging unit 103 to calculate the expanded key and the intermediate output to obtain an expanded output (step S105). Next, the control unit 1001 causes the concatenating unit 104 to concatenate the enlarged output and the intermediate output to generate a key stream (step S106).
  • the control unit 1001 acquires the plaintext that is the target of the encryption key by the user's input operation of the sender cryptographic communication device 10 using the plaintext input unit 105 (step S107).
  • the control unit 1001 inputs the acquired plaintext to the ciphertext calculation unit 106, and calculates ciphertext based on the key stream and the initial input (step S108).
  • the control unit 1001 sends the ciphertext calculated by the ciphertext calculation unit 106 to the ciphertext transmission unit 107 and causes the ciphertext transmission unit 107 to transmit the ciphertext.
  • control unit 1201 When the control unit 1201 receives the ciphertext sent from the sender cryptographic communication device 10 using the ciphertext input unit 125 (step S201), the control unit 1201 is the first to communicate with the sender cryptographic communication device 10. Confirm whether or not (step S202). If it is the first communication (step S202ZYes), the control unit 1201 operates the key scheduling 130 to obtain an expanded key (step S203).
  • control unit 1201 extracts the initial input from the ciphertext by the initial input reading unit 121 ( Step S204).
  • control unit 1201 operates the encryption key unit 122, expands the initial input using the expanded key, and obtains an intermediate output (step S205).
  • control unit 1201 causes the intermediate output enlarging unit 123 to calculate the expanded key and the intermediate output, and obtains an expanded output (step S206).
  • control unit 1201 causes the concatenating unit 124 to concatenate the expanded output and the intermediate output, thereby generating a key stream (step S207).
  • the control unit 1201 inputs the ciphertext to the plaintext calculation unit 126 and calculates the plaintext based on the key stream and the initial input (step S208).
  • the control unit 1201 sends the plaintext calculated by the plaintext calculation unit 126 to the plaintext output unit 127 and outputs it to the image display device or the image forming apparatus.
  • control unit 1001 since the extended key has already been generated, the control unit 1001 does not operate the key scheduling 110 (step SlOlZNo), and performs the initial input generation operation by the initial input generation unit 101. Do. Similarly, in the receiver encryption communication apparatus 12, the control unit 1201 extracts the initial input by the initial input reading unit 121 without operating the key scheduling 130 (step S202ZNO).
  • the cryptographic communication system according to the present embodiment can be applied to applications such as a system for safely distributing contents such as movies and music, and a file encryption system for safely operating data on a computer server.
  • applications such as a system for safely distributing contents such as movies and music, and a file encryption system for safely operating data on a computer server.
  • the above embodiment is an example of a preferred embodiment of the present invention, and the present invention is not limited to this.
  • the sender encryption communication device and the receiver encryption communication device are connected via a network, and the ciphertext is transmitted via the network.
  • the ciphertext is recorded on the information recording medium in the sender's encryption communication device, and the ciphertext is transmitted from the sender's encryption communication device to the receiver's encryption communication device by reading it in the receiver's encryption communication device. OK!
  • the present invention can be variously modified.
  • FIG. 1 is a diagram showing a configuration of a cryptographic communication system according to a first embodiment in which the present invention is preferably implemented.
  • FIG. 2 is a diagram showing a configuration of a sender cryptographic communication apparatus.
  • FIG. 3 is a diagram showing a configuration of a recipient encryption communication apparatus.
  • FIG. 4 is a flowchart showing an operation flow of the sender cryptographic communication apparatus.
  • FIG. 5 is a flowchart showing a flow of operations of the receiver cryptographic communication apparatus.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

 鍵セットアップに要する時間が短く、高速な暗号通信を行える暗号文生成装置、平文復元装置、暗号通信システム、暗号文生成方法、平文復元方法、暗号文生成方法のプログラム、平文復元方法のプログラム、及びこれらのプログラムが記録されたコンピュータ可読情報記録媒体を提供する。  送信者用暗号通信装置10は、初期入力値を生成する初期入力生成部101と、初期入力値を暗号化して中間入力値を生成する暗号化部102と、中間入力値を拡大して拡大出力値を生成する中間出力拡大部103と、中間出力値と拡大出力値とを連結して鍵ストリームを生成する連結部104と、暗号化の対象である平文を取得する平文入力部105と、鍵ストリームと初期入力値及び平文とから暗号文を生成する暗号文計算部106とを有する。

Description

明 細 書
暗号文生成装置、平文復元装置、暗号通信システム、暗号文生成方法、 平文復元方法、暗号文生成方法のプログラム、平文復元方法のプログラム、及び これらのプログラムが記録されたコンピュータ可読情報記録媒体
技術分野
[0001] 本発明は、暗号ィ匕通信システムに関し、特に安全性の高い暗号処理と、高速な暗 号処理との組合せによるストリーム暗号による暗号ィ匕通信システム、及び暗号化通信 プログラムを記録したコンピュータ可読情報記録媒体に関する。 背景技術
[0002] 共通鍵暗号の一種として、ストリーム暗号と呼ばれるものがある。ストリーム暗号は、 短い秘密鍵を入力として、任意の長さの疑似乱数系列 (鍵ストリームと呼ばれる)を生 成する。暗号文は、平文と同じ長さの鍵ストリームと平文との簡単な演算 (多くの場合 はビットごとの排他的論理和)を行うことで得られる。
[0003] 平文を決まったサイズのブロックごとに処理するブロック暗号と比べ、ストリーム暗号 は平文へのパディング処理が不要であり、また暗号によっては鍵ストリームを平文と は別個に計算できることから、鍵ストリームの事前計算が可能である。
ブロック暗号と比較した場合にこれらの利点を有するため、ストリーム暗号は、高速 な暗号通信に適した暗号ィ匕方式であると言われて 、る。
[0004] ストリーム暗号の具体的な使用例として、無線 LANの通信には、 RC4ストリーム暗 号が使われている。 RC4ストリーム暗号は、非特許文献 1に開示されている。
[0005] 従来のストリーム暗号のうち、古典的な線形シフトレジスタを用いたストリーム暗号の 多くは相関攻撃 (LSSRの個別の出力と暗号文全体との相関関係を解析することに よる攻撃)などの攻撃に弱い。一方、安全なブロック暗号をある種のモード(暗号文フ イードバックモード、カウンタモードなど)で運用することにより、安全なストリーム暗号 を得ることが可能である。しかし、近年の高速暗号通信においては、現在入手可能な 安全なブロック暗号のモードでは達成できないほどの速度をストリーム暗号に要求さ れることがある。 このような問題は、ギガビットイーサネット (登録商標)による通信や、超高速無線通 信などで起きうる。
[0006] 高速なストリーム暗号を作る一つのアプローチとして、シフトレジスタを用いた高速 なストリーム暗号の処理へブロック暗号で広く用いられてきた部品を組み込み、安全 性を高めることが考えられる。
[0007] このようなアプローチの一つの例が特許文献 1に開示されている。このようなァプロ ーチは現実的ではある力 安全性の証明が困難になるという問題がある。
[0008] もう一つのアプローチとして、安全なブロック暗号のモードによるストリーム暗号を、 そのブロック暗号より暗号学的に弱いが、より高速に動作する部品を導入することで 高速化するということが考えられる。前者のアプローチがブロック暗号の部品(暗号ィ匕 処理の一部分)を用いるのに対し、このアプローチはブロック暗号そのものを利用す る点が異なる。
[0009] このアプローチとしては、特許文献 2に開示される発明や非特許文献 2に開示され る方法がある。特許文献 2に開示される発明は、選択平文攻撃に対して安全な暗号 処理の出力を、既知平文攻撃に対して安全な暗号処理を複数個用いて拡大する方 式である。この方式で必要となる「選択平文攻撃に対して安全な暗号処理」は、例え ば安全なブロック暗号をあるモードで運用することで得られる。一方、既知平文攻撃 に対して安全な暗号処理として、非特許文献 2は暗号学的ハッシュ関数による処理を 提案している。
ここで、選択平文攻撃とは、攻撃者が任意の平文に対応する暗号文を入手可能な もとでの攻撃であり、既知平文攻撃とは、ランダムに選択された平文に対応する暗号 文を入手可能なもとでの攻撃のことを指す。選択平文攻撃が可能であっても、必ずし も既知平文攻撃が可能であるとは限らないため、既知平文攻撃に対して安全である 、う条件は、選択平文攻撃に対して安全と 、う条件よりも弱 、ものである。
[0010] 選択平文攻撃に対して安全な暗号を P1、既知平文攻撃に対して安全な暗号を P2 とする。 P1の鍵を Kl、 Ρ2の互いに独立な t個の鍵 (tは所定の正の整数)をそれぞれ K2_l, Κ2_2, · · · , K2_tとする。
暗号 Pi (iは 1又は 2)で鍵 Kを用いて平文 mを暗号ィ匕するとき、 mの暗号文を Pi[k] (m)で表すものとする。
特許文献 2に開示される発明におけるストリーム暗号では、 1ブロック分の鍵ストリー ム Gは式(1)で示される。
G=(P2[K2#l](Y),P2[K2#2](Y),...,P2[K2#t](Y)) · · · (1)
ただし、 Yは、初期入力が cで、鍵が K1のときの P1の出力 P1 [K1] (c)を表す。
[0011] tは正の整数であり、 P1の出力 Yを t倍していることから、以後 tを拡大率と呼ぶもの とする。初期入力 cの生成方法はいくつか考えられる力 例えば初期値を 1とし、 1ブ ロック分の鍵ストリームを生成する度にカウントアップする変数を cとする方法がある。 特許文献 1:特開 2003— 037482号公報
特許文献 2:米国特許第 6104811号明細書
非特干文献 1: Applied Cryptography: Protocols, Algorithms, and bource Code inし, 2nd Edition, Bruce Schneier, Wiley
非特許文献 2 : W. Aiello, S. Rajagopalan and R. Venkatesan, High-Speed Pseudoran dom Number Generation with Small Memory, Fast Software Encryption, 6th Internat ional Workshop, FSE'99, Lecture Notes in Computer Science; Vol. 1636
発明の開示
発明が解決しょうとする課題
[0012] しかし、上記特許文献 2に開示される発明には、次のような問題がある。
第 1の問題点は、特許文献 2に開示される発明の方法は、鍵セットアップに要する 時間が長いため、鍵ストリームを出力し始めるまでに時間が力かるということである。そ の理由は、拡大率力 ¾の時、特許文献 2に開示される発明では暗号 P1の鍵を一つと 、暗号 P2の鍵を t個とを必要とするため、秘密鍵のビット長が長くなるためである。秘 密鍵を送信者と受信者とで安全に共有するためには、一般に公開鍵暗号を用いた プロトコルといった処理が必要となる。この処理に力かる時間は秘密鍵の長さに応じ て増加するため、結果として鍵セットアップに時間が力かるという問題が起きる。
[0013] 第 2の問題点は、特許文献 2に開示される発明は、さらに高速ィ匕が可能であるという 点である。換言すると、特許文献 2に開示される発明に用いられる「選択平文攻撃に 対して安全な暗号処理」と「既知平文攻撃に対して安全な暗号処理」とが利用できる という条件のもとで、特許文献 2に開示される発明と全く同じ計算量のままで、生成す る鍵ストリームを長くできる。
すなわち、特許文献 2に開示される発明は、暗号ィ匕処理に無駄を多く含むものであ つた o
[0014] 本発明は力かる問題に鑑みてなされたものであり、鍵セットアップに要する時間が 短ぐ高速な暗号通信を行える暗号文生成装置、平文復元装置、暗号通信システム 、暗号文生成方法、平文復元方法、暗号文生成方法のプログラム、平文復元方法の プログラム、及びこれらのプログラムが記録されたコンピュータ可読情報記録媒体を 提供することを目的とする。
課題を解決するための手段
[0015] 上記目的を達成するため、本発明は、第 1の態様として、初期入力値を生成する初 期入力生成手段と、初期入力値を暗号化して中間入力値を生成する暗号化手段と、 中間入力値を拡大して拡大出力値を生成する中間出力拡大手段と、中間出力値と 拡大出力値とを連結して鍵ストリームを生成する連結手段と、暗号化の対象である平 文を取得する平文取得手段と、鍵ストリームと初期入力値及び平文とから暗号文を生 成する暗号文生成手段とを有する暗号文生成装置を提供するものである。
[0016] 上記本発明の第 1の態様においては、暗号文を、ネットワークを介して他の装置へ 送信する手段をさらに有することが好ましい。又は、暗号文を、可搬性を有する情報 記録媒体に記録する手段をさらに有することが好ましい。
[0017] 本発明の第 1の態様の上記のいずれの構成においても、マスター鍵を格納するマ スター鍵格納手段と、スケジューリング用初期入力値を生成する手段と、スケジユーリ ング用初期値とマスター鍵格納手段に格納されたマスター鍵とから中間鍵を生成す る中間鍵生成手段と、中間鍵を拡大して拡大鍵を生成する中間鍵拡大手段と、拡大 鍵を、暗号化手段及び中間出力拡大手段の鍵とする拡大鍵設定手段とを備えた鍵 スケジューリング装置をさらに有することが好ましい。
[0018] 本発明の第 1の態様の上記のいずれの構成においても、初期入力生成手段は、以 前に暗号ィ匕手段が動作した回数を記憶しており、該回数を初期入力値とすることが 好ましい。又は、初期入力生成手段は、暗号ィ匕手段が直前に出力した中間入力値を 初期入力値とすることが好ましい。又は、初期入力生成手段は、暗号文生成手段が 直前に生成した暗号文の一部を初期入力値とすることが好ましい。
[0019] また、上記目的を達成するため、本発明は、第 2の態様として、暗号文を取得する 暗号文取得手段と、暗号文から初期入力値を抽出する初期入力読取手段と、初期 入力値を暗号化して中間出力値を生成する暗号化手段と、中間出力値を拡大して 拡大出力値を生成する中間出力拡大手段と、中間出力値と拡大出力値とを連結して 鍵ストリームを生成する連結手段と、鍵ストリームと初期入力値及び暗号文とから平文 を生成する平文生成手段とを有する平文復元装置を提供するものである。
[0020] 本発明の第 2の態様においては、暗号文を、ネットワークを介して他の装置カも受 信する手段をさらに有することが好ましい。又は、暗号文が記録された情報記録媒体 を読み取る情報記録媒体読取装置をさらに有することが好ましい。
[0021] 本発明の第 2の態様の上記のいずれの構成においても、マスター鍵を格納するマ スター鍵格納手段と、スケジューリング用初期入力値を生成する手段と、スケジユーリ ング用初期値とマスター鍵格納手段に格納されたマスター鍵とから中間鍵を生成す る中間鍵生成手段と、中間鍵を拡大して拡大鍵を生成する中間鍵拡大手段と、拡大 鍵を、暗号化手段及び中間出力拡大手段の鍵とする拡大鍵設定手段とを備えた鍵 スケジューリング装置をさらに有することが好ましい。
[0022] 本発明の第 2の態様の上記のいずれの構成においても、初期入力生成手段は、以 前に暗号ィ匕手段が動作した回数を記憶しており、該回数を初期入力値とすることが 好ましい。又は、初期入力生成手段は、暗号ィ匕手段が直前に出力した中間入力値を 初期入力値とすることが好ましい。又は、初期入力生成手段は、暗号文生成手段が 直前に生成した暗号文の一部を初期入力値とすることが好ましい。
[0023] また、上記目的を達成するため、本発明は、第 3の態様として、送信装置と受信装 置との間で共通鍵ストリーム暗号による暗号通信を行う暗号通信システムであって、 送信装置は、初期入力値を生成する初期入力生成手段と、初期入力値を暗号化し て第 1の中間入力値を生成する第 1の暗号化手段と、第 1の中間入力値を拡大して 第 1の拡大出力値を生成する第 1の中間出力拡大手段と、第 1の中間出力値と第 1 の拡大出力値とを連結して第 1の鍵ストリームを生成する第 1の連結手段と、暗号ィ匕 の対象である平文を取得する平文取得手段と、第 1の鍵ストリームと初期入力値及び 平文とから暗号文を生成する暗号文生成手段と、暗号文を、受信装置へ送信する暗 号文送信手段とを有し、受信装置は、送信装置から送信された暗号文を受信する暗 号文受信手段と、暗号文から初期入力値を抽出する初期入力読取手段と、初期入 力値を暗号化して第 2の中間出力値を生成する第 2の暗号化手段と、第 2の中間出 力値を拡大して第 2の拡大出力値を生成する第 2の中間出力拡大手段と、第 2の中 間出力値と第 2の拡大出力値とを連結して第 2の鍵ストリームを生成する連結手段と 、第 2の鍵ストリームと初期入力値及び暗号文とから平文を生成する平文生成手段と を有することを特徴とする暗号通信システムを提供するものである。
[0024] 上記本発明の第 3の態様においては、送信装置及び受信装置のそれぞれは、マス ター鍵を格納するマスター鍵格納手段と、スケジューリング用初期入力値を生成する 手段と、スケジューリング用初期値とマスター鍵格納手段に格納されたマスター鍵と 力 中間鍵を生成する中間鍵生成手段と、中間鍵を拡大して拡大鍵を生成する中間 鍵拡大手段とを備えた鍵スケジューリング装置をさらに有し、送信装置の鍵スケジュ 一リング装置は、拡大鍵を、第 1の暗号化手段及び第 1の中間出力拡大手段の鍵と する第 1の拡大鍵設定手段を備え、受信装置の鍵スケジューリング装置は、拡大鍵 を、第 2の暗号化手段及び第 2の中間出力拡大手段の鍵とする第 2の拡大鍵設定手 段を備えることが好ましい。
[0025] 本発明の第 3の態様の上記のいずれの構成においても、初期入力生成手段は、以 前に暗号ィ匕手段が動作した回数を記憶しており、該回数を初期入力値とすることが 好ましい。又は、初期入力生成手段は、暗号ィ匕手段が直前に出力した中間入力値を 初期入力値とすることが好ましい。又は、初期入力生成手段は、暗号文生成手段が 直前に生成した暗号文の一部を初期入力値とすることが好ましい。
[0026] また、上記目的を達成するため、本発明は、第 4の態様として、初期入力値を生成 する初期入力生成工程と、初期入力値を暗号化して中間入力値を生成する暗号ィ匕 工程と、中間入力値を拡大して拡大出力値を生成する中間出力拡大工程と、中間出 力値と拡大出力値とを連結して鍵ストリームを生成する連結工程と、暗号化の対象で ある平文を取得する平文取得工程と、鍵ストリームと初期入力値及び平文とから暗号 文を生成する暗号文生成手工程とを有する暗号文生成方法を提供するものである。
[0027] 上記本発明の第 4の態様においては、暗号文生成工程の後段に、暗号文を、ネット ワークを介して他の装置へ送信する暗号文送信工程をさらに有することが好ましい。
[0028] 本発明の第 4の態様の上記のいずれの暗号文生成方法においても、スケジユーリ ング用初期入力値を生成する工程と、スケジューリング用初期値とマスター鍵格納手 段に格納されて 、るマスター鍵とから中間鍵を生成する中間鍵生成工程と、中間鍵 を拡大して拡大鍵を生成する中間鍵拡大工程と、拡大鍵を、暗号化工程及び中間 出力拡大工程における鍵とする拡大鍵設定手段とを備えた鍵スケジューリング処理 を、初期入力生成工程から暗号文精製工程までの一連の処理とは別個に行うことが より好まし 、。
[0029] 本発明の第 4の態様の上記のいずれの暗号文生成方法においても、初期入力生 成工程においては、以前に暗号ィ匕工程を実行した回数を初期入力値とすることが好 ましい。又は、初期入力生成工程においては、直前に実行した暗号化工程で出力し た中間入力値を初期入力値とすることが好ましい。又は、初期入力生成工程におい ては、直前に実行した暗号文生成工程で生成した暗号文の一部を初期入力値とす ることが好ましい。
[0030] また、上記目的を達成するため、本発明は、第 5の態様として、暗号文を取得する 暗号文取得工程と、暗号文から初期入力値を抽出する初期入力読取工程と、初期 入力値を暗号化して中間出力値を生成する暗号化工程と、中間出力値を拡大して 拡大出力値を生成する中間出力拡大工程と、中間出力値と拡大出力値とを連結して 鍵ストリームを生成する連結工程と、鍵ストリームと初期入力値及び暗号文とから平文 を生成する平文生成工程とを有する平文復元方法を提供するものである。
[0031] 上記本発明の第 5の態様においては、暗号文取得工程においては、暗号文を、ネ ットワークを介して他の装置力も受信することが好ましい。又は、暗号文取得工程に お!、ては、暗号文が記録された情報記録媒体を読み取ることが好ま 、。
[0032] 本発明の第 5の態様の上記のいずれの平文復元方法においても、スケジューリング 用初期入力値を生成する工程と、スケジューリング用初期値とマスター鍵格納手段に 格納されて 、るマスター鍵とから中間鍵を生成する中間鍵生成工程と、中間鍵を拡 大して拡大鍵を生成する中間鍵拡大工程と、拡大鍵を、暗号化工程及び中間出力 拡大工程における鍵とする拡大鍵設定工程とを備えた鍵スケジューリング処理を、暗 号文取得工程から平文生成工程までの一連の処理と別個に行うことが好まし 、。
[0033] 本発明の第 5の態様の上記のいずれの平文復元方法においても、初期入力生成 工程においては、以前に暗号ィ匕手段が動作した回数を初期入力値とすることが好ま しい。又は、初期入力生成工程においては、直前に実行した暗号ィ匕工程で出力した 中間入力値を初期入力値とすることが好ましい。又は、初期入力生成においては、 直前に実行した暗号文生成工程で生成した暗号文の一部を初期入力値とすることが 好ましい。
[0034] また、上記目的を達成するため、本発明は、第 6の態様として、実質的なコンビユー タに、初期入力値を生成する初期入力生成工程と、初期入力値を暗号化して中間入 力値を生成する暗号化工程と、中間入力値を拡大して拡大出力値を生成する中間 出力拡大工程と、中間出力値と拡大出力値とを連結して鍵ストリームを生成する連結 工程と、暗号化の対象である平文を取得する平文取得工程と、鍵ストリームと初期入 力値及び平文とから暗号文を生成する暗号文生成手工程とを実行させることを特徴 とする暗号文生成方法のプログラムを提供するものである。
[0035] 上記本発明の第 6の態様においては、ネットワークを介して暗号文を他の装置へ送 信する暗号文送信工程を暗号文生成工程の後段で実質的なコンピュータにさらに実 行させることが好ましい。
[0036] 本発明の第 6の態様の上記のいずれの構成においても、実質的なコンピュータに、 スケジューリング用初期入力値を生成する工程と、スケジューリング用初期値とマスタ 一鍵格納手段に格納されて 、るマスター鍵とから中間鍵を生成する中間鍵生成工程 と、中間鍵を拡大して拡大鍵を生成する中間鍵拡大工程と、拡大鍵を、暗号化工程 及び中間出力拡大工程における鍵とする拡大鍵設定手段とを備えた鍵スケジユーリ ング処理を、初期入力生成工程から暗号文生成工程までの一連の処理とは別個に 行わせることが好ましい。
[0037] 本発明の第 6の態様の上記のいずれの構成においても、初期入力生成工程にお いては、以前に暗号ィ匕工程を実行した回数を初期入力値とする処理を、実質的なコ ンピュータに実行させることが好ましい。又は、初期入力生成工程においては、直前 に実行した暗号ィ匕工程で出力した中間入力値を初期入力値とする処理を実質的な コンピュータに実行させることが好ましい。又は、初期入力生成工程においては、直 前に実行した暗号文生成工程で生成した暗号文の一部を初期入力値とする処理を 実質的なコンピュータに実行させることがより好ましい。
[0038] また、上記目的を達成するため、本発明は、第 7の態様として、実質的なコンビユー タに、暗号文を取得する暗号文取得工程と、暗号文から初期入力値を抽出する初期 入力読取工程と、初期入力値を暗号化して中間出力値を生成する暗号化工程と、中 間出力値を拡大して拡大出力値を生成する中間出力拡大工程と、中間出力値と拡 大出力値とを連結して鍵ストリームを生成する連結工程と、鍵ストリームと初期入力値 及び暗号文とから平文を生成する平文生成工程とを実行させることを特徴とする平 文復元方法のプログラムを提供するものである。
[0039] 上記本発明の第 7の態様においては、暗号文取得工程においては、ネットワークを 介して他の装置から暗号文を受信する処理を実質的なコンピュータに行わせることが 好ましい。又は、暗号文取得工程においては、暗号文が記録された情報記録媒体を 読み取る処理を実質的なコンピュータに行わせることが好ましい。
[0040] 本発明の第 7の態様の上記のいずれの構成においても、実質的なコンピュータに、 スケジューリング用初期入力値を生成する工程と、スケジューリング用初期値とマスタ 一鍵格納手段に格納されて 、るマスター鍵とから中間鍵を生成する中間鍵生成工程 と、中間鍵を拡大して拡大鍵を生成する中間鍵拡大工程と、拡大鍵を、暗号化工程 及び中間出力拡大工程における鍵とする拡大鍵設定工程とを備えた鍵スケジユーリ ング処理を、暗号文取得工程から平文生成工程までの一連の処理と別個に行わせ ることが好ましい。
[0041] 本発明の第 7の態様の上記のいずれの構成においても、初期入力生成工程にお いては、以前に暗号化手段が動作した回数を初期入力値とする処理を実質的なコン ピュータに行わせることが好ましい。又は、初期入力生成工程においては、直前に実 行した暗号ィ匕工程で出力した中間入力値を初期入力値とする処理を実質的なコンビ ユータに行わせることが好ましい。又は、初期入力生成工程においては、直前に実行 した暗号文生成工程で生成した暗号文の一部を初期入力値とする処理を実質的な コンピュータに実行させることが好ましい。
[0042] また、上記目的を達成するため、本発明は、第 8の態様として、上記本発明の第 6 の態様のいずれかの構成に力かる暗号文生成方法のプログラムが記録されたコンビ ユータ可読情報記録媒体を提供するものである。
[0043] また、上記目的を達成するため、本発明は、第 9の態様として、上記本発明の第 7 の態様のいずれかの構成に力かる平文復元方法のプログラムが記録されたコンビュ ータ可読情報記録媒体を提供するものである。
発明の効果
[0044] 本発明によれば、鍵セットアップに要する時間が短ぐ高速な暗号通信を行える暗 号文生成装置、平文復元装置、暗号通信システム、暗号文生成方法、平文復元方 法、暗号文生成方法のプログラム、平文復元方法のプログラム、及びこれらのプログ ラムが記録されたコンピュータ可読情報記録媒体を提供できる。
発明を実施するための最良の形態
[0045] 〔発明の原理〕
本発明では、送信側の装置と受信側の装置とで短いマスター鍵を共有したのち、 送信側と受信側で個別に実行可能な鍵スケジューリングと呼ばれる処理によってマ スター鍵を拡大して暗号ィ匕に用いる。
鍵セットアップには、鍵スケジューリングに要する時間も含まれる力 この時間は秘 密鍵を共有するためのプロトコルに力かる時間と比較してはるかに短い。従って、鍵 セットアップに要する時間が短縮され、鍵ストリームが出力され始めるまでの時間も短 くなる。また、送信側と受信側とで個別に鍵スケジューリングを行ってマスター鍵を拡 大して暗号ィ匕に用いた場合、特許文献 2に開示される発明と比較した場合、同じ計 算量でより長い鍵ストリームを生成できる。このため、より高速なストリーム暗号が実現 される。
[0046] 本発明は、従来ストリーム暗号が使用されていたあらゆる状況下で使用可能である 。例えば、無線 LANにおいては、一般的には RC4と呼ばれるストリーム暗号が用い られて 、るが、これと同様に本発明を無線 LANの暗号ィ匕に用いることも可能である。 [0047] なお、マスター鍵の共有には、従来技術で秘密鍵を共有するのに用いたのと同様 の手法を適用できる。すなわち、暗号プロトコルによる通信でマスター鍵を共有しても 良い。また、マスター鍵を可搬性のある情報記録媒体 (磁気ディスクなど)に記録し、 これを物理的に移動させることで送信側と受信側とでマスター鍵を共有するようにし ても良い。いずれにせよ、これらの手法に限定されることはない。
[0048] 上記原理に基づく本発明の好適な実施の形態について以下に説明する。
[0049] 図 1に、本実施形態に力かる暗号通信システムの構成を示す。この暗号通信システ ムは、送信者用暗号通信装置 10と受信者用暗号通信装置 12とが接続された構成で ある。
送信者用暗号通信装置 10は、暗号ィ匕装置 100と鍵スケジューリング 110とで構成 される。また、受信者用暗号化通信装置 12は、復号ィ匕装置 120と鍵スケジューリング 130とで構成される。
[0050] 送信者用暗号通信装置 10及び受信者用暗号通信装置 12は、制御部 1001, 120 1 (CPUや MPUなど)と主記憶装置 1002, 1202 (メモリ)と補助記憶装置 1003, 12 03 (磁気ディスクドライブなど)と通信制御装置 1004, 1204 (モデムなど)とを備えた 情報処理装置を用いて実現可能である。送信者用暗号通信装置 10及び受信者用 暗号通信装置 12内の各部は、補助記憶装置 1003, 1203に格納されているプログ ラムを制御部 1001, 1201が主記憶装置 1002, 1202上に読み出して実行すること で実現可能である。
[0051] 図 1に示すように、送信者用暗号通信装置 10と受信者用暗号通信装置 12とは、コ ンピュータネットワーク (インターネットなど)を介して接続されて!、る。
[0052] 送信者用暗号通信端末 10について説明する。鍵スケジューリング 110は、スケジュ 一リング用初期値生成部 111、中間鍵生成部 112、マスター鍵入力部 113、中間鍵 拡大部 114及び拡大鍵設定部 115を有する。
中間鍵生成部 112は、スケジューリング用初期値生成部 111が出力するスケジユー リング用初期値とマスター鍵とを用いて中間鍵を生成する。拡大鍵設定部 115は、中 間鍵拡大部 114が出力する拡大鍵を暗号化部 101及び中間出力拡大部 103の鍵と して設定する。 [0053] 暗号化装置 100は、初期入力生成部 101、暗号化部 102、中間出力拡大部 103、 連結部 104、平文入力部 105、暗号文計算部 106及び暗号文送信部 107を有する 初期入力生成部 101は、鍵ストリームを生成するために必要な初期入力を生成す る。初期入力は、過去に生成した初期入力との重複が全く起きない、又はほとんど起 きないように生成される。具体的には、暗号ィ匕部 102を動作させるたびに 1ずつインク リメントされるカウンタ値や、過去の暗号化部 102の出力、過去の鍵ストリームや暗号 文の一部などが初期入力として適用可能である。例えば、カウンタ値を初期入力とす る場合は、最初の値は 0とし、初期入力を出力する度に 1ずつカウントアップしていけ ばよい。ただし、カウンタ値の更新方法はこれに限定されることはなぐ常に過去の値 と重複がな 、ように更新されれば良 、。
暗号ィ匕部 102は、初期入力を拡大鍵 K1で暗号ィ匕して中間出力を得る。より詳しく 言えば、暗号ィ匕部 102は、初期入力生成部 101が生成する初期入力を、暗号処理 P 1 [K1]で暗号ィ匕し、その暗号文を中間出力として出力する。
中間出力拡大部 103は、暗号化部 102が出力した中間出力を拡大して拡大出力 を得る。
連結部 104は、中間出力と拡大出力とを連結して鍵ストリームを得る。
平文入力部 105は、暗号ィ匕の対象である平文をユーザが入力する為の IZFであり 、例えばキーボードなどの文字入力装置によって実現される。なお、平文入力部 105 は、情報記録メディア (磁気ディスクなど)の読取装置であってもよ 、。
暗号文計算部 106は、鍵ストリームと平文とから暗号文を計算する。演算の典型例 としては、ビットごとの排他的論理和をとる方法がある。この場合、暗号文は、(初期入 力, (平文と鍵ストリームとの排他的論理和))で表される。実際には排他的論理和に 限定されることはなぐ算術和などの簡単な演算であればよい。
暗号文送信部 107は、暗号文計算部 106が出力する暗号文をコンピュータネットヮ ーク (インターネットなど)を介して受信者用暗号通信装置 12へ送信する。
[0054] 受信者用暗号通信装置 12について説明する。
鍵スケジューリング 130は、スケジューリング用初期値生成部 131、マスター鍵入力 部 132、中間鍵生成部 133、中間鍵拡大部 134及び拡大鍵設定部 135を有する。 中間鍵生成部 133は、スケジューリング用初期値生成部 131が出力するスケジユー リング用初期値とマスター鍵とを用いて中間鍵を生成する。中間鍵拡大部 134は、中 間鍵を拡大する。拡大鍵設定部は、中間鍵拡大部 134が出力する拡大鍵を、暗号 化部 122及び中間出力拡大部 123の鍵として設定する。
[0055] 復号装置 120は、初期入力読取部 121、暗号化部 122、中間出力拡大部 123、連 結部 125、暗号文入力部 126、平文計算部 127及び平文出力部 128を有する。 初期入力読取部 121は、送信側から送られてきた暗号文から初期入力を読み取る 。暗号ィ匕部 122は、初期入力を拡大鍵 K1で暗号ィ匕して中間出力を得る。中間出力 拡大部 123は、暗号ィ匕部 122が出力した中間出力を拡大して拡大出力を得る。連結 部 124は、中間出力と拡大出力とを連結して鍵ストリームを得る。暗号文入力部 125 は、送信側力も送信されてきた暗号文を入力する。平文計算部 126は、鍵ストリーム と初期入力と暗号文とから平文を計算する。平文出力部 127は、平文を出力する。
[0056] 鍵スケジューリング 110につ!/、て説明する。
まず、マスター鍵が暗号 P1の鍵長と等 、場合にっ 、て説明する。
マスター鍵入力部 113は、マスター鍵を生成する。マスター鍵は、送信者用暗号通 信装置 10と受信者用暗号通信装置 12とで共有される秘密鍵である。
スケジューリング用初期値生成部 111は、鍵スケジューリングに必要なスケジユーリ ング用初期値を生成する。これは、暗号 P1へのいくつかの異なる入力をスケジユーリ ング用初期値とすることで実現できる。具体的には、互いに異なる三つの初期入力を 生成すれば良い。これは、例えば、マスター鍵が 128ビットである場合、暗号 P1とし て 128ビット鍵を持つ 128ビットブロック暗号 AES (Advanced Encryption Standard)を 用い、スケジューリング用初期値を 128ビット空間上の数値 1, 2, 3とすることで実現 できる。ただし、暗号 P1は、選択平文攻撃に対して安全であることが必要である。
[0057] 中間鍵生成部 112は、スケジューリング用初期値生成部 111が出力するスケジユー リング用初期値と、マスター鍵入力部 113が出力するマスター鍵とを用いて中間鍵を 生成する。具体的には、暗号 P1の鍵をマスター鍵で設定し、スケジューリング用初期 値を暗号ィ匕して得られる三つの暗号文が中間鍵となる。例えば、スケジューリング用 初期値が 1, 2, 3でマスター鍵を MKとすると、中間鍵は(P1 [MK] (1) , P1 [MK] ( 2) , PI [MK] (3) )となる。
[0058] 中間鍵拡大部 114は、中間鍵生成部 112が出力する中間鍵を、既知平文攻撃に 対して安全な暗号 P2を用いて拡大し、拡大鍵を生成する。
拡大鍵 Lは、中間鍵を (Kl, K2, R)とすると、
L=(Kl,K2#l,K2#2,...,K2#t)で、 K2#1=K2, K2#i=P2[K2#(i-l)](R) · · · (2) ただし、 i= l, 2, · · · , t
ここで、 P2[K2#(i-l)](R)は、暗号 P2の鍵を K2ffi-1で設定して、 Rを暗号化した時の 暗号文を示す。
[0059] tは、式(1)と同様に正の整数であり、同じく拡大率と呼ぶものとする。拡大率 tは中 間出力拡大部 103及び中間出力拡大部 123にお 、て、中間出力をどれだけ拡大す るのかを表すパラメータである。 tが大きいほど、拡大後の出力は長くなる。
[0060] 厳密には、式(2)の処理を行うためには、暗号 P2の鍵のサイズと、暗号 P1の出力 サイズとがー致する必要がある。例えば、 P1を AESとした場合、 P2が RC6などの 12 8ビットブロック暗号や SHA—1などの暗号学的なハッシュ関数によって構成された 1 28ビットの鍵付きハッシュ関数であれば、式(2)の処理が可能となる。
しかし、もし P2の鍵のサイズと P1の出力サイズとがー致しない場合でも、スケジユー リング用初期値の長さと中間鍵の長さとを適切に増減させることで容易に対応できる
[0061] ただし、 P2は既存の選択平文攻撃が報告されている暗号であってはならない。こ れは、既知平文攻撃が可能な DES (Data Encryption Standard)を P2として用いるこ とは不可能であることを意味する。
[0062] 一方、例えば既存のブロック暗号で既知平文攻撃が知られていないものを使うこと で、中間鍵拡大部 114を実現可能である。
具体的には、 P1に段構造を持つブロック暗号を用いている場合、 P2としてその一 部の段を抜き出したブロック暗号を用いることができる。段構造を持つブロック暗号と は、ラウンド関数と呼ばれる処理を繰り返して暗号ィ匕を行うブロック暗号のことである。 例えば、 128ビット鍵の AESはラウンド関数の 10段の繰り返しになっているので、 P 1は AESを用いるとし、 P2は AESはラウンド関数を 7段繰り返したブロック暗号を用い ることで、実現可能である。 7段の AESは、例えば以下の文献により選択平文攻撃が 知られて!/ヽるが、多くの研究にも関わらず既知平文攻撃は発見されて ヽな 、ため、 既知平文攻撃に対する安全性を持つと見なせる。
H. uilbert and M. Minier, A collision attack on seven rounds of Rijndael, Proceedi ngs of the Third Advanced Encrpytion Standard Conference, NIST, Apr. 2000.
[0063] 拡大鍵設定部 115は、拡大鍵の要素を暗号化装置 110の鍵として設定する。具体 的には、暗号 P1の鍵を K1とし、暗号 P2の鍵を K2— 1, Κ2_2, · ' ·Κ2— tとし、喑 号化装置 100で用いる t+ 1個の暗号処理 PI [Kl] , P2[K2_2] , · · · , P2[K2_t ]を用意する。
[0064] 次に、マスター鍵が P1の鍵の長さの 2倍又は 3倍の場合について説明する。この場 合には、暗号 P1の呼び出し回数を上記の場合よりも低減できる。具体的には、マスタ 一鍵が P1の鍵の長さの 2倍のときは、スケジューリング用初期値生成部 111は、 P1 への異なる二つの入力を生成する。中間鍵生成部 112は、スケジューリング用初期 値 P1で暗号化して得られる二つの暗号文と、マスター鍵の半分とを連結して中間鍵 とする。例えば、スケジューリング用初期値を" 1"ど' 2"とし、マスター鍵を (MK1, M K2)とすると、中間鍵は(MK1, P1 [MK2] (1) , PI [MK2] (2) )となる。一方マスタ 一鍵が P1の長さの 3倍の時は、マスター鍵を(MK1, MK2, MK3)とすると、単純に 中間鍵をマスター鍵そのもの(MK1, MK2, MK3)とすれば良い。この場合には、 P 1は全く使用しなくて済むこととなる。
[0065] いずれの場合も、中間鍵拡大部 114と拡大鍵設定部 115とについては、マスター 鍵が P1の鍵長と等しい場合と同様である。
[0066] 次に、暗号化装置 100について説明する。
中間出力拡大部 103は、暗号ィ匕部 102が出力する中間出力を拡大し、拡大出力と して出力する。拡大率が tの場合、拡大出力 Eは、式(3)で表される。
E=(P2[K2#l](x),P2[K2#2](x),...,P2[K2#t](x))- · · (3)
ただし、 Xは中間出力を表す。
[0067] B音号 P2は、中間鍵拡大部 114が用いるものと同様である。 K2— 1, K2_2, · · · , K2— tは中間鍵の要素である。
また、中間出力拡大部 103は、式(3)の処理を複数回行い、これらの結果の和を拡 大出力としても良い。具体的には、拡大率 tがある正の整数 sと dとの積であるとき、拡 大出力 Eは式 (4)で表される。
E=(P2[K2#l](x)+P2[K2#2](x)+...+P2[K2#d],P2[K2#d+l](x)+P2[K2#d+2](x)+...+P2[ K2#2d](x),...,P2[K2#(s-l)d](x)+P2[K2#(s-l)d+l](x)+...+P2[K2#sd](x)) · · · (4) ただし、 +はビットごとの排他的論理を表し、 Xは中間出力を表す。
[0068] 式(3)の処理では、拡大出力 Eの長さは暗号 P2の出力長の t倍であるのに対して、 式 (4)の処理では、拡大出力 Eの長さは s倍となっている。従って式(3)の処理よりも 式 (4)の処理は効率が悪くなる。
し力し、式 (4)の処理では、拡大出力 Eの行列要素がさらに細かいベクトルの排他 的論理和で構成されるため、一般的には暗号全体の安全性が向上する。
[0069] 中間出力拡大部 103は式(3)の処理以外に、その前後に簡単な別の処理を含ん でいてもよい。例えば、中間出力を定数ビット巡回シフトさせて、これを Xとして式(3) の処理を行っても良い。この時、巡回方向やシフトさせる段数は任意に設定可能であ る。
[0070] 連結部 104は、暗号化部 102が生成する中間出力と、中間出力拡大部 103が出力 する拡大出力とを連結し、鍵ストリームを生成する。中間出力と拡大出力とをどのよう な順序で連結するかは任意でょ 、。
また、連結部 104は、拡大出力だけを出力しても良い。これは特に、暗号 P2がプロ ック暗号であり、中間出力拡大部 103が式 (4)の処理を行うときに有効である。
[0071] この構成のもとでは、中間出力拡大部 103が式(3)の処理を行う時と比べて、安全 に生成可能な鍵ストリーム長の限界値が上がることが証明できる。
[0072] 暗号文計算部 106は、連結部 104が出力する鍵ストリームと、平文入力部 105が出 力する平文との演算を行い、その結果と初期入力生成部 101が生成する初期入力と を連結して、暗号文として出力する。
[0073] 復号装置 120について説明する。暗号文入力部 125は、ネットワークを介して送信 者用暗号通信装置 10から送られてきた暗号文を復号装置 120に取り込みための機 能部である。
初期入力読取部 121は、暗号文入力部 125が出力する暗号文から初期入力を抽 出する。
平文計算部 126は、暗号文入力部 125が出力する暗号文から初期入力を除いた 部分と、連結部 124が出力する鍵ストリームとの演算を行い、平文を生成する。用い る演算法則は、暗号ィ匕装置 100の暗号文計算部 106が用いるものと同じである。 平文出力部 127は、平文計算部 126が算出した平文を出力する装置である。例え ば、モニタディスプレイやプリンタである。
暗号化部 122、中間出力拡大部 123及び連結部 124は、暗号化装置 100が備え る暗号化部 102、中間出力拡大部 103及び連結部 104とそれぞれ同様である。 本実施形態に力かる暗号通信システムの動作の流れについて説明する。図 2に、 実施形態に力かる暗号通信システムの動作の流れを示す。
まず、送信者用暗号通信装置 10の動作の流れを説明する。
制御部 1001は、受信者用暗号通信装置 12との通信が初めてであるか否かを確認 する(ステップ S101)。最初の通信であるならば (ステップ SlOlZYes)、制御部 100 1は鍵スケジューリング 110を動作させ、拡大鍵を得る (ステップ S102)。
受信者用暗号通信装置 12との通信が初めてではない場合 (ステップ SlOlZNo) 又は、拡大鍵を生成し終えた場合、制御部 1001は、初期入力生成部 101によって 初期入力を生成する (ステップ S103)。その後、制御部 1001は、暗号化部 102を動 作させ、拡大鍵を用いて初期入力を拡大し、中間出力を得る (ステップ S 104)。次に 、制御部 1001は、中間出力拡大部 103に拡大鍵と中間出力との演算を行わせ、拡 大出力を得る (ステップ S105)。次に、制御部 1001は、連結部 104に拡大出力と中 間出力とを連結させ、鍵ストリームを生成させる (ステップ S 106)。
制御部 1001は、平文入力部 105を用いた送信者用暗号通信装置 10のユーザの 入力操作によって、暗号ィ匕の対象である平文を取得する (ステップ S107)。制御部 1 001は、取得した平文を暗号文計算部 106へ入力し、鍵ストリームと初期入力とに基 づいて暗号文を算出させる (ステップ S 108)。制御部 1001は、暗号文計算部 106が 算出した暗号文を暗号文送信部 107へ送り、受信者用暗号通信装置 12へ送信させ る。
[0075] 次に、受信者用暗号通信装置 12の動作の流れを説明する。
制御部 1201は、送信者用暗号通信装置 10から送られてきた暗号文を暗号文入力 部 125を用いて受信すると (ステップ S201)、送信者用暗号通信装置 10との通信が 初めてである力否かを確認する(ステップ S202)。最初の通信であるならば (ステップ S202ZYes)、制御部 1201は鍵スケジューリング 130を動作させ、拡大鍵を得る (ス テツプ S203)。
送信者用暗号通信装置 10との通信が初めてではない場合 (ステップ S202ZNo) 又は、拡大鍵を生成し終えた場合、制御部 1201は、初期入力読取部 121によって 暗号文から初期入力を抽出する (ステップ S204)。
その後、制御部 1201は、暗号ィ匕部 122を動作させ、拡大鍵を用いて初期入力を 拡大し、中間出力を得る (ステップ S205)。次に、制御部 1201は、中間出力拡大部 123に拡大鍵と中間出力との演算を行わせ、拡大出力を得る (ステップ S206)。次に 、制御部 1201は、連結部 124に拡大出力と中間出力とを連結させ、鍵ストリームを 生成させる(ステップ S207)。
制御部 1201は、暗号文を平文計算部 126へ入力し、鍵ストリームと初期入力とに 基づいて平文を算出させる (ステップ S208)。制御部 1201は、平文計算部 126が算 出した平文を平文出力部 127へ送り、画像表示装置や画像形成装置へ出力する。
[0076] 2回目以降の通信においては、既に拡大鍵が生成されているため、制御部 1001は 、鍵スケジューリング 110を動作させず (ステップ SlOlZNo)、初期入力生成部 101 による初期入力の生成動作を行う。受信者用暗号通信装置 12においても同様に、 制御部 1201は、鍵スケジューリング 130を動作させず (ステップ S202ZNO)、初期 入力読取部 121による初期入力の抽出を行う。
[0077] このように、本実施形態に力かる暗号通信システムによれば、鍵セットアップに要す る時間が短ぐ高速な暗号通信を行える。
[0078] 本実施形態に力かる暗号通信システムは、映画や音楽などのコンテンツを安全に 配信するシステムや、コンピュータサーバ上のデータを安全に運用するためのフアイ ル暗号ィ匕といった用途に適用できる。 [0079] なお、上記実施形態は、本発明の好適な実施の一例であり、本発明はこれに限定 されることはない。
例えば、上記実施形態においては、送信者用暗号通信装置と受信者用暗号通信 装置とがネットワークを介して接続されており、ネットワークを介して暗号文が伝送され る構成を例としたが、送信者用暗号通信装置において暗号文を情報記録媒体に記 録し、それを受信者用暗号通信装置において読み取ることで、送信者用暗号通信装 置から受信者用暗号通信装置へ暗号文を伝送しても良!、。
このように、本発明は様々な変形が可能である。
図面の簡単な説明
[0080] [図 1]本発明を好適に実施した第 1の実施形態にかかる暗号通信システムの構成を 示す図である。
[図 2]送信者用暗号通信装置の構成を示す図である。
[図 3]受信者用暗号通信装置の構成を示す図である。
[図 4]送信者用暗号通信装置の動作の流れを示すフローチャートである。
[図 5]受信者用暗号通信装置の動作の流れを示すフローチャートである。
符号の説明
[0081] 10 送信者用暗号通信装置
12 受信者用暗号通信装置
100 暗号化装置
101 初期入力生成部
102、 122 暗号ィ匕部
103、 123 中間出力拡大部
104、 124 連結部
105 平文入力部
106 暗号文計算部
107 暗号文送信部
110、 130 鍵スケジューリング装置
111、 131 スケジューリング用初期値生成部 112、 132 中間鍵生成部
113、 133 マスター鍵入力部
114、 134 中間鍵拡大部
115、 135 中間鍵設定部
120 復号装置
121 初期入力読取部
125 暗号文入力部
126 平文計算部
127 平文出力部
1001、 1201 制御部
1002、 1202 主記憶装置
1003、 1203 補助記憶装置
1004、 1204 通信制御装置

Claims

請求の範囲
[1] 初期入力値を生成する初期入力生成手段と、
前記初期入力値を暗号化して中間入力値を生成する暗号化手段と、
前記中間入力値を拡大して拡大出力値を生成する中間出力拡大手段と、 前記中間出力値と前記拡大出力値とを連結して鍵ストリームを生成する連結手段と 暗号化の対象である平文を取得する平文取得手段と、
前記鍵ストリームと前記初期入力値及び前記平文とから暗号文を生成する暗号文 生成手段とを有する暗号文生成装置。
[2] 前記暗号文を、ネットワークを介して他の装置へ送信する手段をさらに有することを 特徴とする請求項 1記載の暗号文生成装置。
[3] 前記暗号文を、可搬性を有する情報記録媒体に記録する手段をさらに有すること を特徴とする請求項 1記載の暗号文生成装置。
[4] マスター鍵を格納するマスター鍵格納手段と、
スケジューリング用初期入力値を生成する手段と、
前記スケジューリング用初期値と前記マスター鍵格納手段に格納されたマスター鍵 とから中間鍵を生成する中間鍵生成手段と、
前記中間鍵を拡大して拡大鍵を生成する中間鍵拡大手段と、
前記拡大鍵を、前記暗号化手段及び前記中間出力拡大手段の鍵とする拡大鍵設 定手段とを備えた鍵スケジューリング装置をさらに有することを特徴とする請求項 1か ら 3のいずれか 1項記載の暗号文生成装置。
[5] 前記初期入力生成手段は、以前に前記暗号化手段が動作した回数を記憶してお り、該回数を前記初期入力値とすることを特徴とする請求項 1から 4のいずれ力 1項記 載の暗号文生成装置。
[6] 前記初期入力生成手段は、前記暗号ィ匕手段が直前に出力した中間入力値を前記 初期入力値とすることを特徴とする請求項 1から 4のいずれか 1項記載の暗号文生成 装置。
[7] 前記初期入力生成手段は、前記暗号文生成手段が直前に生成した暗号文の一部 を前記初期入力値とすることを特徴とする請求項 1から 4のいずれか 1項記載の暗号 文生成装置。
[8] 暗号文を取得する暗号文取得手段と、
暗号文から初期入力値を抽出する初期入力読取手段と、
前記初期入力値を暗号化して中間出力値を生成する暗号化手段と、
前記中間出力値を拡大して拡大出力値を生成する中間出力拡大手段と、 前記中間出力値と前記拡大出力値とを連結して鍵ストリームを生成する連結手段と 前記鍵ストリームと前記初期入力値及び前記暗号文とから平文を生成する平文生 成手段とを有する平文復元装置。
[9] 前記暗号文を、ネットワークを介して他の装置から受信する手段をさらに有すること を特徴とする請求項 8記載の平文復元装置。
[10] 前記暗号文が記録された情報記録媒体を読み取る情報記録媒体読取装置をさら に有することを特徴とする請求項 8記載の平文復元装置。
[11] マスター鍵を格納するマスター鍵格納手段と、
スケジューリング用初期入力値を生成する手段と、
前記スケジューリング用初期値と前記マスター鍵格納手段に格納されたマスター鍵 とから中間鍵を生成する中間鍵生成手段と、
前記中間鍵を拡大して拡大鍵を生成する中間鍵拡大手段と、
前記拡大鍵を、前記暗号化手段及び前記中間出力拡大手段の鍵とする拡大鍵設 定手段とを備えた鍵スケジューリング装置をさらに有することを特徴とする請求項 8か ら 10のいずれか 1項記載の平文復元装置。
[12] 前記初期入力生成手段は、以前に前記暗号化手段が動作した回数を記憶してお り、該回数を前記初期入力値とすることを特徴とする請求項 8から 11のいずれか 1項 記載の平文復元装置。
[13] 前記初期入力生成手段は、前記暗号ィ匕手段が直前に出力した中間入力値を前記 初期入力値とすることを特徴とする請求項 8から 11のいずれか 1項記載の平文復元 装置。
[14] 前記初期入力生成手段は、前記暗号文生成手段が直前に生成した暗号文の一部 を前記初期入力値とすることを特徴とする請求項 8から 11のいずれか 1項記載の平 文復元装置。
[15] 送信装置と受信装置との間で共通鍵ストリーム暗号による暗号通信を行う暗号通信 システムであって、
前記送信装置は、
初期入力値を生成する初期入力生成手段と、
前記初期入力値を暗号化して第 1の中間入力値を生成する第 1の暗号化手段と、 前記第 1の中間入力値を拡大して第 1の拡大出力値を生成する第 1の中間出力拡 大手段と、
前記第 1の中間出力値と前記第 1の拡大出力値とを連結して第 1の鍵ストリームを 生成する第 1の連結手段と、
暗号化の対象である平文を取得する平文取得手段と、
前記第 1の鍵ストリームと前記初期入力値及び前記平文とから暗号文を生成する暗 号文生成手段と、
前記暗号文を、前記受信装置へ送信する暗号文送信手段とを有し、
前記受信装置は、
前記送信装置から送信された前記暗号文を受信する暗号文受信手段と、 前記暗号文から前記初期入力値を抽出する初期入力読取手段と、
前記初期入力値を暗号化して第 2の中間出力値を生成する第 2の暗号化手段と、 前記第 2の中間出力値を拡大して第 2の拡大出力値を生成する第 2の中間出力拡 大手段と、
前記第 2の中間出力値と前記第 2の拡大出力値とを連結して第 2の鍵ストリームを 生成する連結手段と、
前記第 2の鍵ストリームと前記初期入力値及び前記暗号文とから平文を生成する平 文生成手段とを有することを特徴とする暗号通信システム。
[16] 前記送信装置及び前記受信装置のそれぞれは、
マスター鍵を格納するマスター鍵格納手段と、 スケジューリング用初期入力値を生成する手段と、
前記スケジューリング用初期値と前記マスター鍵格納手段に格納されたマスター鍵 とから中間鍵を生成する中間鍵生成手段と、
前記中間鍵を拡大して拡大鍵を生成する中間鍵拡大手段とを備えた鍵スケジユー リング装置をさらに有し、
前記送信装置の鍵スケジューリング装置は、前記拡大鍵を、前記第 1の暗号化手 段及び前記第 1の中間出力拡大手段の鍵とする第 1の拡大鍵設定手段を備え、前 記受信装置の鍵スケジューリング装置は、前記拡大鍵を、前記第 2の暗号化手段及 び前記第 2の中間出力拡大手段の鍵とする第 2の拡大鍵設定手段を備えることを特 徴とする請求項 15記載の暗号通信システム。
[17] 前記初期入力生成手段は、以前に前記暗号化手段が動作した回数を記憶してお り、該回数を前記初期入力値とすることを特徴とする請求項 15又は 16記載の暗号通 信システム。
[18] 前記初期入力生成手段は、前記暗号ィ匕手段が直前に出力した中間入力値を前記 初期入力値とすることを特徴とする請求項 15又は 16記載の暗号通信システム。
[19] 前記初期入力生成手段は、前記暗号文生成手段が直前に生成した暗号文の一部 を前記初期入力値とすることを特徴とする請求項 15又は 16記載の暗号通信システ ム。
[20] 初期入力値を生成する初期入力生成工程と、
前記初期入力値を暗号化して中間入力値を生成する暗号ィ匕工程と、
前記中間入力値を拡大して拡大出力値を生成する中間出力拡大工程と、 前記中間出力値と前記拡大出力値とを連結して鍵ストリームを生成する連結工程と 暗号化の対象である平文を取得する平文取得工程と、
前記鍵ストリームと前記初期入力値及び前記平文とから暗号文を生成する暗号文 生成手工程とを有する暗号文生成方法。
[21] 前記暗号文生成工程の後段に、前記暗号文を、ネットワークを介して他の装置へ 送信する暗号文送信工程をさらに有することを特徴とする請求項 20記載の暗号文生 成方法。
[22] スケジューリング用初期入力値を生成する工程と、
前記スケジューリング用初期値とマスター鍵格納手段に格納されているマスター鍵 とから中間鍵を生成する中間鍵生成工程と、
前記中間鍵を拡大して拡大鍵を生成する中間鍵拡大工程と、
前記拡大鍵を、前記暗号化工程及び前記中間出力拡大工程における鍵とする拡 大鍵設定手段とを備えた鍵スケジューリング処理を、前記初期入力生成工程から前 記暗号文精製工程までの一連の処理とは別個に行うことを特徴とする請求項 20又は
21記載の暗号文生成方法。
[23] 前記初期入力生成工程においては、以前に前記暗号ィ匕工程を実行した回数を前 記初期入力値とすることを特徴とする請求項 20から 22のいずれか 1項記載の暗号文 生成方法。
[24] 前記初期入力生成工程においては、直前に実行した前記暗号ィ匕工程で出力した 中間入力値を前記初期入力値とすることを特徴とする請求項 20から 22のいずれ力 1 項記載の暗号文生成方法。
[25] 前記初期入力生成工程においては、直前に実行した前記暗号文生成工程で生成 した暗号文の一部を前記初期入力値とすることを特徴とする請求項 20から 22のいず れか 1項記載の暗号文生成方法。
[26] 暗号文を取得する暗号文取得工程と、
前記暗号文から初期入力値を抽出する初期入力読取工程と、
前記初期入力値を暗号化して中間出力値を生成する暗号ィ匕工程と、
前記中間出力値を拡大して拡大出力値を生成する中間出力拡大工程と、 前記中間出力値と前記拡大出力値とを連結して鍵ストリームを生成する連結工程と 前記鍵ストリームと前記初期入力値及び前記暗号文とから平文を生成する平文生 成工程とを有する平文復元方法。
[27] 前記暗号文取得工程にぉ 、ては、前記暗号文を、ネットワークを介して他の装置か ら受信することを特徴とする請求項 26記載の平文復元方法。
[28] 前記暗号文取得工程においては、前記暗号文が記録された情報記録媒体を読み 取ることを特徴とする請求項 26記載の平文復元方法。
[29] スケジューリング用初期入力値を生成する工程と、
前記スケジューリング用初期値とマスター鍵格納手段に格納されているマスター鍵 とから中間鍵を生成する中間鍵生成工程と、
前記中間鍵を拡大して拡大鍵を生成する中間鍵拡大工程と、
前記拡大鍵を、前記暗号化工程及び前記中間出力拡大工程における鍵とする拡 大鍵設定工程とを備えた鍵スケジューリング処理を、前記暗号文取得工程から前記 平文生成工程までの一連の処理と別個に行うことを特徴とする請求項 26から 28の ヽ ずれか 1項記載の平文復元方法。
[30] 前記初期入力生成工程においては、以前に前記暗号ィ匕手段が動作した回数を前 記初期入力値とすることを特徴とする請求項 26から 29のいずれか 1項記載の平文復 元方法。
[31] 前記初期入力生成工程においては、直前に実行した前記暗号ィ匕工程で出力した 中間入力値を前記初期入力値とすることを特徴とする請求項 26から 29のいずれ力 1 項記載の平文復元方法。
[32] 前記初期入力生成工程においては、直前に実行した前記暗号文生成工程で生成 した暗号文の一部を前記初期入力値とすることを特徴とする請求項 26から 29のいず れか 1項記載の平文復元方法。
[33] 実質的なコンピュータに、
初期入力値を生成する初期入力生成工程と、
前記初期入力値を暗号化して中間入力値を生成する暗号ィ匕工程と、
前記中間入力値を拡大して拡大出力値を生成する中間出力拡大工程と、 前記中間出力値と前記拡大出力値とを連結して鍵ストリームを生成する連結工程と 暗号化の対象である平文を取得する平文取得工程と、
前記鍵ストリームと前記初期入力値及び前記平文とから暗号文を生成する暗号文 生成手工程とを実行させることを特徴とする暗号文生成方法のプログラム。
[34] ネットワークを介して前記暗号文を他の装置へ送信する暗号文送信工程を前記暗 号文生成工程の後段で前記実質的なコンピュータにさらに実行させることを特徴とす る請求項 33記載の暗号文生成方法のプログラム。
[35] 前記実質的なコンピュータに、
スケジューリング用初期入力値を生成する工程と、
前記スケジューリング用初期値とマスター鍵格納手段に格納されているマスター鍵 とから中間鍵を生成する中間鍵生成工程と、
前記中間鍵を拡大して拡大鍵を生成する中間鍵拡大工程と、
前記拡大鍵を、前記暗号化工程及び前記中間出力拡大工程における鍵とする拡 大鍵設定手段とを備えた鍵スケジューリング処理を、前記初期入力生成工程から前 記暗号文生成工程までの一連の処理とは別個に行わせることを特徴とする請求項 3 3又は 34記載の暗号文生成方法のプログラム。
[36] 前記初期入力生成工程においては、以前に前記暗号ィ匕工程を実行した回数を前 記初期入力値とする処理を、前記実質的なコンピュータに実行させることを特徴とす る請求項 33から 35のいずれか 1項記載の暗号文生成方法のプログラム。
[37] 前記初期入力生成工程においては、直前に実行した前記暗号ィ匕工程で出力した 中間入力値を前記初期入力値とする処理を前記実質的なコンピュータに実行させる ことを特徴とする請求項 33から 35のいずれか 1項記載の暗号文生成方法のプロダラ ム。
[38] 前記初期入力生成工程においては、直前に実行した前記暗号文生成工程で生成 した暗号文の一部を前記初期入力値とする処理を前記実質的なコンピュータに実行 させることを特徴とする請求項 33から 35のいずれか 1項記載の暗号文生成方法のプ ログラム。
[39] 実質的なコンピュータに、
暗号文を取得する暗号文取得工程と、
前記暗号文から初期入力値を抽出する初期入力読取工程と、
前記初期入力値を暗号化して中間出力値を生成する暗号ィ匕工程と、
前記中間出力値を拡大して拡大出力値を生成する中間出力拡大工程と、 前記中間出力値と前記拡大出力値とを連結して鍵ストリームを生成する連結工程と 前記鍵ストリームと前記初期入力値及び前記暗号文とから平文を生成する平文生 成工程とを実行させることを特徴とする平文復元方法のプログラム。
[40] 前記暗号文取得工程においては、ネットワークを介して他の装置から前記暗号文を 受信する処理を前記実質的なコンピュータに行わせることを特徴とする請求項 39記 載の平文復元方法のプログラム。
[41] 前記暗号文取得工程においては、前記暗号文が記録された情報記録媒体を読み 取る処理を前記実質的なコンピュータに行わせることを特徴とする請求項 39記載の 平文復元方法のプログラム。
[42] 前記実質的なコンピュータに、
スケジューリング用初期入力値を生成する工程と、
前記スケジューリング用初期値とマスター鍵格納手段に格納されているマスター鍵 とから中間鍵を生成する中間鍵生成工程と、
前記中間鍵を拡大して拡大鍵を生成する中間鍵拡大工程と、
前記拡大鍵を、前記暗号化工程及び前記中間出力拡大工程における鍵とする拡 大鍵設定工程とを備えた鍵スケジューリング処理を、前記暗号文取得工程から前記 平文生成工程までの一連の処理と別個に行わせることを特徴とする請求項 39から 4 2の 、ずれか 1項記載の平文復元方法のプログラム。
[43] 前記初期入力生成工程においては、以前に前記暗号ィ匕手段が動作した回数を前 記初期入力値とする処理を前記実質的なコンピュータに行わせることを特徴とする請 求項 39から 42のいずれ力 1項記載の平文復元方法のプログラム。
[44] 前記初期入力生成工程においては、直前に実行した前記暗号ィ匕工程で出力した 中間入力値を前記初期入力値とする処理を前記実質的なコンピュータに行わせるこ とを特徴とする請求項 39から 42のいずれか 1項記載の平文復元方法のプログラム。
[45] 前記初期入力生成工程においては、直前に実行した前記暗号文生成工程で生成 した暗号文の一部を前記初期入力値とする処理を前記実質的なコンピュータに実行 させることを特徴とする請求項 39から 42のいずれか 1項記載の平文復元方法のプロ グラム。
[46] 請求項 33から 38のいずれか 1項記載の暗号文生成方法のプログラムが記録され たコンピュータ可読情報記録媒体。
[47] 請求項 39から 45のレ、ずれか 1項記載の平文復元方法のプログラムが記録されたコ ンピュータ可読情報記録媒体。
PCT/JP2005/009473 2004-08-26 2005-05-24 暗号文生成装置、平文復元装置 Ceased WO2006022058A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004-246255 2004-08-26
JP2004246255 2004-08-26

Publications (1)

Publication Number Publication Date
WO2006022058A1 true WO2006022058A1 (ja) 2006-03-02

Family

ID=35967279

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/009473 Ceased WO2006022058A1 (ja) 2004-08-26 2005-05-24 暗号文生成装置、平文復元装置

Country Status (1)

Country Link
WO (1) WO2006022058A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008294810A (ja) * 2007-05-25 2008-12-04 Renesas Technology Corp 暗号/復号装置
US11838402B2 (en) 2019-03-13 2023-12-05 The Research Foundation For The State University Of New York Ultra low power core for lightweight encryption
WO2026053654A1 (ja) * 2024-09-09 2026-03-12 Kddi株式会社 演算装置、端末装置、ネットワーク、演算方法及びプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5515307A (en) * 1994-08-04 1996-05-07 Bell Communications Research, Inc. Pseudo-random generator
JP2825205B2 (ja) * 1989-07-20 1998-11-18 日本電信電話株式会社 暗号装置
JP2000502822A (ja) * 1996-08-16 2000-03-07 ベル コミュニケーションズ リサーチ,インコーポレイテッド 高速で安全な暗号化のための改良された暗号的に安全な疑似ランダム・ビット・ジェネレータ
JP2001007800A (ja) * 1999-06-22 2001-01-12 Hitachi Ltd 暗号化装置および方法
JP2002215018A (ja) * 2001-01-22 2002-07-31 Nippon Telegr & Teleph Corp <Ntt> カオス写像を用いた暗号化方法と復号化方法、それらの方法を使用した暗号器と復号器、及びそれらの方法を実施するプログラムとその記録媒体

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2825205B2 (ja) * 1989-07-20 1998-11-18 日本電信電話株式会社 暗号装置
US5515307A (en) * 1994-08-04 1996-05-07 Bell Communications Research, Inc. Pseudo-random generator
JP2000502822A (ja) * 1996-08-16 2000-03-07 ベル コミュニケーションズ リサーチ,インコーポレイテッド 高速で安全な暗号化のための改良された暗号的に安全な疑似ランダム・ビット・ジェネレータ
JP2001007800A (ja) * 1999-06-22 2001-01-12 Hitachi Ltd 暗号化装置および方法
JP2002215018A (ja) * 2001-01-22 2002-07-31 Nippon Telegr & Teleph Corp <Ntt> カオス写像を用いた暗号化方法と復号化方法、それらの方法を使用した暗号器と復号器、及びそれらの方法を実施するプログラムとその記録媒体

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008294810A (ja) * 2007-05-25 2008-12-04 Renesas Technology Corp 暗号/復号装置
US11838402B2 (en) 2019-03-13 2023-12-05 The Research Foundation For The State University Of New York Ultra low power core for lightweight encryption
WO2026053654A1 (ja) * 2024-09-09 2026-03-12 Kddi株式会社 演算装置、端末装置、ネットワーク、演算方法及びプログラム

Similar Documents

Publication Publication Date Title
US7110545B2 (en) Method and apparatus for symmetric-key encryption
JP5402632B2 (ja) 共通鍵ブロック暗号化装置、共通鍵ブロック暗号化方法及びプログラム
US8259934B2 (en) Methods and devices for a chained encryption mode
US7715553B2 (en) Encrypting a plaintext message with authentication
JP6035459B2 (ja) 暗号化装置、復号化装置、及びプログラム
JP2020513117A (ja) カウンタベースの暗号システムにおける改良型認証付き暗号化のための方法及びシステム
Reyad et al. Key-based enhancement of data encryption standard for text security
WO2015015702A1 (ja) 認証暗号装置、認証暗号方法および認証暗号用プログラム
WO2011105367A1 (ja) ブロック暗号化装置、ブロック復号装置、ブロック暗号化方法、ブロック復号方法及びプログラム
US12388623B2 (en) Method for processing encrypted data
More et al. Implementation of AES with time complexity measurement for various input
US8891761B2 (en) Block encryption device, decryption device, encrypting method, decrypting method and program
CN109714154B (zh) 一种代码体积困难白盒安全模型下的白盒密码算法的实现方法
KR20080072345A (ko) 암호화 장치 및 그 방법
Lee et al. Design and evaluation of a block encryption algorithm using dynamic-key mechanism
WO2006022058A1 (ja) 暗号文生成装置、平文復元装置
JP2015082077A (ja) 暗号化装置、制御方法、及びプログラム
JP5293612B2 (ja) 暗号化装置、復号装置、暗号化方法、復号方法およびプログラム
Samalkha Efficient Implementation of AES
Khaleel et al. A Comparative Performance Analysis of Modified DÓ § mÓ § si’ s Cryptosystem and Data Encryption Standard
Salih et al. Dynamic Stream Ciphering Algorithm
Patil et al. A Survey on an Enhanced Cryptographic Technique for Messages Encryption and Decryption
JP2005215559A (ja) 暗号システム
Devi et al. A Research: Image Encryption Using Chaotic and Logistic Map and Pixel Hobbling
Block et al. PUC

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DPEN Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed from 20040101)
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP