JP2005100085A - 演算装置、および、暗号・復号演算装置 - Google Patents
演算装置、および、暗号・復号演算装置 Download PDFInfo
- Publication number
- JP2005100085A JP2005100085A JP2003332817A JP2003332817A JP2005100085A JP 2005100085 A JP2005100085 A JP 2005100085A JP 2003332817 A JP2003332817 A JP 2003332817A JP 2003332817 A JP2003332817 A JP 2003332817A JP 2005100085 A JP2005100085 A JP 2005100085A
- Authority
- JP
- Japan
- Prior art keywords
- matrix
- calculation
- arithmetic
- unit
- result
- 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/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
-
- 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
-
- 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/125—Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Complex Calculations (AREA)
- Storage Device Security (AREA)
Abstract
【解決手段】 第1の行列演算を含む第1の演算処理と、第2の行列演算を含む第2の演算処理との何れも演算処理可能な演算装置は、
前記第2の行列演算を行う第1の演算部41と、前記第1の行列演算を行うために、前記第1の演算部と並列に行列演算を行う、少なくとも1以上の他の演算部42と、前記第1の演算部と、前記他の演算部との各演算結果を論理演算する論理回路46とを備える。そして、演算装置は、前記第1の行列演算の演算結果を要求されたとき、前記論理回路46から得る。
【選択図】 図5
Description
"AESにおける多項式乗算回路の効率的実装法" 情報処理学会第63回(平成13年後期)全国大会
ns、排他的論理和の一連の処理を所定回数(n−2回。nは鍵長によって異なる)繰り返し、最後に、SubBytes、ShiftRows、鍵と排他的論理和を行った結果を暗号文として出力する。一方、復号演算は、暗号文を、排他的論理和し、その後、InvShiftRows、InvSubBytes、排他論理和、InvMixColumnsの一連の処理を所定回数(n−2回)繰り返し、最後に、InvShiftRows、InvSubBytes、排他論理和を行った結果を平文として出力する。なお、ここで示した排他的論理和の他方の入力は、所定のアルゴリズムによる鍵生成手段から生成される鍵i(1≦i≦n)であり、暗号演算と復号演算とでは、生成される順序が逆である。
なお、共通暗号演算においては、復号演算に用いる行列演算を、暗号演算に用いる行列とそれ以外の演算の二つに分ける事ができるのが望ましいが、それ以外の分割でもよい。
更に、第二項の行列においては、第一列と第三列との(c 8 c 8)、第二列と第四列との(8 c 8 c)が同じ要素なっている。このため、第一列の演算と第二列の演算を行なう回路のみ実装するだけで、行列演算の演算を行なう回路を実装することができる。
図4は、MixColumnsとInvMixColumnsの演算を共有した場合のAES暗号・復号装置の機能ブロック図を示している。
11・・・M1×D演算部、12・・・M2×D演算部、・・・、1n・・・Mn×D演算部
20・・・レジスタ
21・・・Mi-p×D演算部、2m・・・Mi-v×D演算部
30・・・AES暗号・復号装置
31・・・SubBytes処理回路
32・・・InvSubBytes処理回路
33・・・ShiftRows処理回路
34・・・InvShiftrRows処理回路
35・・・MixColumns&InvMixColumns処理回路
36・・・制御回路
37・・・鍵生成回路
41、42、43、44・・・演算部
Claims (10)
- 第1の行列演算を含む第1の演算処理と、第2の行列演算を含む第2の演算処理との何れも演算処理可能な演算装置において、
前記第2の行列演算を行う第1の演算部と、
前記第1の行列演算を行うために、前記第1の演算部と並列に行列演算を行う、少なくとも1以上の他の演算部と、
前記第1の演算部と、前記他の演算部との各演算結果を論理演算する論理回路とを備え、
前記第1の行列演算の演算結果を、前記論理回路から得るようにしたことを特徴とする演算装置。 - 更に、前記第1の演算部の演算結果と、前記論理回路からの出力とを選択的に出力する出力手段を備えたことを特徴とする請求項1記載の演算装置。
- 前記他の演算部で演算する行列の少なくとも一つに同値な列を2つ以上備え、これら列の行列演算を行う共通で演算する第2の演算部を前記他の演算部に含むことを特徴とする請求項1または2記載の演算装置。
- 第1の行列演算を含む第1の演算処理と、第2の行列演算を含む第2の演算処理との何れも演算処理可能な演算装置において、
各行列演算結果を排他的論理和することにより前記第1の行列演算と同じ演算結果が得られる前記第2の行列演算と第3の行列演算とのうち、前記第2の行列演算を行う第1の演算部と、
前記第3の行列演算を行う第2の演算部と、
前記第1の演算部で演算された演算結果と前記第2の演算部で演算された演算結果とを論理演算する論理回路と、
を備え、前記第1の行列演算の演算結果を、前記論理回路から得るようにしたことを特徴とする演算装置。 - 更に、前記第1の演算部の演算結果と、前記論理回路からの出力とを選択的に出力する出力手段を備えたことを特徴とする請求項5記載の演算装置。
- 前記第3の行列演算は同値な列を2つ以上備えたものであり、前記第2の演算部は、前記列の行列演算を行う第3の演算部を含むようにしたことを特徴とす る請求項5または6記載の演算装置。
- 第1の行列演算を含む復号処理と、第2の行列演算を含む暗号処理との何れも実行可能な暗号・復号演算装置において、
各演算結果を排他的論理和することにより前記第1の行列演算と同じ演算結果が得られる前記第2の行列演算と第3の行列演算とのうち、前記第2の行列演算を行う第1の演算部と、
前記第3の行列演算を行う第2の演算部と、
前記第1の演算部で演算された演算結果と前記第2の演算部で演算された演算結果とを論理演算する論理回路と、
を備え、前記第1の行列演算の演算結果を、前記論理回路から得るようにしたことを特徴とする暗号・復号演算装置。 - 更に、暗号処理時には前記第1の演算部の演算結果を選択し、復号処理時は前記論理回路からの出力を選択して出力する出力手段を備えたことを特徴とする請求項7記載の暗号・復号演算装置。
- 前記第3の行列演算は同値な列を2つ以上備えたものであり、前記第2の演算部は、前記列の行列演算を行う第3の演算部を含むようにしたことを特徴とする請求項8または9記載の暗号・復号演算装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003332817A JP3940714B2 (ja) | 2003-09-25 | 2003-09-25 | 演算装置、および、暗号・復号演算装置 |
US10/947,208 US20050108313A1 (en) | 2003-09-25 | 2004-09-23 | Calculation apparatus and encrypt and decrypt processing apparatus |
US12/285,077 US7869592B2 (en) | 2003-09-25 | 2008-09-29 | Calculation apparatus and encrypt and decrypt processing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003332817A JP3940714B2 (ja) | 2003-09-25 | 2003-09-25 | 演算装置、および、暗号・復号演算装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005100085A true JP2005100085A (ja) | 2005-04-14 |
JP3940714B2 JP3940714B2 (ja) | 2007-07-04 |
Family
ID=34461014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003332817A Expired - Fee Related JP3940714B2 (ja) | 2003-09-25 | 2003-09-25 | 演算装置、および、暗号・復号演算装置 |
Country Status (2)
Country | Link |
---|---|
US (2) | US20050108313A1 (ja) |
JP (1) | JP3940714B2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100680025B1 (ko) | 2005-07-05 | 2007-02-07 | 한국전자통신연구원 | 멀티세션 고속암복호화 처리 장치 및 방법 |
JP2008046466A (ja) * | 2006-08-18 | 2008-02-28 | Mitsubishi Electric Corp | 暗号処理装置及び復号処理装置 |
WO2010067827A1 (ja) * | 2008-12-09 | 2010-06-17 | 株式会社 東芝 | 暗号処理装置及び演算方法 |
JP2012507212A (ja) * | 2008-12-19 | 2012-03-22 | インテル コーポレイション | Raid処理を実行するための方法及び装置 |
JP2015135536A (ja) * | 2014-01-16 | 2015-07-27 | 日本電信電話株式会社 | 行列演算装置、行列演算方法、およびプログラム |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7623660B1 (en) * | 2004-07-20 | 2009-11-24 | Xilinx, Inc. | Method and system for pipelined decryption |
US20060078107A1 (en) * | 2004-10-12 | 2006-04-13 | Chiou-Haun Lee | Diffused data encryption/decryption processing method |
US8331559B2 (en) * | 2004-10-12 | 2012-12-11 | Chiou-Haun Lee | Diffused data encryption/decryption processing method |
JP2008151829A (ja) * | 2006-12-14 | 2008-07-03 | Fujitsu Ltd | 暗号演算装置 |
KR100859162B1 (ko) * | 2007-10-16 | 2008-09-19 | 펜타시큐리티시스템 주식회사 | 암호화된 칼럼을 포함하는 데이터베이스에서의 쿼리의 암호화 변조를 통한 사용자 쿼리 처리 장치 및 방법 |
US9401803B2 (en) * | 2012-10-25 | 2016-07-26 | Texas Instruments Incorporated | Flexible scrambler/descrambler architecture for a transceiver |
RU2625049C1 (ru) * | 2016-04-14 | 2017-07-11 | ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ КАЗЕННОЕ ВОЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ "Военная академия Ракетных войск стратегического назначения имени Петра Великого" МИНИСТЕРСТВА ОБОРОНЫ РОССИЙСКОЙ ФЕДЕРАЦИИ | Устройство поддержки защищенных логических вычислений |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58146969A (ja) * | 1982-02-26 | 1983-09-01 | Toshiba Corp | インデツクス限定連続演算ベクトルプロセツサ |
US5038312A (en) * | 1988-11-14 | 1991-08-06 | Nec Corporation | Data processing system capable of performing vector/matrix processing and arithmetic processing unit incorporated therein |
US5267185A (en) * | 1989-04-14 | 1993-11-30 | Sharp Kabushiki Kaisha | Apparatus for calculating matrices |
US5319586A (en) * | 1989-12-28 | 1994-06-07 | Texas Instruments Incorporated | Methods for using a processor array to perform matrix calculations |
DE4036455C1 (ja) * | 1990-11-15 | 1992-04-02 | Siemens Ag, 8000 Muenchen, De | |
US5905666A (en) * | 1995-01-03 | 1999-05-18 | International Business Machines Corporation | Processing system and method for performing sparse matrix multiplication by reordering vector blocks |
US5815421A (en) * | 1995-12-18 | 1998-09-29 | Intel Corporation | Method for transposing a two-dimensional array |
US6064738A (en) * | 1996-12-10 | 2000-05-16 | The Research Foundation Of State University Of New York | Method for encrypting and decrypting data using chaotic maps |
US6574651B1 (en) * | 1999-10-01 | 2003-06-03 | Hitachi, Ltd. | Method and apparatus for arithmetic operation on vectored data |
US6909785B1 (en) * | 1999-11-11 | 2005-06-21 | Qualcomm, Inc. | Method and apparatus for efficient irregular synchronization of a stream cipher |
DE10148415C2 (de) * | 2001-09-29 | 2003-07-31 | Univ Braunschweig Tech | Verfahren und Vorrichtung zum Verschlüsseln und Entschlüsseln von Daten |
US7003542B2 (en) * | 2002-01-02 | 2006-02-21 | Intel Corporation | Apparatus and method for inverting a 4×4 matrix |
US20030187898A1 (en) * | 2002-03-29 | 2003-10-02 | Fujitsu Limited | Parallel processing method of an eigenvalue problem for a shared-memory type scalar parallel computer |
US20060034452A1 (en) * | 2002-06-20 | 2006-02-16 | Hitachi, Ltd. | Code calculating device |
JP4357815B2 (ja) * | 2002-09-11 | 2009-11-04 | 株式会社東芝 | 暗号演算回路 |
US20050129228A1 (en) * | 2003-12-12 | 2005-06-16 | Lagarde Victor J. | Modular computerized encryption scheme |
-
2003
- 2003-09-25 JP JP2003332817A patent/JP3940714B2/ja not_active Expired - Fee Related
-
2004
- 2004-09-23 US US10/947,208 patent/US20050108313A1/en not_active Abandoned
-
2008
- 2008-09-29 US US12/285,077 patent/US7869592B2/en active Active
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100680025B1 (ko) | 2005-07-05 | 2007-02-07 | 한국전자통신연구원 | 멀티세션 고속암복호화 처리 장치 및 방법 |
JP2008046466A (ja) * | 2006-08-18 | 2008-02-28 | Mitsubishi Electric Corp | 暗号処理装置及び復号処理装置 |
WO2010067827A1 (ja) * | 2008-12-09 | 2010-06-17 | 株式会社 東芝 | 暗号処理装置及び演算方法 |
JP2010141430A (ja) * | 2008-12-09 | 2010-06-24 | Toshiba Corp | 暗号処理装置及び演算方法 |
US8817975B2 (en) | 2008-12-09 | 2014-08-26 | Kabushiki Kaisha Toshiba | Cryptographic processing apparatus and operation method |
JP2012507212A (ja) * | 2008-12-19 | 2012-03-22 | インテル コーポレイション | Raid処理を実行するための方法及び装置 |
JP2015135536A (ja) * | 2014-01-16 | 2015-07-27 | 日本電信電話株式会社 | 行列演算装置、行列演算方法、およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
US7869592B2 (en) | 2011-01-11 |
US20090092246A1 (en) | 2009-04-09 |
US20050108313A1 (en) | 2005-05-19 |
JP3940714B2 (ja) | 2007-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7869592B2 (en) | Calculation apparatus and encrypt and decrypt processing apparatus | |
JP4700051B2 (ja) | 暗号装置及び暗号方法 | |
Wang et al. | VLSI design of a large-number multiplier for fully homomorphic encryption | |
US8411853B2 (en) | Alternate galois field advanced encryption standard round | |
US8189792B2 (en) | Method and apparatus for performing cryptographic operations | |
JP2008131108A (ja) | 共通鍵暗号のための暗号化装置 | |
KR100377172B1 (ko) | 데이터 암호화 표준 알고리즘을 이용한 암호화 장치의 키스케쥴러 | |
US8495116B2 (en) | Circuit and method converting boolean and arithmetic masks | |
Güneysu | Utilizing hard cores of modern FPGA devices for high-performance cryptography | |
JP2005242366A (ja) | 可変キー長を有する初期ラウンドキーに対応する暗号ラウンドキーと復号ラウンドキーとを選択的に発生させるキースケジュラ | |
JP2010141430A (ja) | 暗号処理装置及び演算方法 | |
US7024560B2 (en) | Power-residue calculating unit using Montgomery algorithm | |
JP2010109639A (ja) | 共通鍵ブロック暗号におけるスワップ回路及び、それを有する暗号化・復号化回路 | |
Elkhatib et al. | Accelerated RISC-V for post-quantum SIKE | |
US9112698B1 (en) | Cryptographic device and method for data encryption with per-round combined operations | |
EP2237246B1 (en) | Encrypting device, encrypting method and program | |
JP4567753B2 (ja) | パリティ生成回路、計数回路および計数方法 | |
JP2008151829A (ja) | 暗号演算装置 | |
US11281428B2 (en) | Conversion circuitry | |
JP5116499B2 (ja) | 演算処理回路 | |
JP2008040244A (ja) | Aes暗号回路 | |
US7471789B2 (en) | Encryption circuit achieving higher operation speed | |
JP2009251752A (ja) | 処理回路 | |
JP2013167740A (ja) | 暗号化装置、暗号化方法および暗号化プログラム | |
SHANTHI et al. | VLSI Design of a Large-Number Multiplier for Fully Homomorphic Encryption |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050120 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20050415 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20050606 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060425 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060516 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060714 |
|
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: 20070327 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070402 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100406 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110406 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130406 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140406 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |