JP2010011353A - 演算処理装置 - Google Patents
演算処理装置 Download PDFInfo
- Publication number
- JP2010011353A JP2010011353A JP2008171214A JP2008171214A JP2010011353A JP 2010011353 A JP2010011353 A JP 2010011353A JP 2008171214 A JP2008171214 A JP 2008171214A JP 2008171214 A JP2008171214 A JP 2008171214A JP 2010011353 A JP2010011353 A JP 2010011353A
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic
- circuit
- instruction
- unit
- redundant
- 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
-
- 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/75—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 by inhibiting the analysis of circuitry or operation
- G06F21/755—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 by inhibiting the analysis of circuitry or operation with measures against power attack
-
- 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)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
【解決手段】演算処理装置は、暗号化処理を実施する演算器回路群と、演算器回路群と同一の構成である冗長演算器回路群を有する。そして、演算処理装置は、暗号化処理を実施する場合に、演算器回路群では通常通り、暗号化処理をしつつ、冗長演算器回路群ではランダムデータ生成部などによりランダムに生成されたデータなどを用いて暗号化マスクプログラム処理を実施する。また、演算処理装置は、暗号化処理を実施しない場合に、冗長演算器回路群で通常の演算処理を実施する。
【選択図】 図1
Description
最初に、実施例1に係る演算処理装置の概要を説明する。実施例1に係る演算処理装置は、暗号化処理を実施する演算器回路群と、当該演算器回路群と同様の構成を有する冗長演算器回路群と、ランダムに生成したデータを冗長演算器回路群の各回路に投入するランダムデータ生成回路とを有するマイクロプロセッサであり、これらによって、暗号の解読を強固に防止することが可能である。なお、演算機械路群としては、整数・浮動小数点演算回路、論理演算回路、シフトレジスタ、Bit Population count演算回路などの暗号処理で多用される複数の回路が含まれる。
次に、図1〜図6を用いて、実施例1に係る演算処理装置の構成を説明する。図1は、実施例1に係る演算処理装置の構成を示すブロック図である。
次に、図7を用いて、演算処理装置による処理を説明する。図7は、実施例1に係る演算処理装置における処理の流れを示すフローチャートである。
このように、実施例1によれば、演算処理装置10は、暗号化処理を実施する演算器回路群12aと、暗号化処理を実施する場合に、ランダムに生成されたデータを用いて暗号化処理を実施し、暗号化処理を実施しない場合に、他の演算処理を実施する冗長演算器回路群12bとを有する。そうすることにより、演算処理装置10は、電力の消費時・非消費時の電力差に対して冗長な消費電力を発生させ、演算器回路群で実施される実際の暗号化処理による消費電力変動をマスクし、消費電力の時間的および空間的な局所化を暗号解読者に察知されないようにする。その結果、演算処理装置10は、暗号の解読を強固に防止することが可能である。
例えば、実施例1では、冗長演算器回路群12と演算器回路群12aとが同一の構成である場合について説明したが、本願が開示する演算処理装置はこれに限定されるものではなく、暗号化処理を疑似的に実行できる最低限の構成を有する冗長演算器回路群12を用いることもできる。
また、実施例1では、外部バス制御回路に接続される主記憶に、冗長演算器回路群12b専用の領域を備えさせた場合を説明したが、本願が開示する演算処理装置はこれに限定されるものではなく、冗長演算器回路群12b専用のメモリを新たに外部バス制御回路に接続するようにしてもよい。
また、本願が開示する演算処理装置は、実施例1で説明した冗長な回路を全て備えている必要はない。例えば、冗長演算器回路群12bとランダムデータ生成回路13とだけを有していてもよく、冗長演算器回路群12bとランダムデータ生成回路13と冗長命令発行回路とだけを有していてもよい。
前記暗号化処理を実施する第一の演算部と、
前記第一の演算部が前記暗号化処理を実施する場合に、ランダムに生成された命令および/またはデータを用いてマスクプログラム処理を実施する一方、前記第一の演算部が前記暗号化処理を実施しない場合に、通常の演算処理を実施する第二の演算部と、
を備えたことを特徴とする演算処理装置。
前記第二の演算部は、前記マスクプログラム処理を実施する場合に、前記ランダム命令生成部により投入された命令を用いて前記マスクプログラム処理を実施することを特徴とする付記1〜4のいずれか一つに記載の演算処理装置。
前記ランダム命令生成部は、前記消費電力計測部により計測された消費電力が所定の閾値より大きい場合には、前記第二の演算部に対して投入する命令を抑止することを特徴とする付記1〜6のいずれか一つに記載の演算処理装置。
前記暗号化処理を実施する第一の演算ステップと、
前記暗号化処理を実施する場合に、ランダムに生成されたデータを用いて前記暗号化による電力消費をマスクするマスクプログラム処理を実施する一方、前記暗号化処理を実施しない場合には通常の演算処理を実施する第二の演算ステップと、
を含んだことを特徴とする演算処理方法。
11 暗号処理識別回路
12 演算器回路
12a 演算器回路群
12b 冗長演算器回路群
13 ランダムデータ生成回路
14 命令発行回路
14a 冗長命令発行制御回路
14b 冗長命令発行頻度制御回路
15 プロセサ状態管理回路
16 クロック位相制御回路
17 L1キャッシュ
17a 冗長キャッシュ制御回路
18 L2キャッシュ
19 Load/Store回路
19a 冗長Load/Store回路
20 メモリ管理回路
21 外部バス制御回路
21a 冗長バス制御回路
22 電力チェック回路
Claims (5)
- 暗号化処理を実行する演算処理装置であって、
前記暗号化処理を実施する第一の演算部と、
前記第一の演算部が前記暗号化処理を実施する場合に、ランダムに生成された命令および/またはデータを用いてマスクプログラム処理を実施する一方、前記第一の演算部が前記暗号化処理を実施しない場合に、通常の演算処理を実施する第二の演算部と、
を備えたことを特徴とする演算処理装置。 - 前記第二の演算部は、前記第一の演算部と同一の構成を有する1つまたは複数の演算部であることを特徴とする請求項1に記載の演算処理装置。
- 前記第二の演算部によりマスクプログラム処理が実施された場合には、前記第二の演算部により実施されたマスクプログラムの処理結果のみを格納する一方、前記第二の演算部により通常の演算処理が実施された場合には、前記第二の演算部により実施された演算処理結果を格納するメモリ部をさらに備えたことを特徴とする請求項1または2に記載の演算処理装置。
- 前記第一の演算部が前記暗号化処理を実施する場合に、前記第二の演算部に対して、ランダムに生成した命令を投入するランダム命令生成部をさらに備え、
前記第二の演算部は、前記マスクプログラム処理を実施する場合に、前記ランダム命令生成部により投入された命令を用いて前記マスクプログラム処理を実施することを特徴とする請求項1〜3のいずれか一つに記載の演算処理装置。 - 当該演算処理装置全体で消費される消費電力を計測する消費電力計測部をさらに備え、
前記ランダム命令生成部は、前記消費電力計測部により計測された消費電力が所定の閾値より大きい場合には、前記第二の演算部に対して投入する命令を抑止することを特徴とする請求項1〜4のいずれか一つに記載の演算処理装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008171214A JP5146156B2 (ja) | 2008-06-30 | 2008-06-30 | 演算処理装置 |
US12/382,866 US8407452B2 (en) | 2008-06-30 | 2009-03-25 | Processor for performing encryption mask processing using randomly generated instructions and data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008171214A JP5146156B2 (ja) | 2008-06-30 | 2008-06-30 | 演算処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010011353A true JP2010011353A (ja) | 2010-01-14 |
JP5146156B2 JP5146156B2 (ja) | 2013-02-20 |
Family
ID=41448983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008171214A Expired - Fee Related JP5146156B2 (ja) | 2008-06-30 | 2008-06-30 | 演算処理装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8407452B2 (ja) |
JP (1) | JP5146156B2 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4674440B2 (ja) * | 2004-03-04 | 2011-04-20 | ソニー株式会社 | データ処理回路 |
DE102008027391B8 (de) * | 2008-06-09 | 2011-07-28 | Atmel Automotive GmbH, 74072 | Schaltung, Verfahren zum Empfangen eines Signals und Verwendung eines Zufallsgenerators |
US8769355B2 (en) | 2011-06-27 | 2014-07-01 | Freescale Semiconductor, Inc. | Using built-in self test for preventing side channel security attacks on multi-processor systems |
US8958550B2 (en) | 2011-09-13 | 2015-02-17 | Combined Conditional Access Development & Support. LLC (CCAD) | Encryption operation with real data rounds, dummy data rounds, and delay periods |
US9448942B2 (en) * | 2012-08-20 | 2016-09-20 | Freescale Semiconductor, Inc. | Random access of a cache portion using an access module |
US9092622B2 (en) * | 2012-08-20 | 2015-07-28 | Freescale Semiconductor, Inc. | Random timeslot controller for enabling built-in self test module |
US9575727B2 (en) * | 2014-09-26 | 2017-02-21 | Intel Corporation | Methods for generating random data using phase change materials and related devices and systems |
EP3214566B1 (en) * | 2016-03-01 | 2018-09-12 | Siemens Aktiengesellschaft | Preventing side channel attacks on a cpu |
WO2018174819A1 (en) * | 2017-03-20 | 2018-09-27 | Nanyang Technological University | Hardware security to countermeasure side-channel attacks |
US10718827B2 (en) * | 2017-08-25 | 2020-07-21 | Infineon Technologies Ag | Frequency increasing sensor protocol in magnetic sensing |
EP3502912A1 (en) * | 2017-12-19 | 2019-06-26 | Gemalto Sa | Method of activating a feature of a chip |
US11216556B2 (en) * | 2018-12-17 | 2022-01-04 | Intel Corporation | Side channel attack prevention by maintaining architectural state consistency |
US11599679B2 (en) * | 2020-06-23 | 2023-03-07 | Arm Limited | Electromagnetic and power noise injection for hardware operation concealment |
WO2024079726A1 (en) * | 2022-10-14 | 2024-04-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Adaptive side-channel countermeasure for processing devices |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001230771A (ja) * | 2000-01-08 | 2001-08-24 | Koninkl Philips Electronics Nv | データ処理装置およびその操作方法 |
JP2002141897A (ja) * | 2000-10-31 | 2002-05-17 | Advanced Mobile Telecommunications Security Technology Research Lab Co Ltd | 耐タンパー機能を有する暗号回路 |
JP2002311826A (ja) * | 2001-04-16 | 2002-10-25 | Hitachi Ltd | 暗号化・復号化装置、暗号化・復号化方法、データの暗号化方法及びicカード |
JP2003188871A (ja) * | 2001-12-20 | 2003-07-04 | Fujitsu Ltd | 暗号処理装置、暗号処理ユニット制御装置および暗号処理ユニット |
JP2005045752A (ja) * | 2003-07-07 | 2005-02-17 | Sony Corp | 暗号処理装置、および暗号処理方法 |
JP2007122657A (ja) * | 2005-10-31 | 2007-05-17 | Toshiba Corp | 消費電流制御システム |
JP2007195132A (ja) * | 2005-12-20 | 2007-08-02 | Sony Corp | 暗号処理装置 |
JP2008141381A (ja) * | 2006-11-30 | 2008-06-19 | Toshiba Corp | 情報処理装置 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6804782B1 (en) * | 1999-06-11 | 2004-10-12 | General Instrument Corporation | Countermeasure to power attack and timing attack on cryptographic operations |
JP4083925B2 (ja) * | 1999-06-24 | 2008-04-30 | 株式会社日立製作所 | 情報処理装置、カード部材および情報処理システム |
FR2796477B1 (fr) * | 1999-07-15 | 2001-10-12 | Gemplus Card Int | Procede d'amelioration d'un generateur aleatoire en vue de le rendre resistant contre les attaques par mesure de courant |
US6625737B1 (en) * | 2000-09-20 | 2003-09-23 | Mips Technologies Inc. | System for prediction and control of power consumption in digital system |
DE10061997A1 (de) * | 2000-12-13 | 2002-07-18 | Infineon Technologies Ag | Kryptographieprozessor |
DE10101956A1 (de) * | 2001-01-17 | 2002-07-25 | Infineon Technologies Ag | Verfahren zur Erhöhung der Sicherheit einer CPU |
CA2486713A1 (en) * | 2002-05-23 | 2003-12-04 | Atmel Corporation | Advanced encryption standard (aes) hardware cryptographic engine |
JP2004056363A (ja) | 2002-07-18 | 2004-02-19 | Mitsubishi Electric Corp | 暗号処理装置及び電力平準化制御方法 |
US7313677B2 (en) * | 2002-12-12 | 2007-12-25 | Arm Limited | Processing activity masking in a data processing system |
EP1496641A3 (en) * | 2003-07-07 | 2005-03-02 | Sony Corporation | Cryptographic processing apparatus, cryptographic processing method and computer program |
DE10347301B4 (de) * | 2003-10-08 | 2007-12-13 | Infineon Technologies Ag | Schaltung mit einem Bus mit mehreren Empfängern |
US7996671B2 (en) * | 2003-11-17 | 2011-08-09 | Bluerisc Inc. | Security of program executables and microprocessors based on compiler-architecture interaction |
JP4435593B2 (ja) | 2004-02-04 | 2010-03-17 | 株式会社ルネサステクノロジ | 耐タンパー情報処理装置 |
CN100356342C (zh) * | 2003-11-18 | 2007-12-19 | 株式会社瑞萨科技 | 信息处理装置 |
JP3933647B2 (ja) * | 2004-05-10 | 2007-06-20 | シャープ株式会社 | 消費電力解析防止機能つき半導体装置 |
US7949883B2 (en) * | 2004-06-08 | 2011-05-24 | Hrl Laboratories, Llc | Cryptographic CPU architecture with random instruction masking to thwart differential power analysis |
FR2875318A1 (fr) * | 2004-09-15 | 2006-03-17 | St Microelectronics Sa | Protection d'un algorithme des |
US7774616B2 (en) * | 2006-06-09 | 2010-08-10 | International Business Machines Corporation | Masking a boot sequence by providing a dummy processor |
FR2903830B1 (fr) | 2006-07-11 | 2008-08-22 | Alcatel Sa | Procede et dispositif de surveillance des chemins optiques de connexion pour un reseau optique transparent |
US8006045B2 (en) * | 2009-02-27 | 2011-08-23 | Atmel Rousset S.A.S. | Dummy write operations |
DE102010028375A1 (de) * | 2010-04-29 | 2011-11-03 | Robert Bosch Gmbh | Schutz vor kryptoanalytischen Seitenkanalattacken |
-
2008
- 2008-06-30 JP JP2008171214A patent/JP5146156B2/ja not_active Expired - Fee Related
-
2009
- 2009-03-25 US US12/382,866 patent/US8407452B2/en not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001230771A (ja) * | 2000-01-08 | 2001-08-24 | Koninkl Philips Electronics Nv | データ処理装置およびその操作方法 |
JP2002141897A (ja) * | 2000-10-31 | 2002-05-17 | Advanced Mobile Telecommunications Security Technology Research Lab Co Ltd | 耐タンパー機能を有する暗号回路 |
JP2002311826A (ja) * | 2001-04-16 | 2002-10-25 | Hitachi Ltd | 暗号化・復号化装置、暗号化・復号化方法、データの暗号化方法及びicカード |
JP2003188871A (ja) * | 2001-12-20 | 2003-07-04 | Fujitsu Ltd | 暗号処理装置、暗号処理ユニット制御装置および暗号処理ユニット |
JP2005045752A (ja) * | 2003-07-07 | 2005-02-17 | Sony Corp | 暗号処理装置、および暗号処理方法 |
JP2007122657A (ja) * | 2005-10-31 | 2007-05-17 | Toshiba Corp | 消費電流制御システム |
JP2007195132A (ja) * | 2005-12-20 | 2007-08-02 | Sony Corp | 暗号処理装置 |
JP2008141381A (ja) * | 2006-11-30 | 2008-06-19 | Toshiba Corp | 情報処理装置 |
Also Published As
Publication number | Publication date |
---|---|
JP5146156B2 (ja) | 2013-02-20 |
US8407452B2 (en) | 2013-03-26 |
US20090327664A1 (en) | 2009-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5146156B2 (ja) | 演算処理装置 | |
Murdock et al. | Plundervolt: Software-based fault injection attacks against Intel SGX | |
Qiu et al. | Voltjockey: Breaching trustzone by software-controlled voltage manipulation over multi-core frequencies | |
Wichelmann et al. | Microwalk: A framework for finding side channels in binaries | |
Yuce et al. | Fault attacks on secure embedded software: Threats, design, and evaluation | |
Götzfried et al. | Cache attacks on Intel SGX | |
Suh et al. | Aegis: A single-chip secure processor | |
De Mulder et al. | Protecting RISC-V against side-channel attacks | |
Suh et al. | AEGIS: A single-chip secure processor | |
Saputra et al. | Masking the energy behavior of DES encryption [smart cards] | |
JP5643894B2 (ja) | サイドチャネル攻撃および反復起動攻撃に耐える動的可変タイミング演算パスのシステムおよび方法 | |
EP2273718B1 (en) | Cryptographic key generation using a stored input value and a count value stored for later regeneration | |
Bayrak et al. | Automatic application of power analysis countermeasures | |
US7801298B2 (en) | Apparatus and method for detecting a potential attack on a cryptographic calculation | |
US20120331309A1 (en) | Using built-in self test for preventing side channel security attacks on multi-processor systems | |
US20160188874A1 (en) | System and method for secure code entry point control | |
US20060080537A1 (en) | Illegal analysis / falsification preventing system | |
US9735953B2 (en) | Side channel analysis resistant architecture | |
CN110825672B (zh) | 用于联机加密处理的高性能自主硬件引擎 | |
Tunstall | Smart card security | |
US9251098B2 (en) | Apparatus and method for accessing an encrypted memory portion | |
CN111046381A (zh) | 一种嵌入式cpu抗差分功耗分析装置及方法 | |
Kiaei et al. | Domain-oriented masked instruction set architecture for RISC-V | |
TWI712915B (zh) | 執行一密碼編譯操作之方法,以及電腦可讀非暫時性儲存媒體 | |
CN106548098B (zh) | 用于检测故障攻击的方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110315 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120802 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120821 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121002 |
|
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: 20121030 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121112 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5146156 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151207 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |