WO2006006198A1 - 電力算出装置、電力算出方法、耐タンパ性評価装置及び耐タンパ性評価方法 - Google Patents

電力算出装置、電力算出方法、耐タンパ性評価装置及び耐タンパ性評価方法 Download PDF

Info

Publication number
WO2006006198A1
WO2006006198A1 PCT/JP2004/009632 JP2004009632W WO2006006198A1 WO 2006006198 A1 WO2006006198 A1 WO 2006006198A1 JP 2004009632 W JP2004009632 W JP 2004009632W WO 2006006198 A1 WO2006006198 A1 WO 2006006198A1
Authority
WO
WIPO (PCT)
Prior art keywords
signal
logic circuit
power consumption
power
tamper resistance
Prior art date
Application number
PCT/JP2004/009632
Other languages
English (en)
French (fr)
Inventor
Minoru Saeki
Daisuke Suzuki
Original Assignee
Mitsubishi Denki Kabushiki Kaisha
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Denki Kabushiki Kaisha filed Critical Mitsubishi Denki Kabushiki Kaisha
Priority to EP04747101A priority Critical patent/EP1768040A4/en
Priority to US11/579,953 priority patent/US7460965B2/en
Priority to JP2006527640A priority patent/JP4651620B2/ja
Priority to KR1020067026889A priority patent/KR100876717B1/ko
Priority to PCT/JP2004/009632 priority patent/WO2006006198A1/ja
Priority to CNA2004800432527A priority patent/CN1969277A/zh
Publication of WO2006006198A1 publication Critical patent/WO2006006198A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation

