aboutsummaryrefslogtreecommitdiffstats
path: root/docs/development
diff options
context:
space:
mode:
authorAlex Stapleton <alexs@prol.etari.at>2015-05-03 11:38:36 +0100
committerAlex Stapleton <alexs@prol.etari.at>2015-05-03 18:14:50 +0100
commite54478f5194474ea1be4f4a3e3ca2dde9b3df2ed (patch)
tree0a20dcc22f6a897f6a3b0d0572a6bfd5291770f3 /docs/development
parentf6a1cf6ba4c61545cde39612a960d82b1f5f7c09 (diff)
downloadcryptography-e54478f5194474ea1be4f4a3e3ca2dde9b3df2ed.tar.gz
cryptography-e54478f5194474ea1be4f4a3e3ca2dde9b3df2ed.tar.bz2
cryptography-e54478f5194474ea1be4f4a3e3ca2dde9b3df2ed.zip
Docs for custom secp256k1 vectors
Diffstat (limited to 'docs/development')
-rw-r--r--docs/development/custom-vectors/secp256k1.rst32
1 files changed, 32 insertions, 0 deletions
diff --git a/docs/development/custom-vectors/secp256k1.rst b/docs/development/custom-vectors/secp256k1.rst
new file mode 100644
index 00000000..b19bf4e4
--- /dev/null
+++ b/docs/development/custom-vectors/secp256k1.rst
@@ -0,0 +1,32 @@
+SECP256K1 vector creation
+=========================
+
+This page documents the code that was used to generate the SECP256K1 elliptic
+curve test vectors as well as code used to verify them against another
+implementation.
+
+
+Creation
+--------
+
+The vectors are generated using a `pure Python ecdsa`_ implementation. The test
+messages and combinations of algorithms are derived from the NIST vector data.
+
+.. literalinclude:: /development/custom-vectors/secp256k1/generate_secp256k1.py
+
+Download link: :download:`generate_secp256k1.py
+</development/custom-vectors/secp256k1/generate_secp256k1.py>`
+
+
+Verification
+------------
+
+``cryptography`` was modified to support the SECP256K1 curve. Then
+the following python script was run to generate the vector files.
+
+.. literalinclude:: /development/custom-vectors/secp256k1/verify_secp256k1.py
+
+Download link: :download:`verify_secp256k1.py
+</development/custom-vectors/secp256k1/verify_secp256k1.py>`
+
+.. _`pure Python ecdsa`: https://pypi.python.org/pypi/ecdsa