aboutsummaryrefslogtreecommitdiff

modexpng_fpga_model

Math model of ModExpNG IP core. The model mimics how an FPGA does modular exponentiation.

First use the scripts from the vector/ folder to generate and format a keypair vector, then edit the DUMP_* switches in modexpng_fpga_model.py to dump the desired internal values. The FORCE_OVERFLOW setting artificially forces the virtually neven seen internal interim overflow situation and allows its handler to be tested. You can also un-comment the #c.dump_banks() line and move it anywhere within sign_using_crt() and/or sign_without_crt() to dump the contents of entire core's memory.