Definitions

  • Power calculation device Power calculation method, power calculation method, tamper resistance evaluation device, and tamper resistance evaluation method
  • the present invention relates to a power calculation device and a power calculation method for calculating power consumed in a logic circuit by logic simulation of the circuit.
  • the present invention also relates to a tamper resistance evaluation apparatus and a tamper resistance evaluation method for detecting leakage of information from a logic circuit based on the calculated power consumption of the logic circuit and evaluating the tamper resistance of the logic circuit.
  • a semiconductor device that implements a security function such as encryption performs tamper resistance evaluation that evaluates whether or not secret information such as a signature key leaks from the power consumption of the circuit.
  • this tamper resistance evaluation method includes a method for evaluating whether secret information is leaked by measuring power consumption using an actual machine, and a design step of a semiconductor device. There is a method of calculating power consumption by simulating a logic circuit and evaluating whether or not secret information is leaked.
  • the simulation method calculates the power consumption based on a specific bit or hamming weight of an intermediate variable that appears (and is expected) in the cryptographic process by software simulation.
  • a method of detecting information leakage and a method of calculating power consumption by performing detailed simulation of a circuit using a circuit simulator, thereby detecting information leakage (both, see Non-Patent Document 1, for example).
  • the semiconductor device that is mainly used is CMOS. Most of its power consumption is switching power P for charging and discharging the load. Therefore, the power consumption of the circuit can be expressed as the sum of the products of the number of changes per unit time f, the load capacity C, and the square of the voltage V, as shown in Equation (1).
  • Non-patent document 1 "TECHNICAL REPORT OF IEICE ', IT2003_60, ISEC20 03-100, WBS2003-178 )
  • the tamper resistance evaluation method using the conventional simulation has the following problems.
  • the simulator has a drawback that it cannot approximate the power consumption of the actual circuit with high accuracy, and it is unclear whether the evaluation is performed correctly. There was a problem that there was. In addition, there is a problem that it is hardly useful for elucidating the mechanism of how information leaks from which part of the circuit.
  • the present invention has been made to solve these problems, and includes an actual circuit in an upstream process (hereinafter referred to as an upstream process) including logic design in circuit design.
  • the purpose is to evaluate the tamper resistance of the material with high accuracy and high speed.
  • the power calculation device calculates power consumption based on an addition value of the number of times the signal of the logic circuit has changed.
  • a tamper resistance evaluation apparatus that detects leakage of information from a logic circuit and evaluates tamper resistance of the logic circuit counts the number of times the signal of the logic circuit has changed and stores it in the signal change count storage unit.
  • a signal change count counting unit to be stored a power consumption calculation unit for calculating the power consumption of the logic circuit based on the number of changes in the signal of the logic circuit stored in the signal change count storage unit by the signal change count counting unit, and a power consumption The power consumption of the logic circuit calculated by the calculation unit
  • a leakage information analysis unit that analyzes information leaked from the logic circuit based on the invention
  • the power calculation device can calculate the power consumption of the logic circuit based on the added value of the number of times the signal of the logic circuit output from the logic simulator of the circuit has changed.
  • the signal change number counting unit counts the number of times the signal of the logic circuit has changed and stores it in the signal change number storage unit
  • the power consumption calculation unit calculates the signal change number.
  • the power consumption of the logic circuit is calculated based on the number of changes in the logic circuit signal stored in the number storage unit, and the leakage information analysis unit analyzes the information leaked from the logic circuit based on the calculated power consumption of the logic circuit. By doing so, it is possible to detect leakage of information from the logic circuit and evaluate the tamper resistance of the logic circuit.
  • the power calculation device in the tamper resistance evaluation device calculates the power consumption of the logic circuit based on the number of changes in the signal of the logic circuit output from the logic simulator of the tamper resistance evaluation device. Embodiments will be described.
  • a power calculation device in the tamper resistance evaluation device calculates power consumption based on an added value of the number of times the signal of the logic circuit has changed.
  • FIG. 1 is a diagram showing a configuration of a tamper resistance evaluation apparatus according to Embodiment 1. As shown in Fig. 1, the power calculation device forms part of the tamper resistance evaluation device.
  • the power calculation device counts the number of times the signal of the logic circuit has changed and stores it in the signal change count storage unit and the signal change count counter 10 in the signal change count storage unit.
  • a power consumption calculation unit 20 that calculates the power consumption of the logical circuit based on the added value of the number of times the stored logic circuit signal has changed.
  • the tamper resistance evaluation device includes a logic simulator 30 that simulates the operation of the logic circuit, and signal change information that stores changes in the signal output by the logic simulator 30.
  • Stores files used by storage unit 31 and logic simulator 30 A simulation control information generator 50 for generating simulation control information for controlling the logic simulator 30; a simulation control information storage unit 51 for storing simulation control information generated by the simulation control information generator 50; It has.
  • the tamper resistance evaluation apparatus includes a power consumption storage unit 21 that stores the power consumption calculated by the power consumption calculation unit 20, and reads out the power consumption from the power consumption storage unit 21 and arranges them in time series.
  • Time-series power information generation unit 60 that generates time-series power information
  • time-series power information storage unit 61 that stores time-series power information generated by time-series power information generation unit 60
  • time-series power information storage unit A result display unit that reads out and displays time-series power information from 61 is provided.
  • the signal change count counting unit 10 counts the number of times the signal of the logic circuit has changed and stores it in the signal change count storage unit.
  • the power consumption calculation unit 20 calculates the power consumption of the logical circuit based on the added value of the number of times the signal of the logic circuit has changed which is stored in the signal change count storage unit by the signal change count counting unit 10.
  • Embodiment 1 a method of calculating power consumption used in Embodiment 1 will be described.
  • the logic simulator 30 is a normal logic simulator used in logic design of a digital circuit, and generates all signals indicating what kind of signal change has occurred in the target logic circuit.
  • the file database 40 stores a logic circuit, a net list, a library, an input data file, and a test bench used by the logic simulator 30. These are referenced throughout the entire logic simulation.
  • the simulation control information generation unit 50 performs a plurality of simulations with different times rather than performing the logic simulator 30 power simulation all together at once (each is referred to as a “unit simulation”). When it is divided and executed, control information for each unit simulation is generated. The generated file is referenced when the test bench controls the start and end of the simulation.
  • the time series power information generation unit 60 arranges the power consumption for a predetermined period of the logic circuit calculated by the power consumption calculation unit 20 according to the time series, and generates one time series power information. Further, the time series power information generation unit 60 converts the time series power information into a format suitable for display. The result display unit 70 displays the time series power information generated by the time series power information generation unit 60.
  • the test bench is a file that describes the entire operation of the logic simulator 30. For example, file information input / output by the logic simulator 30 and time information for specifying the start and end timing of the logic simulation are described.
  • FIG. 2 is a part of an example of a test bench, and is a description for extracting signal change information for each unit simulation.
  • signal change information for each clock cycle is output to a different file.
  • FIG. 3 An example of a referenced file is shown in Figs. 3 and 4.
  • Figure 3 is a finale that holds the leading number of the input data used in the unit simulation.
  • the leading number of the input data is “159200”.
  • Figure 4 shows a file that specifies the file name for entering the signal change information generated by the unit simulation.
  • the signal change information is entered in "saif / sim_net_159200.
  • Saif If the input data is "159201”, “saif / sim_net_l 59201. Saif "is filled in.
  • FIG. 5 is a flowchart showing a power calculation process in the tamper resistance evaluation apparatus including the power calculation apparatus.
  • the power calculation device in the tamper resistance evaluation device counts the number of times the signal of the logic circuit has changed and stores it in the signal change count storage unit, and the signal change count count step is a signal.
  • a power consumption calculation step of calculating the power consumption of the logic circuit based on the added value of the number of times the signal of the logic circuit stored in the change count storage unit is changed is executed.
  • the logic circuit for calculating power consumption, its netlist, the library used in the logic simulation, the first input data to be input to the logic circuit, and the test bench used in the logic simulation are stored in the file database 40. ing. Multiple input data are prepared and read and used each time the unit simulation is repeated.
  • simulation control information generation unit 50 generates simulation control information in advance, and the logic simulator 30 refers to this from the test bench that controls the start / end of the logic simulation.
  • the logic simulator 30 reads one input data from the input data file stored in the file database 40 (step S100). Further, the logic simulator 30 refers to the simulation control information of the simulation control information generation unit 50 according to the description of the test bench (step S101).
  • the logic simulator 30 simulates the logical operation of the target logic circuit based on the read input data, generates a signal for each clock cycle of the logic circuit, and generates signal change information. Is stored in the signal change information storage unit 31 (step S102).
  • the signal change count counter 10 reads the signal change count from the signal change information storage 31 and counts the number of times the signal has changed in the logic circuit (hereinafter abbreviated as "signal change count”). Store in the signal change count storage unit 11 (step S103). This is the signal change frequency counting step described above.
  • the number of signal changes is the number of times the signal has changed in each clock cycle during the period in which the evaluation target circuit is operating in one unit simulation.
  • the power consumption calculation unit 20 reads the number of signal changes in the signal change number storage unit 11, calculates the power consumption using equation (2), and stores it in the power consumption storage unit 21 (step S104). This is the power consumption calculation step described above.
  • Step S103 and Step S104 correspond to the process of the power calculation device in the force tamper resistance evaluation device.
  • FIG. 6 shows an example of a program for calculating the power consumption by calculating the total number of signal changes in the power consumption calculation unit 20.
  • the power consumption calculator 20 extracts the signal change count TC of all signals from the file fpr in which the signal change count counted by the signal change count counter 10 is entered, and calculates the total sum of the extracted TCs. Looking for. sum is output to the output file specified by the test bench shown in Figure 4.
  • Table 1 shows an example of the number of signal changes in the file fpr (an example of the file format of the signal change number storage unit 11).
  • Table 2 shows an example of the total sum of extracted TCs in the file (example of the file format of the power consumption storage unit 21).
  • step S105 the logic simulator 30 determines whether or not the logic simulation has been executed for all the input data described in the input data file in the file database 40 (step S105).
  • step S105 the process proceeds to step S106. If it is not completed (if step S105 is No), return to step S100.
  • the time-series power information generation unit 60 reads the power consumption of the logic circuit generated by the number of unit simulations repeated from the power consumption storage unit 21, and performs the unit simulation.
  • one or a plurality of time-series power information is generated by arranging according to the time information referenced from the simulation control information, and stored in the time-series power information storage unit 61 (step S106).
  • the result display unit 70 reads the time series power information from the time series power information storage unit 61 and displays it in the same environment as the analysis of the actual machine by using, for example, a display format on an oscilloscope (step S 107). ).
  • the power consumption consumed by a target logic circuit within a certain time can be calculated by the logic simulation.
  • the power calculation apparatus in the tamper resistance evaluation apparatus can calculate the power consumption based on the added value of the number of times the signal of the logic circuit output by the logic simulation has changed. . This eliminates the need to calculate the load capacity, so that it is possible to calculate the power consumption of the logic circuit in a shorter processing time than before.
  • the present embodiment it is possible to configure a power calculation device from the signal change count counting unit and the power consumption calculation unit. As a result, the power calculation device counts the number of times the signal change count section has changed the signal of the logic circuit, and the power consumption calculation section calculates the power consumption of the logic circuit based on the added value of the number of signal changes. It becomes possible to do.
  • the power calculation device in the tamper resistance evaluation device counts the number of times the signal of the logic circuit has changed and stores it in the signal change number storage unit, and the signal change count unit 10
  • the frequency counting unit 10 includes a power consumption calculation unit 20 that calculates the power consumption of the logic circuit based only on the number of times the signal of the logic circuit stored in the signal change count storage unit is changed.
  • the power calculation device counts the number of times the signal of the logic circuit has changed and stores it in the signal change count storage unit, and stores the signal change count count step in the signal change count storage unit. And a power consumption calculating step of calculating the power consumption of the logic circuit based only on the number of times the signal of the logic circuit has changed.
  • the power calculation device can calculate power consumption based only on the number of times the signal of the logic circuit output by the logic simulation has changed. This eliminates the need to calculate the load capacity, so that it is possible to calculate the power consumption of the logic circuit in a shorter processing time than before.
  • a power calculation device can be configured by the signal change count counting unit and the power consumption calculation unit. As a result, the power calculation device counts the number of times that the signal of the logic circuit has changed, and the power consumption calculation unit calculates the power consumption of the logic circuit based only on the number of changes of the signal. Is possible.
  • the tamper resistance evaluation device detects leakage of information from the logic circuit based on the power consumption of the logic circuit calculated by the power calculation device based on the number of changes in the signal of the logic circuit output from the logic simulator.
  • An embodiment for detecting and evaluating tamper resistance of a logic circuit will be described.
  • an embodiment will be described in which the leakage information analysis using the power consumption of the circuit executed therein is a power difference analysis, a simple power analysis, and a timing analysis.
  • FIG. 7 is a diagram showing a configuration of the tamper resistance evaluation apparatus according to the second embodiment.
  • the tamper resistance evaluation device that detects the leakage of information from the logic circuit and evaluates the tamper resistance of the logic circuit counts the number of times the signal of the logic circuit has changed and stores the number of signal changes in the signal change count storage unit 11.
  • Counting unit 10 and signal change count counter are signal change count storage units
  • the power consumption calculator 20 calculates the power consumption of the logic circuit based on the number of times the logic circuit signal stored in 11 is changed, and leaks from the logic circuit based on the power consumption of the logic circuit calculated by the power consumption calculator.
  • a leakage information analysis unit 80 for analyzing information.
  • the above-described power calculation device can be used for the signal change count counting unit 10 and the power consumption calculation unit 20.
  • the tamper resistance evaluation apparatus includes a logic simulator 30 that simulates the operation of the logic circuit, a signal change information storage unit 31 that stores a change in the signal output from the logic simulator 30, and a logic simulator 30.
  • File database 40 for storing files used by simulation, simulation control information generation unit 50 for generating simulation control information for controlling the logic simulator 30, and simulation control generated by the simulation control information generation unit 50 And a simulation control information storage unit 51 for storing information.
  • the tamper resistance evaluation apparatus includes a power consumption storage unit 21 that stores the power consumption calculated by the power consumption calculation unit 20, and reads out the power consumption from the power consumption storage unit 21 and arranges them in time series.
  • a power consumption storage unit 21 that stores the power consumption calculated by the power consumption calculation unit 20, and reads out the power consumption from the power consumption storage unit 21 and arranges them in time series.
  • An analysis result storage unit 81 for storing the analysis results and a result display unit for reading and displaying the analysis results from the analysis result storage unit 81 are provided.
  • the leakage information analysis unit 80 of the tamper resistance evaluation apparatus reads time-series power information from the time-series power information storage unit 61, performs analysis, and stores the analysis result in the analysis result storage unit 81.
  • each part of the tamper resistance evaluation apparatus in the second embodiment is the same as the function of each part of the power calculation apparatus in the first embodiment except for the leakage information analysis unit 80.
  • the leakage information analysis unit 80 performs power analysis using the power consumption of the logic circuit calculated by the power consumption calculation unit 20, analyzes information leaked from the logic circuit, and outputs the analysis result.
  • the power consumption calculation unit of the tamper resistance evaluation apparatus calculates power consumption based on the addition value of the number of times the signal of the logic circuit has changed.
  • the power consumption calculation unit of the tamper resistance evaluation apparatus may detect a change in the signal of the logic circuit. Power consumption is calculated based only on the number.
  • This power and power consumption calculation method is the same as the method used in the first embodiment.
  • the test bench is the same as in the first embodiment.
  • the power difference analysis is used to analyze the information leaked by the leakage information analysis unit 80 of the tamper resistance evaluation device.
  • simple power analysis is used to analyze leaked information using the circuit power consumption by the leakage information analysis unit 80 of the tamper resistance evaluation apparatus.
  • timing analysis is used to analyze leaked information using the circuit power consumption by the leakage information analysis unit 80 of the tamper resistance evaluation apparatus.
  • the power difference analysis is one method of power analysis, in which random value data is input to the No. 9 device, encryption processing is performed, and power consumption of the circuit being processed is measured or calculated.
  • the encryption key is estimated by statistically processing the obtained data.
  • a specific method of power difference analysis is as follows.
  • PT is one bit of a virtual intermediate variable whose value is uniquely determined only by the input data and K, and all bits of K are involved.
  • S box of DES Data Encryption Standard
  • Simple power analysis is another method of power analysis, in which information associated with an encryption key is estimated from the power waveform of a circuit executing encryption.
  • Timing analysis is an analysis method different from power analysis. In this method, when the encryption processing time varies depending on the encryption key, the encryption key is estimated by statistically processing the time difference.
  • Embodiment 2 Next, the operation of the tamper resistance evaluation apparatus in Embodiment 2 will be described with reference to the process flowchart of the tamper resistance evaluation apparatus shown in FIG.
  • An information leakage evaluation method for evaluating leakage of information from a circuit in a tamper resistance evaluation apparatus counts the number of times a signal of a logic circuit has changed and stores it in a signal change number storage unit. And a power consumption calculating step for calculating the power consumption of the circuit based on the number of times the signal of the logical circuit stored in the signal change frequency storage unit is stored in the signal change frequency counting step, and a circuit calculated by the power consumption calculating step.
  • the leakage information analysis process is performed to analyze the information leaked from the circuit based on the power consumption.
  • Preparations for inputting a target logic circuit or the like to the file database 40 and generating simulation control information by the simulation control information generating unit 50 are the same as in the first embodiment.
  • step S200 for reading one input data from the input data file to step S206 in which the time series power information generation unit 60 generates time series power information is from step S100 in the first embodiment. This is the same as the processing up to step S106.
  • step S206 the time-series power information generated by the time-series power information generation unit 60 is stored in the time-series power information storage unit 61.
  • Leakage information analysis unit 80 performs power analysis using the time-series power information read from time-series power information storage unit 61, and stores the analysis result in analysis result storage unit 81 (step S).
  • the result display unit 70 reads the analysis result from the analysis result storage unit 81, and displays it in the same environment as the analysis of the actual machine, for example, by using a display format in an oscilloscope (step S).
  • the power consumption of the target logic circuit within a certain time is calculated by the logic simulation, and the power analysis is performed using the calculated power consumption, thereby leaking information from the logic circuit. Can be detected.
  • the tamper resistance evaluation apparatus counts the number of times the signal of the logic circuit has changed, and calculates the power consumption of the logic circuit based on the change in the counted signal. It is possible to analyze the information leaking logic circuit power based on power consumption. As a result, the tamper resistance evaluation apparatus can evaluate the tamper resistance of the target logic circuit.
  • the tamper resistance evaluation device can evaluate the tamper resistance of the circuit using the power difference analysis.
  • the tamper resistance evaluation apparatus can evaluate the tamper resistance of a circuit using simple power analysis.
  • the tamper resistance evaluation apparatus can evaluate the tamper resistance of a circuit using timing analysis.
  • the tamper resistance evaluation apparatus can calculate power consumption based on the added value of the number of times the signal of the logic circuit has changed. This eliminates the need for the tamper resistance evaluation device to calculate the load capacity, so that it is possible to calculate the power consumption of the logic circuit in a shorter processing time than before.
  • the tamper resistance evaluation apparatus determines the number of times the signal of the logic circuit has changed.
  • the power consumption can be calculated based only on the above.
  • the tamper resistance evaluation apparatus does not need to calculate the load capacity, so that it is possible to calculate the power consumption of the logic circuit in a shorter processing time than before.
  • tamper resistance is evaluated based on signal change information obtained by logic simulation, and therefore, more accurate evaluation than simulation by software is possible. It was. In addition, it has become possible to perform evaluation faster in the upstream process than when using a circuit simulator.
  • Embodiment 3 the influence of transient transition due to signal delay in the target logic circuit is eliminated, and the tamper resistance of the logic circuit in an ideal state independent of semiconductor devices and placement and routing is evaluated. A form is demonstrated.
  • the signal change number counting unit 10 considers that the number of signal changes at a predetermined time is an even number. If it is, the count is the number of times the signal has changed in the circuit, assuming that the signal has changed 0 times.
  • the signal change frequency counting unit 10 of the tamper resistance evaluation apparatus counts all signal changes generated in the logic circuit, and uses this as the signal change frequency.
  • This number of signal changes includes signal changes that occur in the logic circuit due to signal transients. In other words, the result of a signal change should be only whether the signal has changed after one clock cycle. In practice, however, signal changes occur even during transitional transitions over one clock cycle. As a result, the signal change count counted by the signal change count counting section 10 is the signal generated during the elapse of one clock cycle. The value includes the number of changes in the issue.
  • the logic simulation is performed only once considering the delay, and the delay is reduced.
  • the signal changes once It is counted that the signal has changed 0 times for signals that have changed even number of times. Of course, both may be performed together.
  • FIG. 9 shows an example of a program for calculating the power consumption when the number of signal changes is counted.
  • the power consumption calculation unit 20 extracts all signal change times TC from the file fpr in which the signal change times counted by the signal change number counting unit 10 are written, and calculates the total tc of the extracted TCs.
  • the number of signal changes is 0 when the number of signal changes is an even number, and 1 when the number of signal changes is an odd number.
  • the total is sum.
  • the file fpr in which the number of signal changes is entered is the same as that in Table 1 of the first embodiment, and the file in which the total sum is entered is the same as in Table 2.
  • the operation of the tamper resistance evaluation apparatus in the third embodiment is the same as the operation in the second embodiment. However, as described above, only the signal change count counting method in the signal change count counter 10 is different.
  • the evaluation of the tamper resistance of an ideal logic circuit that eliminates the effects of transient transitions and eliminates the effects of transient transitions and the effects of transient transitions are reflected by a single logic simulation. It becomes possible to evaluate tamper resistance in a logic circuit including a delay.
  • the configuration of the tamper resistance evaluation apparatus according to the fourth embodiment, the function of each part, and the calculation method of power consumption are the same as those of the second embodiment.
  • the tamper resistance evaluation apparatus sets a logic circuit in a desired region as a logic circuit in which the signal change frequency counting unit 10 counts the number of signal changes.
  • Embodiment 1 Although not specified in one embodiment 3, it is assumed that the calculation of power consumption is performed for the entire target logic circuit. However, in order to elucidate the mechanism of how secret information leaks from which part of the logic circuit, It is convenient if the power consumption of only a specific circuit portion in the logic circuit can be calculated.
  • the logic simulator 30 outputs signal change information of a larger circuit part including the designated circuit part. After that, the signal change frequency counting unit 10 changes the circuit part in the large circuit part, counts the number of times the signal has changed in each circuit part, and the power consumption calculation part 20 calculates the circuit part. Calculate power consumption.
  • Figure 10 shows an example of a program that counts the number of signal changes and calculates power consumption using the signal change count.
  • the circuit portion included in the specified large logic circuit area is read as instance, the logic simulation is performed on the read circuit portion, and the signal change count counted by the signal change count counting section 10 is entered.
  • the power consumption calculation unit 20 extracts the signal change count TC of all signals, and calculates the total sum of the extracted TCs.
  • Embodiment 4 Next, the operation of the tamper resistance evaluation apparatus in Embodiment 4 will be described using the flowchart of the processing of the tamper resistance evaluation apparatus shown in FIG.
  • preparations are made for input of a target logic circuit or the like to the file database 40 and generation of simulation control information by the simulation control information generation unit 50.
  • step S300 the tamper resistance evaluation apparatus inputs a specific circuit portion in the logic circuit to be evaluated for tamper resistance (step S300).
  • step S301 force Step S309 is the same force as the operation from step S200 to step S208 of the tamper resistance evaluation apparatus in the third embodiment.
  • step S303 the logic simulator in the logic circuit input in step S300 Logic simulation of a wider range of circuit parts than a specific circuit part Try to do Yong.
  • the tamper resistance evaluation apparatus can calculate the power consumption by changing the circuit portion only by the logic simulator performing the logic simulation once. As a result, tamper resistance of multiple circuit parts can be evaluated with a single logic simulation, and the evaluation can be performed efficiently.
  • the logic simulator counts the number of signal changes per fixed time interval, and based on this, the power consumption per fixed time interval is calculated.
  • An embodiment of a tamper resistance evaluation apparatus characterized by performing power difference analysis using power consumption information obtained by estimation has been described.
  • a signal that has changed odd number of times during one clock cycle is counted as one time change, and a signal that has changed even number of times is counted as 0 time change.
  • a tamper resistance evaluation apparatus characterized by determining the power of the case, the influence of transient transition due to delay is eliminated, and the essential characteristics of the circuit independent of the device and the placement and routing are evaluated. I explained.
  • the power calculation device and the tamper resistance evaluation device can be realized by a computer.
  • the power calculation device and the tamper resistance evaluation device include a CPU (Central Processing Unit) that executes a program.
  • the CPU is, for example, via a bus via ROM (Read Only Memory), RAM (Random Access Memory), communication board, display device, keyboard, mouse, FDD (Flexible Disk Drive), CDD (Compact Disk Drive) , Magnetic disk device, optical disk device, printer device, scanner device, etc.
  • RAM is an example of a volatile memory.
  • ROM, FDD, CDD, magnetic disk device, and optical disk device are examples of nonvolatile memory. These are examples of storage devices or storage units.
  • Information handled by the power calculation device and the tamper resistance evaluation device of each of the embodiments described above is recorded and read out by a storage device or a storage unit.
  • the communication board is, for example, a LAN (Local Area Network), the Internet,
  • ISDN Integrated Services Digital Network
  • the magnetic disk device stores an operating system (OS), a window system, a program group, and a file group.
  • OS operating system
  • the program group is executed by the CPU, ⁇ S, and window system.
  • a part or all of the power calculation device and the tamper resistance evaluation device may be configured by a program operable by a computer. Alternatively, it may be implemented with firmware stored in ROM. Alternatively, it may be implemented by a combination of software and hardware, or a combination of software, hardware and firmware.
  • the program group includes programs that cause the CPU to execute the processing described as “part” in the description of each embodiment. These programs are created by a computer language such as C language, HTML (Hyper Text Markup Language), SGML (Standard Generalized Markup Language) or XML (extensible Markup Language).
  • C language Hyper Text Markup Language
  • SGML Seandard Generalized Markup Language
  • XML extensible Markup Language
  • the above-described program is stored in another recording medium such as a magnetic disk device, FD (Flexible Disk), optical disk, CD (Compact Disk), MD (Mini Disk), DVD (Digital Versatile Disk), and the like. Is read and executed.
  • FD Flexible Disk
  • CD Compact Disk
  • MD Mini Disk
  • DVD Digital Versatile Disk
  • FIG. 12 examples of evaluating the tamper resistance of the DES encryption circuit using power difference analysis are shown in FIG. 12, FIG. 13, and FIG.
  • FIG. 12 examples of evaluating the tamper resistance of the DES encryption circuit using power difference analysis are shown in FIG. 12, FIG. 13, and FIG.
  • FIG. 12 examples of evaluating the tamper resistance of the DES encryption circuit using power difference analysis are shown in FIG. 12, FIG. 13, and FIG.
  • FIG. 12 examples of evaluating the tamper resistance of the DES encryption circuit using power difference analysis are shown in FIG. 12, FIG. 13, and FIG.
  • Figs. Fig. 15 shows an operation mode in which the power difference of the logic circuit to be evaluated is relatively large
  • Fig. 16 shows an operation mode in which the power difference of the logic circuit to be evaluated is relatively small.
  • Each (a) shows the result of the tamper resistance evaluation using an actual machine
  • (b) shows the result of the tamper resistance evaluation by the logic simulation explained in the embodiment.
  • Both analysis methods are power difference analysis.
  • the scales on the vertical axis (power difference) and horizontal axis (time) are relative and not meaningful.
  • the operation mode described above can be selected by inputting a signal from the outside to the logic circuit.
  • FIG. 1 is a diagram showing a configuration of a power calculation apparatus according to a first embodiment.
  • FIG. 2 is a part of an example of a test bench for logic simulation in the first embodiment.
  • FIG. 3 shows an example of a file referred to by the test bench in the first embodiment.
  • FIG. 4 is an example of a file referred to by the test bench in the first embodiment.
  • FIG. 5 is a flowchart showing processing of the power calculation device in the first embodiment.
  • FIG. 6 is an example of a program for calculating the power consumption by calculating the sum of the number of signal changes in Embodiment 1;
  • FIG. 7 is a diagram showing a configuration of a tamper resistance evaluation apparatus in Embodiment 2.
  • FIG. 8 is a flowchart showing processing of the tamper resistance evaluation apparatus in the second embodiment.
  • FIG. 9 Processing in which the signal changes odd number of times during one clock cycle in Embodiment 3 is counted as one signal change, and the signal changed even number of times is counted as zero change processing. It is an example of the program.
  • FIG. 10 An example of a processing program for calculating the power consumption of each circuit part by changing the circuit part in the large circuit part in Embodiment 4 and counting the number of times the signal has changed in each circuit part. is there.
  • FIG. 11 is a flowchart showing processing of the tamper resistance evaluation apparatus in the fourth embodiment.
  • FIG. 12 is an example of a result of evaluating the tamper resistance of the DES encryption circuit shown in the embodiment by power difference analysis.
  • FIG. 13 is an example of a result of evaluating the tamper resistance of the DES encryption circuit shown in the embodiment by power difference analysis.
  • FIG. 14 is an example of the result of evaluating the tamper resistance of the DES encryption circuit shown in the embodiment by power difference analysis.
  • FIG. 15 (a) A diagram showing the results of evaluating tamper resistance of a logic circuit installed in an actual machine in an operation mode in which the power difference of the logic circuit is relatively large. (B) Embodiment FIG. 6 is a diagram showing a result of performing tamper resistance evaluation of the same logic circuit using the.
  • FIG. 16 (a) A diagram showing the results of evaluating tamper resistance of a logic circuit installed in an actual machine in an operation mode in which the power difference of the logic circuit is relatively small, and (b) an embodiment.
  • FIG. 6 is a diagram showing a result of performing tamper resistance evaluation of the same logic circuit using the.

