JP4767985B2 - 複数モードでのaes暗号化または復号の単一命令での実行 - Google Patents
複数モードでのaes暗号化または復号の単一命令での実行 Download PDFInfo
- Publication number
- JP4767985B2 JP4767985B2 JP2008064272A JP2008064272A JP4767985B2 JP 4767985 B2 JP4767985 B2 JP 4767985B2 JP 2008064272 A JP2008064272 A JP 2008064272A JP 2008064272 A JP2008064272 A JP 2008064272A JP 4767985 B2 JP4767985 B2 JP 4767985B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- operand
- result
- aes
- instruction
- 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
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
-
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
-
- 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/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Storage Device Security (AREA)
- Executing Machine-Instructions (AREA)
Description
本願はAES暗号化および/または復号を実行するための命令をプロセッサ中に含める方法、装置およびシステムの諸実施形態を記載する。二つのそのような命令は:
AESENCRYPT (arg1)xmmdestination, (arg2)xmmsource/memory
AESDECRYPT (arg1)xmmdestination, (arg2)xmmsource/memory
xmmsource/memoryは暗号化の場合に使われる平文を供給し、xmmdestinationが暗号文となる。復号の場合、役割が反対になり、sourceが暗号文、destinationが平文となる。実装によっては、両方のオペランドが暗号化または復号するために使われてもよい。これについてはのちにさらに説明する。いずれの場合にも、暗号鍵は、一つまたは複数の128ビットの暗黙的レジスタ(たとえばのちにより詳細に述べるようなXMM0およびXMM1)を通じてAESENCRYPTおよび/またはAESDECRYPT命令に供給される。
図1は、本発明のある実施形態に基づく例示的なコンピュータ・システム100を示している。コンピュータ・システム100は、情報を通信するための相互接続101を含む。相互接続101は、マルチドロップ・バス、一つまたは複数のポイントツーポイント相互接続または両者の任意の組み合わせならびに他の任意の通信ハードウェアおよび/またはソフトウェアを含みうる。
図3は、ECBモードで使われるAES暗号化命令(AESENCRYPT Arg1, Arg2)310を概念的に図解している。図のように、AESENCRYPT310は二つのオペランドを有し、その一方Arg2が暗号化されるべき平文を供給する。暗号化された暗号文はAESENCRYPT310のArg1に書き込まれる。暗号鍵は暗黙的な128ビットレジスタXMM0およびXMM1の一つまたは複数から供給される。たとえば暗号鍵が128ビットの長さである場合、諸レジスタXMM0の一つによって供給されてもよい。そのような場合、他方のレジスタXMM1は、図4に関連して述べるように、別の役割で使用されうる。
101 相互接続
104 メイン・メモリ
106 ROM
107 データ記憶装置
109 プロセッサ
121 表示装置
122 入力装置
123 カーソル・コントロール
124 ハードコピー装置
125 音記録/再生装置
126 ビデオ
130 実行ユニット
145 暗号回路
150 レジスタ・ファイル
160 キャッシュ
165 デコーダ
170 内部相互接続
190 通信装置
201 整数レジスタ
207 制御信号
208 状態レジスタ
209 レジスタ
210 拡張レジスタ
211 命令ポインタ・レジスタ
310 AES暗号化命令
410 ECBモードでAESENCRYPTを使うためのコード
600 CBCモードで使われる二つの連鎖されたAES暗号化命令
710 CBCモードでAES暗号化命令を使うためのコード
810 CTRモードで使われるAES暗号化命令
910 CTRモードでAES暗号化命令を使うためのコード
Claims (22)
- 命令が記憶されている機械可読媒体であって、該命令は、機械によって実行された場合に該機械をして:
前記命令の第一のオペランドと前記命令の第二のオペランドを組み合わせて結果を生成する段階であって、前記命令は先進暗号化標準(AES)動作の複数のモードにおいて使用されるものであり、前記第一のオペランドは複数のモードのうちの一つのモードを決めるために使われる、段階と;
AESアルゴリズムに従って、暗黙的レジスタによって供給される鍵を使って前記結果を暗号化して暗号化された結果を生成する段階と;
前記暗号化された結果を前記命令の前記第一のオペランドの位置に置く段階とを有する方法を実行させ、
第一のモードにおいては、前記命令に応答して第一のループが実行され、第一のループでは、前記第一のオペランドをクリアし、第一のメモリの、カウンタ値によって示される位置から得られる前記第二のオペランドによって供給される平文値を、前記第一のオペランドによって供給される第二の値と論理的に組み合わせて前記結果を生成し、AESアルゴリズムおよび前記鍵を使って前記結果を暗号化して前記暗号化された結果を生成し、前記暗号化された結果を第二のメモリの、前記カウンタ値によって示される位置に記憶し、前記カウンタ値をデクリメントし、前記カウンタ値が所定の値に達するまで前記第一のループを再実行し;
第二のモードにおいては、前記命令に応答して前記第一のオペランドがクリアされ、その後、第二のループが実行され、第二のループでは、前記平文値を前記第二の値と論理的に組み合わせて前記結果を生成し、AESアルゴリズムおよび前記鍵を使って前記結果を暗号化して前記暗号化された結果を生成し、前記暗号化された結果を前記カウンタ値によって示される第二のメモリの位置に記憶し、前記カウンタ値をデクリメントし、前記カウンタ値が前記所定の値に達するまで前記第二のループを再実行する、
機械可読媒体。 - 前記組み合わせることが:
前記命令の第一のオペランドと前記命令の第二のオペランドとの排他的ORを求め、前記結果を生成することを含む、
請求項1記載の媒体。 - 前記暗号化することが:
前記鍵を一つまたは複数の所定のレジスタから取得することを含む、請求項1記載の媒体。 - 前記鍵が128ビット、192ビットまたは256ビットの長さである、請求項3記載の媒体。
- 前記第二のオペランドが、128ビットの長さである、暗号化されるべき平文である、請求項1記載の媒体。
- 前記第一のオペランドが0である、請求項5記載の媒体。
- 前記第一のオペランドが先行する暗号化動作からの先行する暗号化された結果である、請求項5記載の媒体。
- 第一のオペランドおよび第二のオペランドを含み、複数の先進暗号化標準(AES)モードにおいて使用できる単一の命令に応答して、前記第二のオペランドによって供給される平文の値を前記第一のオペランドによって供給される第二の値と論理的に組み合わせて組み合わされた結果を生成し、AESアルゴリズムおよび暗黙的レジスタによって供給される鍵を使って前記組み合わされた結果を暗号化して暗号化された結果を生成する第一の論理を有し、前記第一のオペランドは複数のAESモードのうちの一つのモードを決めるために使われ、
前記第一のオペランドは複数のAESモードのうちの一つのモードを決めるために使われ、第一のモードにおいては、前記単一の命令に応答して第一のループが実行され、第一のループでは、前記第一のオペランドをクリアし、カウンタ値によって示される第一のメモリの位置から得られる前記第二のオペランドによって供給される平文値を、前記第一のオペランドによって供給される第二の値と論理的に組み合わせて前記結果を生成し、AESアルゴリズムおよび前記鍵を使って前記結果を暗号化して前記暗号化された結果を生成し、前記暗号化された結果を前記カウンタ値によって示される第二のメモリの位置に記憶し、前記カウンタ値をデクリメントし、前記カウンタ値が所定の値に達するまで前記第一のループを再実行し;
第二のモードにおいては、前記命令に応答して前記第一のオペランドがクリアされ、その後、第二のループが実行され、第二のループでは、前記平文値を前記第二の値と論理的に組み合わせて前記結果を生成し、AESアルゴリズムおよび前記鍵を使って前記結果を暗号化して前記暗号化された結果を生成し、前記暗号化された結果を前記カウンタ値によって示される第二のメモリの位置に記憶し、前記カウンタ値をデクリメントし、前記カウンタ値が前記所定の値に達するまで前記第二のループを再実行する、
暗号化を実行するプロセッサ。 - 前記第一の論理が、前記平文の値と前記第二の値との排他的OR(XOR)を求めて前記組み合わされた結果を生成するよう構成されている、請求項8記載のプロセッサ。
- 前記第二の値を記憶する第一のレジスタと;
前記鍵を記憶する第二のレジスタとをさらに有する、
請求項8記載のプロセッサ。 - 前記第一の論理が、前記暗号化された結果を前記第一のレジスタ内に保存するよう構成されている、請求項10記載のプロセッサ。
- 前記第二の値が以前に暗号化された結果または0である、請求項10記載のプロセッサ。
- 前記平文の値および前記暗号化された結果がそれぞれ128ビットの長さである、請求項8記載のプロセッサ。
- 少なくとも二つのモードでデータを暗号化できる、二つのオペランドをもつ先進暗号化標準(AES)暗号化命令を記憶するメモリと;
AES暗号化命令を実行するプロセッサとを有する、
データを暗号化するシステムであって、
第一のモードにおいては、前記AES暗号化命令に応答して前記プロセッサは:
第一のループを実行し、第一のループでは、第一のオペランドをクリアし、カウンタ値によって示される第一のメモリの位置から得られる第二のオペランドによって供給される平文値を、前記第一のオペランドによって供給される第二の値と論理的に組み合わせて組み合わされた結果を生成し、AESアルゴリズムおよび鍵を使って前記組み合わされた結果を暗号化して暗号化された結果を生成し、前記暗号化された結果を前記カウンタ値によって示される第二のメモリの位置に記憶し、前記カウンタ値をデクリメントし、前記カウンタ値が所定の値に達するまで前記第一のループを再実行し;
第二のモードにおいては、前記AES暗号化命令に応答して前記プロセッサは:
前記第一のオペランドをクリアし、その後、第二のループを実行し、第二のループでは、前記平文値を前記第二の値と論理的に組み合わせて組み合わされた結果を生成し、AESアルゴリズムおよび前記鍵を使って前記組み合わされた結果を暗号化して暗号化された結果を生成し、前記暗号化された結果を前記カウンタ値によって示される第二のメモリの位置に記憶し、前記カウンタ値をデクリメントし、前記カウンタ値が前記所定の値に達するまで前記第二のループを再実行する、
システム。 - 前記AES暗号化命令のオペランドが二つだけである、請求項14記載のシステム。
- 前記少なくとも二つのモードが電子コードブック(ECB)モード、カウンター(CTR)モードまたは暗号ブロック連鎖(CBC)モードのうちの二つを含む、請求項14記載のシステム。
- 前記少なくとも二つのモードのうち前記AES暗号化命令がデータを暗号化するモードが、前記二つのオペランドのうちの一方の値に基づいている、請求項14記載のシステム。
- 前記少なくとも二つのモードのうち前記AES暗号化命令がデータを暗号化するモードが、前記AES暗号化命令に関連付けられている即値バイトに基づいている、請求項14記載のシステム。
- 少なくとも二つのモードでデータを復号できる、二つのオペランドをもつ先進暗号化標準(AES)復号命令を記憶するメモリと;
AES復号命令を実行するプロセッサとを有する、
データを復号するシステム。 - 前記AES復号命令のオペランドが二つだけである、請求項19記載のシステム。
- 前記少なくとも二つのモードが電子コードブック(ECB)モード、カウンター(CTR)モードまたは暗号ブロック連鎖(CBC)モードのうちの二つを含む、請求項19記載のシステム。
- 前記少なくとも二つのモードのうち前記AES復号命令がデータを復号するモードが、前記二つのオペランドのうちの一方の値に基づいている、請求項19記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/724,005 | 2007-03-14 | ||
US11/724,005 US8538012B2 (en) | 2007-03-14 | 2007-03-14 | Performing AES encryption or decryption in multiple modes with a single instruction |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008283672A JP2008283672A (ja) | 2008-11-20 |
JP4767985B2 true JP4767985B2 (ja) | 2011-09-07 |
Family
ID=39328229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008064272A Active JP4767985B2 (ja) | 2007-03-14 | 2008-03-13 | 複数モードでのaes暗号化または復号の単一命令での実行 |
Country Status (7)
Country | Link |
---|---|
US (3) | US8538012B2 (ja) |
JP (1) | JP4767985B2 (ja) |
KR (3) | KR20080084752A (ja) |
CN (2) | CN101272238B (ja) |
DE (1) | DE102008014359B4 (ja) |
GB (1) | GB2447563B (ja) |
TW (1) | TWI390401B (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8538015B2 (en) | 2007-03-28 | 2013-09-17 | Intel Corporation | Flexible architecture and instruction for advanced encryption standard (AES) |
US8447796B2 (en) * | 2008-11-25 | 2013-05-21 | Intel Corporation | Apparatus with a vector generation unit and encoder for receiving first and second inputs to generate at least significant zero (LSZ) |
EP2196937A1 (en) * | 2008-12-15 | 2010-06-16 | Thomson Licensing | Methods and devices for instruction level software encryption |
US8214598B2 (en) * | 2009-12-22 | 2012-07-03 | Intel Corporation | System, method, and apparatus for a cache flush of a range of pages and TLB invalidation of a range of entries |
US9990201B2 (en) | 2009-12-22 | 2018-06-05 | Intel Corporation | Multiplication instruction for which execution completes without writing a carry flag |
US9003170B2 (en) | 2009-12-22 | 2015-04-07 | Intel Corporation | Bit range isolation instructions, methods, and apparatus |
US8549264B2 (en) | 2009-12-22 | 2013-10-01 | Intel Corporation | Add instructions to add three source operands |
EP2717511A1 (en) * | 2012-10-05 | 2014-04-09 | Nagravision S.A. | Method and device for digital data blocks encryption and decryption |
DE102013205166A1 (de) * | 2013-03-22 | 2014-09-25 | Robert Bosch Gmbh | Verfahren zum Erzeugen einer Einwegfunktion |
US9513913B2 (en) | 2014-07-22 | 2016-12-06 | Intel Corporation | SM4 acceleration processors, methods, systems, and instructions |
US9467279B2 (en) | 2014-09-26 | 2016-10-11 | Intel Corporation | Instructions and logic to provide SIMD SM4 cryptographic block cipher functionality |
US10110566B2 (en) * | 2015-07-21 | 2018-10-23 | Baffle, Inc. | Systems and processes for executing private programs on untrusted computers |
EP3552339A4 (en) | 2016-12-09 | 2020-04-22 | Cryptography Research, Inc. | PROGRAMMABLE BLOCK ENCRYPTION WITH MASKED INPUTS |
CN108777611B (zh) * | 2018-05-11 | 2021-06-18 | 吉林大学 | 基于双密钥流密码的双向链表顺序加密解密方法 |
GB2582900A (en) | 2019-03-18 | 2020-10-14 | Pqshield Ltd | Cryptography using a cryptographic state |
KR20210018130A (ko) * | 2019-08-06 | 2021-02-17 | 주식회사 아이씨티케이 홀딩스 | 프로세서, 프로세서의 동작 방법 및 이를 포함한 전자 장치 |
WO2021025490A1 (ko) * | 2019-08-06 | 2021-02-11 | 주식회사 아이씨티케이 홀딩스 | 프로세서, 프로세서의 동작 방법 및 이를 포함한 전자 장치 |
Family Cites Families (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3547474B2 (ja) | 1994-03-22 | 2004-07-28 | 富士通株式会社 | 暗号演算回路 |
US6078663A (en) * | 1995-06-30 | 2000-06-20 | Canon Kabushiki Kaisha | Communication apparatus and a communication system |
US6118870A (en) * | 1996-10-09 | 2000-09-12 | Lsi Logic Corp. | Microprocessor having instruction set extensions for decryption and multimedia applications |
US6704871B1 (en) * | 1997-09-16 | 2004-03-09 | Safenet, Inc. | Cryptographic co-processor |
US6324288B1 (en) * | 1999-05-17 | 2001-11-27 | Intel Corporation | Cipher core in a content protection system |
AU2001260970A1 (en) * | 2000-01-31 | 2001-08-07 | Vdg Inc. | Block encryption method and schemes for data confidentiality and integrity protection |
US7106860B1 (en) * | 2001-02-06 | 2006-09-12 | Conexant, Inc. | System and method for executing Advanced Encryption Standard (AES) algorithm |
US6937727B2 (en) * | 2001-06-08 | 2005-08-30 | Corrent Corporation | Circuit and method for implementing the advanced encryption standard block cipher algorithm in a system having a plurality of channels |
US7280657B2 (en) * | 2001-06-13 | 2007-10-09 | Itt Manufacturing Enterprises, Inc. | Data encryption and decryption system and method using merged ciphers |
JP3851115B2 (ja) * | 2001-06-28 | 2006-11-29 | 富士通株式会社 | 暗号回路 |
US7289524B2 (en) * | 2001-10-04 | 2007-10-30 | Bbn Technologies Corp. | Execution unit for a network processor |
GB2374260B (en) * | 2001-10-12 | 2003-08-13 | F Secure Oyj | Data encryption |
US7508937B2 (en) * | 2001-12-18 | 2009-03-24 | Analog Devices, Inc. | Programmable data encryption engine for advanced encryption standard algorithm |
DE10201449C1 (de) * | 2002-01-16 | 2003-08-14 | Infineon Technologies Ag | Rechenwerk, Verfahren zum Ausführen einer Operation mit einem verschlüsselten Operanden, Carry-Select-Addierer und Kryptographieprozessor |
US7221763B2 (en) * | 2002-04-24 | 2007-05-22 | Silicon Storage Technology, Inc. | High throughput AES architecture |
JP2005527853A (ja) * | 2002-05-23 | 2005-09-15 | アトメル・コーポレイション | 高度暗号化規格(aes)のハードウェア暗号法エンジン |
US20030223581A1 (en) * | 2002-05-30 | 2003-12-04 | Bedros Hanounik | Cipher block chaining unit for use with multiple encryption cores |
US6950517B2 (en) * | 2002-07-24 | 2005-09-27 | Qualcomm, Inc. | Efficient encryption and authentication for data processing systems |
US7532726B2 (en) * | 2002-08-08 | 2009-05-12 | Panasonic Corporation | Encryption/decryption device and method, encryption device and method, decryption device and method, and transmission/reception apparatus |
US20040047466A1 (en) * | 2002-09-06 | 2004-03-11 | Joel Feldman | Advanced encryption standard hardware accelerator and method |
US20040202317A1 (en) * | 2002-12-20 | 2004-10-14 | Victor Demjanenko | Advanced encryption standard (AES) implementation as an instruction set extension |
KR100583635B1 (ko) * | 2003-01-24 | 2006-05-26 | 삼성전자주식회사 | 다수의 동작 모드들을 지원하는 암호화 장치 |
US7336783B2 (en) * | 2003-01-24 | 2008-02-26 | Samsung Electronics, C., Ltd. | Cryptographic systems and methods supporting multiple modes |
JP3818263B2 (ja) | 2003-01-28 | 2006-09-06 | 日本電気株式会社 | Aes暗号処理装置、aes復号処理装置、aes暗号・復号処理装置、aes暗号処理方法、aes復号処理方法、および、aes暗号・復号処理方法 |
US7337314B2 (en) * | 2003-04-12 | 2008-02-26 | Cavium Networks, Inc. | Apparatus and method for allocating resources within a security processor |
US7925891B2 (en) | 2003-04-18 | 2011-04-12 | Via Technologies, Inc. | Apparatus and method for employing cryptographic functions to generate a message digest |
US7542566B2 (en) * | 2003-04-18 | 2009-06-02 | Ip-First, Llc | Apparatus and method for performing transparent cipher block chaining mode cryptographic functions |
US7532722B2 (en) | 2003-04-18 | 2009-05-12 | Ip-First, Llc | Apparatus and method for performing transparent block cipher cryptographic functions |
US8060755B2 (en) | 2003-04-18 | 2011-11-15 | Via Technologies, Inc | Apparatus and method for providing user-generated key schedule in a microprocessor cryptographic engine |
US7392399B2 (en) * | 2003-05-05 | 2008-06-24 | Sun Microsystems, Inc. | Methods and systems for efficiently integrating a cryptographic co-processor |
JP2006527865A (ja) * | 2003-06-16 | 2006-12-07 | エレクトロニクス アンド テレコミュニケーションズ リサーチ インスチチュート | ラインドールブロック暗号化装置、及びその暗号化並びに復号化方法 |
CN101241735B (zh) * | 2003-07-07 | 2012-07-18 | 罗威所罗生股份有限公司 | 重放加密的视听内容的方法 |
US7421076B2 (en) * | 2003-09-17 | 2008-09-02 | Analog Devices, Inc. | Advanced encryption standard (AES) engine with real time S-box generation |
US7921300B2 (en) * | 2003-10-10 | 2011-04-05 | Via Technologies, Inc. | Apparatus and method for secure hash algorithm |
TWI244299B (en) * | 2004-01-07 | 2005-11-21 | Admtek Inc | Method for implementing advanced encryption standards by a very long instruction word architecture processor |
ATE435538T1 (de) * | 2004-02-05 | 2009-07-15 | Research In Motion Ltd | Speicherung auf einem chip,erzeugung und handhabung eines geheimschlüssels |
CN1677921A (zh) | 2004-03-31 | 2005-10-05 | 华为技术有限公司 | 通过可编程器件实现数据加密的方法 |
TWI268686B (en) * | 2004-04-16 | 2006-12-11 | Via Tech Inc | Apparatus and method for performing transparent cipher block chaining mode cryptographic functions |
US7496196B2 (en) * | 2004-06-30 | 2009-02-24 | Intel Corporation | Method apparatus and system of performing one or more encryption and/or decryption operations |
JP4447977B2 (ja) * | 2004-06-30 | 2010-04-07 | 富士通マイクロエレクトロニクス株式会社 | セキュアプロセッサ、およびセキュアプロセッサ用プログラム。 |
US7783037B1 (en) * | 2004-09-20 | 2010-08-24 | Globalfoundries Inc. | Multi-gigabit per second computing of the rijndael inverse cipher |
JP4734906B2 (ja) * | 2004-12-07 | 2011-07-27 | ソニー株式会社 | 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム |
WO2006112114A1 (ja) * | 2005-03-31 | 2006-10-26 | Matsushita Electric Industrial Co., Ltd. | データ暗号化装置及びデータ暗号化方法 |
US7606363B1 (en) * | 2005-07-26 | 2009-10-20 | Rockwell Collins, Inc. | System and method for context switching of a cryptographic engine |
JP4890976B2 (ja) * | 2005-08-31 | 2012-03-07 | キヤノン株式会社 | 暗号処理装置 |
EP1783948B1 (en) * | 2005-11-08 | 2011-01-12 | Irdeto Access B.V. | Methods of scrambling and descrambling units of data |
US8189774B2 (en) * | 2006-01-06 | 2012-05-29 | Fujitsu Semiconductor Limited | Processors for network communications |
US7831039B2 (en) * | 2006-06-07 | 2010-11-09 | Stmicroelectronics S.R.L. | AES encryption circuitry with CCM |
US7769166B2 (en) * | 2006-08-24 | 2010-08-03 | Lsi Corporation | Dual mode AES implementation to support single and multiple AES operations |
-
2007
- 2007-03-14 US US11/724,005 patent/US8538012B2/en active Active
-
2008
- 2008-03-13 JP JP2008064272A patent/JP4767985B2/ja active Active
- 2008-03-13 TW TW097108905A patent/TWI390401B/zh not_active IP Right Cessation
- 2008-03-14 CN CN200810096342.2A patent/CN101272238B/zh active Active
- 2008-03-14 DE DE102008014359A patent/DE102008014359B4/de active Active
- 2008-03-14 GB GB0804870A patent/GB2447563B/en active Active
- 2008-03-14 KR KR1020080024067A patent/KR20080084752A/ko active Application Filing
- 2008-03-14 CN CN201410197191.5A patent/CN103957100B/zh active Active
-
2010
- 2010-06-23 KR KR1020100059386A patent/KR101302799B1/ko active IP Right Grant
-
2013
- 2013-03-08 US US13/790,748 patent/US9325498B2/en not_active Expired - Fee Related
- 2013-05-20 KR KR1020130056494A patent/KR101394710B1/ko active IP Right Grant
-
2016
- 2016-03-24 US US15/079,305 patent/US20160261406A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
CN103957100A (zh) | 2014-07-30 |
KR20100082748A (ko) | 2010-07-19 |
GB2447563B (en) | 2009-09-30 |
CN101272238B (zh) | 2014-06-04 |
KR101394710B1 (ko) | 2014-05-15 |
US20160261406A1 (en) | 2016-09-08 |
TWI390401B (zh) | 2013-03-21 |
DE102008014359A1 (de) | 2008-10-16 |
DE102008014359B4 (de) | 2011-08-25 |
CN103957100B (zh) | 2018-10-16 |
GB0804870D0 (en) | 2008-04-16 |
JP2008283672A (ja) | 2008-11-20 |
US9325498B2 (en) | 2016-04-26 |
GB2447563A (en) | 2008-09-17 |
US20080229116A1 (en) | 2008-09-18 |
KR101302799B1 (ko) | 2013-09-03 |
TW200903254A (en) | 2009-01-16 |
KR20080084752A (ko) | 2008-09-19 |
CN101272238A (zh) | 2008-09-24 |
KR20130076834A (ko) | 2013-07-08 |
US20130202106A1 (en) | 2013-08-08 |
US8538012B2 (en) | 2013-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4767985B2 (ja) | 複数モードでのaes暗号化または復号の単一命令での実行 | |
US11563556B2 (en) | Architecture and instruction set for implementing advanced encryption standard (AES) | |
JP4684550B2 (ja) | 多数の動作モードを支援する暗号化装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110125 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110418 |
|
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: 20110517 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110615 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4767985 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140624 Year of fee payment: 3 |
|
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 |
|
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 |