Project Name: pyecsca
Keywords: ecc, sca, PicoScope, ChipWhisperer, Inspector
Brief Description:
Python Elliptic Curve cryptography Side-Channel Analysis toolkit.
pyecsca aims to fill a gap in SCA tooling for Elliptic Curve Cryptography, it focuses on black-box implementations of ECC and presents a way to extract implementation information about a black-box implementation of ECC through side-channels.
It currently provides:
Enumeration
Enumeration of millions of possible ECC implementation configurations (see Configuration space)
Simulation
Simulation and execution tracing of key generation, ECDH and ECDSA (see Simulation)
Code generation
Synthesis of C implementations of ECC for embedded devices, given any implementation configuration (see Code generation), CPU-level emulation of implementations (see Emulation and leakage simulation)
Trace acquisition
Trace acquisition using PicoScope/ChipWhisperer oscilloscopes (see Measurement)
Trace processing
Trace processing capabilities, e.g. signal-processing, filtering, averaging, cutting, aligning (pyecsca.sca package)
Trace visualization
Trace visualization using holoviews and datashader (see Visualization)
Smartcard communication
Communication via PCSC/LEIA with a smartcard target (see Smartcards)
Reverse-engineering
Reverse-engineering of black-box ECC via RPA-RE and ZVP-RE methods (see RPA-based reverse-engineering and ZVP-based reverse-engineering)
Link to Repository: https://pyecsca.org/