Abstract

 回路設計の上流工程において、実際の回路の耐タンパ性を高精度かつ高速に評価することを目的とする。耐タンパ性評価装置は、論理回路の信号が変化した回数を計数する信号変化回数計数部10と、信号変化回数計数部が計数した信号が変化した回数にもとづいて論理回路の消費電力を算出する消費電力算出部20と、消費電力算出部が算出した論理回路の消費電力にもとづいて論理回路から漏洩する情報を解析する漏洩情報解析部80と、シミュレータ30が利用するファイルを記憶しているファイルデータベース40と、論理シミュレータ30を制御する制御情報を生成するシミュレーション制御情報生成部50と、消費電力算出部20が算出した消費電力を時系列で並べた時系列電力情報を生成する時系列電力情報生成部60と、時系列電力情報を表示する結果表示部70とを備える。

Description

明 細 書
電力算出装置、電力算出方法、耐タンパ性評価装置及び耐タンパ性評 価方法
技術分野
[0001] 論理回路で消費する電力を回路の論理シミュレーションによって算出する電力算 出装置と電力算出方法に関する。また、算出した論理回路の消費電力にもとづいて 論理回路からの情報の漏洩を検出し、論理回路の耐タンパ性を評価する耐タンパ性 評価装置と耐タンパ性評価方法に関する。
背景技術
[0002] 暗号等のセキュリティ機能を実現する半導体デバイスは、回路の消費電力から、喑 号鍵等の秘密情報が漏洩してレ、なレ、かを評価する耐タンパ性評価を行う。
[0003] この耐タンパ性評価の方法には、従来、実機を用いて消費電力を測定することによ り秘密情報が漏洩していないかを評価する方法と、半導体デバイスの設計段階にお いて、論理回路のシミュレーションを行うことにより消費電力を算出し、秘密情報が漏 洩してレ、なレ、かを評価する方法とがある。
[0004] このうちシミュレーションによる方法には、ソフトウェアによるシミュレーションによって 、暗号処理の過程で現れる(と予想される)中間変数の特定のビットまたはハミング重 みにもとづいて消費電力を算出し、それによつて情報漏洩を検出する方法と、回路シ ミュレータによって回路の詳細なシミュレーションを行って消費電力を算出し、それに よって情報漏洩を検出する方法がある(どちらも、例えば、非特許文献 1を参照)。
[0005] 論理シミュレーションでの消費電力の算出は、次のようにして行う。
現在、主に使用されている半導体デバイスは CMOSである力 その消費電力の大 半は負荷を充放電するためのスイッチング電力 Pである。そのため、回路の消費電力 は(1)式に示すように、信号毎の単位時間当たりの変化数 f、負荷容量 C、電圧 Vの 2 乗の積を足し合わせた値で表すことができる。
[0006] P=∑fCV2 (1)
[0007] ここで、 fは論理シミュレーションによって求める値であり、 Vは固定値である。また、 cは回路接続を記述したネットリストやライブラリにもとづいて算出される。論理シミュ レーシヨンによる消費電力の算出では、この負荷容量 Cの算出に多くの時間を要する 非特許文献 1: "TECHNICAL REPORT OF IEICE',、 IT2003_60、 ISEC20 03—100、 WBS2003-178 (2004年 3月 )
発明の開示
発明が解決しょうとする課題
[0008] し力 ながら、従来のシミュレーションを用いた耐タンパ性評価方法には、次のよう な問題があった。まず、ソフトウェアによるシミュレーションの場合、シミュレータは実際 の回路の消費電力を高レ、精度で近似することはできないとレ、う欠点があり、正しレ、評 価が行われるか否かが不明であるという問題があった。さらに、回路のどの部分から どのように情報が漏洩するかというメカニズムの解明には、ほとんど役に立たないとい う問題もあった。
[0009] 一方、回路シミュレータを用いて詳細なシミュレーションを行う方法の場合、処理に 非常に時間力 sかかる上に回路の詳細情報が必要となるため、回路設計の上流工程 で手軽に耐タンパ性を評価するという用途には適用できず、結果的に設計と評価を 効率的に行えないという問題があった。
[0010] この発明は、これらの問題を解決するためになされたものであり、回路設計における 論理設計を含む、それより上流の工程 (以下、これを上流工程と呼ぶ)において、実 際の回路の耐タンパ性を高精度かつ高速に評価することを目的とする。
課題を解決するための手段
[0011] 前記した課題を解決するため、電力算出装置は、論理回路の信号が変化した回数 の加算値にもとづいて消費電力を算出することとした。
[0012] また、論理回路からの情報の漏洩を検出し論理回路の耐タンパ性を評価する耐タ ンパ性評価装置は、論理回路の信号が変化した回数を計数して信号変化回数記憶 部に記憶する信号変化回数計数部と、信号変化回数計数部が信号変化回数記憶 部に記憶した論理回路の信号が変化した回数にもとづいて論理回路の消費電力を 算出する消費電力算出部と、消費電力算出部が算出した論理回路の消費電力にも とづいて論理回路から漏洩する情報を解析する漏洩情報解析部とを備えることとした 発明の効果
[0013] この発明によれば、電力算出装置は、回路の論理シミュレータが出力した論理回路 の信号が変化した回数の加算値にもとづいて論理回路の消費電力を算出することが できる。
[0014] また、耐タンパ性評価装置は、信号変化回数計数部が、論理回路の信号が変化し た回数を計数して信号変化回数記憶部に記憶し、消費電力算出部が、信号変化回 数記憶部に記憶した論理回路の信号が変化した回数にもとづいて論理回路の消費 電力を算出し、漏洩情報解析部が、算出した論理回路の消費電力にもとづいて論理 回路から漏洩する情報を解析することにより、論理回路からの情報の漏洩を検出し、 論理回路の耐タンパ性を評価することができる。
発明を実施するための最良の形態
[0015] 実施の形態 1.
実施の形態 1では、耐タンパ性評価装置の論理シミュレータが出力した論理回路の 信号が変化した回数にもとづいて、耐タンパ性評価装置の中の電力算出装置が論 理回路の消費電力を算出する実施の形態について説明する。
[0016] 耐タンパ性評価装置の中の電力算出装置は、論理回路の信号が変化した回数の 加算値にもとづいて消費電力を算出する。
[0017] 図 1は、実施の形態 1における耐タンパ性評価装置の構成を示す図である。図 1に 示すように、電力算出装置は耐タンパ性評価装置の一部を構成する。
このうち電力算出装置は、論理回路の信号が変化した回数を計数して信号変化回 数記憶部に記憶する信号変化回数計数部 10と、信号変化回数計数部 10が信号変 化回数記憶部に記憶した論理回路の信号が変化した回数の加算値にもとづいて論 理回路の消費電力を算出する消費電力算出部 20とを備えている。
[0018] また、耐タンパ性評価装置は、電力算出装置の他に、論理回路の動作のシミュレ一 シヨンを行う論理シミュレータ 30と、論理シミュレータ 30が出力した信号の変化を記 憶する信号変化情報記憶部 31と、論理シミュレータ 30が利用するファイルを記憶し ているファイルデータベース 40と、論理シミュレータ 30を制御するシミュレーション制 御情報を生成するシミュレーション制御情報生成部 50と、シミュレーション制御情報 生成部 50が生成したシミュレーション制御情報を記憶するシミュレーション制御情報 記憶部 51とを備えている。
[0019] さらに、耐タンパ性評価装置は、消費電力算出部 20が算出した消費電力を記憶す る消費電力記憶部 21と、消費電力記憶部 21から消費電力を読み出して時系列で並 ベた時系列電力情報を生成する時系列電力情報生成部 60と、時系列電力情報生 成部 60が生成した時系列電力情報を記憶する時系列電力情報記憶部 61と、時系 列電力情報記憶部 61から時系列電力情報を読み出して表示する結果表示部とを備 えている。
[0020] 信号変化回数計数部 10は、論理回路の信号が変化した回数を計数して信号変化 回数記憶部に記憶する。消費電力算出部 20は、信号変化回数計数部 10が信号変 化回数記憶部に記憶した論理回路の信号が変化した回数の加算値にもとづいて論 理回路の消費電力を算出する。
[0021] ここで、実施の形態 1で用いる消費電力の算出方法について説明する。
前記した(1)式を用いた消費電力の算出方法では、負荷容量 Cの算出に多くの時 間を必要とする。しかし、回路設計の上流工程において論理回路の耐タンパ性を高 精度かつ高速に評価する場合には、算出する消費電力にそれほど高い精度は必要 ではない。そこで、信号の負荷容量 Cはすべてほぼ同じだと見なして、信号毎の単位 時間当たりの変化数 fで近似することにより、消費電力を(2)式を用いて算出する。こ れによって処理時間を大幅に短縮することができる。
[0022] P=∑f (2)
[0023] 各部の機能の説明に戻る。
論理シミュレータ 30は、ディジタル回路の論理設計で用いられる通常の論理シミュ レータであり、対象となる論理回路でどのような信号の変化が発生したのかを示す全 ての信号を生成する。ファイルデータベース 40は、論理シミュレータ 30が用いる論理 回路、ネットリスト、ライブラリ、入力データファイル及びテストベンチを記憶している。 これらは論理シミュレーションの全期間を通じて参照される。 [0024] シミュレーション制御情報生成部 50は、論理シミュレータ 30力 シミュレーションの 全期間をまとめて 1度に行うのではなぐ時間をずらした複数回のシミュレーション (そ れぞれを「単位シミュレーション」と呼ぶ)に分割して実行する場合に、単位シミュレ一 シヨン毎の制御情報を生成する。生成したファイルは、テストベンチがシミュレーション の開始と終了を制御する際に参照する。
[0025] 時系列電力情報生成部 60は、消費電力算出部 20が算出した論理回路の所定の 期間についての消費電力を、時系列にしたがって並べて一つの時系列電力情報を 生成する。また、時系列電力情報生成部 60は、時系列電力情報を表示に適したフォ 一マットに変換する。結果表示部 70は、時系列電力情報生成部 60が生成した時系 列電力情報を表示する。
[0026] テストベンチは、論理シミュレータ 30の動作全体を記述したファイルである。例えば 、論理シミュレータ 30によるファイルの入力や出力、論理シミュレーションの開始と終 了のタイミングを指定する時間情報が記述されている。
[0027] 図 2はテストベンチの例の一部であり、単位シミュレーション毎の信号変化情報を抽 出するための記述である。対象となる論理回路が処理を行う際、クロックサイクル毎の 信号変化情報を異なるファイルに出力させている。
[0028] 具体的には、単位シミュレーションの開始に際して、入力データファイルから入力デ ータを一つ読み出し、対象となる論理回路の論理シミュレーションを行った後、論理 シミュレータが出力した信号が変化した回数を計数し、その結果をファイルに出力し ている。
[0029] 図 2の 2箇所でファイルを参照(include)している力 参照されるファイルの例を図 3 と図 4に示す。図 3は単位シミュレーションで使用する入力データの先頭番号を保持 するフアイノレである。図 3の例では、入力データの先頭番号は、 " 159200"となって いる。図 4は、単位シミュレーションで生成される信号変化情報を記入するファイル名 を指定するファイルである。図 4の例では、入力データが" 159200" (先頭番号)の場 合、信号変化情報は" saif/sim_net_159200. saif"に記入され、入力データが "159201 "の場合、 "saif /sim_net_l 59201. saif"に記入される。これらは、と もにシミュレーション制御情報であり、論理シミュレータ 30を起動する前にシミュレ一 シヨン制御情報生成部 50によって生成される。
[0030] 次に、実施の形態 1における電力算出装置を含む耐タンパ性評価装置の動作を説 明する。図 5は、電力算出装置を含む耐タンパ性評価装置での電力算出の処理を示 すフローチャートである。
[0031] 耐タンパ性評価装置の中の電力算出装置は、論理回路の信号が変化した回数を 計数して信号変化回数記憶部に記憶する信号変化回数計数工程と、信号変化回数 計数工程が信号変化回数記憶部に記憶した論理回路の信号が変化した回数の加 算値にもとづいて論理回路の消費電力を算出する消費電力算出工程とを実行する。
[0032] 消費電力を算出する対象となる論理回路とそのネットリスト、論理シミュレーションで 用いるライブラリと、論理回路へ最初に入力する入力データと、論理シミュレーション で用いるテストベンチは、ファイルデータベース 40に記憶されている。入力データは 複数用意されており、単位シミュレーションを繰り返すたびに読み出されて利用される
[0033] このうち対象となる論理回路は、論理シミュレータ 30によりファイルデータベース 40 力 読み出され、設定されているものとする。
[0034] また、シミュレーション制御情報生成部 50は、予めシミュレーション制御情報を生成 しておき、論理シミュレータ 30は、論理シミュレーションの開始/終了を制御するテス トベンチからこれを参照する。
[0035] まず、単位シミュレーションの動作を説明する。
論理シミュレータ 30は、ファイルデータベース 40に記憶されている入力データファ ィルから入力データを一つ読み込む(ステップ S100)。また、論理シミュレータ 30は、 テストベンチの記述に従って、シミュレーション制御情報生成部 50のシミュレーション 制御情報を参照する (ステップ S 101)。
[0036] 論理シミュレータ 30は、読み込んだ入力データを元にして、対象となる論理回路の 論理的な動作のシミュレーションを行レ、、論理回路のクロックサイクル毎の信号を生 成し、信号変化情報として信号変化情報記憶部 31に記憶する (ステップ S102)。
[0037] 信号変化回数計数部 10は、信号変化情報記憶部 31から信号変化回数を読み出 して論理回路で信号が変化した回数 (以後、「信号変化回数」と略称する)を計数し、 信号変化回数記憶部 11に記憶する (ステップ S 103)。これが前記した信号変化回 数計数工程である。ここで、信号変化回数とは、 1回の単位シミュレーションで評価対 象回路が動作している期間のクロックサイクル毎に信号が変化した回数である。
[0038] 消費電力算出部 20は、信号変化回数記憶部 11の信号変化回数を読み出し、(2) 式を用いて消費電力を算出し、消費電力記憶部 21に記憶する (ステップ S104)。こ れが前記した消費電力算出工程である。
[0039] つまり、ステップ S103とステップ S104力 耐タンパ性評価装置の中の電力算出装 置の処理に相当する。
[0040] 消費電力算出部 20において、信号変化回数の総和を求め、消費電力を算出する プログラムの例を図 6に示す。このプログラムでは、信号変化回数計数部 10が計数し た信号変化回数を記入したファイル fprから、消費電力算出部 20が全ての信号の信 号変化回数 TCを抽出し、抽出した TCの合計 sumを求めている。 sumは、図 4に示 すテストベンチによって指定された出力ファイルに出力される。
[0041] ファイル fprでの信号変化回数の記入例(信号変化回数記憶部 11のファイルフォー マットの例)を表 1に示す。また、抽出した TCの合計 sumのファイルでの記入例(消費 電力記憶部 21のファイルフォーマットの例)を表 2に示す。
[0042] [表 1]
Figure imgf000009_0001
[0043] [表 2] 合計 s u m 4 6 表 1で示したような信号変化回数を記入したファイル fprと、表 2で示したような合計 s umを記入したファイル力 単位シミュレーション毎に作成される。 [0045] ここまでが 1回の単位シミュレーションである。つまり、単位シミュレーションでは、読 み込んだ入力データを元にして、シミュレーション制御情報で示される時間内の論理 回路の消費電力を算出した。
[0046] 次に、論理シミュレータ 30は、ファイルデータベース 40内の入力データファイルに 記述されている入力データの全てについて、論理シミュレーションを実行したか否か を判定する(ステップ S105)。全ての入力データについての論理シミュレーションを 完了した場合(ステップ S105の Yesの場合)、ステップ S106へ進む。完了していな レ、場合(ステップ S 105の Noの場合)、ステップ S 100へ戻る。
[0047] 時系列電力情報生成部 60は、すべての入力データについて単位シミュレーション が終了すると、消費電力記憶部 21から単位シミュレーションを繰り返した数だけ生成 された論理回路の消費電力を読み出し、単位シミュレーションを行う際に、シミュレ一 シヨン制御情報から参照した時間情報にしたがって並べて、一つのまたは複数の時 系列電力情報を生成し、時系列電力情報記憶部 61に記憶する(ステップ S106)。結 果表示部 70は、時系列電力情報記憶部 61から時系列電力情報を読み出し、例え ば、オシロスコープなどでの表示形式とすることで、実機の解析と同じ環境で表示す る(ステップ S 107)。
[0048] 以上により、対象とする論理回路が、ある時間内で消費する消費電力を論理シミュ レーシヨンにより算出することができる。
[0049] 本実施の形態により耐タンパ性評価装置の中の電力算出装置は、論理シミュレ一 シヨンが出力した論理回路の信号が変化した回数の加算値にもとづいて消費電力を 算出することができる。これにより負荷容量を算出する必要がなくなることから、従来よ り短い処理時間で論理回路の消費電力を算出することが可能となる。
[0050] 本実施の形態により信号変化回数計数部と消費電力算出部とから電力算出装置を 構成すること力 sできる。その結果、電力算出装置は、信号変化回数計数部が論理回 路の信号が変化した回数を計数し、消費電力算出部が信号の変化した回数の加算 値にもとづいて論理回路の消費電力を算出することが可能となる。
[0051] なお、耐タンパ性評価装置の中の電力算出装置の P=∑fの計算は、論理回路の 信号が変化した回数のみにもとづいて消費電力を算出することを意味している。 [0052] この場合、耐タンパ性評価装置の中の電力算出装置は、論理回路の信号が変化し た回数を計数して信号変化回数記憶部に記憶する信号変化回数計数部 10と、信号 変化回数計数部 10が信号変化回数記憶部に記憶した論理回路の信号が変化した 回数のみにもとづいて論理回路の消費電力を算出する消費電力算出部 20とを備え ることとなる。
[0053] また、電力算出装置は、論理回路の信号が変化した回数を計数して信号変化回数 記憶部に記憶する信号変化回数計数工程と、信号変化回数計数工程が信号変化 回数記憶部に記憶した論理回路の信号が変化した回数のみにもとづいて論理回路 の消費電力を算出する消費電力算出工程とを実行する。
[0054] この場合、電力算出装置は、論理シミュレーションが出力した論理回路の信号が変 化した回数のみにもとづいて消費電力を算出することができる。これにより負荷容量 を算出する必要がなくなることから、従来より短い処理時間で論理回路の消費電力を 算出することが可能となる。
[0055] また、信号変化回数計数部と消費電力算出部とから電力算出装置を構成すること ができる。その結果、電力算出装置は、信号変化回数計数部が論理回路の信号が 変化した回数を計数し、消費電力算出部が信号の変化した回数のみにもとづいて論 理回路の消費電力を算出することが可能となる。
[0056] 実施の形態 2.
実施の形態 2では、耐タンパ性評価装置が、論理シミュレータが出力した論理回路 の信号が変化した回数にもとづいて電力算出装置が算出した論理回路の消費電力 から、論理回路からの情報の漏洩を検出し、論理回路の耐タンパ性を評価する実施 の形態について説明する。また、その中で実行する回路の消費電力を用いた漏洩す る情報の解析が、電力差分解析と、単純電力解析及びタイミング解析である実施の 形態について説明する。
[0057] 図 7は、実施の形態 2における耐タンパ性評価装置の構成を示す図である。
論理回路からの情報の漏洩を検出し論理回路の耐タンパ性を評価する耐タンパ性 評価装置は、論理回路の信号が変化した回数を計数して信号変化回数記憶部 11に 記憶する信号変化回数計数部 10と、信号変化回数計数部が信号変化回数記憶部 11に記憶した論理回路の信号が変化した回数にもとづいて論理回路の消費電力を 算出する消費電力算出部 20と、消費電力算出部が算出した論理回路の消費電力に もとづいて論理回路から漏洩する情報を解析する漏洩情報解析部 80とを備える。こ のうち、信号変化回数計数部 10と消費電力算出部 20とには、前記した電力算出装 置を用いることができる。
[0058] また、耐タンパ性評価装置は、論理回路の動作のシミュレーションを行う論理シミュ レータ 30と、論理シミュレータ 30が出力した信号の変化を記憶する信号変化情報記 憶部 31と、論理シミュレータ 30が利用するファイルを記憶しているファイルデータべ ース 40と、論理シミュレータ 30を制御するシミュレーション制御情報を生成するシミュ レーシヨン制御情報生成部 50と、シミュレーション制御情報生成部 50が生成したシミ ユレーシヨン制御情報を記憶するシミュレーション制御情報記憶部 51とを備えている
[0059] さらに、耐タンパ性評価装置は、消費電力算出部 20が算出した消費電力を記憶す る消費電力記憶部 21と、消費電力記憶部 21から消費電力を読み出して時系列で並 ベた時系列電力情報を生成する時系列電力情報生成部 60と、時系列電力情報生 成部 60が生成した時系列電力情報を記憶する時系列電力情報記憶部 61と、漏洩 情報解析部 80が解析した解析結果を記憶する解析結果記憶部 81と、解析結果記 憶部 81から解析結果を読み出し表示する結果表示部とを備えている。
[0060] なお、耐タンパ性評価装置の漏洩情報解析部 80は、時系列電力情報記憶部 61か ら時系列電力情報を読み出し、解析を行レ、解析結果を解析結果記憶部 81に記憶す る。
[0061] 実施の形態 2における耐タンパ性評価装置の各部の機能は、漏洩情報解析部 80 を除き実施の形態 1における電力算出装置の各部の機能と同じである。
[0062] 漏洩情報解析部 80は、消費電力算出部 20が算出した論理回路の消費電力を用 いて電力解析を行い、論理回路から漏洩する情報を解析し、解析結果を出力する。
[0063] 耐タンパ性評価装置の消費電力算出部は、論理回路の信号が変化した回数の加 算値にもとづいて消費電力を算出する。
[0064] または、耐タンパ性評価装置の消費電力算出部は、論理回路の信号が変化した回 数のみにもとづいて消費電力を算出する。
[0065] このこと力 、消費電力の算出方法は実施の形態 1で用いた方法と同じである。ま た、テストベンチも実施の形態 1と同じである。
[0066] 次に、漏洩情報解析部 80で実行する漏洩情報の解析するための電力解析につい て説明する。
耐タンパ性評価装置の漏洩情報解析部 80による回路の消費電力を用レ、た漏洩す る情報の解析には、電力差分解析を用いる。
[0067] あるいは、耐タンパ性評価装置の漏洩情報解析部 80による回路の消費電力を用 レ、た漏洩する情報の解析には、単純電力解析を用いる。
[0068] あるいは、耐タンパ性評価装置の漏洩情報解析部 80による回路の消費電力を用 レ、た漏洩する情報の解析には、タイミング解析を用いる。
[0069] 前記した各解析の方法について具体的に説明する。ここでは解析の対象である半 導体デバイスが実現するセキュリティ機能を暗号に限定して説明を行う。電力解析は
、暗号を実行する半導体デバイス (以後、「暗号デバイス」と略称する)の論理回路の 消費電力を解析することにより、暗号デバイスが保持する秘密情報、特に暗号鍵を推 定する技術である。
[0070] 電力差分解析は、電力解析の一つの方法であり、ランダムな値のデータを喑号デ バイスに入力して暗号化の処理を実行し、処理中の回路の消費電力を測定または算 出して、得たデータを統計処理することにより暗号鍵を推定するものである。
[0071] 電力差分解析の具体的な方法は以下のようになる。
(1)対象となる回路に入力データを入力し、暗号化処理中の電力波形を測定する。 通常、数千力 数万データ分の電力波形を得る必要がある。
(2)公開されている喑号のアルゴリズムにもとづき、攻撃可能な Nビットの喑号鍵の一 部(部分鍵) Kと攻撃ポイント PTを選択する。 PTは入力データと Kのみによって値が 一意に決まる仮想的な中間変数の 1ビットであり、かつ、 Kのすベてのビットが関与す るものである。例えば、 DES (Data Encryption Standard)の Sボックスがそれに 相当する。
(3) 2N通りの部分鍵 Kの候補すべてに対して、 (1)で使用した入力データを与えた ときに、 PTの値が 1になる力 0になるかを計算する。
(4) ΡΤの値によって測定データを 2つのグループに分類し、それぞれのグループの 平均電力の差分を計算する。平均電力の差分が最大となる候補が求める部分鍵 Κ である。
(5)十分な量の暗号鍵の情報が得られるまで、 (2)一 (4)を繰り返す。
[0072] 単純電力解析は、電力解析のもう一つの方法であり、暗号ィヒを実行している回路の 電力波形から、暗号鍵に結びつく情報を推定するものである。
[0073] 例えば、単純なべき乗剰余演算は、べき指数を上位の桁力 順に読み出し、その 値力 S"l "のとき、乗算を行いながら平方演算を繰り返す。乗算と平方演算がそれぞれ 異なる電力を消費する場合、電力波形からべき指数に関する情報を得ることができる
[0074] タイミング解析は、電力解析とは異なる解析方法である。その方法は、暗号化の処 理時間が暗号鍵によって異なるとき、その時間の差を統計処理することにより、暗号 鍵を推定する方法である。
[0075] 次に、実施の形態 2における耐タンパ性評価装置の動作を、図 8に示す耐タンパ性 評価装置の処理のフローチャートにしたがって説明する。
[0076] 耐タンパ性評価装置での回路からの情報の漏洩を評価する情報漏洩評価方法は 、論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号 変化回数計数工程と、信号変化回数計数工程が信号変化回数記憶部に記憶した論 理回路の信号が変化した回数にもとづいて回路の消費電力を算出する消費電力算 出工程と、消費電力算出工程が算出した回路の消費電力にもとづいて回路から漏洩 する情報を解析する漏洩情報解析工程とを実行する。
[0077] ファイルデータベース 40への対象となる論理回路などの入力と、シミュレーション制 御情報生成部 50によるシミュレーション制御情報の生成とを行う準備は、実施の形 態 1と同じである。
[0078] また、入力データファイルから入力データを一つ読み込むステップ S200から、時系 列電力情報生成部 60が時系列電力情報を生成するステップ S206までの処理は、 実施の形態 1におけるステップ S100からステップ S106までの処理と同じである。た だし、ステップ S206において、時系列電力情報生成部 60が生成した時系列電力情 報は、時系列電力情報記憶部 61に記憶される。
[0079] 漏洩情報解析部 80は、時系列電力情報記憶部 61から読み出した時系列電力情 報を用いて電力解析を行い、解析結果を解析結果記憶部 81に記憶する (ステップ S
207)。電力解析には、前記した電力差分解析か、単純電力解析か、タイミング解析 を用いることができる。
[0080] 結果表示部 70は、解析結果記憶部 81から解析結果を読み出し、例えば、オシロス コープなどでの表示形式とすることで、実機の解析と同じ環境で表示する(ステップ S
208)。
[0081] 以上により、対象とする論理回路が、ある時間内で消費する消費電力を論理シミュ レーシヨンにより算出し、算出した消費電力を用いて電力解析を行うことにより、論理 回路からの情報の漏洩を検出することができる。
[0082] 本実施の形態によれば、耐タンパ性評価装置は、論理回路の信号が変化した回数 を計数し、計数した信号の変化にもとづいて論理回路の消費電力を算出し、算出し た消費電力にもとづいて論理回路力 漏洩する情報を解析することができる。その結 果、耐タンパ性評価装置は、対象となる論理回路の耐タンパ性を評価することが可能 となる。
[0083] 本実施の形態によれば、耐タンパ性評価装置により電力差分解析を用いた回路の 耐タンパ性の評価が可能となる。
[0084] 本実施の形態によれば、耐タンパ性評価装置により単純電力解析を用いた回路の 耐タンパ性の評価が可能となる。
[0085] 本実施の形態によれば、耐タンパ性評価装置によりタイミング解析を用いた回路の 耐タンパ性の評価が可能となる。
[0086] 本実施の形態によれば、耐タンパ性評価装置は、論理回路の信号が変化した回数 の加算値にもとづいて消費電力を算出することができる。これにより耐タンパ性評価 装置は、負荷容量を算出する必要がなくなることから、従来より短い処理時間で論理 回路の消費電力を算出することが可能となる。
[0087] 本実施の形態によれば、耐タンパ性評価装置は、論理回路の信号が変化した回数 のみにもとづいて消費電力を算出することができる。これにより耐タンパ性評価装置 は、負荷容量を算出する必要がなくなることから、従来より短い処理時間で論理回路 の消費電力を算出することが可能となる。
[0088] 本実施の形態によれば、論理シミュレーションで得られた信号変化情報にもとづレ、 て耐タンパ性を評価するようにしたので、ソフトウェアによるシミュレーションよりも正確 な評価が可能になった。また、回路シミュレータを用いる場合よりも高速な評価を設 計の上流工程で行うことが可能になった。
[0089] 本実施の形態によれば、従来よりも消費電力を高速に算出することができる。その 結果、回路設計の上流工程において、論理シミュレーションにより、短い時間で手軽 に対象となる回路の耐タンパ性を評価することが可能となる。
[0090] 実施の形態 3.
実施の形態 3では、対象となる論理回路での信号の遅延による過渡遷移の影響を 排除し、半導体デバイスや配置配線に依存しない理想的な状態での論理回路の耐 タンパ性を評価する実施の形態について説明する。
[0091] 実施の形態 3における耐タンパ性評価装置の構成と各部の機能及び消費電力の 算出方法は、実施の形態 2と同じである。
[0092] ただし、信号変化回数計数部 10は、所定の時間での信号変化回数が奇数回であ る場合、 1回の信号の変化であるとみなし、所定の時間での信号変化回数が偶数回 である場合、 0回の信号の変化であるとみなして、回路で信号が変化した回数を計数 する。
[0093] ここで、論理シミュレーションにおける、信号変化回数について説明する。
実施の形態 3での耐タンパ性評価装置の信号変化回数計数部 10は、論理回路で 発生するすべての信号変化を計数し、それを信号変化回数としている。この信号変 化回数は、信号の過渡遷移によって論理回路で発生する信号の変化をも含んでい る。つまり、本来的には、 1クロックサイクル経過した後に信号が変化しているかいな いかだけが、信号変化の結果のはずである。しかし、実際には 1クロックサイクル経過 する過渡遷移の間にも、信号の変化は発生している。その結果、信号変化回数計数 部 10が計数した信号変化回数は、この 1クロックサイクル経過している間に生じる信 号の変化の回数も含んだ値となってしまっている。
[0094] 論理回路からの情報の漏洩を正しく検出するためには、論理回路の消費電力を正 しく算出する必要があり、そのためには、過渡遷移で信号が変化する回数を排除した 信号変化回数を計数する必要がある。この原因である過渡遷移での信号の変化は、 半導体デバイスの特性や配置配線により生じる信号の遅延を原因として発生するも のである。そこで、情報の漏洩を正しく検出するためには、遅延のない理想的な回路 で信号変化回数の計数を行い、正しい回路の消費電力を算出する必要がある。
[0095] 実際の遅延は、配置配線やトランジスタの特性その他の要因で変動し、論理シミュ レーシヨン時には各瞬間の遅延を実機と全く同等に予測することは不可能である。し 力、しながら、論理シミュレーションで得られる信号変化回数は、わずかな遅延差に依 存して大きく変わることがある。また、この遅延はデバイスに依存するところも大きい。 すなわち、設計の上流工程において論理的に耐タンパ性を評価するという目的に対 して、配置配線などの不確定要素やデバイス依存性が入り込むことになる。
[0096] この問題を解決し、可能な限りデバイス依存性や配置配線依存性を排除して、純 粋に論理的に耐タンパ性を評価するためには、信号の伝播遅延が無い理想的なデ バイスを想定した時の信号変化回数を計数すれば良い。
[0097] これを実現するための手段として、例えば、論理シミュレーションでの遅延量を 0遅 延にすることが考えられる。ただし、この方法では、ある程度遅延も考慮に入れた評 価を行いたい場合には、遅延量を変えて論理シミュレーションをやり直す必要がある
[0098] そこで本実施の形態においては、遅延を考慮する場合と遅延を考慮しない場合の 評価をより効率的に実現するために、論理シミュレーションは遅延を考慮して 1回だ け行い、遅延を考慮する場合は、論理シミュレーションから得られる信号変化回数を そのまま用レ、、遅延を考慮しない場合は、 1クロックサイクルの間に信号が奇数回の 変化した場合には、信号が 1回変化したと数え、信号が偶数回変化した信号には、 0 回変化したと数えることとした。もちろん、両方を合わせて行っても良い。
[0099] これにより、 1回の論理シミュレーションで遅延を考慮した評価と、遅延を考慮しない 場合、つまり、遅延の無い理想的なデバイスを想定した場合の評価とを両方行うこと が可能となる。
[0100] これにより信号変化回数を計数した場合の消費電力を算出するプログラムの例を図 9に示す。このプログラムでは、信号変化回数計数部 10が計数した信号変化回数を 記入したファイル fprから、消費電力算出部 20が全ての信号の変化回数 TCを抽出し 、抽出した TCの合計 tcを求めた後、 "tc% = 2"により tcを 2で割ったあまりを求めるこ とにより、信号が変化した回数が偶数回の場合には 0回を、奇数回の場合には 1回を 信号変化回数の合計 sumとしている。なお、信号変化回数を記入したファイル fprは 、実施の形態 1の表 1と同じであり、合計 sumを記入したファイルは表 2と同じである。
[0101] 実施の形態 3における耐タンパ性評価装置の動作は、実施の形態 2における動作 と同じである。ただし、前記したように、信号変化回数計数部 10での信号変化回数の 計数方法のみが異なる。
[0102] 本実施の形態によれば、過渡遷移での信号の変化を排除して信号変化回数を計 数することができ、それにより論理回路の消費電力を正しく算出することができる。そ の結果、半導体デバイスや配置配線に依存しなレ、理想的な状態での論理回路の耐 タンパ性を評価することが可能となる。
[0103] 本実施の形態によれば、一回の論理シミュレーションにより、遅延をなくし過渡遷移 の影響を排除した理想的な論理回路の耐タンパ性の評価と、過渡遷移の影響を反 映された遅延を含む論理回路での耐タンパ性の評価を行うことが可能となる。
[0104] 実施の形態 4.
実施の形態 4では、論理回路の所望の領域のみに対して耐タンパ性の評価を行う 実施の形態について説明する。
[0105] 実施の形態 4における耐タンパ性評価装置の構成と各部の機能及び消費電力の 算出方法は、実施の形態 2と同じである。
[0106] ただし、耐タンパ性評価装置は、信号変化回数計数部 10が信号の変化の回数を 計数する論理回路として、所望の領域の論理回路を設定する。
[0107] 実施の形態 1一実施の形態 3では明記はしなかったが、消費電力の算出は、対象 となる論理回路全体に対して行うことを想定していた。しかし、秘密情報が論理回路 のどの部分からどのようにして漏洩するかというメカニズムを解明するためには、対象 となる論理回路内の特定の回路部分のみの消費電力を算出できると都合が良い。
[0108] これを実現する方法として、信号の変化を抽出する回路部分を論理シミュレータ 30 に対して指定する方法がある。しかし、この方法では、別の回路部分の消費電力を算 出する場合には、回路部分の指定を変えて、再度、論理シミュレーションを行う必要 力 Sある。
[0109] そこで、どの回路部分の信号変化回数を計数するかの指定にもとづき、論理シミュ レータ 30は、指定した回路部分を含むより大きな回路部分の信号変化情報を出力す る。その上で、信号変化回数計数部 10は、その大きな回路部分の中で、回路部分を 変えて、各回路部分で信号が変化した回数を計数し、消費電力算出部 20が、その 回路部分の消費電力を算出する。
[0110] このようにすれば、 1回の論理シミュレーションで、複数の回路部分の消費電力を算 出すること力 Sできる。
[0111] これにより信号変化回数を計数し、それを用いて消費電力を算出するプログラムの 例を図 10に示す。このプログラムでは、指定された大きな論理回路の領域に含まれ る回路部分を instanceで読み込み、読み込んだ回路部分について論理シミュレ一 シヨンを行い、信号変化回数計数部 10が計数した信号変化回数を記入したファイル fprから、消費電力算出部 20が全ての信号の信号変化回数 TCを抽出し、抽出した T Cの合計 sumを求めてレ、る。
[0112] 次に、実施の形態 4における耐タンパ性評価装置の動作を、図 11に示す耐タンパ 性評価装置の処理のフローチャートを用いて説明する。
[0113] まず、実施の形態 1と同じ、ファイルデータベース 40への対象となる論理回路など の入力と、シミュレーション制御情報生成部 50によるシミュレーション制御情報の生 成との準備を行う。
[0114] 次に、耐タンパ性評価装置は、耐タンパ性の評価の対象となる論理回路内の特定 の回路部分を入力する(ステップ S300)。以後、ステップ S301力 ステップ S309は 実施の形態 3における耐タンパ性評価装置のステップ S200からステップ S208と動 作と同じである力 ステップ S303において、論理シミュレータは、ステップ S300で入 力した論理回路内の特定の回路部分よりも広い範囲の回路部分の論理シミュレ一シ ヨンを行うようにする。
[0115] 本実施の形態によれば、耐タンパ性評価装置は、論理シミュレータが論理シミュレ ーシヨンを 1回行うだけで、回路部分を変えて消費電力を算出することができる。その 結果、 1回の論理シミュレーションで、複数の回路部分の耐タンパ性を評価することが できるようになり、評価を効率よく実行することが可能となる。
[0116] 以上、セキュリティデバイスのハードウェア設計の上流工程において、論理シミュレ ータにより当該ハードウェアの一定時間間隔毎の信号変化数を計数し、それに基い て当該一定時間間隔毎の消費電力を見積もることで得られる消費電力情報を使って 電力差分解析を行うことを特徴とする耐タンパ性評価装置の実施の形態について説 明した。
[0117] 同様の方法で得られる消費電力情報を使って単純電力解析を行うことを特徴とす る耐タンパ性評価装置の実施の形態について説明した。
[0118] 同様の方法で得られる消費電力情報を使ってタイミング解析を行うことを特徴とする 耐タンパ性評価装置の実施の形態について説明した。
[0119] 全ての信号の負荷容量はほぼ等しいものと見なし、「消費電力 信号変化の総数」 と近似することで電力見積もり時間を著しく短縮することを特徴とする耐タンパ性評価 装置の実施の形態について説明した。
[0120] 1クロックサイクルの間に奇数回変化した信号は 1回変化したと数え、偶数回変化し た信号は 0回変化したと数えることで、遅延の無レ、理想的なデバイスを想定した場合 の電力を求めることで、遅延による過渡遷移の影響を排除し、デバイスや配置配線に 依存しない回路の本質的な特徴を評価することを特徴とする耐タンパ性評価装置の 実施の形態にっレ、て説明した。
[0121] セキュリティデバイス全体ではなぐ喑号コアやその内部モジュール毎、または特定 の信号群のみの電力を見積もり、それぞれに対して解析を行うことで、回路部分毎の 攻撃に対する耐性を評価することを特徴とする耐タンパ性評価装置の実施の形態に ついて説明した。
[0122] 前記した各実施の形態において、電力算出装置、耐タンパ性評価装置は、コンビ ユータによって実現できるものである。 [0123] 図示していないが、電力算出装置、耐タンパ性評価装置は、プログラムを実行する CPU (Central Processing Unit)を備えている。 CPUは、例えば、バスを介して 、 ROM (Read Only Memory)、 RAM (Random Access Memory)、通信ボ ード、表示装置、キーボード、マウス、 FDD (Flexible Disk Drive)、 CDD (Comp act Disk Drive)、磁気ディスク装置、光ディスク装置、プリンタ装置、スキャナ装置 等と接続されている。
[0124] RAMは、揮発性メモリの一例である。 ROM、 FDD、 CDD、磁気ディスク装置、光 ディスク装置は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部 の一例である。
[0125] 前記した各実施の形態の電力算出装置、耐タンパ性評価装置が扱う情報は、記憶 装置あるいは記憶部により記録され、読み出されるものである。
[0126] 通信ボードは、例えば、 LAN (Local Area Network)、インターネット、あるレ、は
ISDN (Integrated Services Digital Network)等に接続されている。
[0127] 磁気ディスク装置には、オペレーティングシステム(OS)、ウィンドウシステム、プログ ラム群、ファイル群が記憶されている。プログラム群は、 CPU、〇S、ウィンドウシステ ムにより実行される。
[0128] 電力算出装置、耐タンパ性評価装置は、一部あるいはすべてをコンピュータで動作 可能なプログラムにより構成しても構わなレ、。あるいは、 ROMに記憶されたファーム ウェアで実現されていても構わなレ、。あるいは、ソフトウェアとハードウェア、あるいは、 ソフトウェアとハードウェアとファームウェアとの組み合わせで実施されても構わない。
[0129] プログラム群には、各実施の形態の説明において「一部」として説明した処理を CP Uに実行させるプログラムが含まれる。これらのプログラムは、例えば、 C言語や HT ML (Hyper Text Markup Language)や SGML (Standard Generalized Markup Language)や XML (extensible Markup Language)などのコンピュ ータ言語により作成される。
[0130] 前記したプログラムは、磁気ディスク装置、 FD (Flexible Disk)、光ディスク、 CD ( Compact Disk)、 MD (Mini Disk)、 DVD (Digital Versatile Disk)等のその 他の記録媒体に記憶され、 CPUにより読み出され実行される。 実施例
[0131] 本実施例では、 DES暗号回路の耐タンパ性を電力差分解析を用いて評価した例 を図 12、図 13、図 14に示す。これらの図はいくつかの中間変数について、それを 1 ビット毎に分解し、その 1ビットが 0になるか 1になるかによつて電力差分を求めた結果 を一覧グラフ形式にまとめたものである。 1ビット毎に横軸が時間、縦軸が電力差分を 示している。グラフに現れる特徴的なスパイクが秘密情報につながる。
[0132] また、実機を用いて論理回路の耐タンパ性評価を行った結果と、前記した実施の形 態を用いて実機に搭載している回路と同じ論理回路の耐タンパ性評価を行った結果 を図 15と図 16に示す。図 15は評価の対象となる論理回路の電力差分が比較的大き い動作モードの場合であり、図 16は評価の対象となる論理回路の電力差分が比較 的小さい動作モードの場合である。それぞれ (a)は実機を用いて耐タンパ性評価を 行った結果、 (b)は実施の形態で説明した論理シミュレーションによる耐タンパ性評 価を行った結果を示している。解析方法は、いずれも電力差分解析である。図の縦 軸 (電力差分)及び横軸(時間)の目盛りは相対的なものであり、あまり意味はない。ま た、前記した動作モードは、外部から論理回路に信号を入力することにより、選択す ることが可能である。
[0133] 情報漏洩の有無とレ、う観点からは、本実施例で示した耐タンパ性評価を行った結 果は、実機を用いて耐タンパ性評価を行った結果と高い精度で一致している。動作 モードによる電力差分の違レ、も論理シミュレーションで予測できることがわかる。 図面の簡単な説明
[0134] [図 1]実施の形態 1における電力算出装置の構成を示す図である。
[図 2]実施の形態 1における論理シミュレーションのためのテストベンチの例の一部で ある。
[図 3]実施の形態 1におけるテストベンチが参照するファイルの例である。
[図 4]実施の形態 1におけるテストベンチが参照するファイルの例である。
[図 5]実施の形態 1における電力算出装置の処理を示すフローチャートである。
[図 6]実施の形態 1における信号変化回数力 その総和を求め消費電力を算出する プログラムの例である。 [図 7]実施の形態 2における耐タンパ性評価装置の構成を示す図である。
[図 8]実施の形態 2における耐タンパ性評価装置の処理を示すフローチャートである
[図 9]実施の形態 3における 1クロックサイクルの間に信号が奇数回の変化した場合に は信号が 1回変化したと数え、信号が偶数回変化した信号には 0回変化したと数える 処理のプログラムの例である。
[図 10]実施の形態 4における大きな回路部分の中で回路部分を変えて、各回路部分 で信号が変化した回数を計数し、その回路部分の消費電力を算出する処理のプログ ラムの例である。
[図 11]実施の形態 4における耐タンパ性評価装置の処理を示すフローチャートである
[図 12]実施例で示した DES暗号回路の耐タンパ性を電力差分解析により評価した 結果の例である。
[図 13]実施例で示した DES暗号回路の耐タンパ性を電力差分解析により評価した 結果の例である。
[図 14]実施例で示した DES暗号回路の耐タンパ性を電力差分解析により評価した 結果の例である。
[図 15]論理回路の電力差分が比較的大きい動作モードの場合における、(a)実機に 搭載している論理回路の耐タンパ性評価を行った結果を示す図と、 (b)実施の形態 を用いて同じ論理回路の耐タンパ性評価を行った結果を示す図である。
[図 16]論理回路の電力差分が比較的小さい動作モードの場合における、(a)実機に 搭載している論理回路の耐タンパ性評価を行った結果を示す図と、 (b)実施の形態 を用いて同じ論理回路の耐タンパ性評価を行った結果を示す図である。
符号の説明
10 信号変化回数計数部、 11 信号変化回数記憶部、 20 消費電力算出部、 21 消費電力記憶部、 30 論理シミュレータ、 31 信号変化情報記憶部、 40 フアイノレ データベース、 go シミュレーション制御情報生成部、 51 シミュレーション制御情報 記憶部、 60 時系列電力情報生成部、 61 時系列電力情報記憶部、 70 結果表示 部、 80 漏洩情報解析部、 81 解析結果記憶部。

