JP2009211071A - 一連の変換を行って一変換を分離する命令を含む命令の組合せ - Google Patents
一連の変換を行って一変換を分離する命令を含む命令の組合せ Download PDFInfo
- Publication number
- JP2009211071A JP2009211071A JP2009045094A JP2009045094A JP2009211071A JP 2009211071 A JP2009211071 A JP 2009211071A JP 2009045094 A JP2009045094 A JP 2009045094A JP 2009045094 A JP2009045094 A JP 2009045094A JP 2009211071 A JP2009211071 A JP 2009211071A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- instructions
- transformation
- conversion
- round
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
-
- 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
-
- 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/24—Key scheduling, i.e. generating round keys or sub-keys for block encryption
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
Abstract
【解決手段】暗号化(暗号)は、秘密鍵(暗号鍵)を使用して一連の変換(ShiftRows、SubstituteBytes、MixColumns)を行って、「平文」として表す理解できるデータを、「暗号文」として表す理解できない形式に変換する。逆暗号(復号)における変換(InverseShiftRows、InverseSubstituteBytes、InverseMixColumns)は、暗号における変換の逆である。暗号化及び復号は、一連の変換を行う命令の使用によって効率的に行われる。前述の命令の組合せは、変換(ShiftRows、SubstituteBytes、MixColumns、InverseShiftRows、InverseSubstituteBytes、InverseMixColumns)の分離を得ることを可能にする。
【選択図】図1
Description
State=xmm1、
RoundKey=xmm2/m128、
Tmp=ShiftRows(State)、
Tmp=SubstituteBytes(Tmp)、
Tmp=MixColumns(Tmp)、
Output=xmm1=Add RoundKey(Tmp,Round Key)
表1
State=xmm1、
RoundKey=xmm2/m128、
Tmp=ShiftRows(State)、
Tmp=Substitute Bytes(Tmp)、
Output=xmm1=AddRoundKey(Tmp,RoundKey)
表2
xmm1=BLOCK[i]//load
xmm1=AESENC(xmm1,RK[1])
xmm1=AESENC(xmm1,RK[2])
xmm1=AESENC(xmm1,RK[3])
…
xmm1=AESENC(xmm1,RK[9])
xmm1=AESENCLAST(xmm1,RK[10])
store xmm1
End
表3
(1)AddRoundKey変換:ラウンド鍵(暗号鍵から導き出される値)が、排他的OR(XOR)演算を使用して状態(2次元の128ビット・バイト・アレイ)に加えられる。AddRoundKeyは、(128ビット,128ビット)→128ビット変換であり、これは、その2つの引数の、ビット単位のXORとして定義される。AESフローでは、引数は状態及びラウンド鍵である。
State=xmm1、
RoundKey=xmm2/m128、
Tmp=InverseShiftRows(State)、
Tmp=InverseSubstituteBytes(Tmp)、
Tmp=InverseMixColumns(Tmp=)、
Output=xmm1=AddRoundKey(Tmp=,RoundKey)
表4
State=xmm1、
RoundKey=xmm2/m128、
Tmp=InverseShiftRows(State)、
Tmp=InverseSubstituteBytes(Tmp)、
Output=xmm1=AddRoundKey(Tmp,RoundKey)
表5
Tmp=InverseSubstituteBytes(Tmp)、
Tmp=AddRoundKey(Tmp,RoundKey)
表6
Tmp1=SubstituteBytes(Tmp1)
Tmp1=MixColumns(Tmp1)
Tmp1=AddRoundKey(Tmp1,RoundKey)
表7
Tmp=SubstituteBytes(Tmp)、
Tmp=AddRoundKey(Tmp,RoundKey)
表8
Tmp=InverseSubstituteBytes(Tmp)、
Tmp=InverseMixColumns(Tmp)、
Tmp=AddRoundKey(Tmp,RoundKey)
表9
よって、2つのAESラウンド命令の前述のシーケンスの結果は、分離されたInverseMixColumns変換になる。
Tmp=SubstituteBytes(Tmp)、
Tmp=AddRoundKey(Tmp,RoundKey)
表10
よって、1つのAESラウンド命令の前述の命令シーケンスの結果は、分離されたSubstituteBytes変換になる。
AESKEYGENASSIST命令は、鍵スケジュールのラウンド鍵の生成を支援するために使用され、鍵の容量と無関係に動作し、すなわち、鍵容量が128ビットであるか、192ビットであるか、又は256ビットであるかに関係なく同じ処理が行われる。AESKEYGENASSIST命令は、FIPS197鍵スケジュールを生成するために使用される「temp=SubWord(RotWord(temp)) xor Rcon[i/Nk]」及び「temp=SubWord(temp)」の演算を行う。
X3[31−0]:=Tmp1[127−96]、
X2[31−0]:=Tmp1[95−64]、
X1[31−0]:=Tmp1[63−32]、
X0[31−0]:=Tmp1[31−0]、
RCON[7−0]:=imm8[7]imm8[6]imm8[5]imm8[4]
imm8[3]imm8[2]imm8[1]imm8[0]
RotWord(Rot)は、4バイトの32ビットdwordを用い、巡回置換を行う関数である。Rotwordは、{a0,a1,a2,a3}の順序の、a0乃至a4を付した4バイトのdwordを用い、巡回置換を行って4バイトを{a1,a2,a3,a0}の順序で返す。RotWord関数は、リトルエンディアン表記で規定される。
すなわち、Rot(x)=(X>>8)|(X<<24)、
例えば、X[31−0]=`3c4fcf09;RotWord(`3c4fcf09`)=[‘09’|`3c4fcf`)=(`093c4fcf)の場合、
S−Box4は、以下のように、4つのdwordに、単一のdwordのS−Box関数を施すことを表す。
PSHUFB xmm1, mask
AESKEYGENASSIST命令は、rconとのXORの影響を除去し、PSHUFB命令のマスクを選択して、3及び1というダブルワードを元に戻す。
Tmp=InverseSubstituteBytes(Tmp)、
Tmp=AddRoundKey(Tmp,RoundKey)
表10
よって、少なくとも1つのAESラウンド命令を含む前述の命令シーケンスの結果は、分離されたInverseSubstituteBytes変換になる。
101 プロセッサ
108 メモリ
Claims (20)
- 方法であって、
複数の命令を組み合わせる工程を含み、前記命令の少なくとも1つは、変換シーケンスを行い、前記命令は、実行されると、前記変換シーケンスにおける変換のうちの1つのみを前記命令の組合せが行うような順序で組み合わせられる方法。 - 請求項1記載の方法であって、前記命令の組合せは、AESDECLASTラウンド命令及びAESENCラウンド命令を含み、前記命令の組合せはMixColumns変換を行う方法。
- 請求項2記載の方法であって、前記AESDECLASTラウンド命令によって行われる一連の変換は、InverseShiftRows変換及びInverseSubstituteBytes変換を含み、前記AESENCラウンド命令によって行われる一連の変換は、ShiftRows変換、SubstituteBytes変換、及びMixColumns変換である方法。
- 請求項1記載の方法であって、前記命令の組合せは、AESENCLASTラウンド命令及びAESDECラウンド命令を含み、前記命令の組合せはInverseMixColumns変換を行う方法。
- 請求項4記載の方法であって、前記AESENCLASTラウンド命令によって行われる一連の変換は、ShiftRows変換及びSubstituteBytes変換を含み、 前記AESDECラウンド命令によって行われる一連の変換は、InverseShiftRows変換、InverseSubstituteBytes変換及びInverseMixColumns変換を含む方法。
- 請求項1記載の方法であって、前記命令の組合せは、PSHUFBラウンド命令及びAESENCLASTラウンド命令を含み、前記命令の組合せはSubstituteBytes変換を行う方法。
- 請求項6記載の方法であって、前記AESENCLASTラウンド命令によって行われる一連の変換は、ShiftRows変換及びSubstituteBytes変換を含み、前記PSHUFB命令は、ShiftRows変換を含む方法。
- 請求項1記載の方法であって、前記命令の組合せは、PSHUFBラウンド命令及びAESDECLASTラウンド命令を含み、前記命令の組合せはInverseSubstituteBytes変換を行う方法。
- 請求項7記載の方法であって、前記AESDECLASTラウンド命令によって行われる一連の変換は、InverseShiftRows変換及びInverseSubstituteBytes変換を含み、前記PSHUFB命令は、InverseShiftRows変換を含む方法。
- 請求項1記載の方法であって、前記命令の組合せは、連邦情報処理標準(FIPS)197によって規定されたShiftRows、InverseShiftRows、SubstituteBytes、InverseSubstituteBytes、MixColumn及びInverseMixColumnsを含む群からの変換を含む方法。
- 装置であって、
複数の命令を記憶するためのメモリであって、前記命令の少なくとも1つは、変換シーケンスを行うメモリと、
実行装置を含むプロセッサとを備え、前記命令は、前記実行装置によって実行されると、前記変換シーケンスにおける変換のうちの1つのみの結果を前記実行装置が供給するように前記メモリに順番に記憶される装置。 - 請求項11記載の装置であって、前記命令の組合せは、AESDECLASTラウンド命令及びAESENCラウンド命令を含み、前記命令の組合せはMixColumns変換を行う装置。
- 請求項11記載の装置であって、前記命令の組合せは、AESENCLASTラウンド命令及びAESDECラウンド命令を含み、前記命令の組合せはInverseMixColumns変換を行う装置。
- 請求項11記載の装置であって、前記命令の組合せは、PSHUFBラウンド命令及びAESENCLASTラウンド命令を含み、前記命令の組合せはSubstituteBytes変換を行う装置。
- 請求項11記載の装置であって、前記命令の組合せは、PSHUFBラウンド命令及びAESDECLASTラウンド命令を含み、前記命令の組合せはInverseSubstituteBytes変換を行う装置。
- 請求項11記載の装置であって、前記変換のシーケンスは、連邦情報処理標準(FIPS)197によって規定されたShiftRows、InverseShiftRows、SubstituteBytes、InverseSubstituteBytes、MixColumn及びInverseMixColumnsを含む群からの変換を含む装置。
- 関連した情報を有するマシンアクセス可能な媒体を含む製品であって、
前記情報は、アクセスされると、
複数の命令を組み合わせる機能
をマシンが行うことをもたらし、前記命令の少なくとも1つは、変換シーケンスを行い、前記命令は、実行されると、前記変換シーケンスにおける変換のうちの1つのみを前記命令の組合せが行うような順序で組み合わせられる製品。 - 請求項17記載の製品であって、前記変換のシーケンスは、連邦情報処理標準(FIPS)197によって規定されたShiftRows、InverseShiftRows、SubstituteBytes、InverseSubstituteBytes、MixColumn及びInverseMixColumnsを含む群からの変換を含む製品。
- システムであって、
プロセッサと、
前記プロセッサによってアクセス可能であり、複数の命令を記憶させた記憶装置とを備え、前記命令の少なくとも1つは、変換シーケンスを行い、前記命令は、実行されると、前記変換シーケンスにおける変換のうちの1つのみを前記プロセッサが少なくとも行うような順序で組み合わせられるシステム。 - 請求項19記載のシステムであって、前記変換のシーケンスは、連邦情報処理標準(FIPS)197によって規定されたShiftRows、InverseShiftRows、SubstituteBytes、InverseSubstituteBytes、MixColumn及びInverseMixColumnsを含む群からの変換を含むシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/040,214 US8879725B2 (en) | 2008-02-29 | 2008-02-29 | Combining instructions including an instruction that performs a sequence of transformations to isolate one transformation |
US12/040,214 | 2008-02-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009211071A true JP2009211071A (ja) | 2009-09-17 |
JP5538736B2 JP5538736B2 (ja) | 2014-07-02 |
Family
ID=40785278
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009045094A Active JP5538736B2 (ja) | 2008-02-29 | 2009-02-27 | 一連の変換を行って一変換を分離する命令を含む命令の組合せ |
Country Status (5)
Country | Link |
---|---|
US (1) | US8879725B2 (ja) |
EP (1) | EP2096786B1 (ja) |
JP (1) | JP5538736B2 (ja) |
KR (1) | KR101036103B1 (ja) |
CN (1) | CN101520965B (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015501946A (ja) * | 2011-11-17 | 2015-01-19 | エイアールエム リミテッド | 暗号化アルゴリズム内のハッシュ値の生成をサポートするためのsimd命令 |
JP2016085341A (ja) * | 2014-10-27 | 2016-05-19 | 日本電信電話株式会社 | ラウンド関数計算装置及び暗号装置、これらの方法並びにプログラム |
JP2016127405A (ja) * | 2014-12-26 | 2016-07-11 | 株式会社Dnpハイパーテック | 暗号化装置 |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090245510A1 (en) * | 2008-03-25 | 2009-10-01 | Mathieu Ciet | Block cipher with security intrinsic aspects |
US8150031B2 (en) * | 2008-12-19 | 2012-04-03 | Intel Corporation | Method and apparatus to perform redundant array of independent disks (RAID) operations |
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 |
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 |
US20100246815A1 (en) * | 2009-03-31 | 2010-09-30 | Olson Christopher H | Apparatus and method for implementing instruction support for the kasumi cipher algorithm |
JP5198526B2 (ja) * | 2010-09-21 | 2013-05-15 | 株式会社東芝 | 暗号化装置および復号装置 |
CN101938349A (zh) * | 2010-10-01 | 2011-01-05 | 北京航空航天大学 | 一种适用于硬件实现的s盒及其电路实现方法 |
CN101958790B (zh) * | 2010-10-09 | 2012-10-17 | 中国人民解放军信息工程大学 | 无线通信网络数字信息加密或解密方法 |
CN102043916B (zh) * | 2010-12-01 | 2012-10-03 | 戴葵 | 一种高性能可扩展公钥密码协处理器结构 |
WO2013095473A1 (en) * | 2011-12-21 | 2013-06-27 | Intel Corporation | Systems and methods for protecting symmetric encryption keys |
US8914706B2 (en) | 2011-12-30 | 2014-12-16 | Streamscale, Inc. | Using parity data for concurrent data authentication, correction, compression, and encryption |
US8683296B2 (en) | 2011-12-30 | 2014-03-25 | Streamscale, Inc. | Accelerated erasure coding system and method |
CN103051443B (zh) * | 2012-12-20 | 2015-05-13 | 山东华芯半导体有限公司 | Aes密钥扩展的方法 |
US10142099B2 (en) * | 2013-01-11 | 2018-11-27 | Qualcomm Incorporated | Method and apparatus for a computable, large, variable and secure substitution box |
CN103401680B (zh) * | 2013-07-24 | 2016-06-15 | 大连理工大学 | 一种矩阵旋转移位数字加密方法 |
RU2656734C2 (ru) * | 2013-12-27 | 2018-06-06 | Евгений Иванович Пряхин | Способ кодирования и декодирования цифровой информации в виде ультрасжатого нанобар-кода (варианты) |
TWI712915B (zh) * | 2014-06-12 | 2020-12-11 | 美商密碼研究公司 | 執行一密碼編譯操作之方法,以及電腦可讀非暫時性儲存媒體 |
CN106034021B (zh) * | 2015-03-12 | 2020-04-10 | 中国科学院上海高等研究院 | 轻量级双模兼容aes加解密模块及其方法 |
US20170085371A1 (en) * | 2015-04-07 | 2017-03-23 | Secure Channels Sa | System and method for an enhanced xor cipher through extensions |
US10579389B2 (en) * | 2015-11-02 | 2020-03-03 | Arm Limited | Fusion of instructions by delaying handling of a partial subset of a fusible group of instructions |
US11190498B1 (en) | 2018-01-11 | 2021-11-30 | Secure Channels, Inc. | System and method for use of filters within a cryptographic process |
US11403234B2 (en) * | 2019-06-29 | 2022-08-02 | Intel Corporation | Cryptographic computing using encrypted base addresses and used in multi-tenant environments |
US11575504B2 (en) | 2019-06-29 | 2023-02-07 | Intel Corporation | Cryptographic computing engine for memory load and store units of a microarchitecture pipeline |
US11580234B2 (en) * | 2019-06-29 | 2023-02-14 | Intel Corporation | Implicit integrity for cryptographic computing |
US11250165B2 (en) * | 2019-12-20 | 2022-02-15 | Intel Corporation | Binding of cryptographic operations to context or speculative execution restrictions |
US11804955B1 (en) | 2019-09-13 | 2023-10-31 | Chol, Inc. | Method and system for modulated waveform encryption |
US11669625B2 (en) | 2020-12-26 | 2023-06-06 | Intel Corporation | Data type based cryptographic computing |
US11580035B2 (en) | 2020-12-26 | 2023-02-14 | Intel Corporation | Fine-grained stack protection using cryptographic computing |
US11700135B2 (en) * | 2020-12-26 | 2023-07-11 | Intel Corporation | ISA accessible physical unclonable function |
US11706039B2 (en) | 2020-12-26 | 2023-07-18 | Intel Corporation | ISA accessible physical unclonable function |
US20220209967A1 (en) * | 2020-12-26 | 2022-06-30 | Intel Corporation | Isa accessible physical unclonable function |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205161A (ja) * | 2008-02-27 | 2009-09-10 | Intel Corp | パラレル・モードでの先進暗号化標準(aes)の暗号化および復号を最適化する方法および装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4926475A (en) * | 1988-11-30 | 1990-05-15 | Motorola, Inc. | Data encryption key failure monitor |
US5295188A (en) * | 1991-04-04 | 1994-03-15 | Wilson William J | Public key encryption and decryption circuitry and method |
US5375170A (en) * | 1992-11-13 | 1994-12-20 | Yeda Research & Development Co., Ltd. | Efficient signature scheme based on birational permutations |
US6952478B2 (en) | 2000-05-05 | 2005-10-04 | Teleputers, Llc | Method and system for performing permutations using permutation instructions based on modified omega and flip stages |
FR2820577B1 (fr) * | 2001-02-08 | 2003-06-13 | St Microelectronics Sa | Procede securise de calcul cryptographique a cle secrete et composant mettant en oeuvre un tel procede |
US7739319B2 (en) * | 2001-10-29 | 2010-06-15 | Intel Corporation | Method and apparatus for parallel table lookup using SIMD instructions |
US7181016B2 (en) * | 2003-01-27 | 2007-02-20 | Microsoft Corporation | Deriving a symmetric key from an asymmetric key for file encryption or decryption |
KR100594265B1 (ko) | 2004-03-16 | 2006-06-30 | 삼성전자주식회사 | 매스킹 방법이 적용된 데이터 암호처리장치, aes암호시스템 및 aes 암호방법. |
DE102004062825B4 (de) * | 2004-12-27 | 2006-11-23 | Infineon Technologies Ag | Kryptographische Einheit und Verfahren zum Betreiben einer kryptographischen Einheit |
US7961876B2 (en) * | 2005-01-11 | 2011-06-14 | Jintai Ding | Method to produce new multivariate public key cryptosystems |
KR100668664B1 (ko) | 2005-11-22 | 2007-01-12 | 한국전자통신연구원 | Aes 라인달 블록 알고리즘을 이용하는 암호화/복호화장치 및 방법 |
KR100720525B1 (ko) * | 2005-12-28 | 2007-05-22 | 동부일렉트로닉스 주식회사 | Aes코어를 포함하는 집적회로 및 aes코어 검증용래퍼 |
-
2008
- 2008-02-29 US US12/040,214 patent/US8879725B2/en not_active Expired - Fee Related
-
2009
- 2009-02-27 EP EP09250543.7A patent/EP2096786B1/en not_active Not-in-force
- 2009-02-27 JP JP2009045094A patent/JP5538736B2/ja active Active
- 2009-02-27 KR KR1020090017253A patent/KR101036103B1/ko active IP Right Grant
- 2009-03-02 CN CN200910128119.6A patent/CN101520965B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009205161A (ja) * | 2008-02-27 | 2009-09-10 | Intel Corp | パラレル・モードでの先進暗号化標準(aes)の暗号化および復号を最適化する方法および装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015501946A (ja) * | 2011-11-17 | 2015-01-19 | エイアールエム リミテッド | 暗号化アルゴリズム内のハッシュ値の生成をサポートするためのsimd命令 |
US9703966B2 (en) | 2011-11-17 | 2017-07-11 | Arm Limited | Cryptographic support instructions |
JP2016085341A (ja) * | 2014-10-27 | 2016-05-19 | 日本電信電話株式会社 | ラウンド関数計算装置及び暗号装置、これらの方法並びにプログラム |
JP2016127405A (ja) * | 2014-12-26 | 2016-07-11 | 株式会社Dnpハイパーテック | 暗号化装置 |
Also Published As
Publication number | Publication date |
---|---|
EP2096786A3 (en) | 2012-01-25 |
JP5538736B2 (ja) | 2014-07-02 |
US8879725B2 (en) | 2014-11-04 |
CN101520965A (zh) | 2009-09-02 |
KR101036103B1 (ko) | 2011-05-19 |
EP2096786A2 (en) | 2009-09-02 |
EP2096786B1 (en) | 2016-04-06 |
US20090220071A1 (en) | 2009-09-03 |
KR20090093900A (ko) | 2009-09-02 |
CN101520965B (zh) | 2016-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5538736B2 (ja) | 一連の変換を行って一変換を分離する命令を含む命令の組合せ | |
JP6592804B2 (ja) | 新暗号規格(aes)向けの柔軟なアーキテクチャおよび命令 | |
US8787565B2 (en) | Method and apparatus for generating an advanced encryption standard (AES) key schedule | |
KR20090092735A (ko) | 병렬 연산 모드에서 aes 암호화 및 암호 해독을 최적화하는 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111004 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20111227 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120105 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120202 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120228 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120628 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20120705 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20120727 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20140109 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20140116 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5538736 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140430 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |