JP2010164792A - 暗号処理装置 - Google Patents
暗号処理装置 Download PDFInfo
- Publication number
- JP2010164792A JP2010164792A JP2009007249A JP2009007249A JP2010164792A JP 2010164792 A JP2010164792 A JP 2010164792A JP 2009007249 A JP2009007249 A JP 2009007249A JP 2009007249 A JP2009007249 A JP 2009007249A JP 2010164792 A JP2010164792 A JP 2010164792A
- Authority
- JP
- Japan
- Prior art keywords
- gate
- function
- output
- input
- xor
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0625—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
- H04L2209/122—Hardware reduction or efficient architectures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Logic Circuits (AREA)
- Storage Device Security (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
【解決手段】ANDゲート及びORゲートのうちいずれか一方であって、第1入力ビット列と拡大鍵に基づくビット列とが入力される第1演算ゲートと、第1演算ゲートの出力と第2入力ビット列とが入力される第1XORゲートと、第1演算ゲートと異種のゲートであって、第1XORゲートの出力と拡大鍵に基づくビット列とが入力される第2演算ゲートと、第2演算ゲートの出力と第1入力ビット列とが入力される第2XORゲートと、第1演算ゲートと同種のゲートであって、第2XORゲートの出力と拡大鍵に基づくビット列とが入力される第3演算ゲートと、第3演算ゲートの出力と第1XORゲートの出力とが入力される第3XORゲートとを有する。
【選択図】図1
Description
図1は、実施例1のマージ関数の構成の一例を示す回路図である。上述したように、FL関数は、1段目がANDゲートで2段目がORゲートである、2段構造を持つ関数である。FL-1関数はその逆に、1段目がORゲートで2段目がANDゲートである、2段構造を持つ関数である。これに対して、本実施例のマージ関数は、3段構造を持つ関数である。本実施例のマージ関数は、1段目をANDゲート11a(第1演算ゲート)、2段目をORゲート12(第2演算ゲート)、3段目をANDゲート11b(第3演算ゲート)とし、2つの関数の共通部分をORゲート12のみとする。
図2は、実施例2のマージ関数の構成の一例を示す回路図である。この図において、図1と同一符号は図1に示された対象と同一又は相当物を示しており、ここでの説明を省略する。本実施例は、実施例1のセレクタ14a,14bをそれぞれXORゲート13a,13cの入力側へと移動させてセレクタ15a(第3セレクタ),15b(第4セレクタ)とする。これによって、セレクタ15a,15bはそれぞれANDゲート11a,11bの出力信号、もしくは16bitの0信号のどちらかを選択するように変更できる。
図3は、実施例3のマージ関数の構成の一例を示す回路図である。この図において、図2と同一符号は図2に示された対象と同一又は相当物を示しており、ここでの説明を省略する。本実施例は、実施例2におけるセレクタ15a,15bをそれぞれANDゲート16a(第1ANDゲート),16b(第2ANDゲート)に等価変換する。実施例2では、セレクタにおける選択信号selは1bitであるが、実施例3では16bitに拡張した信号である。
FL関数とFL-1関数を1つの関数としてマージを行うことにより、クリティカルパスが延長され、処理速度の低下を引き起こす場合がある。
る。この理由は、従来例1では並列だったFL関数とFL-1関数に対して、実施例3では縦列の構造となっているためである。これを解決するために、実施例3で等価変換したANDゲートをクリティカルパス上から移動する。
図5は、実施例5のマージ関数の構成の一例を示す回路図である。この図において、図1と同一符号は図1に示された対象と同一又は相当物を示しており、ここでの説明を省略する。本実施例は、基本的な構成と効果が実施例1と同様であるが、ORゲート及びANDゲートの配置が実施例1と異なる。実施例1では、FL関数とFL-1関数の共通部分をORゲートとしたが、本実施例ではANDゲートを共通部分としている。つまり、本実施例のマージ関数は、1段目をORゲート21a(第1演算ゲート)、2段目をANDゲート22(第2演算ゲート)、3段目をORゲート21b(第3演算ゲート)とし、2つの関数の共通部分をANDゲート22のみとする。
図6は、実施例6のマージ関数の構成の一例を示す回路図である。この図において、図5と同一符号は図5に示された対象と同一又は相当物を示しており、ここでの説明を省略する。本実施例は、実施例5のセレクタ14a,14bをそれぞれXORゲート13a,13cの入力側へと移動させてセレクタ15a,15bとする。本実施例は、基本的な構成と効果が実施例2と同様であるが、ORゲート及びANDゲートの配置が実施例2と異なる。
図7は、実施例7のマージ関数の構成の一例を示す回路図である。この図において、図6と同一符号は図6に示された対象と同一又は相当物を示しており、ここでの説明を省略する。本実施例は、実施例6におけるセレクタ15a,15bをそれぞれANDゲート16a,16bに等価変換する。本実施例は、基本的な構成と効果が実施例3と同様であるが、ORゲート及びANDゲートの配置が実施例3と異なる。
(付記1)
暗号処理におけるFL関数及びFL-1関数の演算を行うことができる暗号処理装置であって、
ANDゲート及びORゲートのうちいずれか一方であって、前記暗号処理装置の入力の2Nビットのうち上位Nビットである第1入力ビット列と拡大鍵の上位Nビット及び下位Nビットのいずれか一方に基づく第1拡大鍵ビット列とが入力される第1演算ゲートと、
前記第1演算ゲートの出力と前記暗号処理装置の入力の2Nビットのうち下位Nビットである第2入力ビット列とが入力される第1XORゲートと、
ANDゲート及びORゲートのうち前記第1演算ゲートと異種のゲートであって、前記第1XORゲートの出力と前記拡大鍵の上位Nビット及び下位Nビットのいずれか他方に基づく第2拡大鍵ビット列とが入力される第2演算ゲートと、
前記第2演算ゲートの出力と前記第1入力ビット列とが入力される第2XORゲートと、
ANDゲート及びORゲートのうち前記第1演算ゲートと同種のゲートであって、前記第2XORゲートの出力と前記第1拡大鍵ビット列とが入力される第3演算ゲートと、
前記第3演算ゲートの出力と前記第1XORゲートの出力とが入力される第3XORゲートと、
を備える暗号処理装置。
(付記2)
更に、
選択信号に基づいて、前記第1XORゲートの出力と前記第2入力ビット列とのいずれかを選択して前記第2演算ゲート及び前記第3XORゲートへ出力する第1セレクタと、
前記選択信号に基づいて、前記第3XORゲートの出力と前記第1セレクタの出力とのいずれかを選択して出力する第2セレクタと、
を備える、
付記1に記載の暗号処理装置。
(付記3)
FL関数の指示を受けた前記第1セレクタは、前記第1XORゲートの出力を選択し、
FL関数の指示を受けた前記第2セレクタは、前記第1セレクタの出力を選択し、
FL-1関数の指示を受けた前記第1セレクタは、前記第2入力ビット列を選択し、
FL-1関数の指示を受けた前記第2セレクタは、前記第3XORゲートの出力を選択する、
付記2に記載の暗号処理装置。
(付記4)
更に、
選択信号に基づいて、前記第1演算ゲートの出力と前記Nビットの0信号とのいずれかを選択して前記第1XORゲートへ出力する第3セレクタと、
前記選択信号に基づいて、前記第3演算ゲートの出力と前記Nビットの0信号とのいずれかを選択して前記第3XORゲートへ出力する第4セレクタと、
を備える、
付記1に記載の暗号処理装置。
(付記5)
FL関数の指示を受けた前記第3セレクタは、前記第1演算ゲートの出力を選択し、
FL関数の指示を受けた前記第4セレクタは、前記Nビットの0信号を選択し、
FL-1関数の指示を受けた前記第3セレクタは、前記Nビットの0信号を選択し、
FL-1関数の指示を受けた前記第4セレクタは、前記第3演算ゲートの出力を選択する、
付記4に記載の暗号処理装置。
(付記6)
更に、
前記第1演算ゲートの出力と選択信号とのAND演算を行って前記第1XORゲートへ出力する第1ANDゲートと、
前記第3演算ゲートの出力と前記選択信号の否定信号とのAND演算を行って前記第3XORゲートへ出力する第3ANDゲートと、
を備える、
付記1に記載の暗号処理装置。
(付記7)
更に、
前記拡大鍵の上位Nビットと選択信号とのAND演算を行って前記第1演算ゲートへ出力する第3ANDゲートと、
前記拡大鍵の上位Nビットと前記選択信号の否定信号とのAND演算を行って前記第3演算ゲートへ出力する第4ANDゲートと、
を備え、
前記第1演算ゲート及び前記第3演算ゲートは、ANDゲートであり、
前記第2演算ゲートは、ORゲートである、
付記1に記載の暗号処理装置。
(付記8)
前記第1演算ゲート及び前記第3演算ゲートは、ANDゲートであり、
前記第2演算ゲートは、ORゲートである、
付記1に記載の暗号処理装置。
(付記9)
前記第1演算ゲート及び前記第3演算ゲートは、ORゲートであり、
前記第2演算ゲートは、ANDゲートである、
付記1に記載の暗号処理装置。
(付記10)
前記第1演算ゲート、前記第1XORゲート、前記第2ゲート、前記第2XORゲート、前記演算第3ゲート、前記第3XORゲートは、共通鍵暗号のアルゴリズムのMISTY1におけるFL関数及びFL-1関数に設けられる、
付記1に記載の暗号処理装置。
(付記11)
前記第1演算ゲート、前記第1XORゲート、前記第2ゲート、前記第2XORゲート、前記演算第3ゲート、前記第3XORゲートは、共通鍵暗号のアルゴリズムのMISTY2におけるFL関数及びFL-1関数に設けられる、
付記1に記載の暗号処理装置。
(付記12)
前記第1演算ゲート、前記第1XORゲート、前記第2ゲート、前記第2XORゲート、前記演算第3ゲート、前記第3XORゲートは、共通鍵暗号のアルゴリズムのKASUMIにおけるFL関数及びFL-1関数に設けられる、
付記1に記載の暗号処理装置。
(付記13)
前記第1演算ゲート、前記第1XORゲート、前記第2ゲート、前記第2XORゲート、前記演算第3ゲート、前記第3XORゲートは、共通鍵暗号のアルゴリズムのCAMELLIAにおけるFL関数及びFL-1関数に設けられる、
付記1に記載の暗号処理装置。
12,21a,21b ORゲート
13a,13b,13c XORゲート
14a,14b,15a,15b セレクタ
Claims (5)
- 暗号処理におけるFL関数及びFL-1関数の演算を行うことができる暗号処理装置であって、
ANDゲート及びORゲートのうちいずれか一方であって、前記暗号処理装置の入力の2Nビットのうち上位Nビットである第1入力ビット列と拡大鍵の上位Nビット及び下位Nビットのいずれか一方に基づく第1拡大鍵ビット列とが入力される第1演算ゲートと、
前記第1演算ゲートの出力と前記暗号処理装置の入力の2Nビットのうち下位Nビットである第2入力ビット列とが入力される第1XORゲートと、
ANDゲート及びORゲートのうち前記第1演算ゲートと異種のゲートであって、前記第1XORゲートの出力と前記拡大鍵の上位Nビット及び下位Nビットのいずれか他方に基づく第2拡大鍵ビット列とが入力される第2演算ゲートと、
前記第2演算ゲートの出力と前記第1入力ビット列とが入力される第2XORゲートと、
ANDゲート及びORゲートのうち前記第1演算ゲートと同種のゲートであって、前記第2XORゲートの出力と前記第1拡大鍵ビット列とが入力される第3演算ゲートと、
前記第3演算ゲートの出力と前記第1XORゲートの出力とが入力される第3XORゲートと、
を備える暗号処理装置。 - 更に、
選択信号に基づいて、前記第1XORゲートの出力と前記第2入力ビット列とのいずれかを選択して前記第2演算ゲート及び前記第3XORゲートへ出力する第1セレクタと、
前記選択信号に基づいて、前記第3XORゲートの出力と前記第1セレクタの出力とのいずれかを選択して出力する第2セレクタと、
を備える、
請求項1に記載の暗号処理装置。 - 更に、
選択信号に基づいて、前記第1演算ゲートの出力と前記Nビットの0信号とのいずれかを選択して前記第1XORゲートへ出力する第3セレクタと、
前記選択信号に基づいて、前記第3演算ゲートの出力と前記Nビットの0信号とのいずれかを選択して前記第3XORゲートへ出力する第4セレクタと、
を備える、
請求項1に記載の暗号処理装置。 - 更に、
前記第1演算ゲートの出力と選択信号とのAND演算を行って前記第1XORゲートへ出力する第1ANDゲートと、
前記第3演算ゲートの出力と前記選択信号の否定信号とのAND演算を行って前記第3XORゲートへ出力する第3ANDゲートと、
を備える、
請求項1に記載の暗号処理装置。 - 更に、
前記拡大鍵の上位Nビットと選択信号とのAND演算を行って前記第1演算ゲートへ出力する第3ANDゲートと、
前記拡大鍵の上位Nビットと前記選択信号の否定信号とのAND演算を行って前記第3演算ゲートへ出力する第4ANDゲートと、
を備え、
前記第1演算ゲート及び前記第3演算ゲートは、ANDゲートであり、
前記第2演算ゲートは、ORゲートである、
請求項1に記載の暗号処理装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009007249A JP5200949B2 (ja) | 2009-01-16 | 2009-01-16 | 暗号処理装置 |
US12/612,290 US8111827B2 (en) | 2009-01-16 | 2009-11-04 | Cryptographic processing apparatus and cryptographic processing method |
EP09176232.8A EP2209251B1 (en) | 2009-01-16 | 2009-11-17 | Cryptographic processing apparatus and cryptographic processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009007249A JP5200949B2 (ja) | 2009-01-16 | 2009-01-16 | 暗号処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010164792A true JP2010164792A (ja) | 2010-07-29 |
JP5200949B2 JP5200949B2 (ja) | 2013-06-05 |
Family
ID=42135941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009007249A Expired - Fee Related JP5200949B2 (ja) | 2009-01-16 | 2009-01-16 | 暗号処理装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8111827B2 (ja) |
EP (1) | EP2209251B1 (ja) |
JP (1) | JP5200949B2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100246815A1 (en) * | 2009-03-31 | 2010-09-30 | Olson Christopher H | Apparatus and method for implementing instruction support for the kasumi cipher algorithm |
US20100250965A1 (en) * | 2009-03-31 | 2010-09-30 | Olson Christopher H | Apparatus and method for implementing instruction support for the advanced encryption standard (aes) algorithm |
US8832464B2 (en) * | 2009-03-31 | 2014-09-09 | Oracle America, Inc. | Processor and method for implementing instruction support for hash algorithms |
US9317286B2 (en) * | 2009-03-31 | 2016-04-19 | Oracle America, Inc. | Apparatus and method for implementing instruction support for the camellia cipher algorithm |
US8654970B2 (en) * | 2009-03-31 | 2014-02-18 | Oracle America, Inc. | Apparatus and method for implementing instruction support for the data encryption standard (DES) algorithm |
JP5387295B2 (ja) * | 2009-09-29 | 2014-01-15 | 富士通株式会社 | 暗号装置及び方法 |
GB201719355D0 (en) * | 2017-11-22 | 2018-01-03 | Univ Leuven Kath | Reconfigerable logic circuit |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007041620A (ja) * | 2000-03-09 | 2007-02-15 | Mitsubishi Electric Corp | データ変換装置及びデータ変換方法及びデータ変換方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP2007177156A (ja) * | 2005-12-28 | 2007-07-12 | Ulvac Japan Ltd | 蛍光体及びその作製方法、並びに発光素子 |
JP4128395B2 (ja) * | 2002-05-23 | 2008-07-30 | 三菱電機株式会社 | データ変換装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04128395A (ja) | 1990-09-18 | 1992-04-28 | Nikkiso Co Ltd | ボイラ配管の腐食抑制における酸素ガス注入方法 |
ES2255712T3 (es) | 1995-09-05 | 2006-07-01 | Mitsubishi Denki Kabushiki Kaisha | Aparato de transformacion de datos y procedimiento de transformacion de datos. |
US6185679B1 (en) * | 1998-02-23 | 2001-02-06 | International Business Machines Corporation | Method and apparatus for a symmetric block cipher using multiple stages with type-1 and type-3 feistel networks |
JP2007199156A (ja) | 2006-01-24 | 2007-08-09 | Sony Corp | 暗号処理装置、暗号処理装置製造装置、および方法、並びにコンピュータ・プログラム |
-
2009
- 2009-01-16 JP JP2009007249A patent/JP5200949B2/ja not_active Expired - Fee Related
- 2009-11-04 US US12/612,290 patent/US8111827B2/en not_active Expired - Fee Related
- 2009-11-17 EP EP09176232.8A patent/EP2209251B1/en not_active Not-in-force
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007041620A (ja) * | 2000-03-09 | 2007-02-15 | Mitsubishi Electric Corp | データ変換装置及びデータ変換方法及びデータ変換方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP4128395B2 (ja) * | 2002-05-23 | 2008-07-30 | 三菱電機株式会社 | データ変換装置 |
JP2007177156A (ja) * | 2005-12-28 | 2007-07-12 | Ulvac Japan Ltd | 蛍光体及びその作製方法、並びに発光素子 |
Non-Patent Citations (2)
Title |
---|
CSNG200400204017; 市川 哲也, 粕谷 智巳, 松井 充: '128bitブロック暗号Camelliaの小型ハードウェア実装における一方法' 電子情報通信学会技術研究報告 Vol. 101, No. 728, 20020312, pp. 121-126 * |
JPN6013000907; 市川 哲也, 粕谷 智巳, 松井 充: '128bitブロック暗号Camelliaの小型ハードウェア実装における一方法' 電子情報通信学会技術研究報告 Vol. 101, No. 728, 20020312, pp. 121-126 * |
Also Published As
Publication number | Publication date |
---|---|
EP2209251B1 (en) | 2014-11-26 |
EP2209251A2 (en) | 2010-07-21 |
EP2209251A3 (en) | 2012-02-22 |
US20100183143A1 (en) | 2010-07-22 |
US8111827B2 (en) | 2012-02-07 |
JP5200949B2 (ja) | 2013-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5402632B2 (ja) | 共通鍵ブロック暗号化装置、共通鍵ブロック暗号化方法及びプログラム | |
JP5200949B2 (ja) | 暗号処理装置 | |
US11546135B2 (en) | Key sequence generation for cryptographic operations | |
JP5229315B2 (ja) | 共通鍵暗号機能を搭載した暗号化装置及び組込装置 | |
JP6406350B2 (ja) | 暗号処理装置、および暗号処理方法、並びにプログラム | |
US20090055458A1 (en) | Substitution Boxes | |
EP3123656B1 (en) | Encryption processing device, encryption processing method, and program | |
JP3824121B2 (ja) | 暗号データの復号化処理方法および装置 | |
WO2015146430A1 (ja) | 暗号処理装置、および暗号処理方法、並びにプログラム | |
JP5056860B2 (ja) | データ変換関数の処理装置 | |
JP5182295B2 (ja) | 暗号化装置及び暗号処理方法 | |
KR20080072345A (ko) | 암호화 장치 및 그 방법 | |
JP2012143011A (ja) | 復号処理装置、情報処理装置、および復号処理方法、並びにコンピュータ・プログラム | |
Mancillas-López et al. | An Ultra-Fast Authenticated Encryption Scheme with Associated Data Using AES-OTR | |
JP5338327B2 (ja) | 暗号処理装置 | |
Sasongko et al. | Architecture for the secret-key BC3 cryptography algorithm | |
JP5500277B2 (ja) | 共通鍵暗号機能を搭載した暗号化装置及び組込装置 | |
Li et al. | An efficient area-delay product design for MixColumns/InvMixColumns in AES | |
WO2015146432A1 (ja) | 暗号処理装置、および暗号処理方法、並びにプログラム | |
Hasan et al. | Variable Rounds Block Cipher Algorithm Design | |
Padmavathi et al. | VLSI Secure communication: Advancements in Blowfish Algorithm for Secure Data Transmission | |
Özkaynak et al. | Fast software implementation of des for lightweight platforms | |
JP2007089101A (ja) | ベクトル型暗号化制御方式 | |
JP6292107B2 (ja) | 暗号処理装置、および暗号処理方法、並びにプログラム | |
Smyshlyaev | Internet-Draft CryptoPro Intended status: Informational October 6, 2017 Expires: April 9, 2018 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111006 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121225 |
|
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: 20130115 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130128 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160222 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |