Fault analysis is a frequently used side-channel attack for cryptanalysis.However,existing fault attack methods usually involve complex fault fusion analysis or computation-intensive statistical analysis of massive fa...Fault analysis is a frequently used side-channel attack for cryptanalysis.However,existing fault attack methods usually involve complex fault fusion analysis or computation-intensive statistical analysis of massive fault traces.In this work,we take a property-based formal verification approach to fault analysis.We derive fine-grained formal models for automatic fault propagation and fusion,which establish a mathematical foundation for precise measurement and formal reasoning of fault effects.We extract the correlations in fault effects in order to create properties for fault verification.We further propose a method for key recovery,by formally checking when the extracted properties can be satisfied with partial keys as the search variables.Experimental results using both unprotected and masked advanced encryption standard(AES)implementations show that our method has a key search complexity of 216,which only requires two correct and faulty ciphertext pairs to determine the secret key,and does not assume knowledge about fault location or pattern.展开更多
基金supported by the National Key R&D Program of China(No.2021YFB3100901)the National Natural Science Foundation of China(Nos.62074131 and 62004176).
文摘Fault analysis is a frequently used side-channel attack for cryptanalysis.However,existing fault attack methods usually involve complex fault fusion analysis or computation-intensive statistical analysis of massive fault traces.In this work,we take a property-based formal verification approach to fault analysis.We derive fine-grained formal models for automatic fault propagation and fusion,which establish a mathematical foundation for precise measurement and formal reasoning of fault effects.We extract the correlations in fault effects in order to create properties for fault verification.We further propose a method for key recovery,by formally checking when the extracted properties can be satisfied with partial keys as the search variables.Experimental results using both unprotected and masked advanced encryption standard(AES)implementations show that our method has a key search complexity of 216,which only requires two correct and faulty ciphertext pairs to determine the secret key,and does not assume knowledge about fault location or pattern.