HackMIT/gen.py

23 lines
714 B
Python

from base64 import urlsafe_b64encode
from cryptography.hazmat.primitives import serialization
from cryptography.hazmat.primitives.asymmetric import ed25519
private_key = ed25519.Ed25519PrivateKey.generate()
private_bytes = private_key.private_bytes(
encoding=serialization.Encoding.Raw,
format=serialization.PrivateFormat.Raw,
encryption_algorithm=serialization.NoEncryption()
)
with open('privkey', 'wb') as f:
f.write(urlsafe_b64encode(private_bytes))
public_key = private_key.public_key()
public_bytes = public_key.public_bytes(
encoding=serialization.Encoding.Raw,
format=serialization.PublicFormat.Raw
)
with open('pubkey', 'wb') as f:
f.write(urlsafe_b64encode(public_bytes))