aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--pyecsca/codegen/client.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/pyecsca/codegen/client.py b/pyecsca/codegen/client.py
index 989b47b..ae42277 100644
--- a/pyecsca/codegen/client.py
+++ b/pyecsca/codegen/client.py
@@ -8,6 +8,7 @@ from typing import Mapping, Union, Optional, Tuple
import chipwhisperer as cw
import click
+import numpy as np
from chipwhisperer.capture.api.programmers import STM32FProgrammer, XMEGAProgrammer
from chipwhisperer.capture.targets import SimpleSerial
from public import public
@@ -18,6 +19,7 @@ from pyecsca.ec.params import DomainParameters, get_params
from pyecsca.ec.point import Point, InfinityPoint
from pyecsca.sca.target import (Target, SimpleSerialTarget, ChipWhispererTarget, BinaryTarget, Flashable,
SimpleSerialMessage as SMessage)
+from pyecsca.sca.trace import Trace
from .common import wrap_enum, Platform, get_model, get_coords
@@ -25,6 +27,7 @@ from rainbow.devices import rainbow_stm32f215
from rainbow import TraceConfig, Print
+
class Triggers(IntFlag):
"""
Actions that the implementation can trigger on.
@@ -310,6 +313,12 @@ class EmulatorTarget(Target):
self.__emulate(command, 'cmd_ecdsa_verify')
return bool(int.from_bytes(self.result[0], 'big'))
+ def transform_trace(self) -> Trace:
+ temp_tr = []
+ for sample in self.trace:
+ temp_tr.append(sample['register'])
+ return Trace(np.array(temp_tr))
+
def set_strigger(self):
pass