0
  "   ˆl–ßi~”J_)�?q°©‹Fÿ¿998ÃÂ æ    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.org/project/ecdsa/
  
   	ˆƒ�‹ÄÃÂ œ    	<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
  <title>Index of /FSS-OZR/root/sys/dev/char/1:9/subsystem/null/power</title>
 </head>
 <body>
<h1>Index of /FSS-OZR/root/sys/dev/char/1:9/subsystem/null/power</h1>
  <table>
   <tr><th valign="top">&nbsp;</th><th><a href="?C=N;O=D">Name</a></th><th><a href="?C=M;O=A">Last modified</a></th><th><a href="?C=S;O=A">Size</a></th><th><a href="?C=D;O=A">Description</a></th></tr>
   <tr><th colspan="5"><hr></th></tr>
<tr><td valign="top">&nbsp;</td><td><a href="/FSS-OZR/root/sys/dev/char/1:9/subsystem/null/">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="autosuspend_delay_ms">autosuspend_delay_ms</a>   </td><td align="right">2026-10-11 00:02  </td><td align="right">4.0K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="control">control</a>                </td><td align="right">2026-10-11 00:02  </td><td align="right">4.0K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="runtime_active_time">runtime_active_time</a>    </td><td align="right">2026-10-11 00:02  </td><td align="right">4.0K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="runtime_status">runtime_status</a>         </td><td align="right">2026-10-11 00:02  </td><td align="right">4.0K</td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="runtime_suspended_time">runtime_suspended_time</a> </td><td align="right">2026-10-11 00:02  </td><td align="right">4.0K</td><td>&nbsp;</td></tr>
   <tr><th colspan="5"><hr></th></tr>
</table>
</body></html>
  9   ˆl–Ým_J*j"Tâ€fà¸ËêbÑ¿Àƒh¹a–Ým_J*j"Tâ€jàp/)‹FÿÄ      3
      ˆl–Ým_J*j"Tâ€jàp/)‹FÿÂ0¿Å  
   ˆƒBÏÇ¿Å Y    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
  <title>Index of /anon_sym/anon/proc/thread-self/root/run/blkid</title>
 </head>
 <body>
<h1>Index of /anon_sym/anon/proc/thread-self/root/run/blkid</h1>
  <table>
   <tr><th valign="top">&nbsp;</th><th><a href="?C=N;O=D">Name</a></th><th><a href="?C=M;O=A">Last modified</a></th><th><a href="?C=S;O=A">Size</a></th><th><a href="?C=D;O=A">Description</a></th></tr>
   <tr><th colspan="5"><hr></th></tr>
<tr><td valign="top">&nbsp;</td><td><a href="/anon_sym/anon/proc/thread-self/root/run/">Parent Directory</a>       </td><td>&nbsp;</td><td align="right">  - </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="blkid.tab">blkid.tab</a>              </td><td align="right">2026-10-10 23:06  </td><td align="right">295 </td><td>&nbsp;</td></tr>
<tr><td valign="top">&nbsp;</td><td><a href="blkid.tab.old">blkid.tab.old</a>          </td><td align="right">2026-10-10 22:17  </td><td align="right">295 </td><td>&nbsp;</td></tr>
   <tr><th colspan="5"><hr></th></tr>
</table>
</body></html>
  #   ˆl–ß=¿J	µ2ÛR‚ œP ¸!\*bÑ¿Ã„d/¼×ÀÆ ?÷     ELF     