diff options
| author | J08nY | 2023-11-16 14:37:13 +0100 |
|---|---|---|
| committer | J08nY | 2023-11-16 14:37:13 +0100 |
| commit | ad618797cdca7843db597d05e5ef13a401807a74 (patch) | |
| tree | ad48a46d4e3dc5f55c52ec6e7c3a153e3c0e334f /test | |
| parent | d183a542ffbe9cfc99cac0dcadf7f2953c01d84a (diff) | |
| download | pyecsca-ad618797cdca7843db597d05e5ef13a401807a74.tar.gz pyecsca-ad618797cdca7843db597d05e5ef13a401807a74.tar.zst pyecsca-ad618797cdca7843db597d05e5ef13a401807a74.zip | |
Add to_model randomized mapping.
Diffstat (limited to 'test')
| -rw-r--r-- | test/data/formulas/add-openssl-z256.op3 | 2 | ||||
| -rw-r--r-- | test/data/formulas/add-sunec-v21-ed25519 | 2 | ||||
| -rw-r--r-- | test/data/formulas/dbl-sunec-v21-ed25519 | 2 | ||||
| -rw-r--r-- | test/sca/test_structural.py | 14 |
4 files changed, 15 insertions, 5 deletions
diff --git a/test/data/formulas/add-openssl-z256.op3 b/test/data/formulas/add-openssl-z256.op3 index bc0ccfc..3819546 100644 --- a/test/data/formulas/add-openssl-z256.op3 +++ b/test/data/formulas/add-openssl-z256.op3 @@ -11,7 +11,7 @@ H = U2 - U1 Rsqr = R^2 Z3 = H * Z1 Hsqr = H^2 -Z3 = H * Z2 +Z3 = Z3 * Z2 Hcub = Hsqr * H U2 = U1 * Hsqr Hsqr = 2 * U2 diff --git a/test/data/formulas/add-sunec-v21-ed25519 b/test/data/formulas/add-sunec-v21-ed25519 index 078aa39..5814455 100644 --- a/test/data/formulas/add-sunec-v21-ed25519 +++ b/test/data/formulas/add-sunec-v21-ed25519 @@ -1,2 +1,2 @@ source Java JDK 21 https://github.com/openjdk/jdk/blob/jdk-21-ga/src/jdk.crypto.ec/share/classes/sun/security/ec/ed/Ed25519Operations.java#L147 -coords extended +coords extended-1 diff --git a/test/data/formulas/dbl-sunec-v21-ed25519 b/test/data/formulas/dbl-sunec-v21-ed25519 index 6814542..f20095f 100644 --- a/test/data/formulas/dbl-sunec-v21-ed25519 +++ b/test/data/formulas/dbl-sunec-v21-ed25519 @@ -1,2 +1,2 @@ source Java JDK 21 https://github.com/openjdk/jdk/blob/jdk-21-ga/src/jdk.crypto.ec/share/classes/sun/security/ec/ed/Ed25519Operations.java#L184 -coords extended +coords extended-1 diff --git a/test/sca/test_structural.py b/test/sca/test_structural.py index be1f45f..0587f7a 100644 --- a/test/sca/test_structural.py +++ b/test/sca/test_structural.py @@ -11,8 +11,18 @@ from pyecsca.ec.formula import ( ) from pyecsca.ec.model import ShortWeierstrassModel, MontgomeryModel, TwistedEdwardsModel from pyecsca.ec.params import get_params -from pyecsca.sca.re.structural import formula_similarity, formula_similarity_fuzz -import itertools +from pyecsca.sca.re.structural import formula_similarity + + +def test_formula_similarity(secp128r1): + add_bl = secp128r1.curve.coordinate_model.formulas["add-2007-bl"] + add_rcb = secp128r1.curve.coordinate_model.formulas["add-2015-rcb"] + out = formula_similarity(add_bl, add_rcb) + assert out["output"] == 0 + assert out["ivs"] < 0.5 + out_same = formula_similarity(add_bl, add_bl) + assert out_same["output"] == 1 + assert out_same["ivs"] == 1 @pytest.mark.parametrize( |
