JP5726394B2 - 非線形関数器、ストリーム暗号の暗号化装置、復号化装置、mac生成装置 - Google Patents
非線形関数器、ストリーム暗号の暗号化装置、復号化装置、mac生成装置 Download PDFInfo
- Publication number
- JP5726394B2 JP5726394B2 JP2007335265A JP2007335265A JP5726394B2 JP 5726394 B2 JP5726394 B2 JP 5726394B2 JP 2007335265 A JP2007335265 A JP 2007335265A JP 2007335265 A JP2007335265 A JP 2007335265A JP 5726394 B2 JP5726394 B2 JP 5726394B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- linear
- unit
- transformation matrix
- nonlinear function
- 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
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組み合わせを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
本実施形態に係る非線形関数器20は、従来、GF(28)上の元として8ビットごとのデータに対して行われていた処理を、GF((24)2)上の元として、4ビットごとのデータに対して内部処理を行い、ハードウエア実装における回路の小規模化を図るものである。以下に、その構成と処理の詳細について説明する。
数式を用いて、逆元変換処理について説明する。
まず、A∈GF((24)2)に対して、B∈GF((24)2)をB=A−1とする。ここで、GF((24)2)の生成元βを用いて、AおよびBを数7、数8とする。
次に、数式を用いて、アフィン変換処理について説明する。
アフィン変換は入力をa∈GF(28)、出力をb∈GF(28)としたとき、従来は、行列を用いて次の数12のように表される変換であった。ここで、Pは8×8の行列であり、qはGF(28)の元である。
次に、数式を用いて、線形攪拌処理について説明する。
線形攪拌処理は、入力値を数16、出力値を数17としたときに、従来は、数18のように求められた。つまり、b0は、数19のようになっていた。
本応用例に係るストリーム暗号の暗号化装置は、図9に示すように、周期系列生成装置10と、非線形関数器20と、鍵系列生成部30と、排他的論理和演算器(XOR)40とから構成されている。なお、非線形関数器20については、その内容について、上記にて説明したため、詳細な説明は、省略する。
本応用例に係るストリーム暗号の復号化装置は、図10に示すように、周期系列生成装置10と、非線形関数器20と、鍵系列生成部30と、排他的論理和演算器(XOR)50とから構成されている。なお、第1の応用例と同様の符号を付す要素については、同様の機能を有するものであるから、詳細な説明は省略する。本応用例に係るストリーム暗号の復号化装置においては、第1の応用例に係るストリーム暗号の暗号化装置に比べて、排他的論理和演算器(XOR)50が鍵系列生成部30により生成された鍵系列のビット列と暗号文とを入力し、これらの排他的論理和演算を実行することにより平文を出力する構成となっている点で相違している。
本応用例に係るMAC生成装置は、図11に示すように、周期系列生成装置10と、非線形関数器20と、鍵系列生成部30と、排他的論理和演算器(XOR)40とから構成されている。なお、第1の応用例と同様の符号を付す要素については、同様の機能を有するものであるから、詳細な説明は省略する。本応用例に係るMAC生成装置の基本構成は、第1の応用例に係るストリーム暗号の暗号化装置と同様であるが、排他的論理和演算器(XOR)40から出力される暗号文を周期系列生成装置10にフィードバックする点が異なっている。
20・・・非線形関数部
30・・・鍵系列生成部
40、50・・・XOR
21、22、23、24・・・内部メモリ(L1、L2、R1、R2)
25a、25b、25c、25d・・・加算器
26a、26b、26c、26d・・・非線形置換器(sub)
27a、27b、27c、27d・・・排他的論理和演算器(XOR)
28a、28b・・・変換行列
29a、29b、29c、29d・・・逆変換行列
31・・・非線形置換処理部
32・・・線形攪拌処理部
Claims (9)
- 乱数系列のビットデータを入力し、変換されたビットデータを複数の内部メモリから出力する非線形関数器であって、
前記入力する乱数系列のビットデータのうち一部のビットデータと前記複数の内部メモリのうち一部の内部メモリデータとを演算する第1の演算器と、該第1の演算器のうち一部の演算器の演算結果と前記一部の内部メモリデータとは異なる内部メモリデータとを演算する第2の演算器と、前記入力する乱数系列のビットデータのうち一部のビットデータとは異なるビットデータと前記第2の演算器の演算結果とを演算する第3の演算器と、を備えた第1の回路網と、
第1の内部メモリ、第2の内部メモリ、第3の内部メモリ、第4の内部メモリ、第1の非線形置換器、第2の非線形置換器、第3の非線形置換器、第4の非線形置換器、第1の逆変換行列、第2の逆変換行列、第3の逆変換行列、第4の逆変換行列、第1の変換行列と、第2の変換行列とからなり、前記第1の内部メモリが、前記第1の非線形置換器からのデータを格納し、前ラウンドに格納したデータを前記第1の逆変換行列に出力し、前記第1の逆変換行列により逆変換されたデータが、前記第1の演算器の一部である第1の加算器および第2の加算器に出力され、前記第2の加算器が前記第1の逆変換行列から入力したデータと前記入力する乱数系列のビットデータのうち一部のビットデータとの加算処理を行なって、前記第1の変換行列に出力し、前記第1の変換行列により変換されたデータが前記第2の非線形置換器に出力され、前記第2の非線形置換器が、前記第1の変換行列から入力したデータに対して、非線形置換処理を行なったデータを前記第2の内部メモリに出力し、前記第2の内部メモリが、前記第2の非線形置換器からのデータを格納し、前ラウンドに格納したデータを前記第3の非線形置換器および第2の逆変換行列に出力し、前記第2の逆変換行列により逆変換されたデータが、前記第2の演算器の一部である第1の排他的論理和演算器に出力され、前記第3の非線形置換器が、前記第2の内部メモリから入力したデータに対して、非線形置換処理を行なったデータを前記第3の内部メモリに出力し、前記第3の内部メモリが、前記第3の非線形置換器からのデータを格納し、前ラウンドに格納したデータを前記第3の逆変換行列に出力し、前記第3の逆変換行列により逆変換されたデータが、前記第1の演算器の一部である第3の加算器および第4の加算器に出力され、前記第3の加算器が前記第3の逆変換行列から入力したデータと前記入力する乱数系列のビットデータのうち一部のビットデータとの加算処理を行なって、前記第2の変換行列に出力し、前記第第2の変換行列により変換されたデータが前記第4の非線形置換器に出力され、前記第4の非線形置換器が、前記第2の変換行列から入力したデータに対して、非線形置換処理を行なったデータを前記第4の内部メモリに出力し、前記第4の内部メモリが、前記第4の非線形置換器からのデータを格納し、前ラウンドに格納したデータを前記第1の非線形置換器および第4の逆変換行列に出力し、前記第4の逆変換行列により逆変換されたデータを前記第2の演算器の一部である第2の排他的論理和演算器に出力する環状に接続された第2の回路網と、
を備え、
前記第2の回路網が、32ビット以下のm(m:正の整数)ビットの入力データに対して、内部処理をn(n:m>nの正の整数)ビットのデータ単位で実行することを特徴とする非線形関数器。 - 前記変換行列が1バイトのデータをx(x:正の整数)ビットの元からn(n:x>nの正の整数)ビットの元に変換し、前記逆変換行列が1バイトのデータをn(n:x>nの正の整数)ビットの元からx(x:正の整数)ビットの元に変換することを特徴とする請求項1に記載の非線形関数器。
- 前記非線形置換器が、非線形置換処理部と線形攪拌処理部とからなり、該非線形置換処理部がさらに、逆元変換処理部とアフィン変換処理部とからなる処理ブロックを32/l(l:正の整数)系統備え、逆元変換処理部およびアフィン変換処理部が各処理をn(n:m>nの正の整数)ビットのデータ単位で実行することを特徴とする請求項1または請求項2に記載の非線形関数器。
- 前記逆元変換処理部が2乗算器と、乗算器と、加算器とから構成されることを特徴とする請求項3に記載の非線形関数器。
- 前記アフィン変換処理部の処理が行列演算により実行されることを特徴とする請求項3に記載の非線形関数器。
- 前記線形攪拌処理部が、加算器と、定数乗算器とから構成されることを特徴とする請求項3に記載の非線形関数器。
- 前記請求項1から請求項6のいずれかに記載の非線形関数器と、
前記非線形関数器に入力する乱数系列のビットデータを生成する乱数系列データ生成手段と、
前記非線形関数器から出力される変換されたビットデータから鍵系列のビットデータを生成する鍵系列データ生成手段と、
該鍵系列データ生成手段において生成された鍵系列のビットデータと平文との排他的論理和演算を行って、暗号文を出力する排他的論理和演算手段と、
を備えたことを特徴とするストリーム暗号の暗号化装置。 - 前記請求項1から請求項6のいずれかに記載の非線形関数器と、
前記非線形関数器に入力する乱数系列のビットデータを生成する乱数系列データ生成手段と、
前記非線形関数器から出力される変換されたビットデータから鍵系列のビットデータを生成する鍵系列データ生成手段と、
該鍵系列データ生成手段において生成された鍵系列のビットデータと暗号文との排他的論理和演算を行って、平文を出力する排他的論理和演算手段と、
を備えたことを特徴とするストリーム暗号の復号化装置。 - 前記請求項1から請求項6のいずれかに記載の非線形関数器と、
前記非線形関数器に入力する乱数系列のビットデータを生成する乱数系列データ生成手段と、
前記非線形関数器から出力される変換されたビットデータから鍵系列のビットデータを生成する鍵系列データ生成手段と、
該鍵系列データ生成手段において生成された鍵系列のビットデータと平文との排他的論理和演算を行って、演算結果を前記乱数系列データ生成手段にフィードバックするとともに、最終的な暗号文をメッセージ認証子として出力する排他的論理和演算手段と、
を備えたことを特徴とするMAC生成装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007335265A JP5726394B2 (ja) | 2007-12-26 | 2007-12-26 | 非線形関数器、ストリーム暗号の暗号化装置、復号化装置、mac生成装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007335265A JP5726394B2 (ja) | 2007-12-26 | 2007-12-26 | 非線形関数器、ストリーム暗号の暗号化装置、復号化装置、mac生成装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009157110A JP2009157110A (ja) | 2009-07-16 |
JP5726394B2 true JP5726394B2 (ja) | 2015-05-27 |
Family
ID=40961206
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007335265A Active JP5726394B2 (ja) | 2007-12-26 | 2007-12-26 | 非線形関数器、ストリーム暗号の暗号化装置、復号化装置、mac生成装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5726394B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113922948B (zh) * | 2021-10-13 | 2023-10-03 | 中国人民解放军国防科技大学 | 基于复合域轮函数的国密算法sm4数据加密方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2641285B2 (ja) * | 1988-05-23 | 1997-08-13 | 三菱電機株式会社 | ガロア体除算回路及び乗除算共用回路 |
US6766344B2 (en) * | 2001-05-08 | 2004-07-20 | International Business Machines Corporation | Processing Galois Field arithmetic |
-
2007
- 2007-12-26 JP JP2007335265A patent/JP5726394B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2009157110A (ja) | 2009-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8654972B2 (en) | Keystream encryption device, method, and program | |
JP4127472B2 (ja) | データ変換装置及びデータ変換装置のデータ変換方法及びプログラム及びコンピュータ読み取り可能な記録媒体 | |
JP5000365B2 (ja) | ハッシュ値生成装置、プログラム及びハッシュ値生成方法 | |
US8958548B2 (en) | Generation of relative prime numbers for use in cryptography | |
KR20110004474A (ko) | 갈루아 폐체 암호 시스템 | |
JP2005215688A (ja) | S−box演算を用いるハードウェア暗号化/復号化装置及び、その方法 | |
US20200044822A1 (en) | Method and apparatus for improving the speed of advanced encryption standard (aes) decryption algorithm | |
WO2021129470A1 (zh) | 基于多项式完全同态的二进制数据加密系统及方法 | |
US11695542B2 (en) | Technology for generating a keystream while combatting side-channel attacks | |
US20130243191A1 (en) | Encryption key generating apparatus | |
Elgeldawi et al. | A comparative analysis of symmetric algorithms in cloud computing: a survey | |
JP7173170B2 (ja) | 情報処理装置、秘密計算方法及びプログラム | |
JP6607257B2 (ja) | 秘密計算システム、秘密計算装置、および、秘密計算方法 | |
JP6052166B2 (ja) | 暗号化方法、暗号化装置および暗号化プログラム | |
JP2009169316A (ja) | ハッシュ関数演算装置及び署名装置及びプログラム及びハッシュ関数演算方法 | |
JP5726394B2 (ja) | 非線形関数器、ストリーム暗号の暗号化装置、復号化装置、mac生成装置 | |
JP4938430B2 (ja) | 非線形関数器、ストリーム暗号の暗号化装置、復号化装置、mac生成装置、ストリーム暗号の暗号化方法、復号化方法、mac生成方法およびプログラム | |
Kuswaha et al. | Data Transmission using AES-RSA Based Hybrid Security Algorithms | |
CN112131596B (zh) | 加解密方法、设备及存储介质 | |
JP2010256749A (ja) | ハッシュ値生成装置、ハッシュ値生成方法およびプログラム | |
RU2188513C2 (ru) | Способ криптографического преобразования l-битовых входных блоков цифровых данных в l-битовые выходные блоки | |
JP5822757B2 (ja) | ストリーム暗号の暗号化装置、ストリーム暗号の復号化装置、ストリーム暗号の暗号化方法、ストリーム暗号の復号化方法およびプログラム | |
JP3013774B2 (ja) | 循環演算にもとづく暗号化装置 | |
JPH0736673A (ja) | 乱数発生器、及びそれを用いた通信システム及びその方法 | |
JP2002139995A (ja) | 公開鍵生成装置、暗号化装置および復号装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100729 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121120 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121213 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130108 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130404 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20130416 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141104 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150209 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150401 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5726394 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |