pyecsca.ec.mult package¶
Provides several classes implementing different scalar multiplication algorithms.
Submodules¶
- pyecsca.ec.mult.base module
- pyecsca.ec.mult.binary module
DoubleAndAddMultiplierDoubleAndAddMultiplier.requiresDoubleAndAddMultiplier.optionalsDoubleAndAddMultiplier.alwaysDoubleAndAddMultiplier.directionDoubleAndAddMultiplier.completeDoubleAndAddMultiplier.multiply()DoubleAndAddMultiplier.init()DoubleAndAddMultiplier.accumulation_orderDoubleAndAddMultiplier.short_circuitDoubleAndAddMultiplier.formulas
LTRMultiplierRTLMultiplierCoronMultiplier
- pyecsca.ec.mult.comb module
- pyecsca.ec.mult.fake module
- pyecsca.ec.mult.fixed module
FullPrecompMultiplierFullPrecompMultiplier.requiresFullPrecompMultiplier.optionalsFullPrecompMultiplier.alwaysFullPrecompMultiplier.directionFullPrecompMultiplier.completeFullPrecompMultiplier.accumulation_orderFullPrecompMultiplier.short_circuitFullPrecompMultiplier.formulasFullPrecompMultiplier.init()FullPrecompMultiplier.multiply()
- pyecsca.ec.mult.ladder module
LadderMultiplierSimpleLadderMultiplierDifferentialLadderMultiplierDifferentialLadderMultiplier.requiresDifferentialLadderMultiplier.optionalsDifferentialLadderMultiplier.init()DifferentialLadderMultiplier.short_circuitDifferentialLadderMultiplier.formulasDifferentialLadderMultiplier.completeDifferentialLadderMultiplier.fullDifferentialLadderMultiplier.multiply()
- pyecsca.ec.mult.naf module
BinaryNAFMultiplierBinaryNAFMultiplier.requiresBinaryNAFMultiplier.optionalsBinaryNAFMultiplier.alwaysBinaryNAFMultiplier.directionBinaryNAFMultiplier.completeBinaryNAFMultiplier.init()BinaryNAFMultiplier.multiply()BinaryNAFMultiplier.accumulation_orderBinaryNAFMultiplier.short_circuitBinaryNAFMultiplier.formulas
WindowNAFMultiplierWindowNAFMultiplier.requiresWindowNAFMultiplier.optionalsWindowNAFMultiplier.accumulation_orderWindowNAFMultiplier.short_circuitWindowNAFMultiplier.formulasWindowNAFMultiplier.widthWindowNAFMultiplier.precompute_negationWindowNAFMultiplier.completeWindowNAFMultiplier.init()WindowNAFMultiplier.multiply()
- pyecsca.ec.mult.window module
SlidingWindowMultiplierSlidingWindowMultiplier.requiresSlidingWindowMultiplier.optionalsSlidingWindowMultiplier.widthSlidingWindowMultiplier.recoding_directionSlidingWindowMultiplier.init()SlidingWindowMultiplier.multiply()SlidingWindowMultiplier.accumulation_orderSlidingWindowMultiplier.short_circuitSlidingWindowMultiplier.formulas
FixedWindowLTRMultiplierWindowBoothMultiplierWindowBoothMultiplier.requiresWindowBoothMultiplier.optionalsWindowBoothMultiplier.accumulation_orderWindowBoothMultiplier.short_circuitWindowBoothMultiplier.formulasWindowBoothMultiplier.widthWindowBoothMultiplier.precompute_negationWindowBoothMultiplier.init()WindowBoothMultiplier.multiply()