diff options
| author | J08nY | 2018-12-11 21:24:35 +0100 |
|---|---|---|
| committer | J08nY | 2019-03-21 11:00:14 +0100 |
| commit | 0c740f412626f33f08d6bb9857f0c5619b9ea79c (patch) | |
| tree | c2313faaf8bc878d3d72acf2fd7c830b9512a529 | |
| parent | cbeca585d5787e8cab35fb5207339e7b22eab382 (diff) | |
| download | pyecsca-0c740f412626f33f08d6bb9857f0c5619b9ea79c.tar.gz pyecsca-0c740f412626f33f08d6bb9857f0c5619b9ea79c.tar.zst pyecsca-0c740f412626f33f08d6bb9857f0c5619b9ea79c.zip | |
| -rw-r--r-- | docs/Makefile | 2 | ||||
| -rw-r--r-- | docs/_static/logo.svg | 19 | ||||
| -rw-r--r-- | docs/conf.py | 1 | ||||
| -rw-r--r-- | docs/index.rst | 35 | ||||
| -rw-r--r-- | pyecsca/__init__.py | 11 | ||||
| -rw-r--r-- | pyecsca/sca/__init__.py | 11 | ||||
| -rw-r--r-- | pyecsca/sca/align.py (renamed from pyecsca/align.py) | 0 | ||||
| -rw-r--r-- | pyecsca/sca/combine.py (renamed from pyecsca/combine.py) | 0 | ||||
| -rw-r--r-- | pyecsca/sca/edit.py (renamed from pyecsca/edit.py) | 0 | ||||
| -rw-r--r-- | pyecsca/sca/filter.py (renamed from pyecsca/filter.py) | 0 | ||||
| -rw-r--r-- | pyecsca/sca/process.py (renamed from pyecsca/process.py) | 0 | ||||
| -rw-r--r-- | pyecsca/sca/sampling.py (renamed from pyecsca/sampling.py) | 0 | ||||
| -rw-r--r-- | pyecsca/sca/trace.py (renamed from pyecsca/trace.py) | 0 | ||||
| -rw-r--r-- | pyecsca/sca/trace_set/__init__.py (renamed from pyecsca/trace_set/__init__.py) | 0 | ||||
| -rw-r--r-- | pyecsca/sca/trace_set/base.py (renamed from pyecsca/trace_set/base.py) | 0 | ||||
| -rw-r--r-- | pyecsca/sca/trace_set/chipwhisperer.py (renamed from pyecsca/trace_set/chipwhisperer.py) | 0 | ||||
| -rw-r--r-- | pyecsca/sca/trace_set/inspector.py (renamed from pyecsca/trace_set/inspector.py) | 0 | ||||
| -rw-r--r-- | pyecsca/sca/ttest.py (renamed from pyecsca/ttest.py) | 0 | ||||
| -rw-r--r-- | test/sca/__init__.py | 0 | ||||
| -rw-r--r-- | test/sca/test_align.py (renamed from test/test_align.py) | 2 | ||||
| -rw-r--r-- | test/sca/test_combine.py (renamed from test/test_combine.py) | 2 | ||||
| -rw-r--r-- | test/sca/test_edit.py (renamed from test/test_edit.py) | 2 | ||||
| -rw-r--r-- | test/sca/test_filter.py (renamed from test/test_filter.py) | 2 | ||||
| -rw-r--r-- | test/sca/test_process.py (renamed from test/test_process.py) | 3 | ||||
| -rw-r--r-- | test/sca/test_sampling.py (renamed from test/test_sampling.py) | 2 | ||||
| -rw-r--r-- | test/sca/test_trace.py (renamed from test/test_trace.py) | 2 | ||||
| -rw-r--r-- | test/sca/test_traceset.py (renamed from test/test_traceset.py) | 2 | ||||
| -rw-r--r-- | test/sca/test_ttest.py (renamed from test/test_ttest.py) | 2 | ||||
| -rw-r--r-- | test/sca/utils.py (renamed from test/utils.py) | 2 |
29 files changed, 63 insertions, 37 deletions
diff --git a/docs/Makefile b/docs/Makefile index fff1a35..704c458 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -14,7 +14,7 @@ help: apidoc: mkdir -p api/ - sphinx-apidoc ../pyecsca/ -f -o api/ + sphinx-apidoc ../pyecsca/ -f -e -o api/ .PHONY: help apidoc Makefile diff --git a/docs/_static/logo.svg b/docs/_static/logo.svg index 6aa529d..9f694b6 100644 --- a/docs/_static/logo.svg +++ b/docs/_static/logo.svg @@ -15,7 +15,7 @@ version="1.1" id="svg8" inkscape:version="0.92.2 2405546, 2018-03-11" - sodipodi:docname="pyecsca.svg" + sodipodi:docname="logo.svg" inkscape:export-filename="/home/johny/bitmap.png" inkscape:export-xdpi="46.549129" inkscape:export-ydpi="46.549129" @@ -30,10 +30,10 @@ inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="1.979899" - inkscape:cx="83.004239" - inkscape:cy="132.81104" + inkscape:cx="213.66877" + inkscape:cy="92.973704" inkscape:document-units="mm" - inkscape:current-layer="layer1" + inkscape:current-layer="g910" showgrid="false" inkscape:pagecheckerboard="true" showguides="false" @@ -55,7 +55,7 @@ <dc:format>image/svg+xml</dc:format> <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> - <dc:title></dc:title> + <dc:title /> </cc:Work> </rdf:RDF> </metadata> @@ -169,10 +169,11 @@ inkscape:groupmode="layer" transform="translate(3.7487793e-7,2.477417e-6)"> <path - style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:21.78897667;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" - d="m 234.19727,109.23633 -22.90625,0.18555 14.60156,17.65039 c 29.09692,35.18697 35.76311,67.22942 33.33008,100.20117 -1.15621,15.66857 -4.65587,31.54189 -9.05078,47.63476 -4.88843,-23.7699 -14.18946,-50.33182 -32.78907,-70.99804 l -13.76758,-15.29493 -4.91015,19.99024 c -1.77849,7.24319 -1.36022,13.27898 -0.53906,17.60547 0.82115,4.32649 1.71801,7.68318 1.85351,16.64648 0.35218,23.29616 -14.65059,43.50055 -31.99219,68.98242 -17.33087,25.46613 -36.07165,56.24483 -35.35937,98.84375 0.0677,49.46271 43.42772,107.90172 134.875,120.44727 -6.83976,-1.81878 -14.15638,-4.88891 -23.25781,-9.92969 -40.54315,-22.45466 -4.36614,-55.6491 17.09961,-83.17578 0.75761,26.76907 48.04395,64.4112 38.80273,18.20508 -7.14285,-35.71427 5.54617,-74.3988 25.87305,-98.7168 -8.04405,36.73185 12.51061,71.54547 36.08203,102.25977 20.6277,26.87856 -28.06384,71.30748 -61.42774,73.21289 -2.6449,0.15105 -5.13352,0.27884 -7.51953,0.36719 4.08281,0.15949 8.2358,0.24577 12.48047,0.23242 58.44419,-0.18369 102.80336,-13.70878 132.78711,-40.94141 29.98371,-27.23259 44.21878,-67.35251 44.96289,-116.46289 0.77106,-50.8902 -11.92864,-82.89575 -53.80664,-125.22656 l -17.03711,-17.23047 -1.57226,24.18359 c -2.1583,33.17592 -8.33183,54.31023 -14.85352,68.08985 6.83259,-52.27718 -7.27743,-101.18546 -32.8125,-139 -31.81561,-47.11527 -80.72805,-78.1586 -129.14648,-77.76172 z" - transform="scale(0.26458333)" + style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10.89448738;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" + d="m 117.09766,54.619141 -11.45313,0.0918 7.30078,8.826171 c 14.54846,17.593485 17.88253,33.613736 16.66602,50.099608 -0.57811,7.83428 -2.32794,15.76997 -4.52539,23.8164 -5.0172,-27.54486 -14.24261,-36.52511 -27.743586,-42.164333 1.626612,8.388513 2.53824,19.222903 2.667416,26.138943 0.17609,11.64808 -7.325299,21.75126 -15.996098,34.49219 -8.665435,12.73307 -18.035828,28.12242 -17.679688,49.42188 0.03385,24.73135 21.713862,53.94988 67.437496,60.22265 -3.41988,-0.90939 -7.07819,-2.44445 -11.6289,-4.96484 -20.27158,-11.22733 -2.18405,-27.82455 8.54883,-41.58789 0.3788,13.38453 24.02295,32.20657 19.40234,9.10351 -3.57142,-17.85713 2.77211,-37.20037 12.93555,-49.35937 -4.02203,18.36592 6.2553,35.77371 18.04101,51.13086 10.31385,13.43928 -14.03094,35.65276 -30.71289,36.60547 -1.32245,0.0755 -2.56676,0.13942 -3.75976,0.18359 2.0414,0.0798 4.1179,0.12386 6.24023,0.11719 41.40679,0.96558 88.67669,-27.76842 88.875,-66.67231 0.19831,-38.90389 -11.63682,-59.20157 -35.42187,-83.25933 l -0.78711,12.09179 c -1.07915,16.58796 -4.16494,27.15512 -7.42579,34.04493 C 201.49442,136.85946 194.43941,112.40727 181.67188,93.5 165.76407,69.942366 141.30687,54.420701 117.09766,54.619141 Z" + transform="matrix(0.52916668,0,0,0.52916668,-3.7487793e-7,-2.477417e-6)" id="path906" - inkscape:connector-curvature="0" /> + inkscape:connector-curvature="0" + sodipodi:nodetypes="cccccccsccscscsccczcccsc" /> </g> </svg> diff --git a/docs/conf.py b/docs/conf.py index 09af711..3e081ad 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -45,7 +45,6 @@ extensions = [ 'sphinx_autodoc_typehints', 'sphinx.ext.todo', 'sphinx.ext.mathjax', - 'sphinx.ext.ifconfig', 'sphinx.ext.viewcode', ] diff --git a/docs/index.rst b/docs/index.rst index 7b53b34..43ed1fa 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -9,6 +9,15 @@ pyecsca [pɪɛtska] **Py**\ thon **E**\ lliptic **C**\ urve cryptography **S**\ ide-**C**\ hannel **A**\ nalysis toolkit. +API +=== + +.. toctree:: + :titlesonly: + + api/pyecsca + + Requirements ============ @@ -29,12 +38,30 @@ Docs - sphinx_ -API -=== +License +======= -.. toctree:: - api/pyecsca + MIT License + + Copyright (c) 2018 + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. .. _Numpy: https://www.numpy.org .. _Scipy: https://www.scipy.org diff --git a/pyecsca/__init__.py b/pyecsca/__init__.py index c2fd7ff..e69de29 100644 --- a/pyecsca/__init__.py +++ b/pyecsca/__init__.py @@ -1,11 +0,0 @@ -from .align import * -from .combine import * -from .edit import * -from .filter import * -from .process import * -from .sampling import * -from .ttest import * -from .trace import * -from .trace_set.base import * -from .trace_set.inspector import * -from .trace_set.chipwhisperer import *
\ No newline at end of file diff --git a/pyecsca/sca/__init__.py b/pyecsca/sca/__init__.py new file mode 100644 index 0000000..7e44c62 --- /dev/null +++ b/pyecsca/sca/__init__.py @@ -0,0 +1,11 @@ +from .align import * +from .combine import * +from .edit import * +from .filter import * +from .process import * +from .sampling import * +from .ttest import * +from .trace import * +from .trace_set.base import * +from .trace_set.inspector import * +from .trace_set.chipwhisperer import * diff --git a/pyecsca/align.py b/pyecsca/sca/align.py index ff586ab..ff586ab 100644 --- a/pyecsca/align.py +++ b/pyecsca/sca/align.py diff --git a/pyecsca/combine.py b/pyecsca/sca/combine.py index c484748..c484748 100644 --- a/pyecsca/combine.py +++ b/pyecsca/sca/combine.py diff --git a/pyecsca/edit.py b/pyecsca/sca/edit.py index f01a0dc..f01a0dc 100644 --- a/pyecsca/edit.py +++ b/pyecsca/sca/edit.py diff --git a/pyecsca/filter.py b/pyecsca/sca/filter.py index bc221ce..bc221ce 100644 --- a/pyecsca/filter.py +++ b/pyecsca/sca/filter.py diff --git a/pyecsca/process.py b/pyecsca/sca/process.py index 8e983b2..8e983b2 100644 --- a/pyecsca/process.py +++ b/pyecsca/sca/process.py diff --git a/pyecsca/sampling.py b/pyecsca/sca/sampling.py index 29dc251..29dc251 100644 --- a/pyecsca/sampling.py +++ b/pyecsca/sca/sampling.py diff --git a/pyecsca/trace.py b/pyecsca/sca/trace.py index a9d6892..a9d6892 100644 --- a/pyecsca/trace.py +++ b/pyecsca/sca/trace.py diff --git a/pyecsca/trace_set/__init__.py b/pyecsca/sca/trace_set/__init__.py index e69de29..e69de29 100644 --- a/pyecsca/trace_set/__init__.py +++ b/pyecsca/sca/trace_set/__init__.py diff --git a/pyecsca/trace_set/base.py b/pyecsca/sca/trace_set/base.py index 2221933..2221933 100644 --- a/pyecsca/trace_set/base.py +++ b/pyecsca/sca/trace_set/base.py diff --git a/pyecsca/trace_set/chipwhisperer.py b/pyecsca/sca/trace_set/chipwhisperer.py index 31e2479..31e2479 100644 --- a/pyecsca/trace_set/chipwhisperer.py +++ b/pyecsca/sca/trace_set/chipwhisperer.py diff --git a/pyecsca/trace_set/inspector.py b/pyecsca/sca/trace_set/inspector.py index dcb7918..dcb7918 100644 --- a/pyecsca/trace_set/inspector.py +++ b/pyecsca/sca/trace_set/inspector.py diff --git a/pyecsca/ttest.py b/pyecsca/sca/ttest.py index b9ecd36..b9ecd36 100644 --- a/pyecsca/ttest.py +++ b/pyecsca/sca/ttest.py diff --git a/test/sca/__init__.py b/test/sca/__init__.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/sca/__init__.py diff --git a/test/test_align.py b/test/sca/test_align.py index d86d177..3e64334 100644 --- a/test/test_align.py +++ b/test/sca/test_align.py @@ -1,7 +1,7 @@ from unittest import TestCase import numpy as np -from pyecsca import align_correlation, align_peaks, align_sad, align_dtw_scale,\ +from pyecsca.sca import align_correlation, align_peaks, align_sad, align_dtw_scale,\ align_dtw, Trace, InspectorTraceSet from .utils import slow, plot diff --git a/test/test_combine.py b/test/sca/test_combine.py index ca23197..113eb69 100644 --- a/test/test_combine.py +++ b/test/sca/test_combine.py @@ -1,7 +1,7 @@ from unittest import TestCase import numpy as np -from pyecsca import Trace, CombinedTrace, average, conditional_average, standard_deviation +from pyecsca.sca import Trace, CombinedTrace, average, conditional_average, standard_deviation class CombineTests(TestCase): diff --git a/test/test_edit.py b/test/sca/test_edit.py index b1c2e39..88376aa 100644 --- a/test/test_edit.py +++ b/test/sca/test_edit.py @@ -2,7 +2,7 @@ from unittest import TestCase import numpy as np -from pyecsca import Trace, trim, reverse, pad +from pyecsca.sca import Trace, trim, reverse, pad class EditTests(TestCase): diff --git a/test/test_filter.py b/test/sca/test_filter.py index a454d98..c95d5b5 100644 --- a/test/test_filter.py +++ b/test/sca/test_filter.py @@ -1,7 +1,7 @@ from unittest import TestCase import numpy as np -from pyecsca import Trace, filter_lowpass, filter_highpass, filter_bandpass, filter_bandstop +from pyecsca.sca import Trace, filter_lowpass, filter_highpass, filter_bandpass, filter_bandstop from .utils import plot diff --git a/test/test_process.py b/test/sca/test_process.py index a3ba85f..5b80d1f 100644 --- a/test/test_process.py +++ b/test/sca/test_process.py @@ -1,8 +1,7 @@ from unittest import TestCase import numpy as np -from pyecsca import Trace, absolute, invert, threshold, rolling_mean, offset, recenter, normalize, normalize_wl -from .utils import plot +from pyecsca.sca import Trace, absolute, invert, threshold, rolling_mean, offset, recenter, normalize, normalize_wl class ProcessTests(TestCase): diff --git a/test/test_sampling.py b/test/sca/test_sampling.py index ed8eaf2..75a227d 100644 --- a/test/test_sampling.py +++ b/test/sca/test_sampling.py @@ -1,7 +1,7 @@ from unittest import TestCase import numpy as np -from pyecsca import Trace, downsample_average, downsample_pick, downsample_decimate +from pyecsca.sca import Trace, downsample_average, downsample_pick, downsample_decimate from .utils import plot diff --git a/test/test_trace.py b/test/sca/test_trace.py index 9c144f6..91b7161 100644 --- a/test/test_trace.py +++ b/test/sca/test_trace.py @@ -1,6 +1,6 @@ from unittest import TestCase import numpy as np -from pyecsca import Trace +from pyecsca.sca import Trace class TraceTests(TestCase): diff --git a/test/test_traceset.py b/test/sca/test_traceset.py index fe847c7..90768c2 100644 --- a/test/test_traceset.py +++ b/test/sca/test_traceset.py @@ -2,7 +2,7 @@ from unittest import TestCase import os.path import tempfile -from pyecsca import TraceSet, InspectorTraceSet, ChipWhispererTraceSet +from pyecsca.sca import TraceSet, InspectorTraceSet, ChipWhispererTraceSet class TraceSetTests(TestCase): diff --git a/test/test_ttest.py b/test/sca/test_ttest.py index 49cc4ea..02f78c5 100644 --- a/test/test_ttest.py +++ b/test/sca/test_ttest.py @@ -1,7 +1,7 @@ from unittest import TestCase import numpy as np -from pyecsca import Trace, welch_ttest, student_ttest +from pyecsca.sca import Trace, welch_ttest, student_ttest class TTestTests(TestCase): diff --git a/test/utils.py b/test/sca/utils.py index e7d5819..1083b87 100644 --- a/test/utils.py +++ b/test/sca/utils.py @@ -1,6 +1,6 @@ import matplotlib.pyplot as plt from unittest import TestCase -from pyecsca import Trace +from pyecsca.sca import Trace from os.path import join, exists from os import mkdir, getenv |
