aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJ08nY2023-11-27 10:34:00 +0100
committerJ08nY2023-11-27 10:34:00 +0100
commitca8ba425ac863317bd72ee7790dfe722cfdbc6fd (patch)
treef77f5734bd9a3908c47c270c2a54ac6996650c6c
parentb61cdf49c1a449e1347c500ac07e8f1d5cb4de29 (diff)
downloadpyecsca-notebook-ca8ba425ac863317bd72ee7790dfe722cfdbc6fd.tar.gz
pyecsca-notebook-ca8ba425ac863317bd72ee7790dfe722cfdbc6fd.tar.zst
pyecsca-notebook-ca8ba425ac863317bd72ee7790dfe722cfdbc6fd.zip
Add more formulas into formula analysis.
-rw-r--r--re/formulas.ipynb31
1 files changed, 23 insertions, 8 deletions
diff --git a/re/formulas.ipynb b/re/formulas.ipynb
index 7a9df7a..9054781 100644
--- a/re/formulas.ipynb
+++ b/re/formulas.ipynb
@@ -261,6 +261,13 @@
" (\"other\", \"Curve25519\"),\n",
" DoublingEFDFormula,\n",
" ],\n",
+ " [\n",
+ " \"ladd-botan-x25519\", #ok\n",
+ " MontgomeryModel,\n",
+ " \"xz\",\n",
+ " (\"other\", \"Curve25519\"),\n",
+ " LadderEFDFormula,\n",
+ " ],\n",
"]"
]
},
@@ -294,6 +301,16 @@
{
"cell_type": "code",
"execution_count": null,
+ "id": "74002746-f3f3-4528-9042-b9ab51791bc2",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "len(lib_formulas)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
"id": "e0a91c61-1565-49bd-9604-5a371710f91a",
"metadata": {},
"outputs": [],
@@ -360,7 +377,7 @@
"source": [
"xz_ladders = [formula for formula in mont.coordinates[\"xz\"].formulas.values() if formula.name.startswith(\"ladd\") or formula.name.startswith(\"mladd\")] + [\n",
" lib_formulas[\"ladd-rfc7748\"], lib_formulas[\"ladd-hacl-x25519\"], lib_formulas[\"ladd-openssl-x25519\"], lib_formulas[\"ladd-bc-r1rv76-x25519\"],\n",
- " lib_formulas[\"ladd-go-1214\"], lib_formulas[\"ladd-boringssl-x25519\"]]\n",
+ " lib_formulas[\"ladd-go-1214\"], lib_formulas[\"ladd-boringssl-x25519\"], lib_formulas[\"ladd-botan-x25519\"]]\n",
"analyze_formulas(xz_ladders)\n",
"analyze_formulas(xz_ladders, curve25519.curve)"
]
@@ -385,7 +402,7 @@
"metadata": {},
"outputs": [],
"source": [
- "jac3_adds = [formula for formula in sw.coordinates[\"jacobian-3\"].formulas.values() if formula.name.startswith(\"add\")] + [\n",
+ "jac3_adds = [formula for formula in sw.coordinates[\"jacobian-3\"].formulas.values() if formula.name.startswith(\"add\") or formula.name.startswith(\"madd\")] + [\n",
" lib_formulas[\"add-boringssl-p224\"], lib_formulas[\"add-openssl-z256\"], lib_formulas[\"add-openssl-z256a\"],\n",
" lib_formulas[\"add-gecc-322\"]]\n",
"jac3_adds_fixed = []\n",
@@ -421,12 +438,10 @@
"cell_type": "code",
"execution_count": null,
"id": "ae0cde46-061c-48f1-9fb6-67a2798c5068",
- "metadata": {
- "scrolled": true
- },
+ "metadata": {},
"outputs": [],
"source": [
- "mod_adds = [formula for formula in sw.coordinates[\"modified\"].formulas.values() if formula.name.startswith(\"add\")] + [\n",
+ "mod_adds = [formula for formula in sw.coordinates[\"modified\"].formulas.values() if formula.name.startswith(\"add\") or formula.name.startswith(\"madd\")] + [\n",
" lib_formulas[\"add-bc-r1rv76-mod\"]]\n",
"analyze_formulas(mod_adds)\n",
"analyze_formulas(mod_adds, p256_mod.curve)"
@@ -478,7 +493,7 @@
"metadata": {},
"outputs": [],
"source": [
- "proj3_adds = [formula for formula in sw.coordinates[\"projective-3\"].formulas.values() if formula.name.startswith(\"add\")] + [\n",
+ "proj3_adds = [formula for formula in sw.coordinates[\"projective-3\"].formulas.values() if formula.name.startswith(\"add\") or formula.name.startswith(\"madd\")] + [\n",
" lib_formulas[\"add-sunec-v21\"]]\n",
"analyze_formulas(proj3_adds)\n",
"analyze_formulas(proj3_adds, p256_proj3.curve)"
@@ -504,7 +519,7 @@
"metadata": {},
"outputs": [],
"source": [
- "ext_adds = [formula for formula in te.coordinates[\"extended-1\"].formulas.values() if formula.name.startswith(\"add\")] + [\n",
+ "ext_adds = [formula for formula in te.coordinates[\"extended-1\"].formulas.values() if formula.name.startswith(\"add\") or formula.name.startswith(\"madd\")] + [\n",
" lib_formulas[\"add-sunec-v21-ed25519\"]]\n",
"analyze_formulas(ext_adds)"
]