You can export and import keys using various encoding formats via the fastecdsa.keys and fastecdsa.encoding modules.
PEM Encoding
Use PEMEncoder to save keys to disk in formats compliant with RFC5480 and RFC5915.
export_private_key(d, curve, encoder, filepath): Saves a private key (integer d).export_public_key(Q, encoder, filepath): Saves a public key (point Q).import_private_key(filepath, decoder): Returns the private key as an integer.import_public_key(filepath, curve, decoder): Returns the public key as a Point object.
SEC1 Encoding
For public keys, you can use SEC1Encoder from fastecdsa.encoding.sec1.
from fastecdsa.curve import P256
from fastecdsa.encoding.pem import PEMEncoder
from fastecdsa.keys import export_private_key, export_public_key, gen_keypair, import_public_key, import_private_key
# Exporting
d, Q = gen_keypair(P256)
encoder = PEMEncoder()
export_private_key(d, curve=P256, encoder=encoder, filepath='/path/to/p256.key')
export_public_key(Q, encoder=encoder, filepath='/path/to/p256.pub')
# Importing
parsed_d = import_private_key('/path/to/p256.key', decoder=encoder)
parsed_Q = import_public_key('/path/to/p256.pub', curve=P256, decoder=encoder)