Claims

請求の範囲
[1] 論理回路の信号が変化した回数の加算値にもとづいて消費電力を算出することを 特徴とする電力算出装置。
[2] 前記電力算出装置は、
論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号 変化回数計数部と、
前記信号変化回数計数部が信号変化回数記憶部に記憶した論理回路の信号が 変化した回数の加算値にもとづいて論理回路の消費電力を算出する消費電力算出 部と
を備えたことを特徴とする請求項 1に記載の電力算出装置。
[3] 論理回路の信号が変化した回数のみにもとづいて消費電力を算出することを特徴 とする請求項 1に記載の電力算出装置。
[4] 前記電力算出装置は、
論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号 変化回数計数部と、
前記信号変化回数計数部が信号変化回数記憶部に記憶した論理回路の信号が 変化した回数のみにもとづいて論理回路の消費電力を算出する消費電力算出部と を備えたことを特徴とする請求項 3に記載の電力算出装置。
[5] 論理回路の信号が変化した回数の加算値にもとづいて消費電力を算出することを 特徴とする電力算出方法。
[6] 前記電力算出方法は、
論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号 変化回数計数工程と、
前記信号変化回数計数工程が信号変化回数記憶部に記憶した論理回路の信号 が変化した回数の加算値にもとづいて論理回路の消費電力を算出する消費電力算 出工程と
を実行することを特徴とする請求項 5に記載の電力算出方法。
[7] 論理回路の信号が変化した回数のみにもとづいて消費電力を算出することを特徴 とする請求項 5に記載の電力算出方法。
[8] 前記電力算出方法は、
論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号 変化回数計数工程と、
前記信号変化回数計数工程が信号変化回数記憶部に記憶した論理回路の信号 が変化した回数のみにもとづいて論理回路の消費電力を算出する消費電力算出ェ 程と
を実行することを特徴とする請求項 7に記載の電力算出方法。
[9] 論理回路からの情報の漏洩を検出し論理回路の耐タンパ性を評価する耐タンパ性 評価装置において、
論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号 変化回数計数部と、
前記信号変化回数計数部が信号変化回数記憶部に記憶した論理回路の信号が 変化した回数にもとづいて論理回路の消費電力を算出する消費電力算出部と、 前記消費電力算出部が算出した論理回路の消費電力にもとづいて論理回路から 漏洩する情報を解析する漏洩情報解析部と
を備えることを特徴とする耐タンパ性評価装置。
[10] 前記漏洩情報解析部による論理回路の消費電力にもとづく漏洩する情報の解析が
、電力差分解析であることを特徴とする請求項 9に記載の耐タンパ性評価装置。
[11] 前記漏洩情報解析部による論理回路の消費電力にもとづく漏洩する情報の解析が
、単純電力解析であることを特徴とする請求項 9に記載の耐タンパ性評価装置。
[12] 前記漏洩情報解析部による論理回路の消費電力にもとづく漏洩する情報の解析が
、タイミング解析であることを特徴とする請求項 9に記載の耐タンパ性評価装置。
[13] 前記消費電力算出部は、論理回路の信号が変化した回数の加算値にもとづいて 消費電力を算出することを特徴とする請求項 9に記載の耐タンパ性評価装置。
[14] 前記消費電力算出部は、論理回路の信号が変化した回数のみにもとづいて消費 電力を算出することを特徴とする請求項 9に記載の耐タンパ性評価装置。
[15] 前記信号変化回数計数部は、 所定の時間での信号変化回数が奇数回である場合、 1回の信号の変化であるとみな し、
所定の時間での信号変化回数が偶数回である場合、 0回の信号の変化であるとみな して、
回路で信号が変化した回数を計数する
ことを特徴とする請求項 9に記載の耐タンパ性評価装置。
[16] 前記信号変化回数計数部が信号の変化の回数を計数する論理回路として、所定 の領域の論理回路を設定することを特徴とする請求項 9に記載の耐タンパ性評価装 置。
[17] 回路からの情報の漏洩を評価する情報漏洩評価方法において、
論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号 変化回数計数工程と、
前記信号変化回数計数工程が信号変化回数記憶部に記憶した論理回路の信号 が変化した回数にもとづいて回路の消費電力を算出する消費電力算出工程と、 前記消費電力算出工程が算出した回路の消費電力にもとづいて回路力 漏洩す る情報を解析する漏洩情報解析工程と
を実行することを特徴とする耐タンパ性評価方法。
PCT/JP2004/009632 2004-07-07 2004-07-07 電力算出装置、電力算出方法、耐タンパ性評価装置及び耐タンパ性評価方法 WO2006006198A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
EP04747101A EP1768040A4 (en) 2004-07-07 2004-07-07 POWER SUPPLY CALCULATING APPARATUS, POWER SUPPLY CALCULATING METHOD, APPARATUS FOR EVALUATING INVIOLABILITY, AND INVIOLABILITY ASSESSING METHOD
US11/579,953 US7460965B2 (en) 2004-07-07 2004-07-07 Electric power calculating apparatus, electric power calculating method, tamper resistance evaluating apparatus, and tamper resistance evaluating method
JP2006527640A JP4651620B2 (ja) 2004-07-07 2004-07-07 電力算出装置、電力算出方法、耐タンパ性評価装置及び耐タンパ性評価方法
KR1020067026889A KR100876717B1 (ko) 2004-07-07 2004-07-07 탬퍼링 방지성 평가 장치 및 탬퍼링 방지성 평가 방법
PCT/JP2004/009632 WO2006006198A1 (ja) 2004-07-07 2004-07-07 電力算出装置、電力算出方法、耐タンパ性評価装置及び耐タンパ性評価方法
CNA2004800432527A CN1969277A (zh) 2004-07-07 2004-07-07 电力计算装置、电力计算方法、抗侵害性评价装置和抗侵害性评价方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2004/009632 WO2006006198A1 (ja) 2004-07-07 2004-07-07 電力算出装置、電力算出方法、耐タンパ性評価装置及び耐タンパ性評価方法

Publications (1)

Publication Number Publication Date
WO2006006198A1 true WO2006006198A1 (ja) 2006-01-19

Family

ID=35783564

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2004/009632 WO2006006198A1 (ja) 2004-07-07 2004-07-07 電力算出装置、電力算出方法、耐タンパ性評価装置及び耐タンパ性評価方法

Country Status (6)

Country Link
US (1) US7460965B2 (ja)
EP (1) EP1768040A4 (ja)
JP (1) JP4651620B2 (ja)
KR (1) KR100876717B1 (ja)
CN (1) CN1969277A (ja)
WO (1) WO2006006198A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112134685A (zh) * 2020-10-27 2020-12-25 深圳安捷丽新技术有限公司 一种防dpa攻击的待测电路安全仿真分析方法和装置

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8825464B2 (en) * 2008-09-02 2014-09-02 Oracle America, Inc. Method and apparatus for parallelization of sequential power simulation
JP5262996B2 (ja) * 2009-05-26 2013-08-14 富士通セミコンダクター株式会社 論理シミュレーション装置、方法、及びプログラム
GB2487901B (en) * 2011-02-03 2019-12-04 Advanced Risc Mach Ltd Power signature obfuscation
US9618547B2 (en) * 2012-01-24 2017-04-11 University Of Southern California Digital circuit power measurements using numerical analysis
US9563729B2 (en) 2013-06-21 2017-02-07 Cryptography Research, Inc. Signal transition analysis of a circuit
US10386395B1 (en) 2015-06-03 2019-08-20 University Of Southern California Subcircuit physical level power monitoring technology for real-time hardware systems and simulators
JP6547577B2 (ja) * 2015-10-15 2019-07-24 富士通株式会社 検査装置、検査プログラムおよび検査方法
EP3220304B1 (en) * 2016-02-22 2018-11-07 Eshard Method of testing the resistance of a circuit to a side channel analysis
KR20160061931A (ko) 2016-05-13 2016-06-01 이우성 이중구조 블록탱크 집진기를 구비한 해양원자력수력발전소의 핵폐기물처리용 원자로설비의 분배투입장치
KR20160079738A (ko) * 2016-06-17 2016-07-06 이우성 매립 체 용 공유지 및 공유수면 매립처리 건설기계의 분배투입장치
KR20160093580A (ko) * 2016-07-19 2016-08-08 이우성 해양의 어도 터널 교통장치를 구비한 공유수면매립지의 수산개발장치
KR20160101884A (ko) * 2016-08-08 2016-08-26 이우성 수산물 재배용 수산물 및 공유수면 매립처리 건설기계의 어패류 가공 장 치
KR20160132349A (ko) 2016-10-31 2016-11-18 이우성 인명구조침몰방지 선박 및 퍼 블 젯 트 에 대응하는 선박의 제조
CN112104447B (zh) * 2020-10-27 2024-02-06 深圳安捷丽新技术有限公司 一种防spa攻击的待测电路安全仿真分析方法和装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0573634A (ja) * 1990-10-05 1993-03-26 Nec Corp 消費電力計算手法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1995034036A2 (en) * 1994-06-03 1995-12-14 Synopsys, Inc. Method and apparatus for estimating the power dissipated by a digital circuit
JPH0926456A (ja) 1995-07-13 1997-01-28 Hitachi Ltd 消費電力計算システム
US5994892A (en) * 1996-07-31 1999-11-30 Sacramento Municipal Utility District Integrated circuit design automatic utility meter: apparatus & method
US6236197B1 (en) * 1998-05-15 2001-05-22 Abb Power T&D Company Inc. Apparatus and method for detecting tampering in a multiphase meter
JP2000242676A (ja) 1999-02-18 2000-09-08 Nec Corp 論理回路の消費電力計算方法及び計算装置
JP2003085233A (ja) 2001-09-10 2003-03-20 Sanyo Electric Co Ltd 集積回路装置の電力解析システム
US7194633B2 (en) * 2001-11-14 2007-03-20 International Business Machines Corporation Device and method with reduced information leakage
JP2004126841A (ja) * 2002-10-01 2004-04-22 Renesas Technology Corp プログラム実装方法
US7644290B2 (en) * 2003-03-31 2010-01-05 Power Measurement Ltd. System and method for seal tamper detection for intelligent electronic devices

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0573634A (ja) * 1990-10-05 1993-03-26 Nec Corp 消費電力計算手法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SASAKI A. ET AL: "Simulation ni yoru DES Jisso no DPA Tansei Hyoka", THE INSTITUTE OF ELECTRONICS, INFORMATION AND COMMUNICATION ENGINEERS GIJUTSU KENKYU HOKOKU, JP, vol. 103, no. 710, 15 March 2004 (2004-03-15), pages 25 - 30, XP002995698 *
See also references of EP1768040A4 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112134685A (zh) * 2020-10-27 2020-12-25 深圳安捷丽新技术有限公司 一种防dpa攻击的待测电路安全仿真分析方法和装置

