/AES

Implementations of white-box AES constructions and their cryptanalyses.

Primary LanguageGoBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

OpenWhiteBox AES

This repository aims to collect implementations of white-box AES constructions and their cryptanalyses. All documentation is in godocs:

  • constructions/
    • bes/ An un-obfuscated, reference BES (Big Encryption System) implementation.
    • chow/ Chow et al.'s white-box AES construction.
    • full/ Full construction from paper.
    • saes/ An un-obfuscated, reference AES implementation.
    • toy/ Toy construction from paper.
    • xiao/ Xiao and Lai's white-box AES construction.
  • cryptanalysis/
    • chow/ Cryptanalysis of Chow et al.'s construction.
    • toy/ Cryptanalysis of toy construction.
    • xiao/ Cryptanalysis of Xiao and Lai's construction.

The "full" construction is the only white-box construction which does not have a corresponding cryptanalysis implemented (though that doesn't mean it's secure). See example/ for code and instructions on how to use the "full" construction.