JP4938430B2 - Nonlinear function unit, stream cipher encryption apparatus, decryption apparatus, MAC generation apparatus, stream cipher encryption method, decryption method, MAC generation method, and program - Google Patents
Nonlinear function unit, stream cipher encryption apparatus, decryption apparatus, MAC generation apparatus, stream cipher encryption method, decryption method, MAC generation method, and program Download PDFInfo
- Publication number
- JP4938430B2 JP4938430B2 JP2006327982A JP2006327982A JP4938430B2 JP 4938430 B2 JP4938430 B2 JP 4938430B2 JP 2006327982 A JP2006327982 A JP 2006327982A JP 2006327982 A JP2006327982 A JP 2006327982A JP 4938430 B2 JP4938430 B2 JP 4938430B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- internal memory
- sequence
- bit data
- bit
- 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
本発明は、非線形関数器、ストリーム暗号の暗号化装置、復号化装置、MAC生成装置、ストリーム暗号の暗号化方法、復号化方法、MAC生成方法およびプログラムに関する。 The present invention relates to a nonlinear function device, a stream cipher encryption device, a decryption device, a MAC generation device, a stream cipher encryption method, a decryption method, a MAC generation method, and a program.
近年、インターネットの目覚しい普及により、コンピュータを利用した様々なサービスが提供されている。こうして提供されるサービスの多くは、その通信内容を秘匿化するために暗号が利用されている。ここで、暗号方式としては、1つの鍵で暗号化と復号化とを行う共通鍵暗号方式が一般的であるが、この共通鍵暗号方式は、大きくブロック暗号方式とストリーム暗号方式とに大別される。 In recent years, various services using computers have been provided due to the remarkable spread of the Internet. Many of the services provided in this way use encryption to conceal the communication contents. Here, as the encryption method, a common key encryption method in which encryption and decryption are performed with one key is common, but this common key encryption method is roughly divided into a block encryption method and a stream encryption method. Is done.
ストリーム暗号方式は、ブロック暗号方式よりも高速な処理が期待できるため、例えば、映画等の大容量データを伝送するための方式として、近年、注目を浴びているが、ストリーム暗号方式の場合には、暗号処理と復号処理との同期をとらなければならないという問題があった。そのため、一定サイズ以上の誤りなく受信した暗号文を利用して、同期を自動的に回復する自己同期型のストリーム暗号装置が提案されている(例えば、特許文献1参照。)。
ここで、ストリーム暗号の構成要素として、周期系列を生成する生成器と非線形フィルタとが存在するが、その安全性は主に非線形フィルタの構成方法に依存している。ところが、従来は、ビット単位での非線形処理を行っているために、処理速度が十分ではなく、また、安全性に欠けるといった問題があった。 Here, a generator for generating a periodic sequence and a non-linear filter exist as components of the stream cipher, but its security depends mainly on the non-linear filter configuration method. However, conventionally, since nonlinear processing is performed in units of bits, there has been a problem that the processing speed is not sufficient and the safety is insufficient.
そこで、本発明は、上述の課題に鑑みてなされたものであり、安全かつ高速な処理を可能とする非線形関数器およびこれを用いたストリーム暗号の暗号化装置、復号化装置、MAC生成装置、ストリーム暗号の暗号化方法、復号化方法、MAC生成方法およびプログラムを提供することを目的とする。 Therefore, the present invention has been made in view of the above-described problems, and a nonlinear function unit that enables safe and high-speed processing, and an encryption device, a decryption device, a MAC generation device, and a stream cipher using the nonlinear function device, An object of the present invention is to provide an encryption method, a decryption method, a MAC generation method, and a program for a stream cipher.
本発明は、上記の課題を解決するために、以下の事項を提案している。
(1)本発明は、乱数系列のビットデータを周期系列生成装置から入力し、変換されたビットデータを複数の内部メモリからそれぞれ鍵系列生成器に出力する非線形関数器であって、前記周期系列生成装置から入力した乱数系列のビットデータと前記複数の内部メモリのうち一の内部メモリに記憶されているデータとを演算する演算器と、前記演算器による演算後のデータ又は前記複数の内部メモリのうち一の内部メモリに記憶されているデータを読み出して非線形置換し、当該非線形置換後のデータを前記演算器又は他の非線形置換器の入力データとして前記複数の内部メモリのうち一の内部メモリに入力する複数の非線形置換器と、を備え、前記複数の内部メモリは、前記複数の非線形置換器を介して、環状に接続されていることを特徴とする非線形関数器を提案している。
The present invention proposes the following matters in order to solve the above problems.
(1) The present invention is a non-linear function unit to the bit data of the random number sequence input from the periodic sequence generating unit, and outputs the converted bit data from a plurality of internal memories, each key sequence generator, the periodic sequence A computing unit for computing bit data of a random number sequence input from a generation device and data stored in one internal memory of the plurality of internal memories; data after computation by the computing unit; or the plurality of internal memories The data stored in one of the internal memories is read out and nonlinearly replaced, and the data after the nonlinear replacement is used as input data of the arithmetic unit or other nonlinear replacer as one of the plurality of internal memories and a plurality of non-linear substitution device to be input to said plurality of internal memories, via the plurality of non-linear substitution device, characterized in that it is connected to the annular It has proposed a non-linear function unit for.
この発明によれば、複数の内部メモリが非線形置換器を介して、環状に接続されている。したがって、これをストリーム暗号装置等に用いた場合には、安全性を相乗的に増加させることができる。 According to the present invention, the plurality of internal memories are connected in a ring shape via the non-linear replacer. Therefore, when this is used for a stream encryption device or the like, the security can be increased synergistically.
(2)本発明は、乱数系列のビットデータを周期系列生成装置から入力し、変換されたビットデータを複数の内部メモリからそれぞれ鍵系列生成器に出力する非線形関数器であって、前記周期系列生成装置から入力した乱数系列のビットデータと前記複数の内部メモリのうち一の内部メモリに記憶されているデータとを演算する複数の演算器と、前記演算器による演算後のデータ又は前記複数の内部メモリのうち一の内部メモリに記憶されているデータを読み出して非線形置換し、当該非線形置換後のデータを前記演算器又は他の非線形置換器の入力データとして前記複数の内部メモリのうち一の内部メモリに入力する複数の非線形置換器と、を備え、前記複数の内部メモリが前記複数の非線形置換器および前記複数の演算器を介して、環状に接続されていることを特徴とする非線形関数器を提案している。 (2) The present invention is a non-linear function unit to the bit data of the random number sequence input from the periodic sequence generating unit, and outputs the converted bit data from a plurality of internal memories, each key sequence generator, the periodic sequence a plurality of arithmetic units for calculating the data with random sequence of bit data inputted from the generator is stored to an internal memory of the plurality of internal memory, after the operation by the arithmetic unit data or a plurality of The data stored in one internal memory of the internal memories is read out and nonlinearly replaced, and the data after the nonlinear replacement is used as input data of the arithmetic unit or another nonlinear replacer as one of the plurality of internal memories. comprising a plurality of non-linear substitution device to enter the internal memory, wherein the plurality of internal memory via the plurality of non-linear substitution unit and said plurality of arithmetic units, cyclic It has proposed a non-linear function unit, characterized in that it is connected.
この発明によれば、複数の内部メモリが前記非線形置換器および前記演算器を介して、環状に接続されている。したがって、非線形置換器の数が少ない分、処理を高速化することができる。 According to the present invention, a plurality of internal memories are connected in a ring shape via the nonlinear replacer and the arithmetic unit. Therefore, the processing can be speeded up because the number of non-linear replacement units is small.
(3)本発明は、(1)または(2)の非線形関数器について、前記乱数系列のビットデータのビット長が前記複数の内部メモリから出力される前記変換されたビットデータのビット長よりも長いことを特徴とする非線形関数器を提案している。 (3) In the nonlinear function device of (1) or (2), the present invention provides that the bit length of the bit data of the random number sequence is greater than the bit length of the converted bit data output from the plurality of internal memories. We have proposed a non-linear function unit that is characterized by its long length.
この発明によれば、非線形関数器の入力ビット長に対して出力ビット長が長い構成になっている。したがって、これによりストリーム暗号全体の性能を向上させることができる。 According to the present invention, the output bit length is longer than the input bit length of the nonlinear function unit. Therefore, this can improve the performance of the entire stream cipher.
(4)本発明は、(1)から(3)の非線形関数器について、前記非線形置換器が予め格納されたデータテーブルに基づいて、非線形置換処理を実行することを特徴とする非線形関数器を提案している。 (4) According to the present invention, there is provided a non-linear function device characterized in that the non-linear function device (1) to (3) executes a non-linear replacement process based on a data table stored in advance. is suggesting.
この発明によれば、非線形置換器が予め格納されたデータテーブルに基づいて、非線形置換処理を実行する。したがって、ソフトウェア実装における高速化を実現することができる。 According to this invention, the non-linear replacement unit executes the non-linear replacement process based on the data table stored in advance. Therefore, it is possible to realize speeding up in software implementation.
(5)本発明は、(1)から(4)のいずれかの非線形関数器(例えば、図1の非線形関数部2に相当)と、前記非線形関数器に入力する乱数系列のビットデータを生成する乱数系列データ生成手段(例えば、図1の周期系列生成装置1に相当)と、前記非線形関数器から出力される変換されたビットデータから鍵系列のビットデータを生成する鍵系列データ生成手段(例えば、図1の鍵系列生成部3に相当)と、該鍵系列データ生成手段において生成された鍵系列のビットデータと平文との排他的論理和演算を行って、暗号文を出力する排他的論理和演算手段(例えば、図1のXOR4に相当)と、を備えたことを特徴とするストリーム暗号の暗号化装置を提案している。
(5) The present invention generates one of the nonlinear function units (1) to (4) (for example, equivalent to the
この発明によれば、(1)から(4)のいずれかの非線形関数器を用いて、ストリーム暗号の暗号化装置を構成することができる。したがって、安全かつ高速な処理を可能とするストリーム暗号の暗号化装置を構成することができる。 According to the present invention, a stream cipher encryption apparatus can be configured using any one of the nonlinear function units (1) to (4). Therefore, it is possible to configure a stream cipher encryption apparatus that enables safe and high-speed processing.
(6)本発明は、(1)から(4)のいずれかの非線形関数器(例えば、図4の非線形関数部2に相当)と、前記非線形関数器に入力する乱数系列のビットデータを生成する乱数系列データ生成手段(例えば、図4の周期系列生成装置1に相当)と、前記非線形関数器から出力される変換されたビットデータから鍵系列のビットデータを生成する鍵系列データ生成手段(例えば、図4の鍵系列生成部3に相当)と、該鍵系列データ生成手段において生成された鍵系列のビットデータと暗号文との排他的論理和演算を行って、平文を出力する排他的論理和演算手段(例えば、図1のXOR5に相当)と、を備えたことを特徴とするストリーム暗号の復号化装置を提案している。
(6) The present invention generates any one of the nonlinear function units (1) to (4) (for example, equivalent to the
この発明によれば、(1)から(4)のいずれかの非線形関数器を用いて、ストリーム暗号の復号化装置を構成することができる。したがって、安全かつ高速な処理を可能とするストリーム暗号の復号化装置を構成することができる。 According to the present invention, a stream cipher decryption apparatus can be configured using any one of the nonlinear function units (1) to (4). Therefore, it is possible to configure a stream cipher decryption device that enables safe and high-speed processing.
(7)本発明は、(1)から(4)のいずれかの非線形関数器(例えば、図6の非線形関数部2に相当)と、前記非線形関数器に入力する乱数系列のビットデータを生成する乱数系列データ生成手段(例えば、図6の周期系列生成装置1に相当)と、前記非線形関数器から出力される変換されたビットデータから鍵系列のビットデータを生成する鍵系列データ生成手段(例えば、図6の鍵系列生成部3に相当)と、該鍵系列データ生成手段において生成された鍵系列のビットデータと平文との排他的論理和演算を行って、演算結果を前記乱数系列データ生成手段にフィードバックするとともに、最終的な暗号文をメッセージ認証子として出力する排他的論理和演算手段(例えば、図6のXOR4に相当)と、を備えたことを特徴とするMAC生成装置を提案している。
(7) The present invention generates one of the nonlinear function units (1) to (4) (e.g., equivalent to the
この発明によれば、(1)から(4)のいずれかの非線形関数器を用いて、MAC生成装置を構成することができる。したがって、安全かつ高速な処理を可能とするMAC生成装置を構成することができる。 According to the present invention, the MAC generation device can be configured using any one of the nonlinear function units (1) to (4). Therefore, it is possible to configure a MAC generation device that enables safe and high-speed processing.
(8)本発明は、乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する第1のステップ(例えば、図3のステップS101、S102に相当)と、乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する第2のステップ(例えば、図3のステップS101、S102に相当)と、第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納する第3のステップ(例えば、図3のステップS103に相当)と、第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納する第4のステップ(例えば、図3のステップS103に相当)と、更新された各内部メモリのデータを変換されたビット列として出力する第5のステップ(例えば、図3のステップS104に相当)と、該変換されたビット列から鍵系列を演算する第6のステップ(例えば、図3のステップS105に相当)と、該演算された鍵系列と平文との排他的論理和演算を行って、暗号文を出力する第7のステップ(例えば、図3のステップS106に相当)と、を備えたことを特徴とするストリーム暗号の暗号化方法を提案している。 (8) In the first step of the present invention, the bit data of the random number sequence and the first internal memory data are arithmetically added, and the bit data subjected to arithmetic addition is subjected to nonlinear processing and stored in the second internal memory ( For example, it is equivalent to steps S101 and S102 in FIG. 3), the bit data of the random number sequence and the third internal memory data are arithmetically added, and the arithmetically added bit data is subjected to non-linear processing to be stored in the fourth internal memory. A second step (for example, equivalent to steps S101 and S102 in FIG. 3), and a third step (for example, FIG. 3) that performs nonlinear processing on the second internal memory data and stores it in the third internal memory. And a fourth step (for example, equivalent to step S103 in FIG. 3) that performs non-linear processing on the fourth internal memory data and stores it in the first internal memory. And a fifth step (for example, corresponding to step S104 of FIG. 3) for outputting the updated data in each internal memory as a converted bit string, and a sixth step for calculating a key sequence from the converted bit string (E.g., corresponding to step S105 in FIG. 3) and the seventh step (e.g., in step S106 in FIG. 3) of performing the exclusive OR operation of the calculated key sequence and plaintext and outputting the ciphertext And a stream cipher encryption method characterized by comprising:
この発明によれば、乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する。次いで、乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する。そして、第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納するとともに、第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納し、更新された各内部メモリのデータを変換されたビット列として出力する。さらに、変換されたビット列から鍵系列を演算し、演算された鍵系列と平文との排他的論理和演算を行って、暗号文を出力する。したがって、上記によれば、安全かつ高速に平文を暗号文に暗号化することができる。 According to this invention, the bit data of the random number sequence and the first internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to nonlinear processing and stored in the second internal memory. Next, the bit data of the random number sequence and the third internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to non-linear processing and stored in the fourth internal memory. The second internal memory data is subjected to nonlinear processing and stored in the third internal memory, and the fourth internal memory data is subjected to nonlinear processing and stored in the first internal memory. Outputs memory data as a converted bit string. Further, a key sequence is calculated from the converted bit string, an exclusive OR operation is performed on the calculated key sequence and plaintext, and a ciphertext is output. Therefore, according to the above, it is possible to encrypt plaintext into ciphertext safely and at high speed.
(9)本発明は、乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する第1のステップ(例えば、図5のステップS201、S202に相当)と、乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する第2のステップ(例えば、図5のステップS201、S202に相当)と、第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納する第3のステップ(例えば、図5のステップS203に相当)と、第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納する第4のステップ(例えば、図5のステップS203に相当)と、更新された各内部メモリのデータを変換されたビット列として出力する第5のステップ(例えば、図5のステップS204に相当)と、該変換されたビット列から鍵系列を演算する第6のステップ(例えば、図5のステップS205に相当)と、該演算された鍵系列と暗号文との排他的論理和演算を行って、平文を出力する第7のステップ(例えば、図5のステップS206に相当)と、を備えたことを特徴とするストリーム暗号の復号化方法を提案している。 (9) The first step of arithmetically adding bit data of the random number sequence and the first internal memory data, performing non-linear processing on the bit data subjected to the arithmetic addition, and storing it in the second internal memory ( For example, it corresponds to steps S201 and S202 in FIG. 5), and the bit data of the random number sequence and the third internal memory data are arithmetically added, and nonlinear processing is performed on the arithmetically added bit data to obtain the fourth internal memory. A second step (for example, corresponding to steps S201 and S202 in FIG. 5) and a third step (for example, FIG. 5) that performs nonlinear processing on the second internal memory data and stores it in the third internal memory. And a fourth step (for example, equivalent to step S203 in FIG. 5) that performs non-linear processing on the fourth internal memory data and stores it in the first internal memory. A fifth step (for example, corresponding to step S204 in FIG. 5) for outputting the updated data in each internal memory as a converted bit string, and a sixth step for calculating a key sequence from the converted bit string (E.g., corresponding to step S205 in FIG. 5) and a seventh step (e.g., in step S206 in FIG. 5) that performs an exclusive OR operation on the calculated key sequence and ciphertext and outputs plaintext A stream cipher decryption method characterized by comprising:
この発明によれば、乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する。次いで、乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する。そして、第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納するとともに、第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納し、更新された各内部メモリのデータを変換されたビット列として出力する。さらに、変換されたビット列から鍵系列を演算し、演算された鍵系列と暗号文との排他的論理和演算を行って、平文を出力する。したがって、上記によれば、安全かつ高速に暗号文を平文に復号化することができる。 According to this invention, the bit data of the random number sequence and the first internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to nonlinear processing and stored in the second internal memory. Next, the bit data of the random number sequence and the third internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to non-linear processing and stored in the fourth internal memory. The second internal memory data is subjected to nonlinear processing and stored in the third internal memory, and the fourth internal memory data is subjected to nonlinear processing and stored in the first internal memory. Outputs memory data as a converted bit string. Further, a key sequence is calculated from the converted bit string, an exclusive OR operation is performed on the calculated key sequence and the ciphertext, and a plaintext is output. Therefore, according to the above, the ciphertext can be decrypted into plaintext safely and at high speed.
(10)本発明は、周期系列装置から入力した乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する第1のステップ(例えば、図7のステップS301、S302に相当)と、周期系列装置から入力した乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する第2のステップ(例えば、図7のステップS301、S302に相当)と、第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納する第3のステップ(例えば、図7のステップS303に相当)と、第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納する第4のステップ(例えば、図7のステップS303に相当)と、更新された各内部メモリのデータを変換されたビット列として出力する第5のステップ(例えば、図7のステップS304に相当)と、該変換されたビット列から鍵系列を演算する第6のステップ(例えば、図7のステップS305に相当)と、該演算された鍵系列と平文との排他的論理和演算を行って、演算結果を前記周期系列装置にフィードバックするとともに、最終的な暗号文をメッセージ認証子として出力する第7のステップ(例えば、図7のステップS306、S307、S308に相当)と、を備えたことを特徴とするMAC生成方法を提案している。 (10) According to the present invention, the bit data of the random number sequence input from the periodic sequence device and the first internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to nonlinear processing and stored in the second internal memory. The first step (e.g., corresponding to steps S301 and S302 in FIG. 7), the bit data of the random number sequence input from the periodic sequence device, and the third internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition A second step (for example, equivalent to steps S301 and S302 in FIG. 7) that is subjected to nonlinear processing and stored in the fourth internal memory, and third internal memory that is subjected to nonlinear processing on the second internal memory data And a third step (for example, corresponding to step S303 in FIG. 7) and a fourth step of performing non-linear processing on the fourth internal memory data and storing it in the first internal memory Step (for example, corresponding to step S303 in FIG. 7), a fifth step (for example, corresponding to step S304 in FIG. 7) for outputting the updated internal memory data as a converted bit string, and the conversion A sixth step (for example, corresponding to step S305 in FIG. 7) for calculating a key sequence from the calculated bit string, an exclusive OR operation of the calculated key sequence and plaintext, and calculating the result as the period And a seventh step (for example, corresponding to steps S306, S307, and S308 in FIG. 7) for feeding back to the affiliated device and outputting the final ciphertext as a message authenticator. Proposed method.
この発明によれば、乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する。次いで、乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する。そして、第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納するとともに、第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納し、更新された各内部メモリのデータを変換されたビット列として出力する。さらに、変換されたビット列から鍵系列を演算し、演算された鍵系列と平文との排他的論理和演算を行って、演算結果を周期系列装置にフィードバックするとともに、最終的な暗号文をメッセージ認証子として出力する。したがって、上記によれば、安全かつ高速にMACを生成することができる。 According to this invention, the bit data of the random number sequence and the first internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to nonlinear processing and stored in the second internal memory. Next, the bit data of the random number sequence and the third internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to non-linear processing and stored in the fourth internal memory. The second internal memory data is subjected to nonlinear processing and stored in the third internal memory, and the fourth internal memory data is subjected to nonlinear processing and stored in the first internal memory. Outputs memory data as a converted bit string. Furthermore, the key sequence is calculated from the converted bit sequence, the exclusive OR operation of the calculated key sequence and the plaintext is performed, the calculation result is fed back to the periodic sequence device, and the final ciphertext is authenticated by the message. Output as a child. Therefore, according to the above, the MAC can be generated safely and at high speed.
(11)本発明は、ストリーム暗号の暗号化方法をコンピュータに実行させるためのプログラムであって、乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する第1のステップ(例えば、図3のステップS101、S102に相当)と、乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する第2のステップ(例えば、図3のステップS101、S102に相当)と、第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納する第3のステップ(例えば、図3のステップS103に相当)と、第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納する第4のステップ(例えば、図3のステップS103に相当)と、更新された各内部メモリのデータを変換されたビット列として出力する第5のステップ(例えば、図3のステップS104に相当)と、該変換されたビット列から鍵系列を演算する第6のステップ(例えば、図3のステップS105に相当)と、該演算された鍵系列と平文との排他的論理和演算を行って、暗号文を出力する第7のステップ(例えば、図3のステップS106に相当)と、をコンピュータに実行させるためのプログラムを提案している。 (11) The present invention is a program for causing a computer to execute a stream cipher encryption method, arithmetically adding bit data of a random number sequence and first internal memory data, to the bit data subjected to arithmetic addition A first step (for example, equivalent to steps S101 and S102 in FIG. 3) that performs nonlinear processing and stores the second internal memory, and arithmetically adds the bit data of the random number sequence and the third internal memory data, A second step (for example, equivalent to steps S101 and S102 in FIG. 3) for performing nonlinear processing on the bit data subjected to arithmetic addition and storing it in the fourth internal memory, and performing nonlinear processing on the second internal memory data The third step (for example, corresponding to step S103 in FIG. 3) stored in the third internal memory and the fourth internal memory data are subjected to nonlinear processing. A fourth step (for example, corresponding to step S103 in FIG. 3) for storing in the first internal memory, and a fifth step (for example, FIG. 3) for outputting the updated data in each internal memory as a converted bit string. 6) (corresponding to step S105 in FIG. 3), and an exclusive OR of the calculated key sequence and plaintext. A program is proposed for causing a computer to execute a seventh step (for example, corresponding to step S106 in FIG. 3) that performs computation and outputs a ciphertext.
この発明によれば、乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する。次いで、乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する。そして、第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納するとともに、第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納し、更新された各内部メモリのデータを変換されたビット列として出力する。さらに、変換されたビット列から鍵系列を演算し、演算された鍵系列と平文との排他的論理和演算を行って、暗号文を出力する。したがって、上記によれば、安全かつ高速に平文を暗号文に暗号化することができる。 According to this invention, the bit data of the random number sequence and the first internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to nonlinear processing and stored in the second internal memory. Next, the bit data of the random number sequence and the third internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to non-linear processing and stored in the fourth internal memory. The second internal memory data is subjected to nonlinear processing and stored in the third internal memory, and the fourth internal memory data is subjected to nonlinear processing and stored in the first internal memory. Outputs memory data as a converted bit string. Further, a key sequence is calculated from the converted bit string, an exclusive OR operation is performed on the calculated key sequence and plaintext, and a ciphertext is output. Therefore, according to the above, it is possible to encrypt plaintext into ciphertext safely and at high speed.
(12)本発明は、ストリーム暗号の復号化方法をコンピュータに実行させるためのプログラムであって、乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する第1のステップ(例えば、図5のステップS201、S202に相当)と、乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する第2のステップ(例えば、図5のステップS201、S202に相当)と、第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納する第3のステップ(例えば、図5のステップS203に相当)と、第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納する第4のステップ(例えば、図5のステップS203に相当)と、更新された各内部メモリのデータを変換されたビット列として出力する第5のステップ(例えば、図5のステップS204に相当)と、該変換されたビット列から鍵系列を演算する第6のステップ(例えば、図5のステップS205に相当)と、該演算された鍵系列と暗号文との排他的論理和演算を行って、平文を出力する第7のステップ(例えば、図5のステップS206に相当)と、をコンピュータに実行させるためのプログラムを提案している。 (12) The present invention is a program for causing a computer to execute a method of decrypting a stream cipher. The bit data of a random number sequence and first internal memory data are arithmetically added to the arithmetically added bit data. A first step (for example, equivalent to steps S201 and S202 in FIG. 5) that performs non-linear processing and stores the second internal memory, arithmetically adds the bit data of the random number sequence and the third internal memory data, A second step (for example, equivalent to steps S201 and S202 in FIG. 5) that performs non-linear processing on the bit data subjected to arithmetic addition and stores it in the fourth internal memory, and non-linear processing is performed on the second internal memory data. The third step (for example, corresponding to step S203 in FIG. 5) stored in the third internal memory and the fourth internal memory data are subjected to nonlinear processing. A fourth step (for example, corresponding to step S203 in FIG. 5) for storing in the first internal memory, and a fifth step (for example, FIG. 5) for outputting the updated data in each internal memory as a converted bit string. 6) (corresponding to step S205 in FIG. 5), an exclusive logic between the calculated key sequence and the ciphertext, and a sixth step for calculating a key sequence from the converted bit string. A program is proposed for causing a computer to execute a seventh step (for example, corresponding to step S206 in FIG. 5) that performs a sum operation and outputs a plaintext.
この発明によれば、乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する。次いで、乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する。そして、第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納するとともに、第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納し、更新された各内部メモリのデータを変換されたビット列として出力する。さらに、変換されたビット列から鍵系列を演算し、演算された鍵系列と暗号文との排他的論理和演算を行って、平文を出力する。したがって、上記によれば、安全かつ高速に暗号文を平文に復号化することができる。 According to this invention, the bit data of the random number sequence and the first internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to nonlinear processing and stored in the second internal memory. Next, the bit data of the random number sequence and the third internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to non-linear processing and stored in the fourth internal memory. The second internal memory data is subjected to nonlinear processing and stored in the third internal memory, and the fourth internal memory data is subjected to nonlinear processing and stored in the first internal memory. Outputs memory data as a converted bit string. Further, a key sequence is calculated from the converted bit string, an exclusive OR operation is performed on the calculated key sequence and the ciphertext, and a plaintext is output. Therefore, according to the above, the ciphertext can be decrypted into plaintext safely and at high speed.
(13)本発明は、MAC生成方法をコンピュータに実行させるためのプログラムであって、周期系列装置から入力した乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する第1のステップ(例えば、図7のステップS301、S302に相当)と、周期系列装置から入力した乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する第2のステップ(例えば、図7のステップS301、S302に相当)と、第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納する第3のステップ(例えば、図7のステップS303に相当)と、第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納する第4のステップ(例えば、図7のステップS303に相当)と、更新された各内部メモリのデータを変換されたビット列として出力する第5のステップ(例えば、図7のステップS304に相当)と、該変換されたビット列から鍵系列を演算する第6のステップ(例えば、図7のステップS305に相当)と、該演算された鍵系列と平文との排他的論理和演算を行って、演算結果を前記周期系列装置にフィードバックするとともに、最終的な暗号文をメッセージ認証子として出力する第7のステップ(例えば、図7のステップS306、S307、S308に相当)と、をコンピュータに実行させるためのプログラムを提案している。 (13) The present invention is a program for causing a computer to execute a MAC generation method, wherein the random number sequence bit data input from the periodic sequence device and the first internal memory data are arithmetically added and arithmetically added. A first step (for example, equivalent to steps S301 and S302 in FIG. 7) for performing non-linear processing on the bit data and storing it in the second internal memory, a random number sequence bit data input from the periodic sequence device, and a third A second step (for example, corresponding to steps S301 and S302 in FIG. 7), which performs arithmetic addition with the internal memory data, performs nonlinear processing on the bit data subjected to the arithmetic addition, and stores the result in the fourth internal memory; A third step (for example, corresponding to step S303 in FIG. 7) of performing a non-linear process on the internal memory data and storing it in the third internal memory; A fourth step (for example, corresponding to step S303 in FIG. 7) that performs non-linear processing on the internal memory data and stores it in the first internal memory, and outputs the updated data in each internal memory as a converted bit string A fifth step (for example, corresponding to step S304 in FIG. 7), a sixth step (for example, corresponding to step S305 in FIG. 7) for calculating a key sequence from the converted bit string, and the calculated key A seventh step (for example, step S306 in FIG. 7) performs an exclusive OR operation between the sequence and the plaintext, feeds back the operation result to the periodic sequence device, and outputs the final ciphertext as a message authenticator. , Corresponding to S307 and S308), are proposed.
この発明によれば、乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する。次いで、乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する。そして、第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納するとともに、第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納し、更新された各内部メモリのデータを変換されたビット列として出力する。さらに、変換されたビット列から鍵系列を演算し、演算された鍵系列と平文との排他的論理和演算を行って、演算結果を周期系列装置にフィードバックするとともに、最終的な暗号文をメッセージ認証子として出力する。したがって、上記によれば、安全かつ高速にMACを生成することができる。 According to this invention, the bit data of the random number sequence and the first internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to nonlinear processing and stored in the second internal memory. Next, the bit data of the random number sequence and the third internal memory data are arithmetically added, and the bit data subjected to the arithmetic addition is subjected to non-linear processing and stored in the fourth internal memory. The second internal memory data is subjected to nonlinear processing and stored in the third internal memory, and the fourth internal memory data is subjected to nonlinear processing and stored in the first internal memory. Outputs memory data as a converted bit string. Furthermore, the key sequence is calculated from the converted bit sequence, the exclusive OR operation of the calculated key sequence and the plaintext is performed, the calculation result is fed back to the periodic sequence device, and the final ciphertext is authenticated by the message. Output as a child. Therefore, according to the above, the MAC can be generated safely and at high speed.
本発明によれば、複数の内部メモリが少なくとも非線形置換器を介して、環状に接続されているため、これをストリーム暗号装置等に用いた場合には、安全性を相乗的に増加させることができるという効果がある。また、非線形関数器の入力ビット長に対して出力ビット長が長い構成になっているため、これによりストリーム暗号全体の性能を向上させることができるという効果がある。さらに、非線形置換器が予め格納されたデータテーブルに基づいて、非線形置換処理を実行するため、ソフトウェア実装における高速化を実現することができるという効果がある。 According to the present invention, since a plurality of internal memories are connected in a ring shape through at least a non-linear replacer, when this is used in a stream cipher apparatus or the like, safety can be increased synergistically. There is an effect that can be done. Further, since the output bit length is longer than the input bit length of the nonlinear function unit, this has the effect of improving the performance of the entire stream cipher. Furthermore, since the non-linear replacement unit executes the non-linear replacement process based on the data table stored in advance, there is an effect that it is possible to realize high speed in software implementation.
以下、図面を用いて、本発明の実施形態について詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組み合わせを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
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の実施形態]
<ストリーム暗号の暗号化装置の構成>
本実施形態に係るストリーム暗号の暗号化装置は、図1に示すように、周期系列生成装置1と、非線形関数部2と、鍵系列生成部3と、排他的論理和演算器(XOR)4とから構成されている。
[First Embodiment]
<Configuration of Stream Cipher Encryption Device>
As shown in FIG. 1, the stream cipher encryption apparatus according to the present embodiment includes a periodic sequence generation device 1, a
周期系列生成装置1は、乱数系列のビット列を生成し、非線形関数部2に供給する。非線形関数部2は、供給された乱数系列のビット列を入力し、変換されたビット列を出力する。なお、構成の詳細については、後述する。鍵系列生成部3は、非線形関数部2が出力した変換されたビット列から鍵系列のビット列を生成する。排他的論理和演算器(XOR)4は、鍵系列生成部3が生成した鍵系列のビット列と平文とを入力し、これらの排他的論理和演算を実行することにより暗号文を出力する。
The periodic sequence generation device 1 generates a bit string of a random number sequence and supplies it to the
<非線形関数部の構成>
非線形関数部2は、図2に示すように、複数の内部メモリ11、12、13、14(図中、L1、L2、R1、R2)と、加算器15a、15bと、非線形置換器(sub)16a、16b、16c、16dとから構成されている。本実施形態に係る非線形関数部は、図2に示すように、L2→加算器15a→非線形置換器(sub)16b→R2→非線形置換器(sub)16d→R2→加算器15b→非線形置換器(sub)16c→L1→非線形置換器(sub)16a→L2といった複数の内部メモリ11、12、13、14が非線形置換器(sub)16a、16b、16c、16dを介して、環状に接続されている点に特徴がある。このような構成をとることにより、非線形置換の効果を相乗的に増加させて、暗号化装置等の安全性を向上させることができる。
<Configuration of nonlinear function part>
As shown in FIG. 2, the
複数の内部メモリ11、12、13、14は、上記のような構成になっているため、隣接する内部メモリのデータを非線形置換器(sub)16a、16b、16c、16dにより非線形置換したデータに更新され、更新されたデータを変換されたビット列として出力する。
Since the plurality of
加算器15a、15bは、上記周期系列生成装置1から出力される乱数系列のビット列と複数の内部メモリ11、12、13、14のうちの一部のメモリに格納されているビット列データとを加算する演算器である。なお、本実施形態では、加算器15a、15bを例示したが、これに代えて排他的論理和演算器(XOR)を用いてもよい。
The
非線形置換器(sub)16a、16b、16c、16dは、入力するビット列データを非線形置換する。なお、非線形置換器(sub)16a、16b、16c、16dには、図示しない予め所望の関数により演算された結果を入力ビット列データに対応付けて記憶するデータテーブルが備えられている。これにより、ソフトウェア実装における処理の高速化を実現することができる。また、本実施形態の非線形関数部は、図2に示すように、2入力4出力の構成となっている。このように、入力ビット長に対して出力ビット長を大きくすることにより、ストリーム暗号全体の性能を向上させることができる。さらに、加算器15a、15bおよび非線形置換器(sub)16a、16b、16c、16dの入力長、出力長はともに、CPUのワード長(例えば、32bits)となっている。そのため、効率的にソフトウェア実装が可能となる。
The non-linear replacement units (sub) 16a, 16b, 16c, and 16d perform non-linear replacement on input bit string data. The non-linear permuters (sub) 16a, 16b, 16c, and 16d are provided with a data table that stores a result calculated in advance by a desired function in association with input bit string data (not shown). Thereby, high-speed processing in software implementation can be realized. In addition, as shown in FIG. 2, the nonlinear function unit of the present embodiment has a configuration of two inputs and four outputs. Thus, by increasing the output bit length with respect to the input bit length, the performance of the entire stream cipher can be improved. Furthermore, the input lengths and output lengths of the
なお、図3に示すように、L2→加算器15a→R2→非線形置換器(sub)16d→R2→加算器15b→L1→非線形置換器(sub)16a→L2といった複数の内部メモリ11、12、13、14が非線形置換器(sub)16a、16dと加算器15a、15bを介して、環状に接続されるような構成であってもよい。この場合には、非線形置換器(sub)の個数が少なくなるために、処理速度を向上させることができる利点がある。
As shown in FIG. 3, a plurality of
<ストリーム暗号の暗号化装置の処理>
次に、図4を用いて、ストリーム暗号の暗号化装置の処理について説明する。
まず、周期系列生成装置1から入力されたビット列と、内部メモリL2、R2とを加算器15a、15bにおいて、個別に算術加算処理を行い、その後、非線形置換器(sub)16b、16cにおいて、非線形置換処理を実施する(ステップS101)。そして、内部メモリL2から計算された値は内部メモリR1に、内部メモリR2から計算された値は、内部メモリL1に格納する(ステップS102)。
<Processing of encryption device for stream cipher>
Next, the processing of the stream cipher encryption apparatus will be described with reference to FIG.
First, the bit sequence input from the periodic sequence generation device 1 and the internal memories L2 and R2 are individually subjected to arithmetic addition processing in
次に、元々内部メモリL1、R1に格納されていた値については、非線形置換器(sub)16a、16dにおいて、非線形置換を施した後、内部メモリL2、R2へ格納する(ステップS103)。そして、更新された内部メモリR1、R2、L1、L2の情報を変換されたビット列として出力する(ステップS104)。 Next, the values originally stored in the internal memories L1 and R1 are subjected to nonlinear replacement in the nonlinear replacement units (sub) 16a and 16d, and then stored in the internal memories L2 and R2 (step S103). Then, the updated information in the internal memories R1, R2, L1, and L2 is output as a converted bit string (step S104).
さらに、鍵系列生成部3において、出力したビット列から鍵系列のビット列を計算して出力し(ステップS105)、この鍵系列のビット列と平文とを排他的論理和演算器(XOR)4に入力し、排他的論理和演算を行って暗号文として出力する(ステップS106)。
Further, the key
したがって、本実施形態のストリーム暗号の暗号化装置においては、上記の非線形関数部により装置を構成したことから、安全かつ高速な処理を実現することができる。 Therefore, in the stream cipher encryption apparatus according to the present embodiment, the apparatus is configured by the above-described nonlinear function unit, so that safe and high-speed processing can be realized.
[第2の実施形態]
<ストリーム暗号の復号化装置の構成>
本実施形態に係るストリーム暗号の復号化装置は、図5に示すように、周期系列生成装置1と、非線形関数部2と、鍵系列生成部3と、排他的論理和演算器(XOR)5とから構成されている。なお、第1の実施形態と同様の符号を付す要素については、同様の機能を有するものであるから、詳細な説明は省略する。本実施形態に係るストリーム暗号の復号化装置においては、第1の実施形態に係るストリーム暗号の暗号化装置に比べて、排他的論理和演算器(XOR)5が鍵系列生成部3により生成された鍵系列のビット列と暗号文とを入力し、これらの排他的論理和演算を実行することにより平文を出力する構成となっている点で相違している。
[Second Embodiment]
<Configuration of Decryption Device for Stream Cipher>
As shown in FIG. 5, the stream cipher decryption device according to the present embodiment includes a periodic sequence generation device 1, a
<ストリーム暗号の復号化装置の処理>
次に、図6を用いて、ストリーム暗号の復号化装置の処理について説明する。
まず、周期系列生成装置1から入力されたビット列と、内部メモリL2、R2とを加算器15a、15bにおいて、個別に算術加算処理を行い、その後、非線形置換器(sub)16b、16cにおいて、非線形置換処理を実施する(ステップS201)。そして、内部メモリL2から計算された値は内部メモリR1に、内部メモリR2から計算された値は、内部メモリL1に格納する(ステップS202)。
<Processing of Decryption Device for Stream Cipher>
Next, the processing of the stream cipher decryption apparatus will be described with reference to FIG.
First, the bit sequence input from the periodic sequence generation device 1 and the internal memories L2 and R2 are individually subjected to arithmetic addition processing in
次に、元々内部メモリL1、R1に格納されていた値については、非線形置換器(sub)16a、16dにおいて、非線形置換を施した後、内部メモリL2、R2へ格納する(ステップS203)。そして、更新された内部メモリR1、R2、L1、L2の情報を変換されたビット列として出力する(ステップS204)。 Next, the values originally stored in the internal memories L1 and R1 are subjected to nonlinear replacement in the nonlinear replacement units (sub) 16a and 16d, and then stored in the internal memories L2 and R2 (step S203). Then, the updated information in the internal memories R1, R2, L1, and L2 is output as a converted bit string (step S204).
さらに、鍵系列生成部3において、出力したビット列から鍵系列のビット列を計算して出力し(ステップS205)、この鍵系列のビット列と暗号文とを排他的論理和演算器(XOR)5に入力し、排他的論理和演算を行って平文として出力する(ステップS206)。
Further, the key
したがって、本実施形態のストリーム暗号の復号化装置においては、上記の非線形関数部により装置を構成したことから、安全かつ高速な処理を実現することができる。 Therefore, in the decryption apparatus for stream cipher of the present embodiment, the apparatus is configured by the nonlinear function unit, so that safe and high-speed processing can be realized.
[第3の実施形態]
<MAC生成装置の構成>
本実施形態に係るMAC生成装置は、図7に示すように、周期系列生成装置1と、非線形関数部2と、鍵系列生成部3と、排他的論理和演算器(XOR)4とから構成されている。なお、第1の実施形態と同様の符号を付す要素については、同様の機能を有するものであるから、詳細な説明は省略する。本実施形態に係るMAC生成装置の基本構成は、第1の実施形態に係るストリーム暗号の暗号化装置と同様であるが、排他的論理和演算器(XOR)4から出力される暗号文を周期系列生成装置1にフィードバックする点が異なっている。
[Third Embodiment]
<Configuration of MAC generator>
As shown in FIG. 7, the MAC generation device according to the present embodiment includes a periodic sequence generation device 1, a
<MAC生成装置の処理>
次に、図8を用いて、MAC生成装置の処理について説明する。
まず、周期系列生成装置1から入力されたビット列と、内部メモリL2、R2とを加算器15a、15bにおいて、個別に算術加算処理を行い、その後、非線形置換器(sub)16b、16cにおいて、非線形置換処理を実施する(ステップS301)。そして、内部メモリL2から計算された値は内部メモリR1に、内部メモリR2から計算された値は、内部メモリL1に格納する(ステップS302)。
<Process of MAC generator>
Next, processing of the MAC generation device will be described with reference to FIG.
First, the bit sequence input from the periodic sequence generation device 1 and the internal memories L2 and R2 are individually subjected to arithmetic addition processing in
次に、元々内部メモリL1、R1に格納されていた値については、非線形置換器(sub)16a、16dにおいて、非線形置換を施した後、内部メモリL2、R2へ格納する(ステップS303)。そして、更新された内部メモリR1、R2、L1、L2の情報を変換されたビット列として出力する(ステップS304)。 Next, the values originally stored in the internal memories L1 and R1 are subjected to nonlinear replacement in the nonlinear replacement units (sub) 16a and 16d, and then stored in the internal memories L2 and R2 (step S303). Then, the updated information in the internal memories R1, R2, L1, and L2 is output as a converted bit string (step S304).
さらに、鍵系列生成部3において出力したビット列から鍵系列のビット列を計算して出力し(ステップS305)、この鍵系列のビット列と平文とを排他的論理和演算器(XOR)4に入力し、排他的論理和演算を行って暗号文として出力し、これを周期系列生成装置1にフィードバックする(ステップS306)。 Further, the bit sequence of the key sequence is calculated and output from the bit sequence output in the key sequence generation unit 3 (step S305), the bit sequence of the key sequence and the plaintext are input to the exclusive OR calculator (XOR) 4, An exclusive OR operation is performed and output as a ciphertext, which is fed back to the periodic sequence generation device 1 (step S306).
そして、すべての平文を入力したか否かを判断し(ステップS307)、すべての平文を入力したと判断したときには(ステップS307の「Yes」)、メッセージ認証子を出力し(ステップS308)、すべての平文を入力していないと判断したときには(ステップS307の「No」)、ステップS301に戻って、処理を続行する。 Then, it is determined whether or not all plaintexts have been input (step S307). When it is determined that all plaintexts have been input (“Yes” in step S307), a message authenticator is output (step S308). When it is determined that no plaintext is input (“No” in step S307), the process returns to step S301 to continue the process.
したがって、本実施形態のMAC生成装置においては、上記の非線形関数部により装置を構成したことから、安全かつ高速な処理を実現することができる。 Therefore, in the MAC generation apparatus according to the present embodiment, the apparatus is configured by the above-described nonlinear function unit, so that safe and high-speed processing can be realized.
なお、上述の一連の処理をプログラムとしてコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムをストリーム暗号の暗号化装置、ストリーム暗号の復号化装置、MAC生成装置に読み込ませ、実行することによって本発明のストリーム暗号の暗号化装置、ストリーム暗号の復号化装置、MAC生成装置を実現することができる。 The above-described series of processing is recorded as a program on a computer-readable recording medium, and the program recorded on the recording medium is read by a stream cipher encryption device, a stream cipher decryption device, and a MAC generation device, By executing this, the stream cipher encryption apparatus, stream cipher decryption apparatus, and MAC generation apparatus of the present invention can be realized.
また、WWW(World Wide Web)システムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。 In addition, if a WWW (World Wide Web) system is used, a homepage providing environment (or display environment) is also included. Further, the program may be transmitted from a computer storing the program in a storage device or the like to another computer 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, what is called a difference file (difference program) may be sufficient.
なお、本発明は、様々なストリーム暗号の評価に広く適用することができる。したがって、ストリーム暗号を使用するようなブロードバンド事業や携帯電話をはじめとするモバイル通信におけるシステム構築に広く利用することが可能である。 Note that the present invention can be widely applied to various stream cipher evaluations. Therefore, it can be widely used for system construction in broadband communication using stream cipher and mobile communication including mobile phones.
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 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.
1・・・周期系列生成装置
2・・・非線形関数部
3・・・鍵系列生成部
4、5・・・XOR
11、12、13、14・・・内部メモリ(L1、L2、R1、R2)
15a、15b・・・加算器
16a、16b、16c、16d・・・非線形置換器(sub)
DESCRIPTION OF SYMBOLS 1 ... Periodic sequence production |
11, 12, 13, 14... Internal memory (L1, L2, R1, R2)
15a, 15b ...
Claims (13)
前記周期系列生成装置から入力した乱数系列のビットデータと前記複数の内部メモリのうち一の内部メモリに記憶されているデータとを演算する演算器と、
前記演算器による演算後のデータ又は前記複数の内部メモリのうち一の内部メモリに記憶されているデータを読み出して非線形置換し、当該非線形置換後のデータを前記演算器又は他の非線形置換器の入力データとして前記複数の内部メモリのうち一の内部メモリに入力する複数の非線形置換器と、
を備え、
前記複数の内部メモリは、前記複数の非線形置換器を介して、環状に接続されていることを特徴とする非線形関数器。 A nonlinear function unit that inputs bit data of a random number sequence from a periodic sequence generation device and outputs the converted bit data from a plurality of internal memories to a key sequence generator ,
An arithmetic unit that calculates bit data of a random number sequence input from the periodic sequence generation device and data stored in one internal memory of the plurality of internal memories;
Data after computation by the computing unit or data stored in one internal memory of the plurality of internal memories is read out and nonlinearly replaced, and the data after the nonlinear replacement is stored in the computing unit or other nonlinear replacing unit A plurality of non-linear substituters that input as input data to one of the plurality of internal memories ;
With
The non-linear function unit, wherein the plurality of internal memories are connected in a ring shape via the plurality of non-linear substituters.
前記周期系列生成装置から入力した乱数系列のビットデータと前記複数の内部メモリのうち一の内部メモリに記憶されているデータとを演算する複数の演算器と、
前記演算器による演算後のデータ又は前記複数の内部メモリのうち一の内部メモリに記憶されているデータを読み出して非線形置換し、当該非線形置換後のデータを前記演算器又は他の非線形置換器の入力データとして前記複数の内部メモリのうち一の内部メモリに入力する複数の非線形置換器と、
を備え、
前記複数の内部メモリが前記複数の非線形置換器および前記複数の演算器を介して、環状に接続されていることを特徴とする非線形関数器。 A nonlinear function unit that inputs bit data of a random number sequence from a periodic sequence generation device and outputs the converted bit data from a plurality of internal memories to a key sequence generator ,
A plurality of arithmetic units for calculating bit data of a random number sequence input from the periodic sequence generation device and data stored in one internal memory among the plurality of internal memories;
Data after computation by the computing unit or data stored in one internal memory of the plurality of internal memories is read out and nonlinearly replaced, and the data after the nonlinear replacement is stored in the computing unit or other nonlinear replacing unit A plurality of non-linear substituters that input as input data to one of the plurality of internal memories ;
With
The non-linear function unit, wherein the plurality of internal memories are connected in a ring through the plurality of non-linear substituters and the plurality of arithmetic units.
前記非線形関数器に入力する乱数系列のビットデータを生成する乱数系列データ生成手段と、
前記非線形関数器から出力される変換されたビットデータから鍵系列のビットデータを生成する鍵系列データ生成手段と、
該鍵系列データ生成手段において生成された鍵系列のビットデータと平文との排他的論理和演算を行って、暗号文を出力する排他的論理和演算手段と、
を備えたことを特徴とするストリーム暗号の暗号化装置。 The nonlinear function device according to any one of claims 1 to 4,
Random number sequence data generating means for generating bit data of a random number sequence to be input to the nonlinear function unit;
Key sequence data generation means for generating bit sequence bit data from the converted bit data output from the nonlinear function unit;
An exclusive OR operation unit that performs an exclusive OR operation between the bit data of the key sequence generated by the key sequence data generation unit and the plaintext, and outputs a ciphertext;
A stream cipher encryption apparatus comprising:
前記非線形関数器に入力する乱数系列のビットデータを生成する乱数系列データ生成手段と、
前記非線形関数器から出力される変換されたビットデータから鍵系列のビットデータを生成する鍵系列データ生成手段と、
該鍵系列データ生成手段において生成された鍵系列のビットデータと暗号文との排他的論理和演算を行って、平文を出力する排他的論理和演算手段と、
を備えたことを特徴とするストリーム暗号の復号化装置。 The nonlinear function device according to any one of claims 1 to 4,
Random number sequence data generating means for generating bit data of a random number sequence to be input to the nonlinear function unit;
Key sequence data generation means for generating bit sequence bit data from the converted bit data output from the nonlinear function unit;
An exclusive OR operation means for performing an exclusive OR operation between the bit data of the key sequence generated in the key sequence data generation means and the ciphertext, and outputting a plaintext;
An apparatus for decrypting a stream cipher, comprising:
前記非線形関数器に入力する乱数系列のビットデータを生成する乱数系列データ生成手段と、
前記非線形関数器から出力される変換されたビットデータから鍵系列のビットデータを生成する鍵系列データ生成手段と、
該鍵系列データ生成手段において生成された鍵系列のビットデータと平文との排他的論理和演算を行って、演算結果を前記乱数系列データ生成手段にフィードバックするとともに、最終的な暗号文をメッセージ認証子として出力する排他的論理和演算手段と、
を備えたことを特徴とするMAC生成装置。 The nonlinear function device according to any one of claims 1 to 4,
Random number sequence data generating means for generating bit data of a random number sequence to be input to the nonlinear function unit;
Key sequence data generation means for generating bit sequence bit data from the converted bit data output from the nonlinear function unit;
Performs an exclusive OR operation between the bit data of the key sequence generated by the key sequence data generation means and the plaintext, feeds back the operation result to the random number sequence data generation means, and authenticates the final ciphertext by message authentication. An exclusive OR operation means for outputting as a child;
A MAC generation device comprising:
乱数系列のビットデータと第2の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する第2のステップと、
第3の内部メモリデータに非線形処理を施して第2の内部メモリに格納する第3のステップと、
第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納する第4のステップと、
更新された各内部メモリのデータを変換されたビット列として出力する第5のステップと、
該変換されたビット列から鍵系列を演算する第6のステップと、
該演算された鍵系列と平文との排他的論理和演算を行って、暗号文を出力する第7のステップと、
を備えたことを特徴とするストリーム暗号の暗号化方法。 A first step of performing arithmetic addition of the bit data of the random number sequence and the first internal memory data, performing non-linear processing on the bit data subjected to the arithmetic addition, and storing the result in the third internal memory;
A second step of arithmetically adding the bit data of the random number sequence and the second internal memory data, performing non-linear processing on the bit data subjected to the arithmetic addition, and storing the result in the fourth internal memory;
A third step of performing non-linear processing on the third internal memory data and storing it in the second internal memory;
A fourth step of performing non-linear processing on the fourth internal memory data and storing it in the first internal memory;
A fifth step of outputting the updated data in each internal memory as a converted bit string;
A sixth step of calculating a key sequence from the converted bit string;
A seventh step of performing an exclusive OR operation between the calculated key sequence and the plaintext, and outputting a ciphertext;
A stream cipher encryption method characterized by comprising:
乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する第2のステップと、
第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納する第3のステップと、
第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納する第4のステップと、
更新された各内部メモリのデータを変換されたビット列として出力する第5のステップと、
該変換されたビット列から鍵系列を演算する第6のステップと、
該演算された鍵系列と暗号文との排他的論理和演算を行って、平文を出力する第7のステップと、
を備えたことを特徴とするストリーム暗号の復号化方法。 A first step of performing arithmetic addition of the bit data of the random number sequence and the first internal memory data, performing non-linear processing on the bit data subjected to the arithmetic addition, and storing the result in the second internal memory;
A second step of arithmetically adding the bit data of the random number sequence and the third internal memory data, performing non-linear processing on the bit data subjected to the arithmetic addition, and storing it in the fourth internal memory;
A third step of performing non-linear processing on the second internal memory data and storing in the third internal memory;
A fourth step of performing non-linear processing on the fourth internal memory data and storing it in the first internal memory;
A fifth step of outputting the updated data in each internal memory as a converted bit string;
A sixth step of calculating a key sequence from the converted bit string;
A seventh step of performing an exclusive OR operation between the calculated key sequence and the ciphertext and outputting a plaintext;
A method of decrypting a stream cipher, comprising:
周期系列装置から入力した乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する第2のステップと、
第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納する第3のステップと、
第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納する第4のステップと、
更新された各内部メモリのデータを変換されたビット列として出力する第5のステップと、
該変換されたビット列から鍵系列を演算する第6のステップと、
該演算された鍵系列と平文との排他的論理和演算を行って、演算結果を前記周期系列装置にフィードバックするとともに、最終的な暗号文をメッセージ認証子として出力する第7のステップと、
を備えたことを特徴とするMAC生成方法。 A first step of performing arithmetic addition on the bit data of the random number sequence input from the periodic sequence device and the first internal memory data, performing non-linear processing on the bit data subjected to arithmetic addition, and storing the bit data in the second internal memory;
A second step of performing arithmetic addition of the bit data of the random number sequence input from the periodic sequence device and the third internal memory data, subjecting the bit data subjected to arithmetic addition to nonlinear processing, and storing the result in the fourth internal memory;
A third step of performing non-linear processing on the second internal memory data and storing in the third internal memory;
A fourth step of performing non-linear processing on the fourth internal memory data and storing it in the first internal memory;
A fifth step of outputting the updated data in each internal memory as a converted bit string;
A sixth step of calculating a key sequence from the converted bit string;
A seventh step of performing an exclusive OR operation between the calculated key sequence and the plaintext, feeding back the operation result to the periodic sequence device, and outputting a final ciphertext as a message authenticator;
A MAC generation method comprising:
乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する第2のステップと、
第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納する第3のステップと、
第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納する第4のステップと、
更新された各内部メモリのデータを変換されたビット列として出力する第5のステップと、
該変換されたビット列から鍵系列を演算する第6のステップと、
該演算された鍵系列と平文との排他的論理和演算を行って、暗号文を出力する第7のステップと、
をコンピュータに実行させるためのプログラム。 A program for causing a computer to execute an encryption method of a stream cipher, wherein the bit data of the random number sequence and the first internal memory data are arithmetically added, and non-linear processing is performed on the bit data that has been arithmetically added. A first step of storing in the internal memory of
A second step of arithmetically adding the bit data of the random number sequence and the third internal memory data, performing non-linear processing on the bit data subjected to the arithmetic addition, and storing it in the fourth internal memory;
A third step of performing non-linear processing on the second internal memory data and storing in the third internal memory;
A fourth step of performing non-linear processing on the fourth internal memory data and storing it in the first internal memory;
A fifth step of outputting the updated data in each internal memory as a converted bit string;
A sixth step of calculating a key sequence from the converted bit string;
A seventh step of performing an exclusive OR operation between the calculated key sequence and the plaintext, and outputting a ciphertext;
A program that causes a computer to execute.
乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する第1のステップと、
乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する第2のステップと、
第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納する第3のステップと、
第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納する第4のステップと、
更新された各内部メモリのデータを変換されたビット列として出力する第5のステップと、
該変換されたビット列から鍵系列を演算する第6のステップと、
該演算された鍵系列と暗号文との排他的論理和演算を行って、平文を出力する第7のステップと、
をコンピュータに実行させるためのプログラム。 A program for causing a computer to execute a stream cipher decryption method,
A first step of performing arithmetic addition of the bit data of the random number sequence and the first internal memory data, performing non-linear processing on the bit data subjected to the arithmetic addition, and storing the result in the second internal memory;
A second step of arithmetically adding the bit data of the random number sequence and the third internal memory data, performing non-linear processing on the bit data subjected to the arithmetic addition, and storing it in the fourth internal memory;
A third step of performing non-linear processing on the second internal memory data and storing in the third internal memory;
A fourth step of performing non-linear processing on the fourth internal memory data and storing it in the first internal memory;
A fifth step of outputting the updated data in each internal memory as a converted bit string;
A sixth step of calculating a key sequence from the converted bit string;
A seventh step of performing an exclusive OR operation between the calculated key sequence and the ciphertext and outputting a plaintext;
A program that causes a computer to execute.
周期系列装置から入力した乱数系列のビットデータと第1の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第2の内部メモリに格納する第1のステップと、
周期系列装置から入力した乱数系列のビットデータと第3の内部メモリデータとを算術加算し、算術加算されたビットデータに非線形処理を施して第4の内部メモリに格納する第2のステップと、
第2の内部メモリデータに非線形処理を施して第3の内部メモリに格納する第3のステップと、
第4の内部メモリデータに非線形処理を施して第1の内部メモリに格納する第4のステップと、
更新された各内部メモリのデータを変換されたビット列として出力する第5のステップと、
該変換されたビット列から鍵系列を演算する第6のステップと、
該演算された鍵系列と平文との排他的論理和演算を行って、演算結果を前記周期系列装置にフィードバックするとともに、最終的な暗号文をメッセージ認証子として出力する第7のステップと、
をコンピュータに実行させるためのプログラム。 A program for causing a computer to execute a MAC generation method,
A first step of performing arithmetic addition on the bit data of the random number sequence input from the periodic sequence device and the first internal memory data, performing non-linear processing on the bit data subjected to arithmetic addition, and storing the bit data in the second internal memory;
A second step of performing arithmetic addition of the bit data of the random number sequence input from the periodic sequence device and the third internal memory data, subjecting the bit data subjected to arithmetic addition to nonlinear processing, and storing the result in the fourth internal memory;
A third step of performing non-linear processing on the second internal memory data and storing in the third internal memory;
A fourth step of performing non-linear processing on the fourth internal memory data and storing it in the first internal memory;
A fifth step of outputting the updated data in each internal memory as a converted bit string;
A sixth step of calculating a key sequence from the converted bit string;
A seventh step of performing an exclusive OR operation between the calculated key sequence and the plaintext, feeding back the operation result to the periodic sequence device, and outputting a final ciphertext as a message authenticator;
A program that causes a computer to execute.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006327982A JP4938430B2 (en) | 2006-12-05 | 2006-12-05 | Nonlinear function unit, stream cipher encryption apparatus, decryption apparatus, MAC generation apparatus, stream cipher encryption method, decryption method, MAC generation method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006327982A JP4938430B2 (en) | 2006-12-05 | 2006-12-05 | Nonlinear function unit, stream cipher encryption apparatus, decryption apparatus, MAC generation apparatus, stream cipher encryption method, decryption method, MAC generation method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008139742A JP2008139742A (en) | 2008-06-19 |
JP4938430B2 true JP4938430B2 (en) | 2012-05-23 |
Family
ID=39601254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006327982A Active JP4938430B2 (en) | 2006-12-05 | 2006-12-05 | Nonlinear function unit, stream cipher encryption apparatus, decryption apparatus, MAC generation apparatus, stream cipher encryption method, decryption method, MAC generation method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4938430B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100128870A1 (en) * | 2007-03-27 | 2010-05-27 | Yukiyasu Tsunoo | Pseudo-random number generation device, program, and method for stream encoding |
JP5096794B2 (en) * | 2007-05-17 | 2012-12-12 | Kddi株式会社 | Stream cipher encryption device, stream cipher decryption device, self-synchronization stream cipher encryption device, self-synchronization stream cipher decryption device, stream cipher encryption method, self-synchronization stream cipher encryption method And programs |
KR102564618B1 (en) * | 2022-04-21 | 2023-08-08 | 주식회사 네오패드 | Encryption system and method using media content file of sender or receiver |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6804354B1 (en) * | 1999-12-02 | 2004-10-12 | Honeywell International Inc. | Cryptographic isolator using multiplication |
JP2005309148A (en) * | 2004-04-22 | 2005-11-04 | Hitachi Ltd | Data converter and the data conversion method |
-
2006
- 2006-12-05 JP JP2006327982A patent/JP4938430B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2008139742A (en) | 2008-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7978851B2 (en) | Keystream encryption device, method, and program | |
US9189425B2 (en) | Protecting look up tables by mixing code and operations | |
KR20100069610A (en) | Methods and devices for a chained encryption mode | |
WO2011105367A1 (en) | Block encryption device, block decryption device, block encryption method, block decryption method and program | |
WO2021129470A1 (en) | Polynomial-based system and method for fully homomorphic encryption of binary data | |
JP2017187724A (en) | Encryption device, encryption method, decryption device, and decryption method | |
Prajwal et al. | User defined encryption procedure for IDEA algorithm | |
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 | |
JP2012039180A (en) | Encryptor of stream encryption, decoder of stream encryption, encrypting method of stream encryption, decoding method of stream encryption, and program | |
JP5415020B2 (en) | Stream cipher encryption apparatus, decryption apparatus, MAC generation apparatus, stream cipher encryption method, decryption method, MAC generation method, and program | |
JP5431191B2 (en) | Authenticated stream cipher encryption apparatus, authenticated stream cipher decryption apparatus, encryption method, decryption method, and program | |
Saudagar et al. | Image encryption based on advanced encryption standard (aes) | |
JP5489696B2 (en) | Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program | |
JP5084224B2 (en) | Self-synchronous stream cipher encryption apparatus, decryption apparatus, self-synchronous stream cipher system, MAC generation apparatus, encryption method, decryption method, MAC generation method, and program | |
JP2010256749A (en) | Device and method for generating hash value, and program | |
JP4819576B2 (en) | Self-synchronous stream cipher encryption apparatus, decryption apparatus, self-synchronous stream cipher system, MAC generation apparatus, 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 | |
JP2011119985A (en) | Encryption and decryption method | |
JP5559011B2 (en) | Stream cipher encryption apparatus, stream cipher encryption method and program | |
JP5706751B2 (en) | Stream cipher encryption apparatus, stream cipher decryption apparatus, stream cipher encryption method, stream cipher decryption method, and program | |
JP5726394B2 (en) | Nonlinear function unit, encryption device for stream cipher, decryption device, MAC generation device | |
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 | |
CN113572593B (en) | Complex format parameter transmission method and device | |
KR102626974B1 (en) | Method and system for protecting secret key of white box cryptography |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090708 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111206 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120130 |
|
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: 20120214 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120223 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150302 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4938430 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |