University of Brighton
Differential Power Analysis (DPA) attacks find a statistical correlation between the power consumption of a cryptographic device and intermediate values within the computation. Randomization via (Boolean) masking of intermediate values breaks this statistical dependence and thus prevents such attacks (at least up to a certain order). Especially for software implementations, (first-order) masking schemes are popular in academia and industry, albeit typically not as the sole countermeasure. The current practice then is to manually `Insert' boolean masks: essentially software developers need to manipulate low-level assembly language to implement masking. In this paper the authors make a first step to automate this process, at least for first-order boolean masking, allowing the development of compilers capable of protecting programs against DPA.