aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJ08nY2023-09-27 18:13:35 +0200
committerJ08nY2023-09-27 18:13:35 +0200
commit5befde87b18b129c7c1441dda42344345505f7c7 (patch)
treec7699d312821acfc7e2bacd4b130615daf780a1f
parent0602b39001ca8a8ea55df3990294de19cfd2cafb (diff)
downloadpyecsca-codegen-5befde87b18b129c7c1441dda42344345505f7c7.tar.gz
pyecsca-codegen-5befde87b18b129c7c1441dda42344345505f7c7.tar.zst
pyecsca-codegen-5befde87b18b129c7c1441dda42344345505f7c7.zip
Remove Pipfile and move to pyproject.toml setup.
-rw-r--r--Pipfile26
-rw-r--r--pyecsca/codegen/bn/bn.h2
-rw-r--r--pyproject.toml68
-rw-r--r--setup.py54
4 files changed, 69 insertions, 81 deletions
diff --git a/Pipfile b/Pipfile
deleted file mode 100644
index 8a1ddd8..0000000
--- a/Pipfile
+++ /dev/null
@@ -1,26 +0,0 @@
-[[source]]
-name = "pypi"
-url = "https://pypi.org/simple"
-verify_ssl = true
-
-[dev-packages]
-nose2 = "*"
-green = "*"
-mypy = "*"
-sphinx = "*"
-sphinx-autodoc-typehints = "*"
-coverage = "*"
-
-[packages]
-numpy = "*"
-scipy = "*"
-atpublic = "*"
-matplotlib = "*"
-cython = "*"
-fastdtw = "*"
-parameterized = "*"
-asn1crypto = "*"
-jinja2 = "*"
-
-[requires]
-python_version = "3.8"
diff --git a/pyecsca/codegen/bn/bn.h b/pyecsca/codegen/bn/bn.h
index a3d653e..ed29970 100644
--- a/pyecsca/codegen/bn/bn.h
+++ b/pyecsca/codegen/bn/bn.h
@@ -3,7 +3,7 @@
#include <tommath.h>
-#define RED_MONTGOMERY 1 //TODO: Make Montgomery work!
+#define RED_MONTGOMERY 1
#define RED_BARRET 2
#define RED_BASE 3
diff --git a/pyproject.toml b/pyproject.toml
new file mode 100644
index 0000000..90b19ae
--- /dev/null
+++ b/pyproject.toml
@@ -0,0 +1,68 @@
+[build-system]
+ requires = ["setuptools>=61.0", "setuptools_scm[toml]>=8.0"]
+ build-backend = "setuptools.build_meta"
+
+[project]
+ name = "pyecsca-codegen"
+ version = "0.2.0"
+ authors = [
+ { name = "Jan Jancar", email = "johny@neuromancer.sk" }
+ ]
+ description = "Python Elliptic Curve cryptography Side Channel Analysis toolkit (codegen package)."
+ readme = "README.md"
+ license = { "text" = "MIT" }
+ classifiers = [
+ "Development Status :: 3 - Alpha",
+ "License :: OSI Approved :: MIT License",
+ "Topic :: Security",
+ "Topic :: Security :: Cryptography",
+ "Programming Language :: Python :: 3.8",
+ "Programming Language :: Python :: 3.9",
+ "Programming Language :: Python :: 3.10",
+ "Programming Language :: Python :: 3.11",
+ "Intended Audience :: Developers",
+ "Intended Audience :: Science/Research"
+ ]
+ requires-python = ">=3.8"
+ dependencies = [
+ "pyecsca",
+ "chipwhisperer",
+ "numpy",
+ "scipy",
+ "atpublic",
+ "matplotlib",
+ "fastdtw",
+ "asn1crypto",
+ "jinja2",
+ "Click",
+ "rainbow @ git+https://github.com/Ledger-Donjon/rainbow@master"
+ ]
+
+[project.urls]
+"Homepage" = "https://https://neuromancer.sk/pyecsca/"
+"Documentation" = "https://https://neuromancer.sk/pyecsca/"
+"Bug Tracker" = "https://github.com/J08nY/pyecsca/issues"
+"Repository" = "https://github.com/J08nY/pyecsca"
+
+[project.scripts]
+builder="pyecsca.codegen.builder:main"
+client="pyecsca.codegen.client:main"
+
+[project.optional-dependencies]
+"dev" = ["mypy", "flake8"]
+"test" = ["nose2", "parameterized", "green", "coverage"]
+
+[tool.setuptools.packages.find]
+include = ["pyecsca*"]
+namespaces = true
+
+[tool.setuptools_scm]
+
+[tool.pytest.ini_options]
+testpaths = ["test"]
+markers = [
+ "slow: marks tests as slow (deselect with '-m \"not slow\"')",
+]
+filterwarnings = [
+ "ignore:Deprecated call to `pkg_resources.declare_namespace"
+]
diff --git a/setup.py b/setup.py
deleted file mode 100644
index e486193..0000000
--- a/setup.py
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/usr/bin/env python3
-from setuptools import setup, find_namespace_packages
-
-setup(
- name='pyecsca-codegen',
- author='Jan Jancar',
- author_email='johny@neuromancer.sk',
- version='0.2.0',
- packages=find_namespace_packages(include=["pyecsca.*"]),
- license="MIT",
- description="Python Elliptic Curve cryptography Side Channel Analysis toolkit (codegen package).",
- long_description=open("README.md").read(),
- long_description_content_type="text/markdown",
- classifiers=[
- "Development Status :: 3 - Alpha",
- "License :: OSI Approved :: MIT License",
- "Topic :: Security",
- "Topic :: Security :: Cryptography",
- "Programming Language :: Python :: 3.8",
- "Programming Language :: Python :: 3.9",
- "Programming Language :: Python :: 3.10",
- "Programming Language :: Python :: 3.11",
- "Intended Audience :: Developers",
- "Intended Audience :: Science/Research"
- ],
- package_data={
- "pyecsca.codegen" : ["*.h", "*.inc", "asn1/", "bn/", "hal/", "hash/", "prng/", "simpleserial/",
- "templates/", "tommath/"]
- },
- #install_package_data=True,
- python_requires='>=3.8',
- install_requires=[
- "pyecsca",
- "chipwhisperer",
- "numpy",
- "scipy",
- "atpublic",
- "matplotlib",
- "fastdtw",
- "asn1crypto",
- "jinja2",
- "Click",
- "rainbow @ git+https://github.com/Ledger-Donjon/rainbow@master"
- ],
- extras_require={
- "dev": ["mypy", "flake8"],
- "test": ["nose2", "parameterized", "green", "coverage"]
- },
- entry_points="""
- [console_scripts]
- builder=pyecsca.codegen.builder:main
- client=pyecsca.codegen.client:main
- """
-)