Ausgabe der neuen DB Einträge
This commit is contained in:
parent
bad48e1627
commit
cfbbb9ee3d
2399 changed files with 843193 additions and 43 deletions
|
|
@ -0,0 +1,50 @@
|
|||
# This file is dual licensed under the terms of the Apache License, Version
|
||||
# 2.0, and the BSD License. See the LICENSE file in the root of this repository
|
||||
# for complete details.
|
||||
|
||||
from __future__ import absolute_import, division, print_function
|
||||
|
||||
from cryptography import x509
|
||||
from cryptography.hazmat.backends import _get_backend
|
||||
from cryptography.hazmat.primitives import serialization
|
||||
from cryptography.hazmat.primitives.asymmetric import dsa, ec, rsa
|
||||
|
||||
|
||||
def load_key_and_certificates(data, password, backend=None):
|
||||
backend = _get_backend(backend)
|
||||
return backend.load_key_and_certificates_from_pkcs12(data, password)
|
||||
|
||||
|
||||
def serialize_key_and_certificates(name, key, cert, cas, encryption_algorithm):
|
||||
if key is not None and not isinstance(
|
||||
key,
|
||||
(
|
||||
rsa.RSAPrivateKeyWithSerialization,
|
||||
dsa.DSAPrivateKeyWithSerialization,
|
||||
ec.EllipticCurvePrivateKeyWithSerialization,
|
||||
),
|
||||
):
|
||||
raise TypeError("Key must be RSA, DSA, or EllipticCurve private key.")
|
||||
if cert is not None and not isinstance(cert, x509.Certificate):
|
||||
raise TypeError("cert must be a certificate")
|
||||
|
||||
if cas is not None:
|
||||
cas = list(cas)
|
||||
if not all(isinstance(val, x509.Certificate) for val in cas):
|
||||
raise TypeError("all values in cas must be certificates")
|
||||
|
||||
if not isinstance(
|
||||
encryption_algorithm, serialization.KeySerializationEncryption
|
||||
):
|
||||
raise TypeError(
|
||||
"Key encryption algorithm must be a "
|
||||
"KeySerializationEncryption instance"
|
||||
)
|
||||
|
||||
if key is None and cert is None and not cas:
|
||||
raise ValueError("You must supply at least one of key, cert, or cas")
|
||||
|
||||
backend = _get_backend(None)
|
||||
return backend.serialize_key_and_certificates_to_pkcs12(
|
||||
name, key, cert, cas, encryption_algorithm
|
||||
)
|
||||
Loading…
Add table
Add a link
Reference in a new issue