This package includes the C++ simulation code for the differential fault analysis (DFA) of SHA-3. The fault model is single-byte random fault injected at $\theta^{22}_i$, and the target is to recover the whole internal state of $\chi^{22}_i$, thus to inverse the operations and retrieve the input message and MAC key. The simulation codes for all four modes of SHA-3 functions (SHA3-224, SHA3-256, SHA3-384 and SHA3-512) are provided:

      Keccak_DFAByte_512_recover_1.0 Contains the simulation code to recover the whole internal state of $\chi^{22}_i$ for SHA3-512. Attack details are described in Section III of our FDTC'16 paper.
      Keccak_DFAByte_recover23_224_1.2 Contains the simulation code to recover the whole internal state of $\chi^{23}_i$ by injecting fault at $\theta^{23}_i$ for SHA3-224. Details can be found in Section III.C of our FDTC'16 paper.
      Keccak_DFAByte_recover23_256_1.2 Contains the simulation code to recover the whole internal state of $\chi^{23}_i$ by injecting fault at $\theta^{23}_i$ for SHA3-256. Details can be found in Section III.C of our FDTC'16 paper.
      Keccak_DFAByte_part23_224_recover_statistic_1.1 Contains the simulation code to recover the whole internal state of $\chi^{22}_i$ with part of $\chi^{23}_i$ recovered for SHA3-224. Details are described in Section IV.A of our FDTC'16 paper.
      Keccak_DFAByte_part23_256_recover_statistic_1.1 Contains the simulation code to recover the whole internal state of $\chi^{22}_i$ with part of $\chi^{23}_i$ recovered for SHA3-256. Details are given in Section IV.A of our FDTC'16 paper.

Details of DFA on SHA-3 have been given in our publication [1], and you are encouraged to read our paper(s) to understand the attacks and the code.

[1] P. Luo, Y. Fei, L. Zhang and A. A. Ding, "Differential Fault Analysis of SHA3-224 and SHA3-256," 2016 Workshop on Fault Diagnosis and Tolerance in Cryptography (FDTC), Santa Barbara, CA, 2016, pp. 4-15.

If you have any question, please contact Yunsi Fei at yfei@ece.neu.edu

The software is available to the public for free. If you use them in your work, we request you to kindly acknowledge us by citing our website with the title of “Northeastern University TeSCASE dataset” and the URL of “https://chest.coe.neu.edu/.”