Classification of 4-bit S-boxes for BOGI permutation

Data File List

  1. "bogi_applicable_pxe_class.pickle" : #2,413 BOGI-applicable PXE classes are stored in a list.

  2. "opt_bogi_applicable_pxe_class.pickle" : #20 Optimal BOGI-applicable PXE classes are stored in a list.

  3. "opt_bogi_applicable_pe_class.pickle" : #4,608 Optimal BOGI-applicable PE classes are stored in a list.

  4. "opt_bogi_applicable_xe_class.pickle" : #10,368 Optimal BOGI-applicable XE classes are stored in a list.

  5. "opt_bogi_applicable_xei_class.pickle" : #1,728 Optimal BOGI-applicable XEI classes are stored in a list.

  6. "software_code" : Includes the best B-implementation codes in sofware.

  7. "hardware_UMC180nm_code" : Includes the best B-implementation codes with UMC180nm standard cell library.

  8. "hardware_TSMC65nm_code" : Includes the best B-implementation codes with TSMC65nm standard cell library.

python script

  • "bogi_applicable_sbox.py" helps getting information from pickle data files.

Usage

  1. python3 bogi_applicable_sbox.py
  2. Choose a menu.

or

  1. import bogi_applicable_sbox
  2. Use the proper class