JP5706751B2 - Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program - Google Patents
Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program Download PDFInfo
- Publication number
- JP5706751B2 JP5706751B2 JP2011102086A JP2011102086A JP5706751B2 JP 5706751 B2 JP5706751 B2 JP 5706751B2 JP 2011102086 A JP2011102086 A JP 2011102086A JP 2011102086 A JP2011102086 A JP 2011102086A JP 5706751 B2 JP5706751 B2 JP 5706751B2
- Authority
- JP
- Japan
- Prior art keywords
- initial value
- stream cipher
- ciphertext
- parallel processing
- stream
- 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.)
- Active
Links
Images
Description
本発明は、n個のストリーム暗号の暗号化器あるいはストリーム暗号の復号化器の処理を含む、すべての処理を並列して実行するストリーム暗号の暗号化装置、ストリーム暗号の復号化装置、ストリーム暗号の暗号化方法、ストリーム暗号の復号化方法およびプログラムに関する。 The present invention relates to a stream cipher encryption apparatus, a stream cipher decryption apparatus, a stream cipher that execute all processes in parallel, including the processes of n stream cipher encryptors or stream cipher decryptors. The present invention relates to an encryption method, a stream encryption decryption method and a program.
近年、コンピュータを利用した様々なサービスが提供されている。多くのサービスに置いては、通信の秘匿を実現するため、暗号が利用される。暗号方式として最も一般的なものは、1つの鍵で暗号化・復号化を行う共通鍵暗号方式であるが、共通鍵暗号方式は、大きくブロック暗号方式とストリーム暗号方式の2つに分けられる。前者は、最も一般的に用いられている方式であるが、後者の方が処理速度に優れるため、近年注目を集めつつある。 In recent years, various services using computers have been provided. In many services, encryption is used to conceal communication. The most common encryption method is a common key encryption method that performs encryption / decryption with a single key, but the common key encryption method is roughly divided into a block encryption method and a stream encryption method. The former is the method that is most commonly used, but the latter has been attracting attention in recent years because it is superior in processing speed.
ストリーム暗号は、初期値を初期化処理により攪拌して、初期の内部状態を生成し、生成した状態を逐次更新しながら、暗号化の各系列を生成する。従来のストリーム暗号では、初期化ののち、さらに鍵系列生成処理を行っていたために、処理を高速化するための技術が開示されている(例えば、特許文献1参照。)。 In the stream cipher, initial values are stirred by an initialization process, an initial internal state is generated, and each sequence of encryption is generated while sequentially updating the generated state. In the conventional stream cipher, since key sequence generation processing is further performed after initialization, a technique for speeding up the processing is disclosed (for example, see Patent Document 1).
特許文献1に記載の技術は、複数の鍵系列生成部が、平文データが入力される前に、一つの秘密鍵と複数のIV(Initial Value)とを用いて複数の中間鍵を生成し、中間鍵保存メモリが、生成された複数の中間鍵を保存し、更に、複数の鍵系列生成部は、平文データが入力された際に、中間鍵保存メモリに保存されている複数の中間鍵のそれぞれを入力し、入力した中間鍵からそれぞれ並列に鍵系列を生成し、XOR部は、複数の鍵系列生成部により生成された複数の鍵系列を入力し、入力した複数の鍵系列を用いて、平文データの暗号化を行うものである。 In the technique described in Patent Document 1, a plurality of key sequence generation units generate a plurality of intermediate keys using one secret key and a plurality of IVs (Initial Value) before plaintext data is input, The intermediate key storage memory stores a plurality of generated intermediate keys, and the plurality of key sequence generation units, when plaintext data is input, stores a plurality of intermediate keys stored in the intermediate key storage memory. Each is input, and a key sequence is generated in parallel from each input intermediate key. The XOR unit inputs a plurality of key sequences generated by a plurality of key sequence generation units, and uses the input plurality of key sequences. The plaintext data is encrypted.
上記の技術は、鍵系列の生成までの処理を並列に処理しているため、従来のものよりも処理負荷の軽減が期待できるが、鍵系列と平文との排他的論理和演算処理が並列処理化されていないため、十分に処理負荷を軽減できるものではなかった。 In the above technology, processing up to the generation of the key sequence is processed in parallel, so the processing load can be expected to be reduced compared to the conventional one, but the exclusive OR operation of the key sequence and plaintext is processed in parallel. Since it was not realized, the processing load could not be reduced sufficiently.
そこで、本発明は、上述の課題に鑑みてなされたものであり、n個のストリーム暗号の暗号化器あるいはストリーム暗号の復号化器の処理を含む、すべての処理を並列して実行するストリーム暗号の暗号化装置、ストリーム暗号の復号化装置、ストリーム暗号の暗号化方法、ストリーム暗号の復号化方法およびプログラムを提供することを目的とする。 Therefore, the present invention has been made in view of the above-described problems, and stream ciphers that execute all processes in parallel, including the processes of n stream cipher encryptors or stream cipher decryptors. It is an object to provide an encryption apparatus, a stream encryption decryption apparatus, a stream encryption encryption method, a stream encryption decryption method, and a program.
本発明は、上記の課題を解決するために、以下の事項を提案している。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。 The present invention proposes the following matters in order to solve the above problems. In addition, in order to make an understanding easy, although the code | symbol corresponding to embodiment of this invention is attached | subjected and demonstrated, it is not limited to this.
(1)本発明は、n個のストリーム暗号の暗号化器(例えば、図1のストリーム暗号器200a、200b、200c、・・・、200x、200y、200zに相当)と、該n個のストリーム暗号の暗号化器を制御する並列処理暗号モジュール(例えば、図1の並列処理暗号モジュール100に相当)と、前記n個のストリーム暗号の暗号化器から出力されるn個の暗号文を結合して最終的な暗号文を出力する暗号文結合モジュール(例えば、図1の暗号文結合モジュール300に相当)と、を備え、前記並列処理暗号モジュールが、L−nビットの初期値と平文と秘密鍵とを入力する入力手段(例えば、図2の入力部110に相当)と、nビットの初期値を生成し、該生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する初期値生成手段(例えば、図2の初期値生成部120に相当)と、前記入力した平文をn個に分割する分割手段(例えば、図2の分割部130に相当)と、前記初期値生成手段が生成したLビットの初期値を前記n個のストリーム暗号の暗号化器に出力するとともに、前記秘密鍵および該1/nに分割した平文を前記n個のストリーム暗号の暗号化器に出力する出力手段(例えば、図2の出力部140に相当)と、を備えたことを特徴とするストリーム暗号の暗号化装置を提案している。
(1) The present invention includes n stream cipher encryptors (for example, equivalent to the
この発明によれば、並列処理暗号モジュールの入力手段は、L−nビットの初期値と平文と秘密鍵とを入力する。初期値生成手段は、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する。分割手段は、入力した平文をn個に分割する。出力手段は、初期値生成手段が生成したLビットの初期値をn個のストリーム暗号の暗号化器に出力するとともに、秘密鍵および1/nに分割した平文をn個のストリーム暗号の暗号化器に出力する。したがって、平文を1/nに分割し、n個のストリーム暗号の暗号化器に分割した平文と初期値生成手段が生成した各ストリーム暗号の暗号化器固有の初期値を与えることにより、暗号文の生成までの一連の処理を並列に行うことができる。 According to the present invention, the input means of the parallel processing cryptographic module inputs the initial value of L− n bits, the plaintext, and the secret key. The initial value generating means generates an n-bit initial value and combines the generated n-bit initial value with the input L- n bit initial value to generate an L- bit initial value. The dividing means divides the input plaintext into n pieces. The output means outputs the L- bit initial value generated by the initial value generation means to the n stream cipher encryptors, and encrypts the n-stream cipher of the secret key and the plaintext divided into 1 / n. Output to the instrument. Therefore, the plaintext is divided into 1 / n, and the plaintext divided into n stream cipher encryptors and the initial value unique to the encryptor of each stream cipher generated by the initial value generating means are given, and the ciphertext A series of processes up to generation can be performed in parallel.
(2)本発明は、(1)のストリーム暗号の暗号化装置について、前記n個のストリーム暗号の暗号化器が、前記並列処理暗号モジュールからLビットの初期値と秘密鍵とを入力し、内部状態の初期化処理を行う初期化処理手段(例えば、図3の初期化処理部210に相当)と、内部状態を利用して鍵系列を生成する鍵系列生成手段(例えば、図3の鍵系列生成部220に相当)と、該生成した鍵系列と入力した平文との排他的論理和演算を行い、暗号文を生成する暗号文生成手段(例えば、図3の暗号文生成部230に相当)と、を備えたことを特徴とするストリーム暗号の暗号化装置を提案している。
(2) In the stream cipher encryption device according to (1), the n stream cipher encryptors input an L-bit initial value and a secret key from the parallel processing cipher module , Initialization processing means (for example, equivalent to the
この発明によれば、n個のストリーム暗号の暗号化器の初期化処理手段は、並列処理暗号モジュールからLビットの初期値と秘密鍵とを入力し、内部状態の初期化処理を行う。鍵系列生成手段は、内部状態を利用して鍵系列を生成する。暗号文生成手段は、生成した鍵系列と入力した平文との排他的論理和演算を行い、暗号文を生成する。したがって、初期化処理、鍵系列生成処理、暗号文生成処理を各ストリーム暗号の暗号化器に並列に実行させることができる。 According to the present invention, the initialization processing means of the n stream cipher encryptors inputs the L-bit initial value and the secret key from the parallel processing cryptographic module , and performs the internal state initialization processing. The key sequence generation means generates a key sequence using the internal state. The ciphertext generation unit performs an exclusive OR operation between the generated key sequence and the input plaintext to generate a ciphertext. Accordingly, initialization processing, key sequence generation processing, and ciphertext generation processing can be executed in parallel by each stream cipher encryptor.
(3)本発明は、(1)のストリーム暗号の暗号化装置について、前記並列処理暗号モジュールが、入力した秘密鍵の下位の任意のビットを生成し、異なるn個の秘密鍵を生成する秘密鍵生成手段(例えば、図2の秘密鍵生成部160に相当)と、該生成した秘密鍵をn個のストリーム暗号の暗号化器に1つずつ配布する秘密鍵配布手段(例えば、図2の配布部170に相当)と、を備えたことを特徴とするストリーム暗号の暗号化装置を提案している。
(3) The present invention relates to the stream cipher encryption device according to (1), wherein the parallel processing cryptographic module generates an arbitrary lower bit of the input secret key and generates n different secret keys. Key generation means (for example, equivalent to the secret
この発明によれば、並列処理暗号モジュールの秘密鍵生成手段は、入力した秘密鍵の下位の任意のビットを生成し、異なるn個の秘密鍵を生成する。秘密鍵配布手段は、生成した秘密鍵をn個のストリーム暗号の暗号化器に1つずつ配布する。したがって、各ストリーム暗号の暗号化器に異なる秘密鍵を配布することにより、安全性を向上させることができる。 According to this invention, the secret key generating means of the parallel processing cryptographic module generates an arbitrary lower bit of the input secret key and generates n different secret keys. The secret key distribution means distributes the generated secret keys one by one to n stream cipher encryptors. Therefore, the security can be improved by distributing different secret keys to the encryptors of the stream ciphers.
(4)本発明は、(1)のストリーム暗号の暗号化装置について、前記暗号文結合モジュールが、ヘッダ情報を生成するヘッダ情報生成手段(例えば、図2のヘッダ情報生成部150に相当)と、前記n個のストリーム暗号の暗号化器が、暗号化処理を行った暗号文に該生成したヘッダ情報を付して前記暗号文結合モジュールに出力することを特徴とするストリーム暗号の暗号化装置を提案している。
(4) According to the present invention, in the stream cipher encryption device of (1), the ciphertext combining module generates header information generating means (for example, equivalent to the header
この発明によれば、暗号文結合モジュールのヘッダ情報生成手段は、ヘッダ情報を生成する。そして、n個のストリーム暗号の暗号化器が、暗号化処理を行った暗号文に生成したヘッダ情報を付して前記暗号文結合モジュールに出力する。これにより、暗号文を復号する際に、必要な情報を提供することができる。 According to this invention, the header information generating means of the ciphertext combining module generates header information. Then, n stream cipher encryptors attach the generated header information to the encrypted ciphertext and output it to the ciphertext combining module. Thus, necessary information can be provided when decrypting the ciphertext.
(5)本発明は、(3)のストリーム暗号の暗号化装置について、前記ヘッダ情報が、データの切れ目を認識するためのデリミタ、暗号文長、初期値、使用したストリーム暗号モジュールの番号を含むことを特徴とするストリーム暗号の暗号化装置を提案している。 (5) The present invention relates to the stream cipher encryption device of ( 3 ), wherein the header information includes a delimiter for recognizing a data break, a ciphertext length, an initial value, and a number of a used stream cipher module. A stream cipher encryption device characterized by this is proposed.
この発明によれば、ヘッダ情報が、データの切れ目を認識するためのデリミタ、暗号文長、初期値、使用したストリーム暗号モジュールの番号を含む。これにより、暗号文を復号する際に、暗号文の境目を確認できるとともに、初期値を生成するための情報を得ることができる。 According to the present invention, the header information includes a delimiter for recognizing data breaks, a ciphertext length, an initial value, and a number of a used stream cipher module. Thereby, when the ciphertext is decrypted, the boundary of the ciphertext can be confirmed, and information for generating the initial value can be obtained.
(6)本発明は、(4)または(5)のストリーム暗号の暗号装置により暗号化された暗号文を復号するストリーム暗号の復号化装置であって、n個のストリーム暗号の復号化器(例えば、図6のストリーム復号器500a、500b、500c、・・・、500x、500y、500zに相当)と、該n個のストリーム暗号の復号化器を制御する並列処理復号モジュール(例えば、図6の並列処理復号モジュール400に相当)と、前記n個のストリーム暗号の復号化器から出力されるn個の平文を結合して最終的な平文を出力する平文結合モジュール(例えば、図6の平文結合モジュール600に相当)と、を備え、前記並列処理復号モジュールが、L−nビットの初期値と暗号文と秘密鍵とを入力する入力手段(例えば、図7の入力部410に相当)と、該入力した暗号文からヘッダ情報を分離するヘッダ情報分離手段(例えば、図7のヘッダ情報分離部420に相当)と、該分離したヘッダ情報に基づいて、nビットの初期値を生成し、該生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する初期値生成手段(例えば、図7の初期値生成部430に相当)と、前記入力したヘッダ情報に基づいて、暗号文をn個に分割する分割手段(例えば、図7の分割部440に相当)と、前記初期値生成手段が生成したLビットの初期値を前記n個のストリーム暗号の復号化器に出力するとともに、前記秘密鍵および該1/nに分割した暗号文を前記n個のストリーム暗号の復号化器に出力する出力手段(例えば、図7の出力部450に相当)と、を備えたことを特徴とするストリーム暗号の復号化装置を提案している。
(6) The present invention is a stream cipher decrypting device for decrypting ciphertext encrypted by the stream cipher encrypting device according to (4) or (5) , wherein n stream cipher decryptors ( For example, the parallel processing decryption module (for example, FIG. 6) that controls the
この発明によれば、並列処理復号モジュールの入力手段は、L−nビットの初期値と暗号文と秘密鍵とを入力する。ヘッダ情報分離手段は、入力した暗号文からヘッダ情報を分離する。初期値生成手段は、分離したヘッダ情報に基づいて、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する。分割手段は、入力したヘッダ情報に基づいて、暗号文をn個に分割する。出力手段は、初期値生成手段が生成したLビットの初期値をn個のストリーム暗号の復号化器に出力するとともに、秘密鍵および該1/nに分割した暗号文をn個のストリーム暗号の復号化器に出力する。したがって、暗号文を1/nに分割し、n個のストリーム暗号の暗号化器に分割した暗号文とヘッダ情報に基づいて初期値生成手段が生成した各ストリーム暗号の暗号化器固有の初期値を与えることにより、平文の復号までの一連の処理を並列に行うことができる。 According to this invention, the input means of the parallel processing decryption module inputs the initial value of L− n bits, the ciphertext, and the secret key. The header information separating unit separates the header information from the input ciphertext. The initial value generation means generates an n-bit initial value based on the separated header information, and combines the generated n-bit initial value and the input L− n-bit initial value to generate an L- bit initial value. Is generated. The dividing means divides the ciphertext into n pieces based on the input header information. The output means outputs the initial value of the L bit generated by the initial value generation means to the n stream cipher decryptors, and also outputs the secret key and the ciphertext divided into 1 / n of the n stream ciphers. Output to the decoder. Therefore, the ciphertext is divided into 1 / n, and the initial value unique to the encryptor of each stream cipher generated by the initial value generating means based on the ciphertext and header information divided into n stream cipher encryptors , It is possible to perform a series of processes up to decryption of plaintext in parallel.
(7)本発明は、(6)のストリーム暗号の暗号装置について、前記n個のストリーム暗号の復号化器が、前記並列処理復号モジュールからLビットの初期値と秘密鍵とを入力し、内部状態の初期化処理を行う初期化処理手段(例えば、図8の初期化処理部510に相当)と、内部状態を利用して鍵系列を生成する鍵系列生成手段(例えば、図8の鍵系列生成部520に相当)と、該生成した鍵系列と入力した暗号文との排他的論理和演算を行い、平文を生成する平文生成手段(例えば、図8の平文生成部530に相当)と、を備えたことを特徴とするストリーム暗号の復号化装置を提案している。
(7) In the stream cipher encryption apparatus according to (6), the n stream cipher decoders receive an L-bit initial value and a secret key from the parallel processing decryption module , and Initialization processing means for performing state initialization processing (for example, equivalent to the
この発明によれば、n個のストリーム暗号の復号化器の初期化処理手段は、初期値と秘密鍵とを入力し、内部状態の初期化処理を行う。鍵系列生成手段は、内部状態を利用して鍵系列を生成する。平文生成手段は、生成した鍵系列と入力した暗号文との排他的論理和演算を行い、平文を生成する。したがって、初期化処理、鍵系列生成処理、平文生成処理を各ストリーム暗号の復号化器に並列に実行させることができる。 According to the present invention, the initialization processing means of the n number of stream cipher decoders receives the initial value and the secret key, and performs the initialization process of the internal state. The key sequence generation means generates a key sequence using the internal state. The plaintext generation means performs an exclusive OR operation between the generated key sequence and the input ciphertext to generate plaintext. Accordingly, initialization processing, key sequence generation processing, and plaintext generation processing can be executed in parallel by each stream cipher decryptor.
(8)本発明は、(6)のストリーム暗号の暗号装置について、前記並列処理復号モジュールが、入力した秘密鍵の下位の任意のビットを生成し、異なるn個の秘密鍵を生成する秘密鍵生成手段(例えば、図7の秘密鍵生成部460に相当)と、該生成した秘密鍵をn個のストリーム暗号の復号化器に1つずつ配布する秘密鍵配布手段(例えば、図7の配布部470に相当)と、を備えたことを特徴とするストリーム暗号の復号化装置を提案している。
(8) According to the present invention, in the stream cipher encryption device according to (6), the parallel processing decryption module generates a lower-order arbitrary bit of the input secret key and generates n different secret keys. Generation means (for example, equivalent to the secret
この発明によれば、並列処理復号モジュールの秘密鍵生成手段は、入力した秘密鍵の下位の任意のビットを生成し、異なるn個の秘密鍵を生成する。秘密鍵配布手段は、生成した秘密鍵をn個のストリーム暗号の復号化器に1つずつ配布する。したがって、各ストリーム暗号の復号化器に異なる秘密鍵を配布することにより、安全性を向上させることができる。 According to this invention, the secret key generation means of the parallel processing decryption module generates an arbitrary lower bit of the input secret key and generates n different secret keys. The secret key distribution means distributes the generated secret keys one by one to n stream cipher decryptors. Therefore, the security can be improved by distributing different secret keys to the decoders of the respective stream ciphers.
(9)本発明は、n個のストリーム暗号の暗号化器と、該n個のストリーム暗号の暗号化器を制御する並列処理復号モジュールと、前記n個のストリーム暗号の暗号化器から出力されるn個の暗号文を結合して最終的な暗号文を出力する暗号文結合モジュールと、を備えたストリーム暗号の暗号化装置におけるストリーム暗号の暗号化方法であって、前記並列処理復号モジュールが、L−nビットの初期値と平文と秘密鍵とを入力する第1のステップ(例えば、図5のステップS101に相当)と、前記並列処理復号モジュールが、nビットの初期値を生成し、該生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する第2のステップ(例えば、図5のステップS102に相当)と、前記並列処理復号モジュールが、前記入力した平文をn個に分割する第3のステップ(例えば、図5のステップS103に相当)と、前記並列処理復号モジュールが、前記第2のステップにおいて生成したLビットの初期値を前記n個のストリーム暗号の暗号化器に出力するとともに、前記秘密鍵および該1/nに分割した平文を前記n個のストリーム暗号の暗号化器に出力する第4のステップ(例えば、図5のステップS104に相当)と、を備えたことを特徴とするストリーム暗号の暗号化方法を提案している。 (9) The present invention outputs n stream cipher encryptors, a parallel processing decryption module that controls the n stream cipher encryptors, and the n stream cipher encryptors. A ciphertext combining module that combines n ciphertexts to output a final ciphertext, and a stream cipher encryption method in a stream cipher encryption device, the parallel processing decryption module comprising: A first step (for example, corresponding to step S101 in FIG. 5) of inputting an initial value of L− n bits, a plaintext, and a secret key, and the parallel processing decoding module generates an initial value of n bits, a second step of generating an initial value of L bits by combining the initial value of L -n-bit input as an initial value of n bits thus generated (for example, corresponding to step S102 of FIG. 5), the parallel Management decryption module, and a third step of dividing the plaintext and the input into n (for example, corresponding to step S103 of FIG. 5), the parallel processing decoder module, the L bits generated in the second step A fourth step (for example, outputting the initial value to the n stream cipher encryptors and outputting the secret key and the plaintext divided into 1 / n to the n stream cipher encryptors (for example, , Which corresponds to step S104 in FIG. 5).
この発明によれば、並列処理復号モジュールが、L−nビットの初期値と平文と秘密鍵とを入力し、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する。また、入力した平文をn個に分割し、第2のステップにおいて生成したLビットの初期値をn個のストリーム暗号の暗号化器に出力するとともに、秘密鍵および1/nに分割した平文をn個のストリーム暗号の暗号化器に出力する。したがって、平文を1/nに分割し、n個のストリーム暗号の暗号化器に分割した平文と初期値生成手段が生成した各ストリーム暗号の暗号化器固有の初期値を与えることにより、暗号文の生成までの一連の処理を並列に行うことができる。 According to the present invention, the parallel processing decryption module inputs an L- n-bit initial value, a plaintext, and a secret key, generates an n-bit initial value, and generates the generated n-bit initial value and the input L − An n-bit initial value is combined to generate an L- bit initial value. Also, the input plaintext is divided into n pieces, and the initial value of the L bit generated in the second step is output to the n stream cipher encryptors, and the plaintext divided into 1 / n is also obtained. Output to n stream cipher encryptors. Therefore, the plaintext is divided into 1 / n, and the plaintext divided into n stream cipher encryptors and the initial value unique to the encryptor of each stream cipher generated by the initial value generating means are given, and the ciphertext A series of processes up to generation can be performed in parallel.
(10)本発明は、(4)または(5)のストリーム暗号の暗号装置により暗号化された暗号文を復号するストリーム暗号の復号化装置におけるストリーム暗号の復号化方法であって、n個のストリーム暗号の復号化器と、該n個のストリーム暗号の復号化器を制御する並列処理復号モジュールと、前記n個のストリーム暗号の復号化器から出力されるn個の平文を結合して最終的な平文を出力する平文結合モジュールと、を備え、前記並列処理復号モジュールが、L−nビットの初期値と暗号文と秘密鍵とを入力する第1のステップ(例えば、図9のステップS201に相当)と、前記並列処理復号モジュールが、該入力した暗号文からヘッダ情報を分離する第2のステップ(例えば、図9のステップS202に相当)と、前記並列処理復号モジュールが、該分離したヘッダ情報に基づいて、nビットの初期値を生成し、該生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する第3のステップ(例えば、図9のステップS203に相当)と、前記並列処理復号モジュールが、前記入力したヘッダ情報に基づいて、暗号文をn個に分割する第4のステップ(例えば、図9のステップS204に相当)と、前記並列処理復号モジュールが、前記第3のステップにおいて生成したLビットの初期値を前記n個のストリーム暗号の復号化器に出力するとともに、前記秘密鍵および該1/nに分割した暗号文を前記n個のストリーム暗号の復号化器に出力する第5のステップ(例えば、図9のステップS205に相当)と、を備えたことを特徴とするストリーム暗号の復号化方法を提案している。 (10) The present invention is a stream cipher decryption method in a stream cipher decryption device for decrypting ciphertext encrypted by the stream cipher encryptor of (4) or (5) , wherein n A stream cipher decryptor, a parallel processing decryption module for controlling the n stream cipher decryptors, and n plaintexts output from the n stream cipher decryptors are combined to obtain a final result. A plaintext combining module for outputting a plaintext, wherein the parallel processing decryption module inputs an initial value of L- n bits, a ciphertext, and a secret key (for example, step S201 in FIG. 9). The parallel processing decryption module separates header information from the input ciphertext (for example, equivalent to step S202 in FIG. 9), and the parallel processing No. module, based on the header information said separated, it generates an initial value of n bits, said generated n type as the initial value of the bits were L initial value of -n bit and combined with the initial value of L bits A third step (for example, corresponding to step S203 of FIG. 9) and a fourth step (for example, the parallel processing decryption module divides the ciphertext into n based on the input header information (for example, , Corresponding to step S204 in FIG. 9), and the parallel processing decryption module outputs the L- bit initial value generated in the third step to the n number of stream ciphers, and the secret key And a fifth step (for example, corresponding to step S205 in FIG. 9) for outputting the ciphertext divided into 1 / n to the n stream cipher decryptors. We propose a method of decoding a stream cipher to symptoms.
この発明によれば、並列処理復号モジュールが、L−nビットの初期値と暗号文と秘密鍵とを入力し、入力した暗号文からヘッダ情報を分離する。また、分離したヘッダ情報に基づいて、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する。そして、入力したヘッダ情報に基づいて、暗号文をn個に分割し、第3のステップにおいて生成したLビットの初期値をn個のストリーム暗号の復号化器に出力するとともに、秘密鍵および1/nに分割した暗号文をn個のストリーム暗号の復号化器に出力する。したがって、暗号文を1/nに分割し、n個のストリーム暗号の暗号化器に分割した暗号文とヘッダ情報に基づいて初期値生成手段が生成した各ストリーム暗号の暗号化器固有の初期値を与えることにより、平文の復号までの一連の処理を並列に行うことができる。 According to this invention, the parallel processing decryption module inputs an initial value of L- n bits, a ciphertext, and a secret key, and separates header information from the input ciphertext. Also, an n-bit initial value is generated based on the separated header information, and the generated n-bit initial value and the input L− n-bit initial value are combined to generate an L- bit initial value. Then, based on the input header information, the ciphertext is divided into n pieces, and the initial value of the L bit generated in the third step is output to the n number of stream ciphers, and the secret key and 1 The ciphertext divided into / n is output to n stream cipher decryptors. Therefore, the ciphertext is divided into 1 / n, and the initial value unique to the encryptor of each stream cipher generated by the initial value generating means based on the ciphertext and header information divided into n stream cipher encryptors , It is possible to perform a series of processes up to decryption of plaintext in parallel.
(11)本発明は、n個のストリーム暗号の暗号化器と、該n個のストリーム暗号の暗号化器を制御する並列処理暗号モジュールと、前記n個のストリーム暗号の暗号化器から出力されるn個の暗号文を結合して最終的な暗号文を出力する暗号文結合モジュールと、を備えたストリーム暗号の暗号化装置におけるストリーム暗号の暗号化方法をコンピュータに実行させるためのプログラムであって、前記並列処理復号モジュールが、L−nビットの初期値と平文と秘密鍵とを入力する第1のステップ(例えば、図5のステップS101に相当)と、前記並列処理復号モジュールが、nビットの初期値を生成し、該生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する第2のステップ(例えば、図5のステップS102に相当)と、前記並列処理復号モジュールが、前記入力した平文をn個に分割する第3のステップ(例えば、図5のステップS103に相当)と、前記並列処理復号モジュールが、前記第2のステップにおいて生成したLビットの初期値を前記n個のストリーム暗号の暗号化器に出力するとともに、前記秘密鍵および該1/nに分割した平文を前記n個のストリーム暗号の暗号化器に出力する第4のステップ(例えば、図5のステップS104に相当)と、をコンピュータに実行させるためのプログラムを提案している。 (11) The present invention outputs n stream cipher encryptors, a parallel processing cipher module for controlling the n stream cipher encryptors, and the n stream cipher encryptors. And a ciphertext combining module that combines n ciphertexts and outputs a final ciphertext, and a program for causing a computer to execute a stream cipher encryption method in a stream cipher encryption device. Then, the parallel processing decryption module receives a first step (for example, equivalent to step S101 in FIG. 5) of inputting an initial value of L− n bits, a plaintext, and a secret key, and the parallel processing decryption module includes n a second step of generating an initial value of the bits, by combining the initial value of L -n-bit input as an initial value of n bits thus generated to generate the initial value of L bits (e.g. 5 (corresponding to step S102 in FIG. 5), the third step in which the parallel processing decoding module divides the input plaintext into n pieces (for example, corresponding to step S103 in FIG. 5), and the parallel processing decoding module The initial value of the L bit generated in the second step is output to the n stream cipher encryptors, and the secret key and the plaintext divided into 1 / n are output to the n stream ciphers. A program for causing a computer to execute a fourth step (for example, corresponding to step S104 in FIG. 5) to be output to an encryptor is proposed.
この発明によれば、並列処理復号モジュールが、L−nビットの初期値と平文と秘密鍵とを入力し、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する。また、入力した平文をn個に分割し、第2のステップにおいて生成したLビットの初期値をn個のストリーム暗号の暗号化器に出力するとともに、秘密鍵および1/nに分割した平文をn個のストリーム暗号の暗号化器に出力する。したがって、平文を1/nに分割し、n個のストリーム暗号の暗号化器に分割した平文と初期値生成手段が生成した各ストリーム暗号の暗号化器固有の初期値を与えることにより、暗号文の生成までの一連の処理を並列に行うことができる。 According to the present invention, the parallel processing decryption module inputs an L- n-bit initial value, a plaintext, and a secret key, generates an n-bit initial value, and generates the generated n-bit initial value and the input L − An n-bit initial value is combined to generate an L- bit initial value. Also, the input plaintext is divided into n pieces, and the initial value of the L bit generated in the second step is output to the n stream cipher encryptors, and the plaintext divided into 1 / n is also obtained. Output to n stream cipher encryptors. Therefore, the plaintext is divided into 1 / n, and the plaintext divided into n stream cipher encryptors and the initial value unique to the encryptor of each stream cipher generated by the initial value generating means are given, and the ciphertext A series of processes up to generation can be performed in parallel.
(12)本発明は、(4)または(5)のストリーム暗号の暗号装置により暗号化された暗号文を復号するストリーム暗号の復号化装置におけるストリーム暗号の復号化方法をコンピュータに実行させるためのプログラムであって、n個のストリーム暗号の復号化器と、該n個のストリーム暗号の復号化器を制御する並列処理暗号モジュールと、前記n個のストリーム暗号の復号化器から出力されるn個の平文を結合して最終的な平文を出力する平文結合モジュールと、を備え、前記並列処理復号モジュールが、L−nビットの初期値と暗号文と秘密鍵とを入力する第1のステップ(例えば、図9のステップS201に相当)と、前記並列処理復号モジュールが、該入力した暗号文からヘッダ情報を分離する第2のステップ(例えば、図9のステップS202に相当)と、前記並列処理復号モジュールが、該分離したヘッダ情報に基づいて、nビットの初期値を生成し、該生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する第3のステップ(例えば、図9のステップS203に相当)と、前記並列処理復号モジュールが、前記入力したヘッダ情報に基づいて、暗号文をn個に分割する第4のステップ(例えば、図9のステップS204に相当)と、前記並列処理復号モジュールが、前記第3のステップにおいて生成したLビットの初期値を前記n個のストリーム暗号の復号化器に出力するとともに、前記秘密鍵および該1/nに分割した暗号文を前記n個のストリーム暗号の復号化器に出力する第5のステップ(例えば、図9のステップS205に相当)と、をコンピュータに実行させるためのプログラムを提案している。 (12) The present invention is for causing a computer to execute a stream cipher decryption method in a stream cipher decryption device that decrypts a ciphertext encrypted by the stream cipher encryptor of (4) or (5) . A program comprising: n stream cipher decryptors; a parallel processing cipher module for controlling the n stream cipher decryptors; and n streams output from the n stream cipher decryptors. A plaintext combining module that combines the plaintexts and outputs a final plaintext, wherein the parallel processing decryption module inputs an initial value of L- n bits, a ciphertext, and a secret key. (For example, corresponding to step S201 in FIG. 9) and the parallel processing decryption module in a second step (for example, FIG. And corresponding to step S202), the parallel processing decoder module, based on the header information said separated, it generates an initial value of n bits, the initial value of L -n-bit input as an initial value of n bits thus generated Are combined with each other to generate an initial value of L bits (for example, corresponding to step S203 in FIG. 9), and the parallel processing decryption module converts the ciphertext into n based on the input header information. A fourth step (for example, corresponding to step S204 in FIG. 9), and the parallel processing decryption module decrypts the initial value of the L bits generated in the third step into the n stream ciphers. And outputting the secret key and the ciphertext divided into 1 / n to the decryptors of the n stream ciphers (for example, FIG. 9). We propose a program to be executed and corresponding to step S205), to the computer.
この発明によれば、並列処理復号モジュールが、L−nビットの初期値と暗号文と秘密鍵とを入力し、入力した暗号文からヘッダ情報を分離する。また、分離したヘッダ情報に基づいて、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する。そして、入力したヘッダ情報に基づいて、暗号文をn個に分割し、第3のステップにおいて生成したLビットの初期値をn個のストリーム暗号の復号化器に出力するとともに、秘密鍵および1/nに分割した暗号文をn個のストリーム暗号の復号化器に出力する。したがって、暗号文を1/nに分割し、n個のストリーム暗号の暗号化器に分割した暗号文とヘッダ情報に基づいて初期値生成手段が生成した各ストリーム暗号の暗号化器固有の初期値を与えることにより、平文の復号までの一連の処理を並列に行うことができる。 According to this invention, the parallel processing decryption module inputs an initial value of L- n bits, a ciphertext, and a secret key, and separates header information from the input ciphertext. Also, an n-bit initial value is generated based on the separated header information, and the generated n-bit initial value and the input L− n-bit initial value are combined to generate an L- bit initial value. Then, based on the input header information, the ciphertext is divided into n pieces, and the initial value of the L bit generated in the third step is output to the n number of stream ciphers, and the secret key and 1 The ciphertext divided into / n is output to n stream cipher decryptors. Therefore, the ciphertext is divided into 1 / n, and the initial value unique to the encryptor of each stream cipher generated by the initial value generating means based on the ciphertext and header information divided into n stream cipher encryptors , It is possible to perform a series of processes up to decryption of plaintext in parallel.
本発明によれば、ストリーム暗号の暗号化/復号化処理を複数並列に実行し、多重化することでより高速な暗号化/復号化処理を実現することができるという効果がある。 According to the present invention, a plurality of stream cipher encryption / decryption processes are executed in parallel and multiplexed, thereby realizing an effect that a higher-speed encryption / decryption process can be realized.
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
Note that the constituent elements in the present embodiment can be appropriately replaced with existing constituent elements and the like, and various variations including combinations with other existing constituent elements are possible. Therefore, the description of the present embodiment does not limit the contents of the invention described in the claims.
以下、図1から図8を用いて、本発明に係るストリーム暗号の暗号化装置およびストリーム暗号の復号化装置について、詳細に説明する。 The stream cipher encryption apparatus and the stream cipher decryption apparatus according to the present invention will be described in detail below with reference to FIGS.
<第1の実施形態>
図1から図4を用いて、本実施形態に係るストリーム暗号の暗号化装置について説明する。
<First Embodiment>
A stream cipher encryption apparatus according to this embodiment will be described with reference to FIGS. 1 to 4.
<ストリーム暗号の暗号化装置の構成>
本実施形態に係るストリーム暗号の暗号化装置は、図1に示すように、並列処理暗号モジュール100と、複数のストリーム暗号器200a、200b、200c、・・・、200x、200y、200zと、暗号文結合モジュール300とから構成されている。
<Configuration of Stream Cipher Encryption Device>
As shown in FIG. 1, the encryption apparatus for stream encryption according to the present embodiment includes a parallel
並列処理暗号モジュール100は、L−n(n;ストリーム暗号器の数)ビットの初期値と平文と秘密鍵とを入力し、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する。また、入力した平文をn個に分割し、生成したLビットの初期値をn個のストリーム暗号器200a、200b、200c、・・・、200x、200y、200zに出力するとともに、秘密鍵および1/nに分割した平文をn個のストリーム暗号器200a、200b、200c、・・・、200x、200y、200zに出力する。
The parallel
ストリーム暗号器200a、200b、200c、・・・、200x、200y、200zは、初期値と秘密鍵とを入力し、内部状態の初期化処理を行う。また、内部状態を利用して鍵系列を生成する。さらに、生成した鍵系列と入力した平文との排他的論理和演算を行い、暗号文を生成する。 The stream ciphers 200a, 200b, 200c,..., 200x, 200y, and 200z receive the initial value and the secret key, and perform an internal state initialization process. Also, a key sequence is generated using the internal state. Further, an exclusive OR operation between the generated key sequence and the input plaintext is performed to generate a ciphertext.
暗号文結合モジュール300は、図4に示すように、ストリーム暗号器200a、200b、200c、・・・、200x、200y、200zが、暗号化処理を行った暗号文に、生成したヘッダ情報を付した情報を1つの単位とし、これらを連結して暗号文として出力する。
As shown in FIG. 4, the
<並列処理暗号モジュールの構成>
本実施形態に係る並列処理暗号モジュールは、図2に示すように、入力部110と、初期値生成部120と、分割部130と、出力部140と、ヘッダ情報生成部150と、秘密鍵生成部160と、配布部170とから構成されている。
<Configuration of parallel processing cryptographic module>
As shown in FIG. 2, the parallel processing cryptographic module according to the present embodiment includes an
入力部110は、L−nビットの初期値と平文と秘密鍵とを入力する。ここで、nは、ストリーム暗号器200a、200b、200c、・・・、200x、200y、200zの数に相当する。
The
初期値生成部120は、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する。この場合、生成するnビットの初期値は、予約値となる。分割部130は、入力した平文をn個に分割する。出力部140は、初期値生成部120が生成したLビットの初期値をn個のストリーム暗号器に出力するとともに、秘密鍵および該1/nに分割した平文を前記n個のストリーム暗号器に出力する。
The initial value generation unit 120 generates an n-bit initial value, and combines the generated n-bit initial value and the input L− n-bit initial value to generate an L- bit initial value. In this case, the generated n-bit initial value is a reserved value. The dividing
ヘッダ情報生成部150は、初期値生成部120および分割部130から得た情報に基づいて、ヘッダ情報を生成する。秘密鍵生成部160は、入力した秘密鍵の代わりに、ストリーム暗号器200a、200b、200c、・・・、200x、200y、200zごとに、異なる秘密鍵を与える場合に、入力した秘密鍵の下位の任意のビットを予約値として、n個の異なる秘密鍵を生成する。配布部170は、生成した秘密鍵を各ストリーム暗号器200a、200b、200c、・・・、200x、200y、200zに1つずつ配布する。
The header
<ストリーム暗号器の構成>
本実施形態に係るストリーム暗号器は、図3に示すように、初期化処理部210と、鍵系列生成部220と、暗号文生成部230とから構成されている。
<Configuration of stream cipher>
As shown in FIG. 3, the stream cipher according to the present embodiment includes an
初期化処理部210は、初期値と秘密鍵とを入力し、内部状態の初期化処理を行う。鍵系列生成部220は、内部状態を利用して鍵系列を生成する。暗号文生成部230は、生成した鍵系列と入力した平文との排他的論理和演算を行い、暗号文を生成する。
The
<ストリーム暗号の暗号化装置の処理>
図5を用いて、本実施形態に係るストリーム暗号の暗号化装置の処理について説明する。
並列処理暗号モジュールが、L−nビットの初期値と平文と秘密鍵とを入力し(ステップS101)、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する(ステップS102)。また、入力した平文をn個に分割し(ステップS103)、ステップS102において生成したLビットの初期値をn個のストリーム暗号器に出力するとともに、秘密鍵および1/nに分割した平文をn個のストリーム暗号器に出力する(ステップS104)。
<Processing of encryption device for stream cipher>
The processing of the stream cipher encryption apparatus according to this embodiment will be described with reference to FIG.
The parallel processing cryptographic module inputs the L- n bit initial value, the plaintext, and the secret key (step S101), generates an n-bit initial value, and generates the generated n-bit initial value and the input L- n bit. Are combined with the initial value to generate an L- bit initial value (step S102). Also, the input plaintext is divided into n pieces (step S103), the initial value of the L bit generated in step S102 is output to n stream ciphers, and the plaintext divided into 1 / n is divided into n pieces. Are output to the stream ciphers (step S104).
各ストリーム暗号器は、並列処理暗号モジュールからLビットの初期値と秘密鍵を入力して、初期化処理を実行し、内部状態を利用して鍵系列を生成する。さらに、生成した鍵系列と入力した平文との排他的論理和演算を行い、暗号文を生成する。また、データの切れ目を認識するためのデリミタ、暗号文長、初期値、使用したストリーム暗号モジュールの番号を含むヘッダ情報を生成する。そして、生成した暗号文と固有のヘッダ情報とを暗号文結合モジュールに出力する。暗号文結合モジュールは、入力した情報を結合して、出力する。 Each stream cipher receives an L- bit initial value and a secret key from the parallel processing cryptographic module, executes an initialization process, and generates a key sequence using an internal state. Further, an exclusive OR operation between the generated key sequence and the input plaintext is performed to generate a ciphertext. In addition, header information including a delimiter for recognizing data breaks, a ciphertext length, an initial value, and the number of the used stream cipher module is generated. The generated ciphertext and unique header information are output to the ciphertext combining module. The ciphertext combining module combines input information and outputs the combined information.
並列処理復号モジュール400は、L−n(n;ストリーム暗号器の数)ビットの初期値とヘッダ情報付き暗号文と秘密鍵とを入力し、ヘッダ情報を切り離して、そのヘッダ情報に基づいて、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する。また、ヘッダ情報を切り離した暗号文をn個に分割し、生成したLビットの初期値をn個のストリーム復号器500a、500b、500c、・・・、500x、500y、500zに出力するとともに、秘密鍵および1/nに分割した暗号文をn個のストリーム復号器500a、500b、500c、・・・、500x、500y、500zに出力する。
The parallel
<第2の実施形態>
図6から図9を用いて、本実施形態に係るストリーム暗号の復号化装置について説明する。なお、本実施形態に係るストリーム暗号の復号化装置は、第1の実施形態により暗号化された暗号文を平文に復元するものである。
<Second Embodiment>
The stream cipher decryption apparatus according to this embodiment will be described with reference to FIGS. Note that the stream cipher decryption apparatus according to the present embodiment restores the ciphertext encrypted according to the first embodiment into plaintext.
<ストリーム暗号の復号化装置の構成>
本実施形態に係るストリーム暗号の復号化装置は、図6に示すように、並列処理復号モジュール400と、複数のストリーム復号器500a、500b、500c、・・・、500x、500y、500zと、平文結合モジュール600とから構成されている。
<Configuration of Decryption Device for Stream Cipher>
As shown in FIG. 6, the decryption apparatus for the stream cipher according to this embodiment includes a parallel
並列処理復号モジュール400は、L−n(n;ストリーム暗号器の数)ビットの初期値とヘッダ情報付き暗号文と秘密鍵とを入力し、ヘッダ情報を切り離して、そのヘッダ情報に基づいて、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する。また、ヘッダ情報を切り離した暗号文をn個に分割し、生成したLビットの初期値をn個のストリーム復号器500a、500b、500c、・・・、500x、500y、500zに出力するとともに、秘密鍵および1/nに分割した暗号文をn個のストリーム復号器500a、500b、500c、・・・、500x、500y、500zに出力する。
The parallel
ストリーム復号器500a、500b、500c、・・・、500x、500y、500zは、初期値と秘密鍵とを入力し、内部状態の初期化処理を行う。また、内部状態を利用して鍵系列を生成する。さらに、生成した鍵系列と入力した暗号文との排他的論理和演算を行い、平文を生成する。
The
平文結合モジュール600は、ストリーム復号器500a、500b、500c、・・・、500x、500y、500zが、復号化処理を行った平文を連結して出力する。
The
<並列処理暗号モジュールの構成>
本実施形態に係る並列処理復号モジュールは、図7に示すように、入力部410と、ヘッダ情報分離部420と、初期値生成部430と、分割部440と、出力部450と、秘密鍵生成部460と、配布部470とから構成されている。
<Configuration of parallel processing cryptographic module>
As shown in FIG. 7, the parallel processing decryption module according to the present embodiment includes an
入力部410は、L−nビットの初期値とヘッダ情報付き暗号文と秘密鍵とを入力する。ここで、nは、ストリーム復号器500a、500b、500c、・・・、500x、500y、500zの数に相当する。
The
ヘッダ情報分離部420は、入力したヘッダ情報付き暗号文からヘッダ情報を分離し、分離したヘッダ情報を初期値生成部430に出力するとともに、暗号文を分割部440に出力する。分割部440は、入力した暗号文を1/nに分割し、出力部450に出力する。初期値生成部430は、入力したヘッダ情報に基づいて、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する。この場合、生成するnビットの初期値は、予約値となる。出力部450は、初期値生成部430が生成したLビットの初期値をn個のストリーム復号器500a、500b、500c、・・・、500x、500y、500zに出力するとともに、秘密鍵および1/nに分割した暗号文をn個のストリーム復号器500a、500b、500c、・・・、500x、500y、500zに出力する。
The header
秘密鍵生成部460は、入力した秘密鍵の代わりに、ストリーム復号器500a、500b、500c、・・・、500x、500y、500zごとに、異なる秘密鍵を与える場合に、入力した秘密鍵の下位の任意のビットを予約値として、n個の異なる秘密鍵を生成する。配布部470は、生成した秘密鍵を各ストリーム暗号器200a、200b、200c、・・・、200x、200y、200zに1つずつ配布する。
The secret
<ストリーム暗号器の構成>
本実施形態に係るストリーム暗号器は、図8に示すように、初期化処理部510と、鍵系列生成部520と、平文生成部530とから構成されている。
<Configuration of stream cipher>
As shown in FIG. 8, the stream cipher according to this embodiment includes an
初期化処理部510は、初期値と秘密鍵とを入力し、内部状態の初期化処理を行う。鍵系列生成部520は、内部状態を利用して鍵系列を生成する。平文生成部530は、生成した鍵系列と入力した暗号文との排他的論理和演算を行い、平文を生成する。
The
<ストリーム暗号の復号化装置の処理>
図9を用いて、本実施形態に係るストリーム暗号の復号化装置の処理について説明する。
並列処理復号モジュールが、L−nビットの初期値と暗号文と秘密鍵とを入力し(ステップS201)、入力した暗号文からヘッダ情報を分離する(ステップS201)。次に、ヘッダ情報に基づいて、nビットの初期値を生成し、生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する(ステップS203)。また、ヘッダ情報に基づいて、入力した暗号文をn個に分割し(ステップS204)、ステップS203において生成したLビットの初期値をn個のストリーム復号器に出力するとともに、秘密鍵および1/nに分割した暗号文をn個のストリーム復号器に出力する(ステップS205)。
<Processing of Decryption Device for Stream Cipher>
The processing of the stream cipher decryption apparatus according to this embodiment will be described with reference to FIG.
The parallel processing decryption module inputs an initial value of L− n bits, a ciphertext, and a secret key (step S201), and separates header information from the input ciphertext (step S201). Next, based on the header information, an n-bit initial value is generated, and the generated n-bit initial value and the input L- n-bit initial value are combined to generate an L- bit initial value (step) S203). Further, based on the header information, the input ciphertext is divided into n pieces (step S204), the initial value of the L bit generated in step S203 is output to n stream decoders, and the secret key and 1 / The ciphertext divided into n is output to n stream decryptors (step S205).
各ストリーム復号器は、並列処理復号モジュールからlビットの初期値と秘密鍵を入力して、初期化処理を実行し、内部状態を利用して鍵系列を生成する。さらに、生成した鍵系列と入力した暗号文との排他的論理和演算を行い、平文を生成する。そして、生成した平文を平文結合モジュールに出力する。平文結合モジュールは、入力した情報を結合して、出力する。 Each stream decoder receives an l-bit initial value and a secret key from the parallel processing decryption module, executes an initialization process, and generates a key sequence using an internal state. Further, an exclusive OR operation between the generated key sequence and the input ciphertext is performed to generate plaintext. Then, the generated plaintext is output to the plaintext combination module. The plaintext combining module combines the input information and outputs it.
以上、説明したように、本実施形態によれば、暗号文を1/nに分割し、n個のストリーム暗号の暗号化器に分割した暗号文とヘッダ情報に基づいて初期値生成手段が生成した各ストリーム復号器固有の初期値を与えることにより、平文の復号までの一連の処理を並列に行うことができる。 As described above, according to the present embodiment, the ciphertext is divided into 1 / n, and the initial value generating unit generates the ciphertext divided into n stream cipher encryptors and the header information. By giving an initial value unique to each stream decoder, a series of processing up to plaintext decoding can be performed in parallel.
なお、ストリーム暗号の暗号器あるいはストリーム暗号の復号器の処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをストリーム暗号の暗号器あるいはストリーム暗号の復号器に読み込ませ、実行することによって本発明のストリーム暗号の暗号器あるいはストリーム暗号の復号器を実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。 The processing of the stream cipher encryptor or the stream cipher decryptor is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read by the stream cipher encryptor or the stream cipher decryptor. By executing this, the stream cipher encryptor or the stream cipher decryptor of the present invention can be realized. The computer system here includes an OS and hardware such as peripheral devices.
また、「コンピュータシステム」は、WWW(World Wide Web)システムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。 Further, the “computer system” includes a homepage providing environment (or display environment) if a WWW (World Wide Web) system is used. The program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。 The program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, and what is called a difference file (difference program) may be sufficient.
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 The embodiments of the present invention have been described in detail with reference to the drawings. However, the specific configuration is not limited to the embodiments, and includes designs and the like that do not depart from the gist of the present invention.
100;並列処理暗号モジュール
110;入力部
120;初期値生成部
130;分割部
140;出力部
150;ヘッダ情報生成部
160;秘密鍵生成部
170;配布部
200a、200b、200c、・・・、200x、200y、200z;ストリーム暗号器
210;初期化処理部
220;鍵系列生成部
230;暗号文生成部
300;暗号文結合モジュール
400;並列処理復号モジュール
410;入力部
420;ヘッダ情報分離部
430;初期値生成部
440;分割部
450;出力部
460;秘密鍵生成部
470;配布部
500a、500b、500c、・・・、500x、500y、500z;ストリーム復号器
510;初期化処理部
520;鍵系列生成部
530;平文生成部
600;平文結合モジュール
100; parallel
Claims (12)
該n個のストリーム暗号の暗号化器を制御する並列処理暗号モジュールと、
前記n個のストリーム暗号の暗号化器から出力されるn個の暗号文を結合して最終的な暗号文を出力する暗号文結合モジュールと、
を備え、
前記並列処理暗号モジュールが、
L−nビットの初期値と平文と秘密鍵とを入力する入力手段と、
nビットの初期値を生成し、該生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する初期値生成手段と、
前記入力した平文をn個に分割する分割手段と、
前記初期値生成手段が生成したLビットの初期値を前記n個のストリーム暗号の暗号化器に出力するとともに、前記秘密鍵および該1/nに分割した平文を前記n個のストリーム暗号の暗号化器に出力する出力手段と、
を備えたことを特徴とするストリーム暗号の暗号化装置。 n stream cipher encryptors;
A parallel processing cryptographic module for controlling the n stream cipher encryptors;
A ciphertext combining module that combines n ciphertexts output from the n stream cipher encryptors and outputs a final ciphertext;
With
The parallel processing cryptographic module is
An input means for inputting an initial value of L− n bits, a plaintext, and a secret key;
initial value generating means for generating an n-bit initial value and combining the generated n-bit initial value and the input L- n bit initial value to generate an L- bit initial value;
Dividing means for dividing the inputted plaintext into n pieces;
The L- bit initial value generated by the initial value generating means is output to the n stream cipher encryptors, and the private key and the plaintext divided into 1 / n are encrypted with the n stream ciphers. Output means for outputting to the generator;
A stream cipher encryption apparatus comprising:
前記並列処理暗号モジュールからLビットの初期値と秘密鍵とを入力し、内部状態の初期化処理を行う初期化処理手段と、
内部状態を利用して鍵系列を生成する鍵系列生成手段と、
該生成した鍵系列と入力した平文との排他的論理和演算を行い、暗号文を生成する暗号文生成手段と、
を備えたことを特徴とする請求項1に記載のストリーム暗号の暗号化装置。 The n stream cipher encryptors are:
An initialization processing means for inputting an L-bit initial value and a secret key from the parallel processing cryptographic module and performing initialization processing of an internal state;
A key sequence generating means for generating a key sequence using an internal state;
A ciphertext generating means for performing an exclusive OR operation between the generated key sequence and the input plaintext to generate a ciphertext;
The stream cipher encryption apparatus according to claim 1, further comprising:
入力した秘密鍵の下位の任意のビットを生成し、異なるn個の秘密鍵を生成する秘密鍵生成手段と、
該生成した秘密鍵をn個のストリーム暗号の暗号化器に1つずつ配布する秘密鍵配布手段と、
を備えたことを特徴とする請求項1に記載のストリーム暗号の暗号化装置。 The parallel processing cryptographic module is
A secret key generating means for generating an arbitrary lower bit of the input secret key and generating n different secret keys;
Secret key distribution means for distributing the generated secret keys one by one to n stream cipher encryptors;
The stream cipher encryption apparatus according to claim 1, further comprising:
前記n個のストリーム暗号の暗号化器が、暗号化処理を行った暗号文に該生成したヘッダ情報を付して前記暗号文結合モジュールに出力することを特徴とする請求項1に記載のストリーム暗号の暗号化装置。 The ciphertext combining module includes header information generating means for generating header information;
2. The stream according to claim 1, wherein the n stream cipher encryptors attach the generated header information to a ciphertext subjected to an encryption process, and output the ciphertext combining module to the ciphertext combining module. Cryptographic encryption device.
n個のストリーム暗号の復号化器と、
該n個のストリーム暗号の復号化器を制御する並列処理復号モジュールと、
前記n個のストリーム暗号の復号化器から出力されるn個の平文を結合して最終的な平文を出力する平文結合モジュールと、
を備え、
前記並列処理復号モジュールが、
L−nビットの初期値と暗号文と秘密鍵とを入力する入力手段と、
該入力した暗号文からヘッダ情報を分離するヘッダ情報分離手段と、
該分離したヘッダ情報に基づいて、nビットの初期値を生成し、該生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する初期値生成手段と、
前記入力したヘッダ情報に基づいて、暗号文をn個に分割する分割手段と、
前記初期値生成手段が生成したLビットの初期値を前記n個のストリーム暗号の復号化器に出力するとともに、前記秘密鍵および該1/nに分割した暗号文を前記n個のストリーム暗号の復号化器に出力する出力手段と、
を備えたことを特徴とするストリーム暗号の復号化装置。 A stream cipher decrypting device for decrypting a ciphertext encrypted by the stream cipher encrypting device according to claim 4 ,
n stream cipher decryptors;
A parallel processing decryption module for controlling the n stream cipher decryptors;
A plaintext combining module that combines n plaintexts output from the n stream cipher decoders and outputs a final plaintext;
With
The parallel processing decoding module is
Input means for inputting an initial value of L− n bits, a ciphertext, and a secret key;
Header information separating means for separating header information from the input ciphertext;
Early based converting said separated header information to generate an initial value of n bits, to generate an initial value of L bits by combining the initial value of L -n-bit input as an initial value of n bits thus generated Value generation means;
Splitting means for splitting the ciphertext into n based on the input header information;
The L- bit initial value generated by the initial value generating means is output to the n number of stream cipher decoders, and the secret key and the 1 / n ciphertext are converted into the n stream ciphers. Output means for outputting to the decoder;
An apparatus for decrypting a stream cipher, comprising:
前記並列処理復号モジュールからLビットの初期値と秘密鍵とを入力し、内部状態の初期化処理を行う初期化処理手段と、
内部状態を利用して鍵系列を生成する鍵系列生成手段と、
該生成した鍵系列と入力した暗号文との排他的論理和演算を行い、平文を生成する暗号文生成手段と、
を備えたことを特徴とする請求項6に記載のストリーム暗号の復号化装置。 The n number of stream cipher decoders;
An initialization processing means for inputting an L-bit initial value and a secret key from the parallel processing decryption module and performing an initialization process of an internal state;
A key sequence generating means for generating a key sequence using an internal state;
A ciphertext generating means for performing an exclusive OR operation between the generated key sequence and the input ciphertext, and generating plaintext;
The stream cipher decryption apparatus according to claim 6, further comprising:
入力した秘密鍵の下位の任意のビットを生成し、異なるn個の秘密鍵を生成する秘密鍵生成手段と、
該生成した秘密鍵をn個のストリーム暗号の復号化器に1つずつ配布する秘密鍵配布手段と、
を備えたことを特徴とする請求項6に記載のストリーム暗号の復号化装置。 The parallel processing decoding module is
A secret key generating means for generating an arbitrary lower bit of the input secret key and generating n different secret keys;
Secret key distribution means for distributing the generated secret key to n stream ciphers one by one;
The stream cipher decryption apparatus according to claim 6, further comprising:
該n個のストリーム暗号の暗号化器を制御する並列処理暗号モジュールと、
前記n個のストリーム暗号の暗号化器から出力されるn個の暗号文を結合して最終的な暗号文を出力する暗号文結合モジュールと、を備えたストリーム暗号の暗号化装置におけるストリーム暗号の暗号化方法であって、
前記並列処理暗号モジュールが、L−nビットの初期値と平文と秘密鍵とを入力する第1のステップと、
前記並列処理暗号モジュールが、nビットの初期値を生成し、該生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する第2のステップと、
前記並列処理暗号モジュールが、前記入力した平文をn個に分割する第3のステップと、
前記並列処理暗号モジュールが、前記第2のステップにおいて生成したLビットの初期値を前記n個のストリーム暗号の暗号化器に出力するとともに、前記秘密鍵および該1/nに分割した平文を前記n個のストリーム暗号の暗号化器に出力する第4のステップと、
を備えたことを特徴とするストリーム暗号の暗号化方法。 n stream cipher encryptors;
A parallel processing cryptographic module for controlling the n stream cipher encryptors;
A ciphertext combining module that combines the n ciphertexts output from the n stream cipher encryptors and outputs a final ciphertext; An encryption method,
A first step in which the parallel processing cryptographic module inputs an initial value of L- n bits, a plaintext, and a secret key;
The parallel processing cryptographic module generates an n-bit initial value, and combines the generated n-bit initial value and the input L- n-bit initial value to generate an L- bit initial value. Steps,
A third step in which the parallel processing cryptographic module divides the inputted plaintext into n pieces;
The parallel processing cryptographic module outputs the L- bit initial value generated in the second step to the n stream cipher encryptors, and the secret key and the plaintext divided into 1 / n are a fourth step of outputting to n stream cipher encryptors;
A stream cipher encryption method characterized by comprising:
n個のストリーム暗号の復号化器と、
該n個のストリーム暗号の復号化器を制御する並列処理復号モジュールと、
前記n個のストリーム暗号の復号化器から出力されるn個の平文を結合して最終的な平文を出力する平文結合モジュールと、
を備え、
前記並列処理復号モジュールが、L−nビットの初期値と暗号文と秘密鍵とを入力する第1のステップと、
前記並列処理復号モジュールが、該入力した暗号文からヘッダ情報を分離する第2のステップと、
前記並列処理復号モジュールが、該分離したヘッダ情報に基づいて、nビットの初期値を生成し、該生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する第3のステップと、
前記並列処理復号モジュールが、前記入力したヘッダ情報に基づいて、暗号文をn個に分割する第4のステップと、
前記並列処理復号モジュールが、前記第3のステップにおいて生成したLビットの初期値を前記n個のストリーム暗号の復号化器に出力するとともに、前記秘密鍵および該1/nに分割した暗号文を前記n個のストリーム暗号の復号化器に出力する第5のステップと、
を備えたことを特徴とするストリーム暗号の復号化方法。 A method for decrypting a stream cipher in a stream cipher decrypting device for decrypting a ciphertext encrypted by the stream cipher encrypting device according to claim 4 ,
n stream cipher decryptors;
A parallel processing decryption module for controlling the n stream cipher decryptors;
A plaintext combining module that combines n plaintexts output from the n stream cipher decoders and outputs a final plaintext;
With
A first step in which the parallel processing decryption module inputs an initial value of L- n bits, a ciphertext, and a secret key;
A second step in which the parallel processing decryption module separates header information from the input ciphertext;
The parallel processing decoding module generates an n-bit initial value based on the separated header information, and combines the generated n-bit initial value with the input L− n-bit initial value to generate L bits A third step of generating an initial value of
A fourth step in which the parallel processing decryption module divides the ciphertext into n pieces based on the inputted header information;
The parallel processing decryption module outputs the initial value of the L bit generated in the third step to the decryptors of the n stream ciphers, and the ciphertext divided into the secret key and the 1 / n A fifth step of outputting to the n stream cipher decoders;
A method of decrypting a stream cipher, comprising:
該n個のストリーム暗号の暗号化器を制御する並列処理暗号モジュールと、
前記n個のストリーム暗号の暗号化器から出力されるn個の暗号文を結合して最終的な暗号文を出力する暗号文結合モジュールと、を備えたストリーム暗号の暗号化装置におけるストリーム暗号の暗号化方法をコンピュータに実行させるためのプログラムであって、
前記並列処理暗号モジュールが、L−nビットの初期値と平文と秘密鍵とを入力する第1のステップと、
前記並列処理暗号モジュールが、nビットの初期値を生成し、該生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する第2のステップと、
前記並列処理暗号モジュールが、前記入力した平文をn個に分割する第3のステップと、
前記並列処理暗号モジュールが、前記第2のステップにおいて生成したLビットの初期値を前記n個のストリーム暗号の暗号化器に出力するとともに、前記秘密鍵および該1/nに分割した平文を前記n個のストリーム暗号の暗号化器に出力する第4のステップと、
をコンピュータに実行させるためのプログラム。 n stream cipher encryptors;
A parallel processing cryptographic module for controlling the n stream cipher encryptors;
A ciphertext combining module that combines the n ciphertexts output from the n stream cipher encryptors and outputs a final ciphertext; A program for causing a computer to execute an encryption method,
A first step in which the parallel processing cryptographic module inputs an initial value of L- n bits, a plaintext, and a secret key;
The parallel processing cryptographic module generates an n-bit initial value, and combines the generated n-bit initial value and the input L- n-bit initial value to generate an L- bit initial value. Steps,
A third step in which the parallel processing cryptographic module divides the inputted plaintext into n pieces;
The parallel processing cryptographic module outputs the L- bit initial value generated in the second step to the n stream cipher encryptors, and the secret key and the plaintext divided into 1 / n are a fourth step of outputting to n stream cipher encryptors;
A program that causes a computer to execute.
n個のストリーム暗号の復号化器と、
該n個のストリーム暗号の復号化器を制御する並列処理復号モジュールと、
前記n個のストリーム暗号の復号化器から出力されるn個の平文を結合して最終的な平文を出力する平文結合モジュールと、
を備え、
前記並列処理復号モジュールが、L−nビットの初期値と暗号文と秘密鍵とを入力する第1のステップと、
前記並列処理復号モジュールが、該入力した暗号文からヘッダ情報を分離する第2のステップと、
前記並列処理復号モジュールが、該分離したヘッダ情報に基づいて、nビットの初期値を生成し、該生成したnビットの初期値と入力したL−nビットの初期値とを結合してLビットの初期値を生成する第3のステップと、
前記並列処理復号モジュールが、前記入力したヘッダ情報に基づいて、暗号文をn個に分割する第4のステップと、
前記並列処理復号モジュールが、前記第3のステップにおいて生成したLビットの初期値を前記n個のストリーム暗号の復号化器に出力するとともに、前記秘密鍵および該1/nに分割した暗号文を前記n個のストリーム暗号の復号化器に出力する第5のステップと、
をコンピュータに実行させるためのプログラム。 A program for causing a computer to execute a stream cipher decryption method in a stream cipher decryption device that decrypts a ciphertext encrypted by the stream cipher encryption device according to claim 4 ,
n stream cipher decryptors;
A parallel processing decryption module for controlling the n stream cipher decryptors;
A plaintext combining module that combines n plaintexts output from the n stream cipher decoders and outputs a final plaintext;
With
A first step in which the parallel processing decryption module inputs an initial value of L- n bits, a ciphertext, and a secret key;
A second step in which the parallel processing decryption module separates header information from the input ciphertext;
The parallel processing decoding module generates an n-bit initial value based on the separated header information, and combines the generated n-bit initial value with the input L− n-bit initial value to generate L bits A third step of generating an initial value of
A fourth step in which the parallel processing decryption module divides the ciphertext into n pieces based on the inputted header information;
The parallel processing decryption module outputs the initial value of the L bit generated in the third step to the decryptors of the n stream ciphers, and the ciphertext divided into the secret key and the 1 / n A fifth step of outputting to the n stream cipher decoders;
A program that causes a computer to execute.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011102086A JP5706751B2 (en) | 2011-04-28 | 2011-04-28 | Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011102086A JP5706751B2 (en) | 2011-04-28 | 2011-04-28 | Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012235288A JP2012235288A (en) | 2012-11-29 |
JP5706751B2 true JP5706751B2 (en) | 2015-04-22 |
Family
ID=47435198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011102086A Active JP5706751B2 (en) | 2011-04-28 | 2011-04-28 | Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5706751B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6236208B2 (en) * | 2013-03-25 | 2017-11-22 | 株式会社メガチップス | Stream cipher |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3864675B2 (en) * | 2000-03-09 | 2007-01-10 | 株式会社日立製作所 | Common key encryption device |
JP4912797B2 (en) * | 2006-08-30 | 2012-04-11 | 三菱電機株式会社 | ENCRYPTION DEVICE, DECRYPTION DEVICE, ENCRYPTION METHOD, DECRYPTION METHOD, AND PROGRAM |
US8090098B2 (en) * | 2006-11-13 | 2012-01-03 | Electronics And Telecommunications Research Institute | Method of generating message authentication code using stream cipher and authentication/encryption and authentication/decryption methods using stream cipher |
US20100306553A1 (en) * | 2009-06-01 | 2010-12-02 | Poletti Iii Joseph William | High-throughput cryptographic processing using parallel processing |
-
2011
- 2011-04-28 JP JP2011102086A patent/JP5706751B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2012235288A (en) | 2012-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2022508351A (en) | Privacy protection based on homomorphic encryption Multi-institutional data classification method | |
US9515818B2 (en) | Multi-block cryptographic operation | |
JP2010140026A (en) | Method and device for encryption chained mode | |
TW200828936A (en) | Encryption processor, encryption processing method, and computer program | |
JP7031580B2 (en) | Cryptographic device, encryption method, decryption device, and decryption method | |
Abd Ali et al. | Novel encryption algorithm for securing sensitive information based on feistel cipher | |
JP2023063430A5 (en) | ||
JP4909668B2 (en) | Hybrid encryption apparatus and hybrid encryption method | |
US9219606B2 (en) | Method and device for digital data blocks encryption and decryption | |
JP2012039180A (en) | Encryptor of stream encryption, decoder of stream encryption, encrypting method of stream encryption, decoding method of stream encryption, and program | |
JP5706751B2 (en) | Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program | |
JP4938430B2 (en) | Nonlinear function unit, stream cipher encryption apparatus, decryption apparatus, MAC generation apparatus, stream cipher encryption method, decryption method, MAC generation method, and program | |
EP3996321A1 (en) | Method for processing encrypted data | |
JP5489696B2 (en) | Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program | |
JP2011160229A (en) | Encryption device of stream cipher with authentication, decryption device of stream cipher with authentication, encryption method, decryption method, and program | |
JP5415020B2 (en) | Stream cipher encryption apparatus, decryption apparatus, MAC generation apparatus, stream cipher encryption method, decryption method, MAC generation method, and program | |
CN111740818A (en) | Data processing method, device, equipment and storage medium | |
JP5431190B2 (en) | Authenticated stream cipher encryption apparatus, authenticated stream cipher decryption apparatus, encryption method, decryption method, and program | |
JP2009037095A (en) | Data scrambling apparatus, data descrambling apparatus, data scrambling method, data descrambling method and program | |
JP2002108205A (en) | Block ciphering method and decoding method | |
JP2013098722A (en) | Ciphering device of stream cipher, deciphering device of stream cipher, ciphering method of stream cipher, deciphering method of stream cipher, and program | |
JP5559011B2 (en) | Stream cipher encryption apparatus, stream cipher encryption method and program | |
JP5801095B2 (en) | Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program | |
JP2010056848A (en) | Encryption apparatus, encryption method, program, and program storage medium | |
JP5882797B2 (en) | Stream encryption processing system, tamper resistant device, and stream encryption processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140228 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141209 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150204 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150224 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150227 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5706751 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |