Power Supply
Precautions should be taken to prevent intentional variation of the power and clock. Minimum and maximum operating limits should be defined and protected using comparators, watchdogs, or supervisory circuitry. Do not rely on the end user to supply a voltage within the recommended operating conditions. Using a low-dropout linear regulator or DC-DC converter will help ensure that the circuitry in the product receives power within its expected range, regardless of an improper voltage supplied at the input. Such circuitry can obviously be bypassed if the attacker has access to the board.
To aid in the reduction of EMI, noisy circuitry (such as power supply components) should be compartmentalized to one area of the board and supported with proper filtering. Additionally, power supply circuitry should be physically as close to the power input as possible.
An example of an attack using power supply variation is one with the PIC16C84 microcontroller, in which an adversary can clear the security bit without erasing the remaining memory, giving complete access to the once-protected area. This is achieved by raising VCC to VPP-0.5V (approximately 13.5V) during repeated write access to the security bit. [5]
Kocher, Jaffe, and Jun's Differential Power Analysis (DPA) [6] describes the monitoring of the electrical activity of a smart card and using mathematical methods to determine secret information stored in the device (such as user PINs or cryptographic keys). Simple Power Analysis (SPA) is a predecessor to DPA in which an attacker directly observes a system's power consumption, which varies based on the operation that the microprocessor is performing. Intensive operations, such as cryptographic functions, can easily be identified. While SPA attacks primarily use visual inspection to identify relevant power fluctuations, DPA attacks use statistical analysis and error-correction techniques to extract information correlated to secret keys. Messerges' "Power Analysis Attack Countermeasures and Their Weaknesses" [7] looks at five countermeasures previously proposed to prevent such attacks and discusses the weaknesses of each, including a noise generator using power randomization, power signal filtering using active and passive filters, detachable power supplies, and time randomization by desynchronizing the clock.