https://github.com/x13a/py-minisign
Missing python minisign library.
https://github.com/x13a/py-minisign
crypto ed25519 minisign python security
Last synced: 11 months ago
JSON representation
Missing python minisign library.
- Host: GitHub
- URL: https://github.com/x13a/py-minisign
- Owner: x13a
- License: mit
- Created: 2021-02-24T00:10:41.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-10-30T19:13:05.000Z (over 1 year ago)
- Last Synced: 2024-10-30T20:17:16.318Z (over 1 year ago)
- Topics: crypto, ed25519, minisign, python, security
- Language: Python
- Homepage:
- Size: 27.3 KB
- Stars: 18
- Watchers: 2
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
py-minisign
===========
Missing python `minisign `_ library.
Install
-------
.. code:: shell
pip install py-minisign
Library
-------
.. code:: python
import os
import minisign
# verify
pk = minisign.PublicKey.from_base64(
'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3')
sig = minisign.Signature.from_bytes(
b'untrusted comment: signature from minisign secret key\n'
b'RWQf6LRCGA9i59SLOFxz6NxvASXDJeRtuZykwQepbDEGt87ig1BNpWaVWuNrm73YiIiJbq71Wi+dP9eKL8OC351vwIasSSbXxwA=\n'
b'trusted comment: timestamp:1555779966\tfile:test\n'
b'QtKMXWyYcwdpZAlPF7tE2ENJkRd1ujvKjlj1m9RtHTBnZPa5WKU5uWRs5GoP5M/VqE81QFuMKI5k/SfNQUaOAA=='
)
pk.verify(b'test', sig)
# sign
sk = minisign.SecretKey.from_file('/path/to/secret.key')
sk.decrypt('strong_password')
sig = sk.sign(b'very important data')
# generate key pair
key_pair = minisign.KeyPair.generate()
sk = key_pair.secret_key
pk = key_pair.public_key
# save key
sk.encrypt('strong_password')
with open(os.open('/path/to/secret.key', os.O_CREAT | os.O_WRONLY, 0o600), 'wb') as f:
f.write(bytes(sk))