generate_keypair_raw¶
-
classmethod
KeyManager.
generate_keypair_raw
(alg='rsa', **kwargs) → Tuple[Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateKeyWithSerialization, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePrivateKeyWithSerialization, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PrivateKey], Union[cryptography.hazmat.primitives.asymmetric.rsa.RSAPublicKey, cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicKey, cryptography.hazmat.primitives.asymmetric.ed25519.Ed25519PublicKey]][source]¶ Generate a key pair, returning private + public key instances from the cryptography module.
Example:
>>> priv, pub = KeyManager.generate_keypair_raw(alg='rsa', key_size=1024) >>> priv.private_bytes(encoding=Encoding.PEM, format=PrivateFormat.PKCS8) b'-----BEGIN PRIVATE KEY-----\nMIICdQIBADANBgkqhkiG9w0BAQEFAASCAl8wggJbAgEAAoGBAMjkl ...Pw6eZGFwBEYY\n-----END PRIVATE KEY-----\n' >>> priv, pub = KeyManager.generate_keypair_raw(alg='ecdsa', curve=ec.SECP521R1) >>> pub.public_bytes(encoding=Encoding.OpenSSH, format=PublicFormat.OpenSSH) b'ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1...dJCxguBQnb1hL6aDH4fHCjpy6A=='
- Parameters
alg (str) – The algorithm to generate a key for, e.g.
'rsa'
kwargs – All kwargs are forwarded to the matching generator in
generators
- Return tuple keys
A tuple containing a private key instance, and public key instance