JP2010273161A - 暗号演算回路、暗号演算方法、プログラム、記録媒体 - Google Patents
暗号演算回路、暗号演算方法、プログラム、記録媒体 Download PDFInfo
- Publication number
- JP2010273161A JP2010273161A JP2009123901A JP2009123901A JP2010273161A JP 2010273161 A JP2010273161 A JP 2010273161A JP 2009123901 A JP2009123901 A JP 2009123901A JP 2009123901 A JP2009123901 A JP 2009123901A JP 2010273161 A JP2010273161 A JP 2010273161A
- Authority
- JP
- Japan
- Prior art keywords
- data
- circuit
- key
- unit combination
- cryptographic operation
- 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
Abstract
【解決手段】鍵データ用レジスタが鍵データまたは鍵スケジュール部組み合わせ回路の出力を記憶し、鍵スケジュール部組み合わせ回路が鍵データ用レジスタからのデータを用いて鍵スケジュールを実施し、暗号演算データ用レジスタが暗号演算データまたはデータ撹拌部組み合わせ回路の出力を記憶し、データ撹拌部組み合わせ回路が鍵データ用レジスタに記憶されているデータを用いて暗号演算データ用レジスタに記憶されているデータのデータ撹拌を実施する暗号演算回路において、鍵データ用レジスタと鍵スケジュール部組み合わせ回路との間に、鍵データ用レジスタからのデータの鍵スケジュール部組み合わせ回路への入力を遅延させる遅延制御部を設けた。
【選択図】図1
Description
第2セレクタ120の入力は、鍵データ(秘密鍵)と鍵スケジュール部組み合わせ回路124の出力である。第2セレクタ120は、初回に鍵データを出力し、爾後、鍵スケジュール部組み合わせ回路124の出力を出力する。所定回数のループ処理によって鍵スケジュールが終了すると、第2セレクタ120は再び同じ鍵データ(秘密鍵)を出力して、この鍵データについて所定回数の鍵スケジュールが実施される。
遅延回路126aを用いた構成(図2参照)では、鍵データ用レジスタ122からのデータを遅延回路126aに送り、その出力を遅延制御部126の出力とする。この遅延回路126aの遅延時間を調整することで、鍵スケジュール部組み合わせ回路124と遅延制御部126の合計遅延と、データ撹拌部組み合わせ回路114の遅延とを同じにすることができる。
ラッチ回路126bを用いた構成(図3参照)では、鍵データ用レジスタ122からのデータをラッチ回路126bに送り、ラッチ回路126bの開閉を遅延回路130によって遅延したクロック信号に拠るタイミングで行い、ラッチ回路126bの出力を遅延制御部126の出力とする。このラッチ開閉の遅延時間を調整することで、鍵スケジュール部組み合わせ回路124と遅延制御部126の合計遅延と、データ撹拌部組み合わせ回路114の遅延とを同じにすることができる。
時間tc’がデータ撹拌部組み合わせ回路114および鍵スケジュール部組み合わせ回路124の遅延時間tdより大きい値であるような異常クロックが発生した場合の演算を考える(td=tk<tc’)。この場合、クロック信号の次の立ち上がりの前に暗号演算データ用レジスタ112への入力値および鍵データ用レジスタ122への入力値が確定しており、クロック信号の次の立ち上がりでは両レジスタ112,122に正しいデータが格納される。
時間tc’がデータ撹拌部組み合わせ回路114および鍵スケジュール部組み合わせ回路124の遅延時間tdより小さい値であるような異常クロックが発生した場合の演算を考える(td=tk>tc’)。クロック信号の次の立ち上がり時に暗号演算データ用レジスタ112への入力値および鍵データ用レジスタ122への入力値の両方の値が確定しておらず不定値となっている。これにより、クロック信号の次の立ち上がり時では鍵データ用レジスタ122、および、暗号演算データ用レジスタ112の両方に誤った値が格納される。このように、異常クロック(グリッチ)をどのように設定したとしても、暗号演算データ用レジスタ112のデータおよび鍵データ用レジスタ122のデータの片方のみに誤りを誘発することができないため、フォールト解析が不可能となる。
Claims (11)
- 少なくとも鍵データ用レジスタと、鍵スケジュール部組み合わせ回路と、暗号演算データ用レジスタと、データ撹拌部組み合わせ回路とを含み、上記鍵データ用レジスタは、鍵データまたは上記鍵スケジュール部組み合わせ回路の出力を記憶し、上記鍵スケジュール部組み合わせ回路は、上記鍵データ用レジスタからのデータを用いて鍵スケジュールを実施し、上記暗号演算データ用レジスタは、暗号演算データまたは上記データ撹拌部組み合わせ回路の出力を記憶し、上記データ撹拌部組み合わせ回路は、上記鍵データ用レジスタに記憶されているデータを用いて上記暗号演算データ用レジスタに記憶されているデータのデータ撹拌を実施する暗号演算回路において、
上記鍵データ用レジスタと上記鍵スケジュール部組み合わせ回路との間に、上記鍵データ用レジスタからのデータの上記鍵スケジュール部組み合わせ回路への入力を遅延させる遅延制御部を設けた
ことを特徴とする暗号演算回路。 - 請求項1に記載の暗号演算回路であって、
上記遅延制御部は、上記データ撹拌部組み合わせ回路の遅延時間と上記鍵スケジュール部組み合わせ回路の遅延時間が一致するように、遅延制御を行う
ことを特徴とする暗号演算回路。 - 請求項1または請求項2に記載の暗号演算回路であって、
上記データ撹拌部組み合わせ回路が用いる、上記鍵データ用レジスタに記憶されているデータは、上記遅延制御部が遅延制御を行う前のデータである
ことを特徴とする暗号演算回路。 - 請求項1から請求項3のいずれかに記載の暗号演算回路であって、
上記遅延制御部は遅延回路を含み、
上記鍵データ用レジスタからのデータは上記遅延回路に入力され、上記遅延回路の出力は上記鍵スケジュール部組み合わせ回路への入力となる
ことを特徴とする暗号演算回路。 - 請求項1から請求項3のいずれかに記載の暗号演算回路であって、
さらに遅延回路を含み、
上記遅延制御部はラッチ回路を含み、
上記鍵データ用レジスタからのデータは上記ラッチ回路に入力され、ラッチ回路の開閉は上記遅延回路によって遅延したクロック信号に拠るタイミングで行われ、上記ラッチ回路の出力は上記鍵スケジュール部組み合わせ回路への入力となる
ことを特徴とする暗号演算回路。 - 請求項1から請求項3のいずれかに記載の暗号演算回路であって、
上記遅延制御部は、セレクト信号生成回路と、インバータと、セレクタを含み、
上記セレクト信号生成回路はクロック信号を入力としてセレクト信号を生成し、
上記セレクタには、上記遅延制御部の入力データのうち遅延対象となる対象ビットと、この対象ビットを上記インバータによって反転させた反転ビットと、上記セレクト信号とが入力され、上記セレクタは、上記セレクト信号に従って、上記対象ビットまたは上記反転ビットのいずれか一方を出力する
ことを特徴とする暗号演算回路。 - 請求項6に記載の暗号演算回路であって、
上記対象ビットは、当該対象ビットが誤りの場合に、上記鍵スケジュール部組み合わせ回路の出力の全範囲に亘って誤りが惹起するようなビットである
ことを特徴とする暗号演算回路。 - 少なくとも鍵データ用レジスタが鍵データまたは鍵スケジュール部組み合わせ回路の出力を記憶する処理ステップと、鍵スケジュール部組み合わせ回路が上記鍵データ用レジスタからのデータを用いて鍵スケジュールを実施する処理ステップと、暗号演算データ用レジスタが暗号演算データまたはデータ撹拌部組み合わせ回路の出力を記憶する処理ステップと、上記データ撹拌部組み合わせ回路が上記鍵データ用レジスタに記憶されているデータを用いて上記暗号演算データ用レジスタに記憶されているデータのデータ撹拌を実施する処理ステップとを有する暗号演算方法において、
上記鍵データ用レジスタと上記鍵スケジュール部組み合わせ回路との間に設けられた遅延制御部が、上記鍵データ用レジスタからのデータの上記鍵スケジュール部組み合わせ回路への入力を遅延させる遅延処理ステップを有する
ことを特徴とする暗号演算方法。 - 請求項8に記載の暗号演算方法であって、
上記遅延処理ステップは、上記データ撹拌部組み合わせ回路の遅延時間と上記鍵スケジュール部組み合わせ回路の遅延時間が一致するように、遅延制御を行う処理ステップである
ことを特徴とする暗号演算方法。 - 請求項1から請求項7のいずれかに記載された暗号演算回路を構築する、ハードウェア記述言語で記述されたプログラム。
- 請求項1から請求項7のいずれかに記載された暗号演算回路を構築するハードウェア記述言語で記述されたプログラムを記録した、コンピュータが読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009123901A JP5379558B2 (ja) | 2009-05-22 | 2009-05-22 | 暗号演算回路、暗号演算方法、プログラム、記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009123901A JP5379558B2 (ja) | 2009-05-22 | 2009-05-22 | 暗号演算回路、暗号演算方法、プログラム、記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010273161A true JP2010273161A (ja) | 2010-12-02 |
JP5379558B2 JP5379558B2 (ja) | 2013-12-25 |
Family
ID=43420825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009123901A Active JP5379558B2 (ja) | 2009-05-22 | 2009-05-22 | 暗号演算回路、暗号演算方法、プログラム、記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5379558B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246494A (zh) * | 2013-05-27 | 2013-08-14 | 上海爱信诺航芯电子科技有限公司 | 一种抵抗能量分析和错误攻击的安全模幂计算方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006025288A (ja) * | 2004-07-09 | 2006-01-26 | Mitsubishi Electric Corp | 選択回路、選択方法、耐タンパ対策回路の評価装置、耐タンパ対策回路の評価方法、信号生成回路、信号生成方法、耐タンパ性評価装置及び耐タンパ性評価方法 |
JP2007324733A (ja) * | 2006-05-30 | 2007-12-13 | Mitsubishi Electric Corp | データ変換装置 |
JP2010057066A (ja) * | 2008-08-29 | 2010-03-11 | Toshiba Corp | 暗号化で用いる鍵をスケジュールする装置、方法およびプログラム |
-
2009
- 2009-05-22 JP JP2009123901A patent/JP5379558B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006025288A (ja) * | 2004-07-09 | 2006-01-26 | Mitsubishi Electric Corp | 選択回路、選択方法、耐タンパ対策回路の評価装置、耐タンパ対策回路の評価方法、信号生成回路、信号生成方法、耐タンパ性評価装置及び耐タンパ性評価方法 |
JP2007324733A (ja) * | 2006-05-30 | 2007-12-13 | Mitsubishi Electric Corp | データ変換装置 |
JP2010057066A (ja) * | 2008-08-29 | 2010-03-11 | Toshiba Corp | 暗号化で用いる鍵をスケジュールする装置、方法およびプログラム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103246494A (zh) * | 2013-05-27 | 2013-08-14 | 上海爱信诺航芯电子科技有限公司 | 一种抵抗能量分析和错误攻击的安全模幂计算方法 |
Also Published As
Publication number | Publication date |
---|---|
JP5379558B2 (ja) | 2013-12-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Rajendran et al. | Fault analysis-based logic encryption | |
EP2273718B1 (en) | Cryptographic key generation using a stored input value and a count value stored for later regeneration | |
Zussa et al. | Investigation of timing constraints violation as a fault injection means | |
EP2933944B1 (en) | Integrated security device and signal processing method used by integrated security device | |
JP4960044B2 (ja) | 暗号処理回路及びicカード | |
KR20170091599A (ko) | 메시지 부호화 및 복호화를 위한 블록 암호화 방법 및 이 방법을 구현하기 위한 암호화 장치 | |
Zhang et al. | Power side channels in security ICs: hardware countermeasures | |
WO2015145487A1 (ja) | クロック位相制御回路 | |
Gallais et al. | Hardware trojans for inducing or amplifying side-channel leakage of cryptographic software | |
Rezaei et al. | Sequential logic encryption against model checking attack | |
Roy et al. | Combining puf with rluts: a two-party pay-per-device ip licensing scheme on fpgas | |
Upadhyaya et al. | LEDA: Locking Enabled Differential Analysis of Cryptographic Circuits | |
Igarashi et al. | Concurrent faulty clock detection for crypto circuits against clock glitch based DFA | |
Pogue et al. | Incremental fault analysis: Relaxing the fault model of differential fault attacks | |
KR101997005B1 (ko) | 전력 분석을 통한 도청에 대항하여 전자 회로를 보호하는 방법 및 이를 이용한 전자 회로 | |
JP5379558B2 (ja) | 暗号演算回路、暗号演算方法、プログラム、記録媒体 | |
Silva et al. | On power analysis attacks against hardware stream ciphers | |
US7920699B2 (en) | Encryption operating apparatus | |
JP2014038294A (ja) | 故障攻撃検出回路および暗号処理装置 | |
Arribas et al. | Glitch-resistant masking schemes as countermeasure against fault sensitivity Analysis | |
Chhabra et al. | Design and analysis of logic encryption based 128-bit aes algorithm: A case study | |
US8320556B1 (en) | Method to allow cryptographic processing of messages without sanitizing the cryptographic processor between messages | |
Singh et al. | Design of High Performance MIPS Cryptography Processor | |
Durvaux et al. | A survey of recent results in fpga security and intellectual property protection | |
Masoumi et al. | A simulation-based correlation power analysis attack to FPGA implementation of KASUMI block cipher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20110720 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110922 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130329 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130402 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130522 |
|
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: 20130917 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130927 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5379558 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |