sboxU.scripts.apnDB package
Submodules
sboxU.scripts.apnDB.eightBitAPN module
Contains many 8-bit APN functions
- sboxU.scripts.apnDB.eightBitAPN.all_BeiLea()[source]
All the functions found by Beierle and Leander in 2020, availabe online at: https://zenodo.org/record/4030734
- sboxU.scripts.apnDB.eightBitAPN.all_WenTanGon()[source]
All 10 quadratic APN functions found in:
Weng, G., Tan, Y., & Gong, G. (2013). On quadratic almost perfect nonlinear functions and their related algebraic object. In Workshop on Coding and Cryptography, WCC.
- sboxU.scripts.apnDB.eightBitAPN.all_quadratic_polynomials()[source]
All the functions in Table 9 of http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.215.5432&rep=rep1&type=pdf
- sboxU.scripts.apnDB.eightBitAPN.all_quadratics()[source]
Returns all known quadratic APN functions operating on 8 bits. They are all in distinct CCZ-classes.
- sboxU.scripts.apnDB.eightBitAPN.first_QAMs()[source]
All the functions found using the QAM method before 2020, see https://link.springer.com/article/10.1007/s10623-014-9955-3
sboxU.scripts.apnDB.generate module
- sboxU.scripts.apnDB.generate.generate_apn_ccz_classes_database(ccz_class_representatives, db_path)[source]
Generates a compact TinyDB database containing one representative per CCZ-class of quadratic APN functions.
Only quadratic functions from the input list are inserted; non-quadratic functions are discarded. This produces a smaller database than generate_apn_ea_classes_database, since only CCZ-class representatives (rather than full EA-class expansions) are stored.
- Parameters:
ccz_class_representatives – A list of S-boxable objects, each being a representative of a distinct CCZ-equivalence class of APN functions.
db_path (str) – Path to the TinyDB file to create. If it already exists, it is deleted and recreated.
- sboxU.scripts.apnDB.generate.generate_apn_ea_classes_database(ccz_class_representatives, db_path)[source]
Generates a TinyDB database containing one representative per EA-class of APN functions.
For each CCZ-class representative, the full CCZ-equivalence class is enumerated and inserted into the database, so that the database ultimately holds one entry per EA-class. Quadratic and non-quadratic functions are processed separately.
- Parameters:
ccz_class_representatives – A list of S-boxable objects, each being a representative of a distinct CCZ-equivalence class of APN functions.
db_path (str) – Path to the TinyDB file to create. If it already exists, it is deleted and recreated.
sboxU.scripts.apnDB.reprs6 module
sboxU.scripts.apnDB.reprs7 module
sboxU.scripts.apnDB.reprs8 module
- sboxU.scripts.apnDB.reprs8.all_BeiLea()[source]
All the functions found by Beierle and Leander in 2020, availabe online at: https://zenodo.org/record/4030734
- sboxU.scripts.apnDB.reprs8.all_WenTanGon()[source]
All 10 quadratic APN functions found in:
Weng, G., Tan, Y., & Gong, G. (2013). On quadratic almost perfect nonlinear functions and their related algebraic object. In Workshop on Coding and Cryptography, WCC.
- sboxU.scripts.apnDB.reprs8.all_quadratic_polynomials()[source]
All the functions in Table 9 of http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.215.5432&rep=rep1&type=pdf
- sboxU.scripts.apnDB.reprs8.first_QAMs()[source]
All the functions found using the QAM method before 2020, see https://link.springer.com/article/10.1007/s10623-014-9955-3
- sboxU.scripts.apnDB.reprs8.g = a
Contains many 8-bit APN functions