JP5431190B2 - Authenticated stream cipher encryption apparatus, authenticated stream cipher decryption apparatus, encryption method, decryption method, and program - Google Patents
Authenticated stream cipher encryption apparatus, authenticated stream cipher decryption apparatus, encryption method, decryption method, and program Download PDFInfo
- Publication number
- JP5431190B2 JP5431190B2 JP2010020674A JP2010020674A JP5431190B2 JP 5431190 B2 JP5431190 B2 JP 5431190B2 JP 2010020674 A JP2010020674 A JP 2010020674A JP 2010020674 A JP2010020674 A JP 2010020674A JP 5431190 B2 JP5431190 B2 JP 5431190B2
- Authority
- JP
- Japan
- Prior art keywords
- shift register
- feedback shift
- stream cipher
- key sequence
- exclusive
- 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
本発明は、ストリーム暗号アルゴリズム本体の変更を行わずに、認証付きストリーム暗号へと拡張する認証付きストリーム暗号の暗号化装置、認証付きストリーム暗号の復号化装置、暗号化方法、復号化方法およびプログラムに関する。 The present invention relates to an encrypted stream cipher encryption apparatus, an authenticated stream cipher decryption apparatus, an encryption method, a decryption method, and a program that can be expanded to an authenticated stream cipher without changing the stream cipher algorithm main body. About.
近年、コンピュータを利用した様々なサービスが提供されている。多くのサービスに置いては、通信の秘匿を実現するため、暗号が利用される。暗号方式として最も一般的なものは、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.
前者は、最も一般的に用いられている方式であるが、後者の方が処理速度に優れるため、近年注目を集めつつある。一方、認証付き暗号という方式がある。これは、1つのアルゴリズムでメッセージ認証と暗号化を同時に実現しようとするアルゴリズムである(例えば、非特許文献1参照。)。 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. On the other hand, there is a method called authenticated encryption. This is an algorithm for simultaneously realizing message authentication and encryption with one algorithm (see, for example, Non-Patent Document 1).
しかしながら、従来は、ストリーム暗号を認証付き暗号にするためには、アルゴリズムの再設計が必要であったり、または、設計の段階から認証機能の組み込みを考慮する必要があった。さらには、認証付きストリーム暗号のほとんどすべてが攻撃により破られているという事実もあり、安全な認証付きストリーム暗号はほとんど無いという状況である。 However, conventionally, in order to change the stream cipher to an authenticated cipher, it has been necessary to redesign the algorithm, or to consider incorporating an authentication function from the design stage. Furthermore, there is also the fact that almost all authenticated stream ciphers have been broken by attacks, and there are almost no secure stream ciphers with authentication.
そこで、本発明は、上述の課題に鑑みてなされたものであり、ストリーム暗号アルゴリズム本体の変更を行わずに、認証付きストリーム暗号へと拡張する認証付きストリーム暗号の暗号化装置、認証付きストリーム暗号の復号化装置、暗号化方法、復号化方法およびプログラムを提供することを目的とする。 Therefore, the present invention has been made in view of the above-described problem, and an encrypted stream cipher encryption apparatus and an authenticated stream cipher that can be expanded to an authenticated stream cipher without changing the stream cipher algorithm main body. An object of the present invention is to provide a decryption device, an encryption method, a 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)本発明は、認証付きストリーム暗号の暗号化装置であって、鍵系列を生成する鍵系列生成手段(例えば、図1の鍵系列生成部20に相当)と、該生成した鍵系列を2つに分割する分割手段(例えば、図1の鍵系列分割部30に相当)と、該分割した一方の鍵系列と平文との排他的論理和演算を行って暗号文を生成する第1のXOR演算器(例えば、図1の第1のXOR演算器40に相当)と、メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタ(例えば、図1のフィードバックシフトレジスタ50に相当)と、該フィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行う第2のXOR演算器(例えば、図1の第2のXOR演算器60に相当)と、該第2のXOR演算器の出力データと平文と他方の鍵系列との排他的論理和演算を行い出力データを前記フィードバックシフトレジスタに出力する第3のXOR演算器と(例えば、図1の第3のXOR演算器70に相当)、前記フィードバックシフトレジスタから出力されるメッセージ認証子と前記生成した暗号文とを結合させる結合手段(例えば、図1の結合部80に相当)と、該結合された認証付きストリーム暗号を送信する送信手段(例えば、図1の送信部90に相当)と、を備えたことを特徴とする認証付きストリーム暗号の暗号化装置を提案している。
(1) The present invention is an encryption apparatus for stream cipher with authentication, comprising a key sequence generation means (for example, equivalent to the key
この発明によれば、鍵系列生成手段は、鍵系列を生成する。分割手段は、生成した鍵系列を2つに分割する。第1のXOR演算器は、分割した一方の鍵系列と平文との排他的論理和演算を行って暗号文を生成する。フィードバックシフトレジスタは、メッセージ認証子を作成するためのメモリである。第2のXOR演算器は、フィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行う。第3のXOR演算器は、第2のXOR演算器の出力データと平文と他方の鍵系列との排他的論理和演算を行い出力データをフィードバックシフトレジスタに出力する。結合手段は、フィードバックシフトレジスタから出力されるメッセージ認証子と生成した暗号文とを結合させる。送信手段は、結合された認証付きストリーム暗号を送信する。したがって、ストリーム暗号アルゴリズム本体の変更を行わずに、認証付きストリーム暗号を生成することができる。 According to this invention, the key sequence generation means generates a key sequence. The dividing means divides the generated key sequence into two. The first XOR operator performs an exclusive OR operation on one of the divided key sequences and the plaintext to generate a ciphertext. The feedback shift register is a memory for creating a message authenticator. The second XOR operator performs an exclusive OR operation on any two of the feedback shift registers. The third XOR operator performs an exclusive OR operation between the output data of the second XOR operator, the plaintext, and the other key sequence, and outputs the output data to the feedback shift register. The combining means combines the message authenticator output from the feedback shift register and the generated ciphertext. The transmitting means transmits the combined stream cipher with authentication. Therefore, an authenticated stream cipher can be generated without changing the stream cipher algorithm main body.
(2)本発明は、(1)の認証付きストリーム暗号の暗号化装置について、前記平文の入力が終了した後に、固定のビット列を入力して、前記フィードバックシフトレジスタを空回しすることを特徴とする認証付きストリーム暗号の暗号化装置を提案している。 (2) The present invention relates to the encryption device for stream cipher with authentication of (1), wherein after inputting the plaintext, a fixed bit string is input and the feedback shift register is idled. An encryption apparatus for stream cipher with authentication is proposed.
この発明によれば、平文の入力が終了した後に、固定のビット列を入力して、フィードバックシフトレジスタを空回しする。これにより、安全性を高めることができる。 According to the present invention, after the plaintext input is completed, a fixed bit string is input, and the feedback shift register is idled. Thereby, safety can be improved.
(3)本発明は、(1)の認証付きストリーム暗号の暗号化装置について、前記フィードバックシフトレジスタが線形フィードバックシフトレジスタであることを特徴とする認証付きストリーム暗号の暗号化装置を提案している。 (3) The present invention proposes an encrypted stream cipher encrypting apparatus according to (1), wherein the feedback shift register is a linear feedback shift register. .
この発明によれば、フィードバックシフトレジスタが線形フィードバックシフトレジスタである。したがって、簡易な構成と演算でメッセージ認証子を生成することができる。 According to the present invention, the feedback shift register is a linear feedback shift register. Therefore, the message authenticator can be generated with a simple configuration and calculation.
(4)本発明は、(1)の認証付きストリーム暗号の暗号化装置について、非線形関数を備え、前記フィードバックシフトレジスタが非線形フィードバックシフトレジスタであることを特徴とする認証付きストリーム暗号の暗号化装置を提案している。 (4) The encrypted stream cipher encrypting apparatus according to (1), wherein the encrypted stream cipher encrypting apparatus includes a non-linear function, and the feedback shift register is a non-linear feedback shift register. Has proposed.
この発明によれば、非線形関数を備え、フィードバックシフトレジスタが非線形フィードバックシフトレジスタである。つまり、線形フィードバックシフトレジスタの場合よりも構成等が複雑になるが、非線形フィードバックシフトレジスタを用いてもメッセージ認証子を生成することができる。 According to the present invention, a nonlinear function is provided, and the feedback shift register is a nonlinear feedback shift register. That is, the configuration is more complicated than in the case of the linear feedback shift register, but the message authenticator can be generated even if the nonlinear feedback shift register is used.
(5)本発明は、(1)の認証付きストリーム暗号の暗号化装置について、前記フィードバックシフトレジスタがワード単位である場合に出力データに係数を乗じることを特徴とする認証付きストリーム暗号の暗号化装置を提案している。 (5) The present invention relates to the encrypted stream cipher encrypting apparatus according to (1), wherein when the feedback shift register is in units of words, the output data is multiplied by a coefficient. A device is proposed.
この発明によれば、フィードバックシフトレジスタがワード単位である場合に出力データに係数を乗じる。これにより、ビット単位の処理を行うことができる。 According to the present invention, when the feedback shift register is in units of words, the output data is multiplied by the coefficient. As a result, processing in bit units can be performed.
(6)本発明は、認証付きストリーム暗号を復号する認証付きストリーム暗号の復号化装置であって、前記認証付きストリーム暗号を受信する受信手段(例えば、図3の受信部110に相当)と、前記受信した認証付きストリーム暗号から、暗号文を分離する分離手段(例えば、図3の分離部120に相当)と、鍵系列を生成する鍵系列生成手段(例えば、図3の鍵系列生成部20に相当)と、該生成した鍵系列を2つに分割する分割手段(例えば、図3の鍵系列分割部30に相当)と、該分割した一方の鍵系列と暗号文との排他的論理和演算を行って平文を生成する第1のXOR演算器(例えば、図3の第1のXOR演算器40に相当)と、メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタ(例えば、図3のフィードバックシフトレジスタ50に相当)と、該フィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行う第2のXOR演算器(例えば、図3の第2のXOR演算器60に相当)と、該第2のXOR演算器の出力データと平文と他方の鍵系列との排他的論理和演算を行い出力データを前記フィードバックシフトレジスタに出力する第3のXOR演算器(例えば、図3の第3のXOR演算器100に相当)と、を備えたことを特徴とする認証付きストリーム暗号の復号化装置を提案している。
(6) The present invention is an authentication stream cipher decryption device for decrypting an authenticated stream cipher, and a receiving means for receiving the authenticated stream cipher (for example, corresponding to the
この発明によれば、受信手段は、認証付きストリーム暗号を受信する。分離手段は、受信した認証付きストリーム暗号から、暗号文を分離する。鍵系列生成手段は、鍵系列を生成する。分割手段は、生成した鍵系列を2つに分割する。第1のXOR演算器は、分割した一方の鍵系列と暗号文との排他的論理和演算を行って平文を生成する。フィードバックシフトレジスタは、メッセージ認証子を作成するためのメモリである。第2のXOR演算器は、フィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行う。第3のXOR演算器は、第2のXOR演算器の出力データと平文と他方の鍵系列との排他的論理和演算を行い出力データをフィードバックシフトレジスタに出力する。したがって、ストリーム暗号アルゴリズム本体の変更を行わずに、認証付きストリーム暗号を復号することができる。 According to this invention, the receiving means receives the stream cipher with authentication. The separating means separates the ciphertext from the received authenticated stream cipher. The key sequence generation unit generates a key sequence. The dividing means divides the generated key sequence into two. The first XOR operator performs an exclusive OR operation on one of the divided key sequences and the ciphertext to generate plaintext. The feedback shift register is a memory for creating a message authenticator. The second XOR operator performs an exclusive OR operation on any two of the feedback shift registers. The third XOR operator performs an exclusive OR operation between the output data of the second XOR operator, the plaintext, and the other key sequence, and outputs the output data to the feedback shift register. Therefore, the authenticated stream cipher can be decrypted without changing the stream cipher algorithm main body.
(7)本発明は、(6)の認証付きストリーム暗号の復号化装置について、前記平文の入力が終了した後に、固定のビット列を入力して、前記フィードバックシフトレジスタを空回しすることを特徴とする認証付きストリーム暗号の復号化装置を提案している。 (7) The present invention relates to the decryption apparatus for authenticated stream cipher according to (6), wherein after the plaintext input is completed, a fixed bit string is input and the feedback shift register is idled. This proposes a decryption apparatus for stream cipher with authentication.
この発明によれば、平文の入力が終了した後に、固定のビット列を入力して、フィードバックシフトレジスタを空回しする。これにより、安全性を高めることができる。 According to the present invention, after the plaintext input is completed, a fixed bit string is input, and the feedback shift register is idled. Thereby, safety can be improved.
(8)本発明は、(6)の認証付きストリーム暗号の復号化装置について、前記フィードバックシフトレジスタが線形フィードバックシフトレジスタであることを特徴とする認証付きストリーム暗号の復号化装置を提案している。 (8) The present invention proposes a decryption apparatus for authenticated stream ciphers, wherein the feedback shift register is a linear feedback shift register for the decryption apparatus for authenticated stream ciphers of (6). .
この発明によれば、フィードバックシフトレジスタが線形フィードバックシフトレジスタである。したがって、簡易な構成と演算でメッセージ認証子を生成することができる。 According to the present invention, the feedback shift register is a linear feedback shift register. Therefore, the message authenticator can be generated with a simple configuration and calculation.
(9)本発明は、(6)の認証付きストリーム暗号の復号化装置について、非線形関数を備え、前記フィードバックシフトレジスタが非線形フィードバックシフトレジスタであることを特徴とする認証付きストリーム暗号の復号化装置を提案している。 (9) The present invention relates to the apparatus for decrypting authenticated stream ciphers of (6), comprising a nonlinear function, wherein the feedback shift register is a nonlinear feedback shift register. Has proposed.
この発明によれば、非線形関数を備え、フィードバックシフトレジスタが非線形フィードバックシフトレジスタである。つまり、線形フィードバックシフトレジスタの場合よりも構成等が複雑になるが、非線形フィードバックシフトレジスタを用いてもメッセージ認証子を生成することができる。 According to the present invention, a nonlinear function is provided, and the feedback shift register is a nonlinear feedback shift register. That is, the configuration is more complicated than in the case of the linear feedback shift register, but the message authenticator can be generated even if the nonlinear feedback shift register is used.
(10)本発明は、(6)の認証付きストリーム暗号の復号化装置について、前記フィードバックシフトレジスタがワード単位である場合に出力データに係数を乗じることを特徴とする認証付きストリーム暗号の復号化装置を提案している。 (10) The present invention relates to the decryption apparatus for authenticated stream cipher according to (6), wherein when the feedback shift register is in units of words, the output data is multiplied by a coefficient. A device is proposed.
この発明によれば、フィードバックシフトレジスタがワード単位である場合に出力データに係数を乗じる。これにより、ビット単位の処理を行うことができる。 According to the present invention, when the feedback shift register is in units of words, the output data is multiplied by the coefficient. As a result, processing in bit units can be performed.
(11)本発明は、認証付きストリーム暗号の暗号化装置における暗号化方法であって、初期鍵と初期ベクトルを読み込む第1のステップ(例えば、図2のステップS101に相当)と、初期化処理を実施する第2のステップ(例えば、図2のステップS102に相当)と、鍵系列生成処理を実行し、鍵系列を生成する第3のステップ(例えば、図2のステップS103に相当)と、該生成した鍵系列を2分割する第4のステップ(例えば、図2のステップS104に相当)と、該分割した一方の鍵系列と平文との排他的論理和演算を行い、暗号文を出力する第5のステップ(例えば、図2のステップS105に相当)と、メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行ったデータと前記分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、前記フィードバックシフトレジスタに入力する第6のステップ(例えば、図2のステップS106に相当)と、平文の入力終了後に、固定のビット列を入力して前記フィードバックシフトレジスタの空回しを行ってメッセージ認証子を出力する第7のステップ(例えば、図2のステップS107に相当)と、該メッセージ認証子と前記生成した暗号文とを結合する第8のステップ(例えば、図2のステップS108に相当)と、該結合した前記メッセージ認証子と前記生成した暗号文とを送信する第9のステップ(例えば、図2のステップS109に相当)と、を備えたことを特徴とする暗号化方法を提案している。 (11) The present invention is an encryption method in an encryption apparatus for an authenticated stream cipher, and includes a first step (for example, corresponding to step S101 in FIG. 2) for reading an initial key and an initial vector, and an initialization process A second step (for example, corresponding to step S102 in FIG. 2), a third step for executing key sequence generation processing and generating a key sequence (for example, corresponding to step S103 in FIG. 2), A fourth step (for example, corresponding to step S104 in FIG. 2) for dividing the generated key sequence into two, an exclusive OR operation between the one key sequence and the plaintext, and outputting a ciphertext Exclusive of any two of the fifth step (for example, equivalent to step S105 in FIG. 2) and the feedback shift register that is a memory for creating the message authenticator A sixth step (for example, corresponding to step S106 in FIG. 2) is performed by performing an exclusive OR operation on the data on which the OR operation is performed, the other divided key sequence, and plaintext, and sequentially inputting them to the feedback shift register. ), And after inputting plaintext, a seventh step (for example, corresponding to step S107 in FIG. 2) that inputs a fixed bit string, performs idle rotation of the feedback shift register, and outputs a message authenticator, An eighth step of combining the message authenticator and the generated ciphertext (for example, corresponding to step S108 in FIG. 2), and a ninth step of transmitting the combined message authenticator and the generated ciphertext And an encryption method characterized by comprising steps (e.g., corresponding to step S109 in FIG. 2).
この発明によれば、初期鍵と初期ベクトルを読み込み、初期化処理を実施する。次に、鍵系列生成処理を実行し、鍵系列を生成する。生成した鍵系列を2分割し、分割した一方の鍵系列と平文との排他的論理和演算を行い、暗号文を出力する。メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行ったデータと分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、フィードバックシフトレジスタに入力する。平文の入力終了後に、固定のビット列を入力してフィードバックシフトレジスタの空回しを行ってメッセージ認証子を出力する。そして、メッセージ認証子と生成した暗号文とを結合し、結合したメッセージ認証子と生成した暗号文とを送信する。したがって、ストリーム暗号アルゴリズム本体の変更を行わずに、認証付きストリーム暗号を生成することができる。 According to the present invention, the initial key and the initial vector are read and the initialization process is performed. Next, a key sequence generation process is executed to generate a key sequence. The generated key sequence is divided into two, an exclusive OR operation is performed on one of the divided key sequences and the plaintext, and a ciphertext is output. Of the feedback shift register, which is a memory for creating a message authenticator, perform an exclusive OR operation on the data obtained by performing an exclusive OR operation on any two registers, the other divided key sequence, and plaintext. Are sequentially input to the feedback shift register. After the plaintext is input, a fixed bit string is input, the feedback shift register is idled, and a message authenticator is output. Then, the message authenticator and the generated ciphertext are combined, and the combined message authenticator and the generated ciphertext are transmitted. Therefore, an authenticated stream cipher can be generated without changing the stream cipher algorithm main body.
(12)本発明は、認証付きストリーム暗号の復号化装置における復号化方法であって、前記認証付きストリーム暗号を受信する第1のステップ(例えば、図4のステップS201に相当)と、前記受信した認証付きストリーム暗号から、暗号文を分離する第2のステップ(例えば、図4のステップS202に相当)と、初期鍵と初期ベクトルを読み込む第3のステップ(例えば、図4のステップS203に相当)と、初期化処理を実施する第4のステップ(例えば、図4のステップS204に相当)と、鍵系列生成処理を実行し、鍵系列を生成する第5のステップ(例えば、図4のステップS205に相当)と、該生成した鍵系列を2分割する第6のステップ(例えば、図4のステップS206に相当)と、該分割した一方の鍵系列と暗号文との排他的論理和演算を行い、平文を出力する第7のステップ(例えば、図4のステップS207に相当)と、メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行ったデータと前記分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、前記フィードバックシフトレジスタに入力する第8のステップ(例えば、図4のステップS208に相当)と、平文の入力終了後に、固定のビット列を入力して前記フィードバックシフトレジスタの空回しを行ってメッセージ認証子を出力する第9のステップ(例えば、図4のステップS209に相当)と、該出力したメッセージ認証子と前記分離したメッセージ認証子が一致するか否かを検証する第10のステップ(例えば、図4のステップS210に相当)と、を備えたことを特徴とする復号化方法を提案している。 (12) The present invention is a decryption method in a decryption apparatus for an authenticated stream cipher, and includes a first step (for example, corresponding to step S201 in FIG. 4) for receiving the authentic stream cipher and the reception The second step of separating the ciphertext from the authenticated stream cipher (for example, equivalent to step S202 of FIG. 4) and the third step of reading the initial key and initial vector (for example, equivalent to step S203 of FIG. 4) ), A fourth step (for example, corresponding to step S204 in FIG. 4) for performing the initialization process, and a fifth step (for example, step in FIG. 4) for executing the key series generation process and generating the key series 6) (corresponding to step S206 in FIG. 4), one of the divided key sequences and the encryption Among the seventh step (for example, corresponding to step S207 in FIG. 4) and a feedback shift register that is a memory for creating a message authenticator. An eighth step (for example, FIG. 5) of performing an exclusive OR operation on data obtained by performing an exclusive OR operation on two registers, the other divided key sequence, and plaintext, and sequentially inputting them to the feedback shift register. And the ninth step (for example, step S209 in FIG. 4) of inputting a fixed bit string, emptying the feedback shift register, and outputting a message authenticator. And the tenth to verify whether the output message authenticator and the separated message authenticator match. Step (e.g., corresponding to step S210 in FIG. 4) proposes a decoding method characterized by comprising a, a.
この発明によれば、認証付きストリーム暗号を受信し、受信した認証付きストリーム暗号から、暗号文を分離する。次に、初期鍵と初期ベクトルを読み込み、初期化処理を実施する。さらに、鍵系列生成処理を実行し、鍵系列を生成する。生成した鍵系列を2分割し、分割した一方の鍵系列と暗号文との排他的論理和演算を行い、平文を出力する。メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行ったデータと分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、フィードバックシフトレジスタに入力する。平文の入力終了後に、固定のビット列を入力してフィードバックシフトレジスタの空回しを行ってメッセージ認証子を出力する。そして、出力したメッセージ認証子と分離したメッセージ認証子が一致するか否かを検証する。したがって、ストリーム暗号アルゴリズム本体の変更を行わずに、認証付きストリーム暗号を復号することができ、メッセージ認証子を確認することにより認証も行うことができる。 According to the present invention, the authenticated stream cipher is received, and the ciphertext is separated from the received authenticated stream cipher. Next, an initial key and an initial vector are read and an initialization process is performed. Furthermore, a key sequence generation process is executed to generate a key sequence. The generated key sequence is divided into two, an exclusive OR operation is performed on one of the divided key sequences and the ciphertext, and a plaintext is output. Of the feedback shift register, which is a memory for creating a message authenticator, perform an exclusive OR operation on the data obtained by performing an exclusive OR operation on any two registers, the other divided key sequence, and plaintext. Are sequentially input to the feedback shift register. After the plaintext is input, a fixed bit string is input, the feedback shift register is idled, and a message authenticator is output. Then, it is verified whether or not the output message authenticator matches the separated message authenticator. Therefore, the stream cipher with authentication can be decrypted without changing the stream cipher algorithm main body, and authentication can be performed by checking the message authenticator.
(13)本発明は、認証付きストリーム暗号の暗号化装置における暗号化方法を実行するためのプログラムであって、初期鍵と初期ベクトルを読み込む第1のステップ(例えば、図2のステップS101に相当)と、初期化処理を実施する第2のステップ(例えば、図2のステップS102に相当)と、鍵系列生成処理を実行し、鍵系列を生成する第3のステップ(例えば、図2のステップS103に相当)と、該生成した鍵系列を2分割する第4のステップ(例えば、図2のステップS104に相当)と、該分割した一方の鍵系列と平文との排他的論理和演算を行い、暗号文を出力する第5のステップ(例えば、図2のステップS105に相当)と、メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行ったデータと前記分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、前記フィードバックシフトレジスタに入力する第6のステップ(例えば、図2のステップS106に相当)と、平文の入力終了後に、固定のビット列を入力して前記フィードバックシフトレジスタの空回しを行ってメッセージ認証子を出力する第7のステップ(例えば、図2のステップS107に相当)と、該メッセージ認証子と前記生成した暗号文とを結合する第8のステップ(例えば、図2のステップS108に相当)と、該結合した前記メッセージ認証子と前記生成した暗号文とを送信する第9のステップ(例えば、図2のステップS109に相当)と、を実行するためのプログラムを提案している。 (13) The present invention is a program for executing an encryption method in an encrypted stream cipher encryption apparatus, and is a first step for reading an initial key and an initial vector (for example, corresponding to step S101 in FIG. 2) ), A second step (for example, corresponding to step S102 of FIG. 2) for executing the initialization process, and a third step (for example, step of FIG. 2) for executing the key series generation process and generating the key series S103), a fourth step (for example, equivalent to step S104 in FIG. 2) for dividing the generated key sequence into two, and an exclusive OR operation between the one key sequence and the plaintext. Among the fifth step (for example, corresponding to step S105 in FIG. 2) for outputting the ciphertext and the feedback shift register that is a memory for creating the message authenticator, A sixth step (for example, performing an exclusive OR operation of the data obtained by performing the exclusive OR operation of two arbitrary registers, the other divided key sequence, and plaintext, and sequentially inputting them to the feedback shift register (for example, , Corresponding to step S106 in FIG. 2), and after completion of the plaintext input, a seventh step (for example, in FIG. 2) is performed by inputting a fixed bit string, emptying the feedback shift register, and outputting a message authenticator. Equivalent to step S107), the eighth step of combining the message authenticator and the generated ciphertext (for example, equivalent to step S108 of FIG. 2), the combined message authenticator and the generated ciphertext A program for executing a ninth step (for example, corresponding to step S109 in FIG. 2) for transmitting a sentence is proposed.
この発明によれば、初期鍵と初期ベクトルを読み込み、初期化処理を実施する。次に、鍵系列生成処理を実行し、鍵系列を生成する。生成した鍵系列を2分割し、分割した一方の鍵系列と平文との排他的論理和演算を行い、暗号文を出力する。メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行ったデータと分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、フィードバックシフトレジスタに入力する。平文の入力終了後に、固定のビット列を入力してフィードバックシフトレジスタの空回しを行ってメッセージ認証子を出力する。そして、メッセージ認証子と生成した暗号文とを結合し、結合したメッセージ認証子と生成した暗号文とを送信する。したがって、ストリーム暗号アルゴリズム本体の変更を行わずに、認証付きストリーム暗号を生成することができる。 According to the present invention, the initial key and the initial vector are read and the initialization process is performed. Next, a key sequence generation process is executed to generate a key sequence. The generated key sequence is divided into two, an exclusive OR operation is performed on one of the divided key sequences and the plaintext, and a ciphertext is output. Of the feedback shift register, which is a memory for creating a message authenticator, perform an exclusive OR operation on the data obtained by performing an exclusive OR operation on any two registers, the other divided key sequence, and plaintext. Are sequentially input to the feedback shift register. After the plaintext is input, a fixed bit string is input, the feedback shift register is idled, and a message authenticator is output. Then, the message authenticator and the generated ciphertext are combined, and the combined message authenticator and the generated ciphertext are transmitted. Therefore, an authenticated stream cipher can be generated without changing the stream cipher algorithm main body.
(14)本発明は、認証付きストリーム暗号の復号化装置における復号化方法を実行するためのプログラムであって、前記認証付きストリーム暗号を受信する第1のステップ(例えば、図4のステップS201に相当)と、前記受信した認証付きストリーム暗号から、暗号文を分離する第2のステップ(例えば、図4のステップS202に相当)と、初期鍵と初期ベクトルを読み込む第3のステップ(例えば、図4のステップS203に相当)と、初期化処理を実施する第4のステップ(例えば、図4のステップS204に相当)と、鍵系列生成処理を実行し、鍵系列を生成する第5のステップ(例えば、図4のステップS205に相当)と、該生成した鍵系列を2分割する第6のステップ(例えば、図4のステップS206に相当)と、該分割した一方の鍵系列と暗号文との排他的論理和演算を行い、平文を出力する第7のステップ(例えば、図4のステップS107に相当)と、メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行ったデータと前記分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、前記フィードバックシフトレジスタに入力する第8のステップ(例えば、図4のステップS208に相当)と、平文の入力終了後に、固定のビット列を入力して前記フィードバックシフトレジスタの空回しを行ってメッセージ認証子を出力する第9のステップ(例えば、図4のステップS209に相当)と、該出力したメッセージ認証子と前記分離したメッセージ認証子が一致するか否かを検証する第10のステップ(例えば、図4のステップS210に相当)と、を実行するためのプログラムを提案している。 (14) The present invention is a program for executing a decryption method in a decryption apparatus for an authenticated stream cipher, and includes a first step (for example, in step S201 in FIG. Equivalent), a second step of separating the ciphertext from the received stream cipher with authentication (eg, equivalent to step S202 of FIG. 4), and a third step of reading the initial key and initial vector (eg, FIG. 4) (corresponding to step S203 of FIG. 4), a fourth step of executing initialization processing (for example, corresponding to step S204 of FIG. 4), and a fifth step of executing key sequence generation processing to generate a key sequence ( For example, corresponding to step S205 in FIG. 4), a sixth step (for example, corresponding to step S206 in FIG. 4) for dividing the generated key sequence into two, A seventh step (for example, corresponding to step S107 in FIG. 4) that performs an exclusive OR operation on one of the divided key sequences and the ciphertext and outputs a plaintext, and a memory for creating a message authenticator Among the feedback shift registers, the exclusive OR operation of the data obtained by performing the exclusive OR operation of any two registers, the other divided key sequence, and the plaintext is performed and sequentially input to the feedback shift register. The eighth step (for example, corresponding to step S208 in FIG. 4), and after completion of plaintext input, a fixed bit string is input, the feedback shift register is idled, and a message authenticator is output. Step (for example, corresponding to step S209 in FIG. 4) matches the output message authenticator and the separated message authenticator. 10th step (e.g., corresponding to step S210 of FIG. 4) for verifying whether proposes a program for executing a, a.
この発明によれば、認証付きストリーム暗号を受信し、受信した認証付きストリーム暗号から、暗号文を分離する。次に、初期鍵と初期ベクトルを読み込み、初期化処理を実施する。さらに、鍵系列生成処理を実行し、鍵系列を生成する。生成した鍵系列を2分割し、分割した一方の鍵系列と暗号文との排他的論理和演算を行い、平文を出力する。メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行ったデータと分割した他方の鍵系列と暗号文との排他的論理和演算を行い、順次、フィードバックシフトレジスタに入力する。暗号文の入力終了後に、固定のビット列を入力してフィードバックシフトレジスタの空回しを行ってメッセージ認証子を出力する。そして、出力したメッセージ認証子と分離したメッセージ認証子が一致するか否かを検証する。したがって、ストリーム暗号アルゴリズム本体の変更を行わずに、認証付きストリーム暗号を復号することができ、メッセージ認証子を確認することにより認証も行うことができる。 According to the present invention, the authenticated stream cipher is received, and the ciphertext is separated from the received authenticated stream cipher. Next, an initial key and an initial vector are read and an initialization process is performed. Furthermore, a key sequence generation process is executed to generate a key sequence. The generated key sequence is divided into two, an exclusive OR operation is performed on one of the divided key sequences and the ciphertext, and a plaintext is output. Of the feedback shift register, which is a memory for creating a message authenticator, the exclusive OR operation of the data obtained by performing the exclusive OR operation of any two registers and the other divided key sequence and the ciphertext is performed. And sequentially input to the feedback shift register. After the ciphertext is input, a fixed bit string is input, the feedback shift register is rotated, and a message authenticator is output. Then, it is verified whether or not the output message authenticator matches the separated message authenticator. Therefore, the stream cipher with authentication can be decrypted without changing the stream cipher algorithm main body, and authentication can be performed by checking the message authenticator.
本発明によれば、ストリーム暗号アルゴリズム本体の変更を行わずに、認証付きストリーム暗号を生成することができるという効果がある。また、ストリーム暗号アルゴリズム本体の変更を行わずに、認証付きストリーム暗号を復号することができ、メッセージ認証子を確認することにより認証も行うことができるという効果がある。 According to the present invention, it is possible to generate an authenticated stream cipher without changing the stream cipher algorithm main body. Further, there is an effect that the stream cipher with authentication can be decrypted without changing the stream cipher algorithm main body, and authentication can be performed by checking the message authenticator.
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
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に示すように、初期化処理部10と、鍵系列生成部20と、鍵系列分割部30と、第1のXOR演算器40と、フィードバックシフトレジスタ50と、第2のXOR演算器60と、第3のXOR演算器70と、結合部80と、送信部90とから構成されている。
<Configuration of encryption device for stream cipher with authentication>
As shown in FIG. 1, the encryption apparatus for stream cipher with authentication according to the present embodiment includes an
初期化処理部10は、初期鍵と初期ベクトルを読み込んで初期化処理を行う。鍵系列生成部20は、鍵系列生成処理を実行して鍵系列を生成する。鍵系列分割部30は、生成した鍵系列を2つに分割する。ここで、一方は、暗号化用に、もう一方は、メッセージ認証子作成用に用いられる。
The
第1のXOR演算器40は、分割した一方の鍵系列と平文との排他的論理和演算を行って暗号文を生成する。フィードバックシフトレジスタ50は、メッセージ認証子を作成するためのメモリであり、線形フィードバックシフトレジスタであっても、非線形フィードバックシフトレジスタであってもよい。また、フィードバックシフトレジスタ50は、メッセージ認証子と同じ長さを持ち、フィードバックシフトレジスタ50がワード単位となる場合は、係数αを乗じることで、ビット単位のフィードバックシフトレジスタを構成することができる。
The
第2のXOR演算器60は、フィードバックシフトレジスタ50のうち、任意の2つのレジスタの排他的論理和演算を行う。第3のXOR演算器70は、第2のXOR演算器60の出力データと平文と他方の鍵系列との排他的論理和演算を行い、出力データをフィードバックシフトレジスタ50に出力する。
The
結合部80は、フィードバックシフトレジスタ50から出力されるメッセージ認証子と生成した暗号文とを結合させる。送信部90は、結合された認証付きストリーム暗号を復号化装置に送信する。
The combining
<認証付きストリーム暗号の暗号化装置の処理>
図2を用いて、本実施形態に係る認証付きストリーム暗号の暗号化装置の処理について説明する。
<Processing of encryption device for authenticated stream cipher>
With reference to FIG. 2, processing of the encryption apparatus for the stream cipher with authentication according to the present embodiment will be described.
まず、初期化処理部10は、初期鍵と初期ベクトルを読み込み(ステップS101)、初期化処理を実施する(ステップS102)。鍵系列生成部20は、鍵系列生成処理を実行し、鍵系列を生成する(ステップS103)。そして、鍵系列分割部30は、生成した鍵系列を2分割する(ステップS104)。
First, the
第1のXOR演算器40は、分割した一方の鍵系列と平文との排他的論理和演算を行い、暗号文を出力する(ステップS105)。また、第3のXOR演算器70は、メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタ50のうち、任意の2つのレジスタの排他的論理和演算を行ったデータと分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、フィードバックシフトレジスタ50に入力する(ステップS106)。
The
平文の入力終了後に、固定のビット列を入力してフィードバックシフトレジスタ50の空回しを行ってメッセージ認証子を出力する(ステップS107)。そして、結合部80がメッセージ認証子と生成した暗号文とを結合し(ステップS108)、送信部90が結合したメッセージ認証子と生成した暗号文とを送信する(ステップS109)。
After the plaintext input is completed, a fixed bit string is input, the
したがって、以上より、ストリーム暗号アルゴリズム本体の変更を行わずに、認証付きストリーム暗号を生成することができる。 Therefore, the stream cipher with authentication can be generated without changing the stream cipher algorithm main body.
<認証付きストリーム暗号の復号化装置の構成>
本実施形態に係る認証付きストリーム暗号の復号化装置は、図3に示すように、初期化処理部10と、鍵系列生成部20と、鍵系列分割部30と、第1のXOR演算器40と、フィードバックシフトレジスタ50と、第2のXOR演算器60と、第3のXOR演算器100と、受信部110と、分離部120と、検証部130とから構成されている。なお、上記の認証付きストリーム暗号の暗号化装置と同一の符号を付す構成要素については、同一の機能を有するため、その詳細な説明は、省略する。
<Configuration of Decryption Apparatus for Stream Cipher with Authentication>
As shown in FIG. 3, the decryption apparatus for authenticated stream cipher according to the present embodiment includes an
第3のXOR演算器100は、第2のXOR演算器60の出力データと平文と他方の鍵系列との排他的論理和演算を行い、出力データをフィードバックシフトレジスタ50に出力する。受信部110は、認証付きストリーム暗号の暗号化装置から認証付きストリーム暗号を受信する。
The
分離部120は、受信した認証付きストリーム暗号を暗号文とメッセージ認証子に分離する。検証部130は、フィードバックシフトレジスタ50から出力されるメッセージ認証子と、分離して得られたメッセージ認証子とを比較して、一致するか否かを検証する。
The
<認証付きストリーム暗号の復号化装置の処理>
図4を用いて、本実施形態に係る認証付きストリーム暗号の復号化装置の処理について説明する。
<Processing of Decryption Device for Stream Cipher with Authentication>
With reference to FIG. 4, the processing of the decryption apparatus for the stream cipher with authentication according to the present embodiment will be described.
まず、受信部110は、認証付きストリーム暗号を受信し(ステップS201)、分離部120が受信した認証付きストリーム暗号から、暗号文を分離する(ステップS202)。次に、初期化処理部10は、初期鍵と初期ベクトルを読み込み(ステップS203)、初期化処理を実施する(ステップS204)。鍵系列生成部20は、鍵系列生成処理を実行し、鍵系列を生成する(ステップS205)。そして、鍵系列分割部30は、生成した鍵系列を2分割する(ステップS206)。
First, the receiving
第1のXOR演算器40は、分割した一方の鍵系列と暗号文との排他的論理和演算を行い、平文を出力する(ステップS207)。また、第3のXOR演算器100は、メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタ50のうち、任意の2つのレジスタの排他的論理和演算を行ったデータと分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、フィードバックシフトレジスタ50に入力する(ステップS208)。
The
平文の入力終了後に、固定のビット列を入力してフィードバックシフトレジスタ50の空回しを行ってメッセージ認証子を出力する(ステップS209)。そして、出力したメッセージ認証子と分離したメッセージ認証子とが一致するか否かを検証部130が検証する(ステップS210)。
After the plaintext is input, a fixed bit string is input, the
したがって、以上より、ストリーム暗号アルゴリズム本体の変更を行わずに、認証付きストリーム暗号を復号することができ、メッセージ認証子を確認することにより認証も行うことができる。 Accordingly, the stream cipher with authentication can be decrypted without changing the stream cipher algorithm main body, and authentication can be performed by checking the message authenticator.
なお、認証付きストリーム暗号の暗号化装置および認証付きストリーム暗号の復号化装置の処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムを認証付きストリーム暗号の暗号化装置および認証付きストリーム暗号の復号化装置に読み込ませ、実行することによって本発明の認証付きストリーム暗号の暗号化装置および認証付きストリーム暗号の復号化装置を実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。 Note that the processing of the authentication stream cipher encryption apparatus and the authentication stream cipher decryption apparatus is recorded on a computer-readable recording medium, and the program recorded on the recording medium is stored in the authentication stream cipher encryption apparatus and The authentication stream cipher encryption apparatus and the authentication stream cipher decryption apparatus according to the present invention can be realized by causing the authentication stream cipher decryption apparatus to read and execute the authentication. 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.
10;初期化処理部
20;鍵系列生成部
30;鍵系列分割部
40;第1のXOR演算器
50;フィードバックシフトレジスタ
60;第2のXOR演算器
70;第3のXOR演算器
80;結合部
90;送信部
100;第3のXOR演算器
110;受信部
120;分離部
130;検証部
DESCRIPTION OF
Claims (14)
鍵系列を生成する鍵系列生成手段と、
該生成した鍵系列を2つに分割する分割手段と、
該分割した一方の鍵系列と平文との排他的論理和演算を行って暗号文を生成する第1のXOR演算器と、
メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタと、
該フィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行う第2のXOR演算器と、
該第2のXOR演算器の出力データと平文と他方の鍵系列との排他的論理和演算を行い出力データを前記フィードバックシフトレジスタに出力する第3のXOR演算器と、
前記フィードバックシフトレジスタから出力されるメッセージ認証子と前記生成した暗号文とを結合させる結合手段と、
該結合された認証付きストリーム暗号を送信する送信手段と、
を備えたことを特徴とする認証付きストリーム暗号の暗号化装置。 An encryption device for an authenticated stream cipher,
Key sequence generation means for generating a key sequence;
Dividing means for dividing the generated key sequence into two;
A first XOR operator that performs an exclusive OR operation between the one of the divided key sequences and the plaintext to generate a ciphertext;
A feedback shift register which is a memory for creating a message authenticator;
A second XOR operator that performs an exclusive OR operation on any two of the feedback shift registers;
A third XOR operator that performs an exclusive OR operation between the output data of the second XOR operator, the plaintext, and the other key sequence, and outputs the output data to the feedback shift register;
Combining means for combining the message authenticator output from the feedback shift register and the generated ciphertext;
Transmitting means for transmitting the combined stream cipher with authentication;
An apparatus for encrypting stream cipher with authentication, comprising:
前記認証付きストリーム暗号を受信する受信手段と、
前記受信した認証付きストリーム暗号から、暗号文を分離する分離手段と、
鍵系列を生成する鍵系列生成手段と、
該生成した鍵系列を2つに分割する分割手段と、
該分割した一方の鍵系列と暗号文との排他的論理和演算を行って平文を生成する第1のXOR演算器と、
メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタと、
該フィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行う第2のXOR演算器と、
該第2のXOR演算器の出力データと平文と他方の鍵系列との排他的論理和演算を行い出力データを前記フィードバックシフトレジスタに出力する第3のXOR演算器と、
を備えたことを特徴とする認証付きストリーム暗号の復号化装置。 An apparatus for decrypting an authenticated stream cipher that decrypts an authenticated stream cipher,
Receiving means for receiving the authenticated stream cipher,
Separating means for separating the ciphertext from the received stream cipher with authentication;
Key sequence generation means for generating a key sequence;
Dividing means for dividing the generated key sequence into two;
A first XOR operator that performs an exclusive OR operation between the divided one key sequence and ciphertext to generate plaintext;
A feedback shift register which is a memory for creating a message authenticator;
A second XOR operator that performs an exclusive OR operation on any two of the feedback shift registers;
A third XOR operator that performs an exclusive OR operation between the output data of the second XOR operator, the plaintext, and the other key sequence, and outputs the output data to the feedback shift register;
An apparatus for decrypting authenticated stream ciphers, comprising:
初期鍵と初期ベクトルを読み込む第1のステップと、
初期化処理を実施する第2のステップと、
鍵系列生成処理を実行し、鍵系列を生成する第3のステップと、
該生成した鍵系列を2分割する第4のステップと、
該分割した一方の鍵系列と平文との排他的論理和演算を行い、暗号文を出力する第5のステップと、
メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行ったデータと前記分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、前記フィードバックシフトレジスタに入力する第6のステップと、
平文の入力終了後に、固定のビット列を入力して前記フィードバックシフトレジスタの空回しを行ってメッセージ認証子を出力する第7のステップと、
該メッセージ認証子と前記生成した暗号文とを結合する第8のステップと、
該結合した前記メッセージ認証子と前記生成した暗号文とを送信する第9のステップと、
を備えたことを特徴とする暗号化方法。 An encryption method in an encrypted stream cipher encryption device,
A first step of reading an initial key and an initial vector;
A second step of performing an initialization process;
Executing a key sequence generation process to generate a key sequence;
A fourth step of dividing the generated key sequence into two parts;
A fifth step of performing an exclusive OR operation of the one divided key sequence and the plaintext, and outputting a ciphertext;
Of the feedback shift register, which is a memory for creating a message authenticator, the exclusive OR operation of the data obtained by performing the exclusive OR operation of any two registers, the other key sequence divided into plaintext, and And a sixth step of sequentially inputting to the feedback shift register;
A seventh step of outputting a message authenticator by inputting a fixed bit string after the plaintext has been input, performing idle rotation of the feedback shift register, and
An eighth step of combining the message authenticator and the generated ciphertext;
A ninth step of transmitting the combined message authenticator and the generated ciphertext;
An encryption method comprising:
前記認証付きストリーム暗号を受信する第1のステップと、
前記受信した認証付きストリーム暗号から、暗号文を分離する第2のステップと、
初期鍵と初期ベクトルを読み込む第3のステップと、
初期化処理を実施する第4のステップと、
鍵系列生成処理を実行し、鍵系列を生成する第5のステップと、
該生成した鍵系列を2分割する第6のステップと、
該分割した一方の鍵系列と暗号文との排他的論理和演算を行い、平文を出力する第7のステップと、
メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行ったデータと前記分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、前記フィードバックシフトレジスタに入力する第8のステップと、
平文の入力終了後に、固定のビット列を入力して前記フィードバックシフトレジスタの空回しを行ってメッセージ認証子を出力する第9のステップと、
該出力したメッセージ認証子と前記分離したメッセージ認証子が一致するか否かを検証する第10のステップと、
を備えたことを特徴とする復号化方法。 A decryption method in a decryption device for an authenticated stream cipher,
A first step of receiving the authenticated stream cipher;
A second step of separating ciphertext from the received authenticated stream cipher;
A third step of reading an initial key and an initial vector;
A fourth step of performing initialization processing;
A fifth step of executing a key sequence generation process to generate a key sequence;
A sixth step of dividing the generated key sequence into two parts;
A seventh step of performing an exclusive OR operation between the one divided key sequence and the ciphertext, and outputting a plaintext;
Of the feedback shift register, which is a memory for creating a message authenticator, the exclusive OR operation of the data obtained by performing the exclusive OR operation of any two registers, the other key sequence divided into plaintext, and And an eighth step of sequentially inputting to the feedback shift register;
A ninth step of inputting a fixed bit string after the plaintext input is completed, performing idle rotation of the feedback shift register, and outputting a message authenticator;
A tenth step of verifying whether the output message authenticator matches the separated message authenticator;
A decoding method characterized by comprising:
初期鍵と初期ベクトルを読み込む第1のステップと、
初期化処理を実施する第2のステップと、
鍵系列生成処理を実行し、鍵系列を生成する第3のステップと、
該生成した鍵系列を2分割する第4のステップと、
該分割した一方の鍵系列と平文との排他的論理和演算を行い、暗号文を出力する第5のステップと、
メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行ったデータと前記分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、前記フィードバックシフトレジスタに入力する第6のステップと、
平文の入力終了後に、固定のビット列を入力して前記フィードバックシフトレジスタの空回しを行ってメッセージ認証子を出力する第7のステップと、
該メッセージ認証子と前記生成した暗号文とを結合する第8のステップと、
該結合した前記メッセージ認証子と前記生成した暗号文とを送信する第9のステップと、
を実行するためのプログラム。 A program for executing an encryption method in an encrypted stream cipher encryption device,
A first step of reading an initial key and an initial vector;
A second step of performing an initialization process;
Executing a key sequence generation process to generate a key sequence;
A fourth step of dividing the generated key sequence into two parts;
A fifth step of performing an exclusive OR operation of the one divided key sequence and the plaintext, and outputting a ciphertext;
Of the feedback shift register, which is a memory for creating a message authenticator, the exclusive OR operation of the data obtained by performing the exclusive OR operation of any two registers, the other key sequence divided into plaintext, and And a sixth step of sequentially inputting to the feedback shift register;
A seventh step of outputting a message authenticator by inputting a fixed bit string after the plaintext has been input, performing idle rotation of the feedback shift register, and
An eighth step of combining the message authenticator and the generated ciphertext;
A ninth step of transmitting the combined message authenticator and the generated ciphertext;
A program for running.
前記認証付きストリーム暗号を受信する第1のステップと、
前記受信した認証付きストリーム暗号から、暗号文を分離する第2のステップと、
初期鍵と初期ベクトルを読み込む第3のステップと、
初期化処理を実施する第4のステップと、
鍵系列生成処理を実行し、鍵系列を生成する第5のステップと、
該生成した鍵系列を2分割する第6のステップと、
該分割した一方の鍵系列と暗号文との排他的論理和演算を行い、平文を出力する第7のステップと、
メッセージ認証子を作成するためのメモリであるフィードバックシフトレジスタのうち、任意の2つのレジスタの排他的論理和演算を行ったデータと前記分割した他方の鍵系列と平文との排他的論理和演算を行い、順次、前記フィードバックシフトレジスタに入力する第8のステップと、
平文の入力終了後に、固定のビット列を入力して前記フィードバックシフトレジスタの空回しを行ってメッセージ認証子を出力する第9のステップと、
該出力したメッセージ認証子と前記分離したメッセージ認証子が一致するか否かを検証する第10のステップと、
を実行するためのプログラム。 A program for executing a decryption method in a decryption device for an authenticated stream cipher,
A first step of receiving the authenticated stream cipher;
A second step of separating ciphertext from the received authenticated stream cipher;
A third step of reading an initial key and an initial vector;
A fourth step of performing initialization processing;
A fifth step of executing a key sequence generation process to generate a key sequence;
A sixth step of dividing the generated key sequence into two parts;
A seventh step of performing an exclusive OR operation between the one divided key sequence and the ciphertext, and outputting a plaintext;
Of the feedback shift register, which is a memory for creating a message authenticator, the exclusive OR operation of the data obtained by performing the exclusive OR operation of any two registers, the other key sequence divided into plaintext, and And an eighth step of sequentially inputting to the feedback shift register;
A ninth step of inputting a fixed bit string after the plaintext input is completed, performing idle rotation of the feedback shift register, and outputting a message authenticator;
A tenth step of verifying whether the output message authenticator matches the separated message authenticator;
A program for running.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010020674A JP5431190B2 (en) | 2010-02-01 | 2010-02-01 | Authenticated stream cipher encryption apparatus, authenticated stream cipher decryption apparatus, encryption method, decryption method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010020674A JP5431190B2 (en) | 2010-02-01 | 2010-02-01 | Authenticated stream cipher encryption apparatus, authenticated stream cipher decryption apparatus, encryption method, decryption method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011160228A JP2011160228A (en) | 2011-08-18 |
JP5431190B2 true JP5431190B2 (en) | 2014-03-05 |
Family
ID=44591802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010020674A Active JP5431190B2 (en) | 2010-02-01 | 2010-02-01 | Authenticated stream cipher encryption apparatus, authenticated stream cipher decryption apparatus, encryption method, decryption method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5431190B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5345507A (en) * | 1993-09-08 | 1994-09-06 | International Business Machines Corporation | Secure message authentication for binary additive stream cipher systems |
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 |
-
2010
- 2010-02-01 JP JP2010020674A patent/JP5431190B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
Also Published As
Publication number | Publication date |
---|---|
JP2011160228A (en) | 2011-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Rijmen et al. | Advanced encryption standard | |
US8966279B2 (en) | Securing the implementation of a cryptographic process using key expansion | |
JP5855696B2 (en) | Block encryption method and block decryption method including integrity verification | |
EP2058781B1 (en) | Encryption device, encryption method, and computer program | |
EP3167569B1 (en) | Method and system for providing a secure update of code on a memory-constrained device | |
CN111066077B (en) | Encryption device, encryption method, decryption device, and decryption method | |
JP5047198B2 (en) | Secret calculation system, secret calculation method, secret calculation device, verification device, and program | |
WO2016067524A1 (en) | Authenticated encryption apparatus, authenticated decryption apparatus, authenticated cryptography system, authenticated encryption method, and program | |
Aldaya et al. | AES T-Box tampering attack | |
JP5324813B2 (en) | Key generation apparatus, certificate generation apparatus, service provision system, key generation method, certificate generation method, service provision method, and program | |
JP4909668B2 (en) | Hybrid encryption apparatus and hybrid encryption method | |
JP5431191B2 (en) | Authenticated stream cipher encryption apparatus, authenticated stream cipher decryption apparatus, encryption method, decryption method, and program | |
JP2012039180A (en) | Encryptor of stream encryption, decoder of stream encryption, encrypting method of stream encryption, decoding method of stream encryption, and program | |
Buell | Modern symmetric ciphers—Des and Aes | |
JP5431190B2 (en) | Authenticated stream cipher encryption apparatus, authenticated stream cipher decryption apparatus, encryption method, decryption method, and program | |
JP2013098722A (en) | Ciphering device of stream cipher, deciphering device of stream cipher, ciphering method of stream cipher, deciphering method of stream cipher, and program | |
JP5102536B2 (en) | Stream cipher encryption apparatus, decryption apparatus, encryption method, 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 | |
JP5801095B2 (en) | Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program | |
JP6203387B2 (en) | Encryption device, storage system, decryption device, encryption method, decryption method, encryption program, and decryption program | |
JP6631989B2 (en) | Encryption device, control method, and program | |
JP5489696B2 (en) | Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher 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 | |
JP5706751B2 (en) | Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program | |
JP5495825B2 (en) | Stream cipher secret calculation encryption apparatus, stream cipher secret calculation decryption apparatus, encryption method, decryption method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120830 |
|
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: 20131119 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131204 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5431190 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |