JP4960044B2 - 暗号処理回路及びicカード - Google Patents
暗号処理回路及びicカード Download PDFInfo
- Publication number
- JP4960044B2 JP4960044B2 JP2006238040A JP2006238040A JP4960044B2 JP 4960044 B2 JP4960044 B2 JP 4960044B2 JP 2006238040 A JP2006238040 A JP 2006238040A JP 2006238040 A JP2006238040 A JP 2006238040A JP 4960044 B2 JP4960044 B2 JP 4960044B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- register
- circuit
- input
- key
- 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/002—Countermeasures against attacks on cryptographic mechanisms
- H04L9/003—Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
-
- 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
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
-
- 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
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/77—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in smart cards
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
Description
現在実用化され、広く利用されている、例えば電子マネーシステム、交通システム等のシステムにおいても、個人情報、残高情報等の秘密情報が扱われるため、暗号処理技術が用いられている。そして、その暗号処理技術に関しては、種々の技術が提案されている。
その特許文献2に開示の電力解析攻撃対策のための暗号処理装置では、暗号処理されるデータを保持するレジスタと、その反転データを保持するレジスタを含んで構成されている。例えば、CMOSでは、データの変化に依存して電力が消費される。
(第1の実施の形態)
まず図1に基づき、本発明の第1の実施の形態に係わるシステムの構成を説明する。図1は、本発明の第1の実施の形態に係わる暗号処理回路が利用されるシステムの例を説明するための構成図である。
なお、システム1の例として、ドアの開閉制御システムを説明したが、本実施の形態に係る暗号処理回路は、電子マネーシステム、交通システム等においても適用できるものであることは言うまでもない。
DESアルゴリズムは、1977年に米国政府によって米国政府標準暗号として制定された共通鍵暗号アルゴリズムであり、多くの標準団体によって規格が定められている。例えば、FIPS46-3, ANSI X3.92, SP800-67, ISO10126-2で標準化されている。
64ビットの平文Dは、図示しない初期転置回路(IP:Initial Permutation)を経て、32ビットずつの2つのデータD1,D2に分割される。データD1,D2は、セレクタ51を介してレジスタ53に入力され保持される。64ビットの撹乱データMも、セレクタ52介して32ビットずつの2つのデータM1,M2に分割される。撹乱データM1,M2は、セレクタ52を介してレジスタ54に入力されて保持される。
図5は、レジスタにストアされるデータの変化を説明するためのタイミングチャートである。図5は、クロックCLKのタイミングに応じて、レジスタ53,54,63,64にストアされるデータの変化を示す。
以上のようにして、DESの16ラウンドの各段に対応して必要な左シフト処理を、2つの同様な回路に分割して実行させるようにしたので、暗号回路モジュール15におけるクリティカルパスを短くすることができ、より高速な左シフト処理が可能となる。
次に、本発明の第2の実施の形態に係る暗号回路モジュールについて説明する。図10は、第2の実施の形態に係る暗号回路モジュールの鍵スケジュール部の構成を示すブロック図である。ここでは、鍵スケジュール部は、DES用である。図11は、DESのアルゴリズムを示す図である。図12は、シフト回路の構成を示すブロック図である。図13は、図10の回路の各種信号のタイミングを示すタイミングチャートである。
2つの28ビットデータ(C0, D0)は、シフト処理(LS1)により、それぞれ左1ビットシフトされ、中間データ(C1, D1)が生成される。中間データ(C1, D1)は、縮約型転置回路(PC2)によってビット選択されることによって、拡大鍵K1が生成される。拡大鍵K1の生成は、次の式(2)と式(3)のように表現される。
(C1, D1) = (C0 << 1, D0 << 1) ・・式(2)
K1 = PC2(C1, D1) ・・式(3)
なお、ここで、’<<’は左ビットシフトを表す。そして、以下、同様に、ビットシフトとビット選択を繰り返すことによって、拡大鍵K1からK16が生成される。
ここで、(+)は、排他論理和を表す記号である。
(X0, Y0) = PC1(MK) ・・式(6)
よって、次の式(7)が成り立つ。
(C0, D0) = (C’0, D’0)(+)(X0, Y0) ・・式(7)
という関係が成り立つ。
レジスタ106に保持されているデータC’0は、シフト回路108を介してレジスタ115に転送される。ここで、シフト回路108は、入力データをそのまま出力するように制御される。
レジスタ116に保存されているデータX0は、シフト回路118を介してレジスタ105に転送される。ここで、シフト回路118は、1ビット左シフトした値が出力するように制御される。シフト回路107と108がシフトしないで出力しているのは、1ラウンド目では左1ビットシフトであるためで、レジスタ105に保持されているデータD’0は、シフト回路107,レジスタ116及びシフト回路118を経由してレジスタ105に戻される。なお、この間に1ビットシフトが実現されるように制御されれば、シフト回路118ではなく、シフト回路107でシフトするようにしても良い。さらになお、2ビットシフトは、シフト回路107と118の両方でシフトすることで実現される。
K’i = PC2(C’i, D’i) ・・式(8)
Mi= PC2(Xi, Yi) ・・式(9)
(Ci, Di) = (C’i, D’i) (+) (Xi, Yi) ・・式(10)
であるので、
Ki = PC2(Ci, Di)) = K’i (+) Mi ・・式(11)
という関係が成り立つ。
以上のように、本発明の第2の実施の形態に係る暗号処理回路を用いることで、暗号データを撹乱データによって完全に撹乱でき、その結果、消費電力から暗号データを推測することが困難となる。
本発明は、上述した実施の形態に限定されるものではなく、本発明の要旨を変えない範囲において、種々の変更、改変等が可能である。
Claims (5)
- 暗号処理を行う暗号処理回路であって、
前記暗号処理に用いられる入力データに関連した第1のデータが入力される第1のレジスタと、
前記第1のデータと依存関係のない第2のデータが入力される第2のレジスタと、
前記第1のデータと前記第2のデータを交互に選択して前記第1のレジスタと前記第2のレジスタで交互に保持されるように、前記第1のレジスタと前記第2のレジスタに出力する選択回路と、
前記第1のレジスタから出力されるデータに対して、第1の演算を行う第1の演算回路と、
を有することを特徴とする暗号処理回路。 - さらに、前記第2のレジスタから出力されるデータに対して、第2の演算を行う第2の演算回路を有することを特徴とする請求項1記載の暗号処理回路。
- 前記入力データは、前記入力データと依存関係のない、前記第2のデータ又は第3のデータを用いて撹乱されたデータであることを特徴とする請求項1又は2に記載の暗号処理回路。
- 暗号処理を行う暗号処理回路であって、
前記暗号処理に用いられる入力データに関連したデータを分割した第1及び第2のデータがそれぞれ入力される第1及び第2のレジスタと、
前記第1のデータと依存関係のないデータを分割した第3及び第4のデータがそれぞれ入力される第3及び第4のレジスタと、
前記第1のデータと前記第3のデータを交互に選択して前記第1のレジスタと前記第3のレジスタで交互に保持されるように、前記第1のレジスタと前記第3のレジスタに出力し、かつ前記第2のデータと前記第4のデータを交互に選択して前記第2のレジスタと前記第4のレジスタで交互に保持されるように、前記第2のレジスタと前記第4のレジスタに出力する選択回路と、
前記第1、前記第2,前記第3及び前記第4のレジスタのそれぞれから出力されるデータに対して、所定の演算を行う演算回路と、
を有することを特徴とする暗号処理回路。 - 請求項1から4のいずれか1つに記載の暗号処理回路を有するICカード。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006238040A JP4960044B2 (ja) | 2006-09-01 | 2006-09-01 | 暗号処理回路及びicカード |
US11/842,331 US8457306B2 (en) | 2006-09-01 | 2007-08-21 | Cryptographic module and IC card |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006238040A JP4960044B2 (ja) | 2006-09-01 | 2006-09-01 | 暗号処理回路及びicカード |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008061118A JP2008061118A (ja) | 2008-03-13 |
JP4960044B2 true JP4960044B2 (ja) | 2012-06-27 |
Family
ID=39151549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006238040A Expired - Fee Related JP4960044B2 (ja) | 2006-09-01 | 2006-09-01 | 暗号処理回路及びicカード |
Country Status (2)
Country | Link |
---|---|
US (1) | US8457306B2 (ja) |
JP (1) | JP4960044B2 (ja) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8622292B2 (en) * | 2005-09-29 | 2014-01-07 | Jeffrey Bart Katz | Reservation-based preauthorization payment system |
US9004355B2 (en) * | 2005-09-29 | 2015-04-14 | Cardfree Inc | Secure system and method to pay for a service provided at a reservation |
JP4941672B2 (ja) | 2008-03-11 | 2012-05-30 | Jsr株式会社 | 生体関連物質の非特異吸着防止コート剤 |
US8220718B2 (en) * | 2008-09-15 | 2012-07-17 | Vasco Data Security, Inc. | Method for post-manufacturing data transfer to and from a sealed device |
US20100257514A1 (en) * | 2009-04-03 | 2010-10-07 | Samsung Electronics Co., Ltd. | Effective mapping of code sections to the same section of secondary memory to improve the security of computing systems |
US20100257318A1 (en) * | 2009-04-03 | 2010-10-07 | Samsung Electronics Co., Ltd. | Evicting code sections from secondary memory to improve the security of computing systems |
JP2010288233A (ja) * | 2009-06-15 | 2010-12-24 | Toshiba Corp | 暗号処理装置 |
FR2956764B1 (fr) * | 2010-02-19 | 2012-11-09 | St Microelectronics Rousset | Protection de registres contre des perturbations unilaterales |
US10103876B2 (en) | 2012-10-17 | 2018-10-16 | Synopsys, Inc. | System and method for multichannel cryptographic processing |
CN106877999B (zh) * | 2017-01-17 | 2020-05-22 | 中国科学院信息工程研究所 | 一种des加解密密钥生成器及密钥生成方法 |
US10972268B2 (en) * | 2018-09-18 | 2021-04-06 | Infineon Technologies Ag | Cryptographic diversity |
US11838402B2 (en) | 2019-03-13 | 2023-12-05 | The Research Foundation For The State University Of New York | Ultra low power core for lightweight encryption |
GB2582900A (en) * | 2019-03-18 | 2020-10-14 | Pqshield Ltd | Cryptography using a cryptographic state |
JP7383985B2 (ja) * | 2019-10-30 | 2023-11-21 | 富士電機株式会社 | 情報処理装置、情報処理方法及びプログラム |
US11861046B2 (en) * | 2021-04-29 | 2024-01-02 | Infineon Technologies Ag | System for an improved safety and security check |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2333095C (en) * | 1998-06-03 | 2005-05-10 | Cryptography Research, Inc. | Improved des and other cryptographic processes with leak minimization for smartcards and other cryptosystems |
JP2000013369A (ja) * | 1998-06-18 | 2000-01-14 | Matsushita Electric Ind Co Ltd | 暗号化回路 |
JP2000056679A (ja) | 1998-08-11 | 2000-02-25 | Fujitsu Ltd | Desの鍵スケジュール装置 |
JP3600454B2 (ja) | 1998-08-20 | 2004-12-15 | 株式会社東芝 | 暗号化・復号装置、暗号化・復号方法、およびそのプログラム記憶媒体 |
JP4317607B2 (ja) * | 1998-12-14 | 2009-08-19 | 株式会社日立製作所 | 情報処理装置、耐タンパ処理装置 |
JP2001005384A (ja) * | 1999-06-24 | 2001-01-12 | Matsushita Electric Ind Co Ltd | 乱数生成方法 |
JP4083925B2 (ja) * | 1999-06-24 | 2008-04-30 | 株式会社日立製作所 | 情報処理装置、カード部材および情報処理システム |
GB2365153A (en) * | 2000-01-28 | 2002-02-13 | Simon William Moore | Microprocessor resistant to power analysis with an alarm state |
JP2003098959A (ja) * | 2001-09-21 | 2003-04-04 | Toshiba Corp | 暗号処理装置 |
JP3822170B2 (ja) * | 2003-01-31 | 2006-09-13 | 株式会社東芝 | Icカードの利用期間設定方法、icカード、および、icカードケース |
JP2005031471A (ja) | 2003-07-07 | 2005-02-03 | Sony Corp | 暗号処理装置、および暗号処理方法 |
WO2005073825A2 (en) * | 2004-01-27 | 2005-08-11 | Koninklijke Philips Electronics N.V. | Protection against power analysis attacks |
US8296577B2 (en) * | 2004-06-08 | 2012-10-23 | Hrl Laboratories, Llc | Cryptographic bus architecture for the prevention of differential power analysis |
JP2006019872A (ja) * | 2004-06-30 | 2006-01-19 | Sony Corp | 暗号処理装置 |
FR2873523B1 (fr) * | 2004-07-22 | 2007-08-10 | Sagem | Procede et dispositif d'execution d'un calcul cryptographique |
KR100855958B1 (ko) * | 2004-11-24 | 2008-09-02 | 삼성전자주식회사 | 해밍거리를 이용한 부가 채널 공격에 안전한 암호화시스템 및 방법 |
JP4634788B2 (ja) * | 2004-12-17 | 2011-02-16 | 株式会社東芝 | 暗号演算回路と、該暗号演算回路を有する情報処理装置及びicカード |
KR100909364B1 (ko) * | 2007-02-06 | 2009-07-24 | 삼성전자주식회사 | 시스템 클록의 노출을 차단하는 메모리 컨트롤러와 그 방법 |
-
2006
- 2006-09-01 JP JP2006238040A patent/JP4960044B2/ja not_active Expired - Fee Related
-
2007
- 2007-08-21 US US11/842,331 patent/US8457306B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US8457306B2 (en) | 2013-06-04 |
US20080056488A1 (en) | 2008-03-06 |
JP2008061118A (ja) | 2008-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4960044B2 (ja) | 暗号処理回路及びicカード | |
JP4905000B2 (ja) | 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム | |
JP5050454B2 (ja) | 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム | |
JP5242560B2 (ja) | 暗号化装置、復号化装置、暗号化方法及び集積回路 | |
JP4783104B2 (ja) | 暗号化/復号装置 | |
JP4453697B2 (ja) | 演算処理装置、および演算処理制御方法、並びにコンピュータ・プログラム | |
US8724804B2 (en) | Encryption processing apparatus | |
WO2009087972A1 (ja) | データ送信装置、データ受信装置、これらの方法、記録媒体、そのデータ通信システム | |
JP2005527853A (ja) | 高度暗号化規格(aes)のハードウェア暗号法エンジン | |
JP2007195132A (ja) | 暗号処理装置 | |
US20120005466A1 (en) | Data processing device and method for operating such data processing device | |
JP2010288233A (ja) | 暗号処理装置 | |
JP5228803B2 (ja) | 共通鍵ブロック暗号におけるスワップ回路及び、それを有する暗号化・復号化回路 | |
Huang et al. | Trace buffer attack on the AES cipher | |
WO2002086846A1 (fr) | Chiffrement / dispositif de dechiffrement, chiffrement / procede de dechiffrement, procede de chiffrement de donnees et carte a circuit integre | |
JP5231079B2 (ja) | 疑似乱数発生器及びデータ通信装置 | |
JP5755970B2 (ja) | 演算装置 | |
JP5268001B2 (ja) | ストリーム暗号向け擬似乱数生成装置とプログラムと方法 | |
EP1629626B1 (en) | Method and apparatus for a low memory hardware implementation of the key expansion function | |
JP2002510058A (ja) | 2進データ・ブロックの暗号変換のための方法 | |
JP2006025366A (ja) | 暗号化装置及び半導体集積回路 | |
KR102282363B1 (ko) | 비트 시리얼 hight 연산 장치 및 그 방법, 그 방법을 프로세서가 수행하도록 하기 위한 명령어를 포함하는 컴퓨터 판독 가능한 기록매체 및 컴퓨터 프로그램 | |
JP5338945B2 (ja) | 復号処理装置、情報処理装置、および復号処理方法、並びにコンピュータ・プログラム | |
JP2010232709A (ja) | 暗号演算回路装置 | |
Pazo-Robles et al. | Cryptanalytic attack on the self-shrinking sequence generator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090213 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110714 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110719 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110920 |
|
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: 20120228 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120322 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150330 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |