def from_pem(cls, ledger, pem) -> 'PrivateKey': der = pem_to_der(pem.encode()) try: key_int = ECPrivateKey.load(der).native['private_key'] except ValueError: key_int = PrivateKeyInfo.load(der).native['private_key']['private_key'] private_key = cPrivateKey.from_int(key_int) return cls(ledger, private_key, bytes((0,)*32), 0, 0)
def from_pem(cls, pem: bytes, context: Context = GLOBAL_CONTEXT): """ :param pem: The private key encoded in PEM format. :param context: :return: The private key. :rtype: PrivateKey """ return PrivateKey( int_to_bytes_padded( PrivateKeyInfo.load( pem_to_der(pem)).native['private_key']['private_key']), context)
def from_pem(cls, pem, context=GLOBAL_CONTEXT): return PrivateKey( int_to_bytes_padded( PrivateKeyInfo.load( pem_to_der(pem)).native['private_key']['private_key']), context)
def test_der_conversion(): assert pem_to_der(der_to_pem(PRIVATE_KEY_DER)) == PRIVATE_KEY_DER