JP3940714B2 - 演算装置、および、暗号・復号演算装置 - Google Patents
演算装置、および、暗号・復号演算装置 Download PDFInfo
- Publication number
- JP3940714B2 JP3940714B2 JP2003332817A JP2003332817A JP3940714B2 JP 3940714 B2 JP3940714 B2 JP 3940714B2 JP 2003332817 A JP2003332817 A JP 2003332817A JP 2003332817 A JP2003332817 A JP 2003332817A JP 3940714 B2 JP3940714 B2 JP 3940714B2
- Authority
- JP
- Japan
- Prior art keywords
- matrix
- calculation
- result
- circuit
- unit
- 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.)
- Expired - Fee Related
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)
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 (5)
- 第1の行列演算を含む第1の演算処理と、第2の行列演算を含む第2の演算処理との何れも演算処理可能な演算装置において、
前記第2の行列演算を行う第1の演算部と、
前記第1の行列演算を行うために、前記第1の演算部と並列に演算するものであって、少なくとも二つの列が同じ行列のその一方の列を演算し演算結果を利用するとともに、その演算結果を他方の列の演算結果としても利用して、行列演算を行う、少なくとも1以上の他の演算部と、
前記第1の演算部と、前記他の演算部との各演算結果を論理演算する論理回路とを備え、
前記第1の行列演算の演算結果を、前記論理回路から得るようにしたことを特徴とする演算装置。 - 更に、前記第1の演算部の演算結果と、前記論理回路からの出力とを選択的に出力する出力手段を備えたことを特徴とする請求項1記載の演算装置。
- 第1の行列演算を含む復号処理と、第2の行列演算を含む暗号処理との何れも実行可能な暗号・復号演算装置において、
各演算結果を排他的論理和することにより前記第1の行列演算と同じ演算結果が得られる前記第2の行列演算と第3の行列演算とのうち、前記第2の行列演算を行う第1の演算部と、
少なくとも二つの列が同じ行列のその一方の列を演算し演算結果を利用するとともに、その演算結果を他方の列の演算結果としても利用して、前記第3の行列演算を行う第2の演算部と、
前記第1の演算部で演算された演算結果と前記第2の演算部で演算された演算結果とを論理演算する論理回路と、
を備え、前記第1の行列演算の演算結果を、前記論理回路から得るようにしたことを特徴とする暗号・復号演算装置。 - 更に、暗号処理時には前記第1の演算部の演算結果を選択し、復号処理時は前記論理回路からの出力を選択して出力する出力手段を備えたことを特徴とする請求項3記載の暗号・復号演算装置。
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 JP2005100085A (ja) | 2005-04-14 |
JP3940714B2 true 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) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7623660B1 (en) * | 2004-07-20 | 2009-11-24 | Xilinx, Inc. | Method and system for pipelined decryption |
US8331559B2 (en) * | 2004-10-12 | 2012-12-11 | Chiou-Haun Lee | Diffused data encryption/decryption processing method |
US20060078107A1 (en) * | 2004-10-12 | 2006-04-13 | Chiou-Haun Lee | Diffused data encryption/decryption processing method |
KR100680025B1 (ko) | 2005-07-05 | 2007-02-07 | 한국전자통신연구원 | 멀티세션 고속암복호화 처리 장치 및 방법 |
JP5037876B2 (ja) * | 2006-08-18 | 2012-10-03 | 三菱電機株式会社 | 暗号処理装置及び復号処理装置 |
JP2008151829A (ja) * | 2006-12-14 | 2008-07-03 | Fujitsu Ltd | 暗号演算装置 |
KR100859162B1 (ko) * | 2007-10-16 | 2008-09-19 | 펜타시큐리티시스템 주식회사 | 암호화된 칼럼을 포함하는 데이터베이스에서의 쿼리의 암호화 변조를 통한 사용자 쿼리 처리 장치 및 방법 |
JP5268609B2 (ja) | 2008-12-09 | 2013-08-21 | 株式会社東芝 | 暗号処理装置及び演算方法 |
US8150031B2 (en) * | 2008-12-19 | 2012-04-03 | Intel Corporation | Method and apparatus to perform redundant array of independent disks (RAID) operations |
US9401803B2 (en) * | 2012-10-25 | 2016-07-26 | Texas Instruments Incorporated | Flexible scrambler/descrambler architecture for a transceiver |
JP6087848B2 (ja) * | 2014-01-16 | 2017-03-01 | 日本電信電話株式会社 | 行列演算装置、行列演算方法、およびプログラム |
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 | インデツクス限定連続演算ベクトルプロセツサ |
EP0369396A3 (en) * | 1988-11-14 | 1992-10-07 | Nec Corporation | Arithmetic processing unit capable of performing vector/matrix processing |
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 |
WO2004001701A1 (ja) * | 2002-06-20 | 2003-12-31 | Hitachi, Ltd. | 符号演算装置 |
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
Also Published As
Publication number | Publication date |
---|---|
JP2005100085A (ja) | 2005-04-14 |
US7869592B2 (en) | 2011-01-11 |
US20090092246A1 (en) | 2009-04-09 |
US20050108313A1 (en) | 2005-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7869592B2 (en) | Calculation apparatus and encrypt and decrypt processing apparatus | |
JP4700051B2 (ja) | 暗号装置及び暗号方法 | |
US8189792B2 (en) | Method and apparatus for performing cryptographic operations | |
JP2008131108A (ja) | 共通鍵暗号のための暗号化装置 | |
KR100377172B1 (ko) | 데이터 암호화 표준 알고리즘을 이용한 암호화 장치의 키스케쥴러 | |
US20100235417A1 (en) | Circuit and method converting boolean and arithmetic masks | |
Güneysu | Utilizing hard cores of modern FPGA devices for high-performance cryptography | |
JP2010141430A (ja) | 暗号処理装置及び演算方法 | |
US7024560B2 (en) | Power-residue calculating unit using Montgomery algorithm | |
Elkhatib et al. | Accelerated RISC-V for post-quantum SIKE | |
US9112698B1 (en) | Cryptographic device and method for data encryption with per-round combined operations | |
CN110336658B (zh) | 基于aes算法的加密方法、用户设备、存储介质及装置 | |
EP2237246B1 (en) | Encrypting device, encrypting method and program | |
JP2008151829A (ja) | 暗号演算装置 | |
Nalini et al. | Compact designs of subbytes and mixcolumn for aes | |
US11750369B2 (en) | Circuit module of single round advanced encryption standard | |
JPH0916379A (ja) | 通信方法とその装置 | |
JP2008040244A (ja) | Aes暗号回路 | |
KR100377173B1 (ko) | 데이터 암호화 표준 알고리즘을 이용한 암호화 장치 | |
KR100316025B1 (ko) | 데이터 암호 표준 알고리즘을 이용한 암호 및 복호 장치 | |
JP2009169287A (ja) | 暗号処理装置及び復号処理装置及びプログラム | |
US7471789B2 (en) | Encryption circuit achieving higher operation speed | |
KR100283058B1 (ko) | 시스토릭 어레이를 이용한 모듈러 승산 방법 | |
JP2009251752A (ja) | 処理回路 | |
Güneysu | Establishing Dedicated Functions on FPGA Devices for High-Performance Cryptography |
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 |