Also Published As

Publication number Publication date
JPWO2006006198A1 (ja) 2008-04-24
KR20070031947A (ko) 2007-03-20
JP4651620B2 (ja) 2011-03-16
KR100876717B1 (ko) 2008-12-31
EP1768040A1 (en) 2007-03-28
US7460965B2 (en) 2008-12-02
CN1969277A (zh) 2007-05-23
US20070219735A1 (en) 2007-09-20
EP1768040A4 (en) 2008-05-21

Similar Documents

Publication Publication Date Title
US8108194B2 (en) Peak power detection in digital designs using emulation systems
JP4679786B2 (ja) 集積回路検証用の高精度タイミングモデル
JP4704299B2 (ja) Lsiの消費電力ピーク見積プログラム及びその装置
JP4651620B2 (ja) 電力算出装置、電力算出方法、耐タンパ性評価装置及び耐タンパ性評価方法
US9141736B2 (en) Method for power estimation for virtual prototyping models for semiconductors
WO2007066321A1 (en) Transaction-based power model in circuit designs
US20210224452A1 (en) Layout-based side-channel emission analysis
US8504347B2 (en) Simulation apparatus, simulation method, and program to perform simulation on design data of a target circuit
US20060026543A1 (en) Accurate timing analysis of integrated circuits when combinatorial logic offers a load
Müller et al. PROLEAD: A probing-based hardware leakage detection tool
CN101395484A (zh) 转换数目的高效计算及连续扫描测试中的功率耗散的估计
US9658947B2 (en) Method for ranking fault-test pairs based on waveform statistics in a mutation-based test program evaluation system
US7574344B2 (en) Static timing based IR drop analysis
JP5146087B2 (ja) 消費電力見積方法、回路設計支援装置及びプログラム
Bommu et al. Retiming-based factorization for sequential logic optimization
Sauer et al. Estimation of component criticality in early design steps
JP5338919B2 (ja) 集積回路の消費電力算出方法、消費電力算出プログラム及び消費電力算出装置
JP5262996B2 (ja) 論理シミュレーション装置、方法、及びプログラム
Morgado et al. Generating worst-case stimuli for accurate power grid analysis
CN117155540A (zh) 确定侧信道安全性的方法、装置、设备、芯片和存储介质
Verma et al. Signal Rate Activity as a Formal Method for Fault Discovery and Monitoring in Trusted and Secure Electronics Development
JP2002324098A (ja) 論理装置の検証方法および検証装置およびその検証方法を実行するプログラムを格納した記憶媒体ならびにそのプログラム
JP2012230605A (ja) キャラクタライズ装置およびそのコンピュータ・プログラム
JP2005031890A (ja) 遅延検証装置
Shen et al. Statistical Dynamic Power Estimation Techniques

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200480043252.7

Country of ref document: CN

AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2006527640

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 11579953

Country of ref document: US

Ref document number: 2007219735

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2004747101

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1020067026889

Country of ref document: KR

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Ref document number: DE

WWP Wipo information: published in national office

Ref document number: 1020067026889

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2004747101

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 11579953

Country of ref document: US