NC State's Nonlinear Artificial Intelligence Lab (formerly its Applied Chaos Lab) has constructed circuits which leverage an evolving chaotic dynamical system to implement logic functions.
For reasons elucidated in doc, the lab wondered if these "chaotic logic gates" would be less susceptible than an ordinary computer to side-channel attacks.
Thus, I subjected these gates to Simple Power-Analysis (SPA) attacks, computing various metrics of robustness against them.
fianle_small.pysaves recorded data as dataframe and pickles itprocess.pysplits data into distinct signatures and saves them 1D Numpy arraysplot.pygenerates function table & average power signatures, plots signaturesfun.pyperforms analysis (signature correlation measurements, etc.)
corr: correlations calculated between 0 and 1 (treats out-of-phase as uncorrelated)fullcorr: correlations calculated between -1 and 1 (treats out-of-phase as negatively correlated)abscorr: correlations calculated between -1 and 1, then abs'd (treats out-of-phase as positively correlated)

