SIde-Channel Analysis toolKit (SICAK)
Software toolkit for side-channel analysis
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 12345]
 CBlockProcessBlock data processing QT plugin interface
 CPredictAES128BackAES-128 last round working register Hamming distance power predictions SICAK BlockProcess plugin
 CPredictAES128FrontAES-128 first round S-box Hamming weight power predictions SICAK BlockProcess plugin
 CCharDeviceCharacter device QT plugin interface
 CSerialPortSerial port interface (Win32/Posix) SICAK CharDevice plugin
 CSmartCardSmartCard Win32 SICAK CharDevice plugin
 CConfigLoaderA QT based command line options loader/parser
 CVisu::CorrelationTraceSeries
 CCoutProgressA singleton class providing a standard output progress bar, including remaining time estimate
 CCpaCorrEvalCPA correlation matrix evaluation QT plugin interface
 CMaxAbsCoefCPA correlation matrix evaluation SICAK CpaCorrEval plugin, looking for maximum absolute value of coefficient
 CMaxCoefCPA correlation matrix evaluation SICAK CpaCorrEval plugin, looking for maximum value of coefficient
 CMaxEdgeCPA correlation matrix evaluation SICAK CpaCorrEval plugin, looking for maximum edge, i.e. largest derivation of correlation trace, approximated by convolving with derivative of gaussian
 CMinCoefCPA correlation matrix evaluation SICAK CpaCorrEval plugin, looking for minimum value of coefficient
 CCpaEngineCPA computation engine QT plugin interface
 CLocalCPACPA context computation SICAK CpaEngine plugin
 COclCPACPA context computation SICAK CpaEngine plugin, OpenCL implementation
 CCpaKeyEvalCPA keyguess evaluation QT plugin interface
 CAes128BackCPA keyguess evaluation SICAK CpaKeyEval plugin, reverses the AES-128 last round key to the cipher key
 CSimpleCharCPA keyguess evaluation SICAK CpaKeyEval plugin, simply creates cipher key from byte-based CPA keyguess
 CDataTypeA base abstract class, representing all the data types
 CArrayType< T >An abstract class, representing all the array-like data types
 CMatrixType< T >An abstract class, representing all the matrix-like data types
 CMatrix< T >A class representing a matrix, stored in the machine's free space
 CPowerPredictions< T >A class representing a Matrix with 'noOfTraces' power predictions, with 'noOfCandidates' key candidates per prediction
 CPowerTraces< T >A class representing a Matrix with 'noOfTraces' power traces, with 'samplesPerTrace' samples per power trace
 CVectorType< T >An abstract class, representing all the vector-like data types
 CVector< T >A class representing a vector, stored in the machine's free space
 CArrayType< double >
 CVectorType< double >
 CVector< double >
 CArrayType< uint8_t >
 CVectorType< uint8_t >
 CVector< uint8_t >
 CStructuredTypeAn abstract class, representing all the structured data types
 CComputationalContext< T >An abstract class, representing all the computational contexts
 CUnivariateContext< T >A class representing a Two-population Univariate Moment-based statistical context
 Cexception
 CExceptionA base exception
 CInvalidInputExceptionAn exception caused by bad settings of input parameters or arguments
 CRuntimeExceptionAn exception which cannot be directly influenced by the user, or predicted beforehand
 CMeasurementMeasurement scenario QT plugin interface
 CRandom128APDUCPA Measurement scenario plugin: sends N times a command APDU: CLA=0x80, INS=0x60, P1=P2=0x00, Lc=0x10, Le=0x10 with 16 bytes of random data and receives 16 bytes of ciphertexts back. Makes use of multiple captures per oscilloscope run (e.g. Picoscope's rapid block mode)
 CRandom128COCPA Measurement scenario plugin: sends key command (0x01), followed by the cipher key, followed by N times {encrypt command (0x02) followed by 16 bytes of random data}. Makes use of multiple captures per oscilloscope run (e.g. Picoscope's rapid block mode)
 CTTest128APDUCPA Measurement scenario plugin: sends N times a command APDU: CLA=0x80, INS=0x60, P1=P2=0x00, Lc=0x10, Le=0x10 with 16 bytes of either random or constant data and receives 16 bytes of ciphertexts back. Makes use of multiple captures per oscilloscope run (e.g. Picoscope's rapid block mode)
 CTTest128COCPA Measurement scenario plugin: sends key command (0x01), followed by the cipher key, followed by N times {encrypt command (0x02) followed by 16 bytes of either random or constant data}. Makes use of multiple captures per oscilloscope run (e.g. Picoscope's rapid block mode)
 COclEngine< T >OpenCL base class template used in other SICAK plugins
 COclEngine< double >
 COclCpaEngine< double, int16_t, uint8_t >
 COclEngine< Tc >
 COclCpaEngine< Tc, Tt, Tp >
 COscilloscopeOscilloscope QT plugin interface
 CKeysight3000Oscilloscope plugin for Keysight 3000 series oscilloscope, using ScpiDevice for communication
 CPs6000Oscilloscope plugin for PicoScope 6000, using official driver for communication
 CVisu::PowerTraceSeries
 CQObject
 CAes128BackCPA keyguess evaluation SICAK CpaKeyEval plugin, reverses the AES-128 last round key to the cipher key
 CCorrEvClass providing text-based UI front-end to CpaCorrEval and CpaKeyEval plug-in modules
 CKeysight3000Oscilloscope plugin for Keysight 3000 series oscilloscope, using ScpiDevice for communication
 CLocalCPACPA context computation SICAK CpaEngine plugin
 CLocalTTestT-test context computation SICAK TTestEngine plugin
 CMaxAbsCoefCPA correlation matrix evaluation SICAK CpaCorrEval plugin, looking for maximum absolute value of coefficient
 CMaxCoefCPA correlation matrix evaluation SICAK CpaCorrEval plugin, looking for maximum value of coefficient
 CMaxEdgeCPA correlation matrix evaluation SICAK CpaCorrEval plugin, looking for maximum edge, i.e. largest derivation of correlation trace, approximated by convolving with derivative of gaussian
 CMeasClass providing text-based UI front-end to Measurement, Oscilloscope and CharDevice plug-in modules
 CMinCoefCPA correlation matrix evaluation SICAK CpaCorrEval plugin, looking for minimum value of coefficient
 COclCPACPA context computation SICAK CpaEngine plugin, OpenCL implementation
 CPredictAES128BackAES-128 last round working register Hamming distance power predictions SICAK BlockProcess plugin
 CPredictAES128FrontAES-128 first round S-box Hamming weight power predictions SICAK BlockProcess plugin
 CPrepClass providing text-based UI front-end to BlockProcess and TracesProcess plug-in modules
 CPs6000Oscilloscope plugin for PicoScope 6000, using official driver for communication
 CRandom128APDUCPA Measurement scenario plugin: sends N times a command APDU: CLA=0x80, INS=0x60, P1=P2=0x00, Lc=0x10, Le=0x10 with 16 bytes of random data and receives 16 bytes of ciphertexts back. Makes use of multiple captures per oscilloscope run (e.g. Picoscope's rapid block mode)
 CRandom128COCPA Measurement scenario plugin: sends key command (0x01), followed by the cipher key, followed by N times {encrypt command (0x02) followed by 16 bytes of random data}. Makes use of multiple captures per oscilloscope run (e.g. Picoscope's rapid block mode)
 CSerialPortSerial port interface (Win32/Posix) SICAK CharDevice plugin
 CSimpleCharCPA keyguess evaluation SICAK CpaKeyEval plugin, simply creates cipher key from byte-based CPA keyguess
 CSmartCardSmartCard Win32 SICAK CharDevice plugin
 CStanClass providing text-based UI front-end to CpaEngine and TTestEngine plug-in modules
 CTTest128APDUCPA Measurement scenario plugin: sends N times a command APDU: CLA=0x80, INS=0x60, P1=P2=0x00, Lc=0x10, Le=0x10 with 16 bytes of either random or constant data and receives 16 bytes of ciphertexts back. Makes use of multiple captures per oscilloscope run (e.g. Picoscope's rapid block mode)
 CTTest128COCPA Measurement scenario plugin: sends key command (0x01), followed by the cipher key, followed by N times {encrypt command (0x02) followed by 16 bytes of either random or constant data}. Makes use of multiple captures per oscilloscope run (e.g. Picoscope's rapid block mode)
 CVisuClass providing text-based UI allowing to plot power traces, correlation traces or t-value traces
 CScpiDeviceSCPI device interface, using either USBTMC Linux module or VISA library
 CTracesProcessTraces processing QT plugin interface
 CTTestEngineT-test computation engine QT plugin interface
 CLocalTTestT-test context computation SICAK TTestEngine plugin