Upgrading cryptography 0.9 to 1
Breaking0.9.3 → 1.9Breaking7Security2Platform1Deprecated7New56Changed26Fixed20
SecurityFixes a bug where HKDF returned an empty byte-string when used with a length less than algorithm.digest_size (CVE-2016-9243).GHSA-q3cj-2r34-2cwc · CVE-2016-9243 ↗
BreakingUpgrade verdict
7 breaking changes and a platform requirement change and 2 security fixes.
In plain terms
- Checking a signature with an elliptic curve key no longer gives back True when it is valid. Instead, an error is raised only when the signature is bad.
- The macOS CommonCrypto backend is gone; the library uses other backends instead.
- The MultiBackend class is no longer available.
- The macOS prebuilt packages no longer support 32-bit Python. If you use 32-bit Python on macOS, switch to 64-bit or build the package yourself.
Must act Top 5 of 17 that need code or config changes
What you must change
Breaking7
Elliptic Curve signature verification no longer returns True on success; callers must check for InvalidSignature instead.
EllipticCurvePublicKey.verify()InvalidSignatureRemoves the CommonCrypto backend.
CommonCryptoRemoves MultiBackend.
MultiBackendmacOS wheels are no longer universal, so 32-bit Python users must move to 64-bit or build their own packages.
Removes support for OpenSSL 0.9.8; users on older OpenSSL versions must upgrade.
load_pem_private_key() and load_der_private_key() now require password to be bytes if provided.
load_pem_private_key()load_der_private_key()passwordRevokedCertificate.extensions now returns extension classes instead of raw values inside Extension.value.
RevokedCertificate.extensionsExtension.valueCertificateIssuerCRLReasonInvalidityDateSecurity2
Fixes a bug where HKDF returned an empty byte-string when used with a length less than algorithm.digest_size (CVE-2016-9243).
HKDFlengthalgorithm.digest_sizeConverts OpenSSL backend response checks from assert to a real function call so they are not removed under Python -O.
Platform1
Adds support for Python 3.6.
Deprecations to plan for
Deprecated7
Deprecates Python 3.3 support, to be removed in the next release.
Deprecates Whirlpool and RIPEMD160.
WhirlpoolRIPEMD160Deprecates support for OpenSSL 1.0.0, with removal planned in cryptography 1.7.
Deprecates the serial attribute on Certificate in favor of serial_number.
cryptography.x509.Certificate.serialcryptography.x509.Certificate.serial_numberDeprecates support for OpenSSL 0.9.8, to be removed in cryptography 1.4.
Deprecates support for OpenSSL 0.9.8 and 1.0.0, with no timetable yet for dropping support.
Deprecates encode_rfc6979_signature and decode_rfc6979_signature in favor of encode_dss_signature and decode_dss_signature.
encode_rfc6979_signaturedecode_rfc6979_signatureencode_dss_signaturedecode_dss_signatureAPI changes
Generated by DepDelta from published Python source. Not mixed with prose notes.
- removed:
variable InvalidToken - added:
constructor InternalError(msg, err_code)
- removed:
export MultiBackend
- removed:
export backend
- removed:
class Backend(object) - removed:
constructor Backend() - removed:
field Backend.name - removed:
method Backend.cipher_supported(cipher, mode) - removed:
method Backend.create_hash_ctx(algorithm) - removed:
method Backend.create_hmac_ctx(key, algorithm) - removed:
method Backend.create_symmetric_decryption_ctx(cipher, mode) - removed:
method Backend.create_symmetric_encryption_ctx(cipher, mode) - removed:
method Backend.derive_pbkdf2_hmac(algorithm, length, salt, iterations, key_material) - removed:
method Backend.hash_supported(algorithm) - removed:
method Backend.hmac_supported(algorithm) - removed:
method Backend.pbkdf2_hmac_supported(algorithm) - removed:
variable HashMethods - removed:
variable backend
- removed:
method DHBackend.dh_exchange_algorithm_supported(exchange_algorithm) - changed:
method DHBackend.dh_parameters_supported(p, g) → method DHBackend.dh_parameters_supported(p, g, q=…) - changed:
method DHBackend.generate_dh_parameters(key_size) → method DHBackend.generate_dh_parameters(generator, key_size) - changed:
method DHBackend.generate_dh_private_key_and_parameters(key_size) → method DHBackend.generate_dh_private_key_and_parameters(generator, key_size) - added:
class ScryptBackend(object) - added:
method DHBackend.dh_x942_serialization_supported() - added:
method EllipticCurveBackend.derive_elliptic_curve_private_key(private_value, curve) - added:
method EllipticCurveBackend.elliptic_curve_exchange_algorithm_supported(algorithm, curve) - added:
method ScryptBackend.derive_scrypt(key_material, salt, length, n, r, p) - added:
method X509Backend.create_x509_certificate(builder, private_key, algorithm) - added:
method X509Backend.create_x509_crl(builder, private_key, algorithm) - added:
method X509Backend.create_x509_csr(builder, private_key, algorithm) - added:
method X509Backend.create_x509_revoked_certificate(builder) - added:
method X509Backend.x509_name_bytes(name)
- removed:
class MultiBackend(object) - removed:
constructor MultiBackend(backends) - removed:
field MultiBackend.name - removed:
method MultiBackend.cipher_supported(cipher, mode) - removed:
method MultiBackend.cmac_algorithm_supported(algorithm) - removed:
method MultiBackend.create_cmac_ctx(algorithm) - removed:
method MultiBackend.create_hash_ctx(algorithm) - removed:
method MultiBackend.create_hmac_ctx(key, algorithm) - removed:
method MultiBackend.create_symmetric_decryption_ctx(cipher, mode) - removed:
method MultiBackend.create_symmetric_encryption_ctx(cipher, mode) - removed:
method MultiBackend.derive_pbkdf2_hmac(algorithm, length, salt, iterations, key_material) - removed:
method MultiBackend.dsa_hash_supported(algorithm) - removed:
method MultiBackend.dsa_parameters_supported(p, q, g) - removed:
method MultiBackend.elliptic_curve_signature_algorithm_supported(signature_algorithm, curve) - removed:
method MultiBackend.elliptic_curve_supported(curve) - removed:
method MultiBackend.generate_dsa_parameters(key_size) - removed:
method MultiBackend.generate_dsa_private_key(parameters) - removed:
method MultiBackend.generate_dsa_private_key_and_parameters(key_size) - removed:
method MultiBackend.generate_elliptic_curve_private_key(curve) - removed:
method MultiBackend.generate_rsa_parameters_supported(public_exponent, key_size) - removed:
method MultiBackend.generate_rsa_private_key(public_exponent, key_size) - removed:
method MultiBackend.hash_supported(algorithm) - removed:
method MultiBackend.hmac_supported(algorithm) - removed:
method MultiBackend.load_der_private_key(data, password) - removed:
method MultiBackend.load_der_public_key(data) - removed:
method MultiBackend.load_der_x509_certificate(data) - removed:
method MultiBackend.load_der_x509_csr(data) - removed:
method MultiBackend.load_dsa_parameter_numbers(numbers) - removed:
method MultiBackend.load_dsa_private_numbers(numbers) - removed:
method MultiBackend.load_dsa_public_numbers(numbers) - removed:
method MultiBackend.load_elliptic_curve_private_numbers(numbers) - removed:
method MultiBackend.load_elliptic_curve_public_numbers(numbers) - removed:
method MultiBackend.load_pem_private_key(data, password) - removed:
method MultiBackend.load_pem_public_key(data) - removed:
method MultiBackend.load_pem_x509_certificate(data) - removed:
method MultiBackend.load_pem_x509_csr(data) - removed:
method MultiBackend.load_rsa_private_numbers(numbers) - removed:
method MultiBackend.load_rsa_public_numbers(numbers) - removed:
method MultiBackend.pbkdf2_hmac_supported(algorithm) - removed:
method MultiBackend.rsa_padding_supported(padding)
- added:
method Backend.create_x509_certificate(builder, private_key, algorithm) - added:
method Backend.create_x509_crl(builder, private_key, algorithm) - added:
method Backend.create_x509_csr(builder, private_key, algorithm) - added:
method Backend.create_x509_revoked_certificate(builder) - added:
method Backend.derive_elliptic_curve_private_key(private_value, curve) - added:
method Backend.derive_scrypt(key_material, salt, length, n, r, p) - added:
method Backend.dh_parameters_supported(p, g, q=…) - added:
method Backend.dh_x942_serialization_supported() - added:
method Backend.elliptic_curve_exchange_algorithm_supported(algorithm, curve) - added:
method Backend.generate_dh_parameters(generator, key_size) - added:
method Backend.generate_dh_private_key(parameters) - added:
method Backend.generate_dh_private_key_and_parameters(generator, key_size) - added:
method Backend.load_der_x509_crl(data) - added:
method Backend.load_dh_parameter_numbers(numbers) - added:
method Backend.load_dh_private_numbers(numbers) - added:
method Backend.load_dh_public_numbers(numbers) - added:
method Backend.load_pem_x509_crl(data) - added:
method Backend.openssl_assert(ok) - added:
method Backend.openssl_version_number() - added:
method Backend.osrandom_engine_implementation() - added:
method Backend.x509_name_bytes(name)
- removed:
class Binding(object) - removed:
constructor Binding() - removed:
field Binding.ffi - removed:
field Binding.lib
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- added:
function build_conditional_library(lib, conditional_names)
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable FUNCTIONS - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
variable CONDITIONAL_NAMES - removed:
variable CUSTOMIZATIONS - removed:
variable FUNCTIONS - removed:
variable INCLUDES - removed:
variable MACROS - removed:
variable TYPES
- removed:
class LazyLibrary(object) - removed:
constructor LazyLibrary(ffi) - removed:
function build_ffi(cdef_source, verify_source, libraries=…, extra_compile_args=…, extra_link_args=…) - removed:
function build_ffi_for_binding(module_prefix, modules, pre_include=…, post_include=…, libraries=…, extra_compile_args=…, extra_link_args=…) - removed:
function load_library_for_binding(ffi, module_prefix, modules)
- changed:
constructor DHParameterNumbers(p, g) → constructor DHParameterNumbers(p, g, q=…) - added:
field DHParameterNumbers.q - added:
function generate_parameters(generator, key_size, backend) - added:
method DHParameterNumbers.parameters(backend) - added:
method DHPrivateKey.exchange(peer_public_key) - added:
method DHPrivateNumbers.private_key(backend) - added:
method DHPublicNumbers.public_key(backend)
- removed:
class DSAPublicKeyWithSerialization(DSAPublicKey) - removed:
method DSAPublicKeyWithSerialization.public_bytes(encoding, format) - removed:
method DSAPublicKeyWithSerialization.public_numbers() - removed:
variable DSAPrivateKeyWithNumbers - removed:
variable DSAPublicKeyWithNumbers - added:
method DSAPrivateKey.sign(data, algorithm) - added:
method DSAPublicKey.public_bytes(encoding, format) - added:
method DSAPublicKey.public_numbers() - added:
method DSAPublicKey.verify(signature, data, algorithm) - added:
variable DSAPublicKeyWithSerialization
- removed:
class EllipticCurvePublicKeyWithSerialization(EllipticCurvePublicKey) - removed:
method EllipticCurvePublicKeyWithSerialization.public_bytes(encoding, format) - removed:
method EllipticCurvePublicKeyWithSerialization.public_numbers() - removed:
variable EllipticCurvePrivateKeyWithNumbers - removed:
variable EllipticCurvePublicKeyWithNumbers - added:
class ECDH(object) - added:
function derive_private_key(private_value, curve, backend) - added:
method EllipticCurvePrivateKey.exchange(algorithm, peer_public_key) - added:
method EllipticCurvePrivateKey.key_size() - added:
method EllipticCurvePrivateKey.sign(data, signature_algorithm) - added:
method EllipticCurvePublicKey.key_size() - added:
method EllipticCurvePublicKey.public_bytes(encoding, format) - added:
method EllipticCurvePublicKey.public_numbers() - added:
method EllipticCurvePublicKey.verify(signature, data, signature_algorithm) - added:
method EllipticCurvePublicNumbers.encode_point() - added:
static method EllipticCurvePublicNumbers.from_encoded_point(curve, data) - added:
variable EllipticCurvePublicKeyWithSerialization
- added:
function calculate_max_pss_salt_length(key, hash_algorithm)
- removed:
class RSAPublicKeyWithSerialization(RSAPublicKey) - removed:
method RSAPublicKeyWithSerialization.public_bytes(encoding, format) - removed:
method RSAPublicKeyWithSerialization.public_numbers() - removed:
variable RSAPrivateKeyWithNumbers - removed:
variable RSAPublicKeyWithNumbers - added:
method RSAPrivateKey.sign(data, padding, algorithm) - added:
method RSAPublicKey.public_bytes(encoding, format) - added:
method RSAPublicKey.public_numbers() - added:
method RSAPublicKey.verify(signature, data, padding, algorithm) - added:
variable RSAPublicKeyWithSerialization
- added:
class Prehashed(object) - added:
constructor Prehashed(algorithm) - added:
field Prehashed.digest_size - added:
function decode_dss_signature(signature) - added:
function encode_dss_signature(r, s)
- added:
export AEADDecryptionContext
- added:
class AEADDecryptionContext(object) - added:
method AEADDecryptionContext.finalize_with_tag(tag) - added:
method CipherContext.update_into(data, buf)
- added:
class BLAKE2b(object) - added:
class BLAKE2s(object) - added:
constructor BLAKE2b(digest_size) - added:
constructor BLAKE2s(digest_size) - added:
field BLAKE2b.block_size - added:
field BLAKE2b.digest_size - added:
field BLAKE2b.name - added:
field BLAKE2s.block_size - added:
field BLAKE2s.digest_size - added:
field BLAKE2s.name - added:
variable RIPEMD160 - added:
variable Whirlpool
- removed:
class MACContext(object) - removed:
export AsymmetricSignatureContext - removed:
export AsymmetricVerificationContext - removed:
export KeyDerivationFunction - removed:
export PaddingContext - removed:
export ciphers - removed:
export dsa - removed:
export ec - removed:
export hashes - removed:
export modes - removed:
export padding - removed:
export rsa - removed:
export utils - removed:
method MACContext.copy() - removed:
method MACContext.finalize() - removed:
method MACContext.update(data) - removed:
method MACContext.verify(signature) - removed:
variable AEADCipherContext - removed:
variable AEADEncryptionContext - removed:
variable AsymmetricPadding - removed:
variable AsymmetricSignatureContext - removed:
variable AsymmetricVerificationContext - removed:
variable BlockCipherAlgorithm - removed:
variable CipherAlgorithm - removed:
variable CipherContext - removed:
variable DSAParameters - removed:
variable DSAParametersWithNumbers - removed:
variable DSAPrivateKey - removed:
variable DSAPrivateKeyWithNumbers - removed:
variable DSAPublicKey - removed:
variable DSAPublicKeyWithNumbers - removed:
variable EllipticCurve - removed:
variable EllipticCurvePrivateKey - removed:
variable EllipticCurvePrivateKeyWithNumbers - removed:
variable EllipticCurvePublicKey - removed:
variable EllipticCurvePublicKeyWithNumbers - removed:
variable EllipticCurveSignatureAlgorithm - removed:
variable HashAlgorithm - removed:
variable HashContext - removed:
variable KeyDerivationFunction - removed:
variable Mode - removed:
variable ModeWithAuthenticationTag - removed:
variable ModeWithInitializationVector - removed:
variable ModeWithNonce - removed:
variable PaddingContext - removed:
variable RSAPrivateKey - removed:
variable RSAPrivateKeyWithNumbers - removed:
variable RSAPublicKey - removed:
variable RSAPublicKeyWithNumbers - added:
variable MACContext
- added:
class ConcatKDFHMAC(object) - added:
class ConcatKDFHash(object) - added:
constructor ConcatKDFHMAC(algorithm, length, salt, otherinfo, backend) - added:
constructor ConcatKDFHash(algorithm, length, otherinfo, backend) - added:
method ConcatKDFHMAC.derive(key_material) - added:
method ConcatKDFHMAC.verify(key_material, expected_key) - added:
method ConcatKDFHash.derive(key_material) - added:
method ConcatKDFHash.verify(key_material, expected_key)
- added:
class CounterLocation(Enum) - added:
class KBKDFHMAC(object) - added:
class Mode(Enum) - added:
constructor KBKDFHMAC(algorithm, mode, length, rlen, llen, location, label, context, fixed, backend) - added:
field CounterLocation.AfterFixed - added:
field CounterLocation.BeforeFixed - added:
field Mode.CounterMode - added:
method KBKDFHMAC.derive(key_material) - added:
method KBKDFHMAC.verify(key_material, expected_key)
- added:
class Scrypt(object) - added:
constructor Scrypt(salt, length, n, r, p, backend) - added:
method Scrypt.derive(key_material) - added:
method Scrypt.verify(key_material, expected_key)
- added:
class X963KDF(object) - added:
constructor X963KDF(algorithm, length, sharedinfo, backend) - added:
method X963KDF.derive(key_material) - added:
method X963KDF.verify(key_material, expected_key)
- added:
class InvalidUnwrap(Exception) - added:
function aes_key_unwrap(wrapping_key, wrapped_key, backend) - added:
function aes_key_wrap(wrapping_key, key_to_wrap, backend)
- added:
class MACContext(object) - added:
method MACContext.copy() - added:
method MACContext.finalize() - added:
method MACContext.update(data) - added:
method MACContext.verify(signature)
- added:
class ANSIX923(object) - added:
constructor ANSIX923(block_size) - added:
method ANSIX923.padder() - added:
method ANSIX923.unpadder()
- added:
field Encoding.OpenSSH - added:
field PublicFormat.OpenSSH
- changed:
constructor HOTP(key, length, algorithm, backend) → constructor HOTP(key, length, algorithm, backend, enforce_key_length=…) - added:
method HOTP.get_provisioning_uri(account_name, counter, issuer)
- changed:
constructor TOTP(key, length, algorithm, time_step, backend) → constructor TOTP(key, length, algorithm, time_step, backend, enforce_key_length=…) - added:
method TOTP.get_provisioning_uri(account_name, issuer)
- removed:
variable DeprecatedIn08 - removed:
variable DeprecatedIn09 - added:
function int_from_bytes(data, byteorder, signed=…) - added:
function int_to_bytes(integer, length=…) - added:
function register_interface_if(predicate, iface) - added:
variable DeprecatedIn19 - added:
variable PersistentlyDeprecated - added:
variable int_from_bytes - added:
variable signature
- removed:
class AccessDescription(object) - removed:
class AuthorityInformationAccess(object) - removed:
class AuthorityKeyIdentifier(object) - removed:
class BasicConstraints(object) - removed:
class CRLDistributionPoints(object) - removed:
class Certificate(object) - removed:
class CertificatePolicies(object) - removed:
class CertificateSigningRequest(object) - removed:
class DNSName(object) - removed:
class DirectoryName(object) - removed:
class DistributionPoint(object) - removed:
class DuplicateExtension(Exception) - removed:
class ExtendedKeyUsage(object) - removed:
class Extension(object) - removed:
class ExtensionNotFound(Exception) - removed:
class Extensions(object) - removed:
class GeneralName(object) - removed:
class IPAddress(object) - removed:
class InvalidVersion(Exception) - removed:
class KeyUsage(object) - removed:
class Name(object) - removed:
class NameAttribute(object) - removed:
class NoticeReference(object) - removed:
class ObjectIdentifier(object) - removed:
class PolicyInformation(object) - removed:
class RFC822Name(object) - removed:
class ReasonFlags(Enum) - removed:
class RegisteredID(object) - removed:
class SubjectAlternativeName(object) - removed:
class SubjectKeyIdentifier(object) - removed:
class UniformResourceIdentifier(object) - removed:
class UnsupportedExtension(Exception) - removed:
class UnsupportedGeneralNameType(Exception) - removed:
class UserNotice(object) - removed:
class Version(Enum) - removed:
constructor AccessDescription(access_method, access_location) - removed:
constructor AuthorityInformationAccess(descriptions) - removed:
constructor AuthorityKeyIdentifier(key_identifier, authority_cert_issuer, authority_cert_serial_number) - removed:
constructor BasicConstraints(ca, path_length) - removed:
constructor CRLDistributionPoints(distribution_points) - removed:
constructor CertificatePolicies(policies) - removed:
constructor DNSName(value) - removed:
constructor DirectoryName(value) - removed:
constructor DistributionPoint(full_name, relative_name, reasons, crl_issuer) - removed:
constructor DuplicateExtension(msg, oid) - removed:
constructor ExtendedKeyUsage(usages) - removed:
constructor Extension(oid, critical, value) - removed:
constructor ExtensionNotFound(msg, oid) - removed:
constructor Extensions(extensions) - removed:
constructor IPAddress(value) - removed:
constructor InvalidVersion(msg, parsed_version) - removed:
constructor KeyUsage(digital_signature, content_commitment, key_encipherment, data_encipherment, key_agreement, key_cert_sign, crl_sign, encipher_only, decipher_only) - removed:
constructor Name(attributes) - removed:
constructor NameAttribute(oid, value) - removed:
constructor NoticeReference(organization, notice_numbers) - removed:
constructor ObjectIdentifier(dotted_string) - removed:
constructor PolicyInformation(policy_identifier, policy_qualifiers) - removed:
constructor RFC822Name(value) - removed:
constructor RegisteredID(value) - removed:
constructor SubjectAlternativeName(general_names) - removed:
constructor SubjectKeyIdentifier(digest) - removed:
constructor UniformResourceIdentifier(value) - removed:
constructor UnsupportedExtension(msg, oid) - removed:
constructor UnsupportedGeneralNameType(msg, type) - removed:
constructor UserNotice(notice_reference, explicit_text) - removed:
field AccessDescription.access_location - removed:
field AccessDescription.access_method - removed:
field AuthorityKeyIdentifier.authority_cert_issuer - removed:
field AuthorityKeyIdentifier.authority_cert_serial_number - removed:
field AuthorityKeyIdentifier.key_identifier - removed:
field BasicConstraints.ca - removed:
field BasicConstraints.path_length - removed:
field DNSName.value - removed:
field DirectoryName.value - removed:
field DistributionPoint.crl_issuer - removed:
field DistributionPoint.full_name - removed:
field DistributionPoint.reasons - removed:
field DistributionPoint.relative_name - removed:
field Extension.critical - removed:
field Extension.oid - removed:
field Extension.value - removed:
field IPAddress.value - removed:
field KeyUsage.content_commitment - removed:
field KeyUsage.crl_sign - removed:
field KeyUsage.data_encipherment - removed:
field KeyUsage.digital_signature - removed:
field KeyUsage.key_agreement - removed:
field KeyUsage.key_cert_sign - removed:
field KeyUsage.key_encipherment - removed:
field NameAttribute.oid - removed:
field NameAttribute.value - removed:
field NoticeReference.notice_numbers - removed:
field NoticeReference.organization - removed:
field ObjectIdentifier.dotted_string - removed:
field PolicyInformation.policy_identifier - removed:
field PolicyInformation.policy_qualifiers - removed:
field RFC822Name.value - removed:
field ReasonFlags.aa_compromise - removed:
field ReasonFlags.affiliation_changed - removed:
field ReasonFlags.ca_compromise - removed:
field ReasonFlags.certificate_hold - removed:
field ReasonFlags.cessation_of_operation - removed:
field ReasonFlags.key_compromise - removed:
field ReasonFlags.privilege_withdrawn - removed:
field ReasonFlags.remove_from_crl - removed:
field ReasonFlags.superseded - removed:
field ReasonFlags.unspecified - removed:
field RegisteredID.value - removed:
field SubjectKeyIdentifier.digest - removed:
field UniformResourceIdentifier.value - removed:
field UserNotice.explicit_text - removed:
field UserNotice.notice_reference - removed:
field Version.v1 - removed:
field Version.v3 - removed:
function load_der_x509_certificate(data, backend) - removed:
function load_der_x509_csr(data, backend) - removed:
function load_pem_x509_certificate(data, backend) - removed:
function load_pem_x509_csr(data, backend) - removed:
method Certificate.fingerprint(algorithm) - removed:
method Certificate.issuer() - removed:
method Certificate.not_valid_after() - removed:
method Certificate.not_valid_before() - removed:
method Certificate.public_key() - removed:
method Certificate.serial() - removed:
method Certificate.signature_hash_algorithm() - removed:
method Certificate.subject() - removed:
method Certificate.version() - removed:
method CertificateSigningRequest.public_key() - removed:
method CertificateSigningRequest.signature_hash_algorithm() - removed:
method CertificateSigningRequest.subject() - removed:
method Extensions.get_extension_for_oid(oid) - removed:
method GeneralName.value() - removed:
method Name.get_attributes_for_oid(oid) - removed:
method SubjectAlternativeName.get_values_for_type(type) - removed:
property KeyUsage.decipher_only - removed:
property KeyUsage.encipher_only - removed:
variable OID_AUTHORITY_INFORMATION_ACCESS - removed:
variable OID_AUTHORITY_KEY_IDENTIFIER - removed:
variable OID_BASIC_CONSTRAINTS - removed:
variable OID_CERTIFICATE_POLICIES - removed:
variable OID_CLIENT_AUTH - removed:
variable OID_CODE_SIGNING - removed:
variable OID_COMMON_NAME - removed:
variable OID_COUNTRY_NAME - removed:
variable OID_CPS_QUALIFIER - removed:
variable OID_CPS_USER_NOTICE - removed:
variable OID_CRL_DISTRIBUTION_POINTS - removed:
variable OID_DN_QUALIFIER - removed:
variable OID_DOMAIN_COMPONENT - removed:
variable OID_DSA_WITH_SHA1 - removed:
variable OID_DSA_WITH_SHA224 - removed:
variable OID_DSA_WITH_SHA256 - removed:
variable OID_ECDSA_WITH_SHA224 - removed:
variable OID_ECDSA_WITH_SHA256 - removed:
variable OID_ECDSA_WITH_SHA384 - removed:
variable OID_ECDSA_WITH_SHA512 - removed:
variable OID_EMAIL_ADDRESS - removed:
variable OID_EMAIL_PROTECTION - removed:
variable OID_EXTENDED_KEY_USAGE - removed:
variable OID_FRESHEST_CRL - removed:
variable OID_GENERATION_QUALIFIER - removed:
variable OID_GIVEN_NAME - removed:
variable OID_INHIBIT_ANY_POLICY - removed:
variable OID_ISSUER_ALTERNATIVE_NAME - removed:
variable OID_KEY_USAGE - removed:
variable OID_LOCALITY_NAME - removed:
variable OID_NAME_CONSTRAINTS - removed:
variable OID_OCSP_NO_CHECK - removed:
variable OID_OCSP_SIGNING - removed:
variable OID_ORGANIZATIONAL_UNIT_NAME - removed:
variable OID_ORGANIZATION_NAME - removed:
variable OID_POLICY_CONSTRAINTS - removed:
variable OID_POLICY_MAPPINGS - removed:
variable OID_PSEUDONYM - removed:
variable OID_RSA_WITH_MD5 - removed:
variable OID_RSA_WITH_SHA1 - removed:
variable OID_RSA_WITH_SHA224 - removed:
variable OID_RSA_WITH_SHA256 - removed:
variable OID_RSA_WITH_SHA384 - removed:
variable OID_RSA_WITH_SHA512 - removed:
variable OID_SERIAL_NUMBER - removed:
variable OID_SERVER_AUTH - removed:
variable OID_STATE_OR_PROVINCE_NAME - removed:
variable OID_SUBJECT_ALTERNATIVE_NAME - removed:
variable OID_SUBJECT_DIRECTORY_ATTRIBUTES - removed:
variable OID_SUBJECT_INFORMATION_ACCESS - removed:
variable OID_SUBJECT_KEY_IDENTIFIER - removed:
variable OID_SURNAME - removed:
variable OID_TIME_STAMPING - removed:
variable OID_TITLE - added:
export AccessDescription - added:
export AuthorityInformationAccess - added:
export AuthorityKeyIdentifier - added:
export BasicConstraints - added:
export CRLDistributionPoints - added:
export CRLNumber - added:
export CRLReason - added:
export Certificate - added:
export CertificateBuilder - added:
export CertificateIssuer - added:
export CertificatePolicies - added:
export CertificateRevocationList - added:
export CertificateRevocationListBuilder - added:
export CertificateSigningRequest - added:
export CertificateSigningRequestBuilder - added:
export DNSName - added:
export DirectoryName - added:
export DistributionPoint - added:
export DuplicateExtension - added:
export ExtendedKeyUsage - added:
export Extension - added:
export ExtensionNotFound - added:
export ExtensionType - added:
export Extensions - added:
export GeneralName - added:
export GeneralNames - added:
export IPAddress - added:
export InhibitAnyPolicy - added:
export InvalidVersion - added:
export InvalidityDate - added:
export IssuerAlternativeName - added:
export KeyUsage - added:
export Name - added:
export NameAttribute - added:
export NameConstraints - added:
export NoticeReference - added:
export OCSPNoCheck - added:
export ObjectIdentifier - added:
export OtherName - added:
export PolicyConstraints - added:
export PolicyInformation - added:
export RFC822Name - added:
export ReasonFlags - added:
export RegisteredID - added:
export RelativeDistinguishedName - added:
export RevokedCertificate - added:
export RevokedCertificateBuilder - added:
export SubjectAlternativeName - added:
export SubjectKeyIdentifier - added:
export UniformResourceIdentifier - added:
export UnrecognizedExtension - added:
export UnsupportedExtension - added:
export UnsupportedGeneralNameType - added:
export UserNotice - added:
export Version - added:
export _GENERAL_NAMES - added:
export _SIG_OIDS_TO_HASH - added:
export certificate_transparency - added:
export load_der_x509_certificate - added:
export load_der_x509_crl - added:
export load_der_x509_csr - added:
export load_pem_x509_certificate - added:
export load_pem_x509_crl - added:
export load_pem_x509_csr - added:
export random_serial_number - added:
variable UnsupportedExtension
- added:
class Certificate(object) - added:
class CertificateBuilder(object) - added:
class CertificateRevocationList(object) - added:
class CertificateRevocationListBuilder(object) - added:
class CertificateSigningRequest(object) - added:
class CertificateSigningRequestBuilder(object) - added:
class InvalidVersion(Exception) - added:
class RevokedCertificate(object) - added:
class RevokedCertificateBuilder(object) - added:
class Version(Enum) - added:
constructor CertificateBuilder(issuer_name=…, subject_name=…, public_key=…, serial_number=…, not_valid_before=…, not_valid_after=…, extensions=…) - added:
constructor CertificateRevocationListBuilder(issuer_name=…, last_update=…, next_update=…, extensions=…, revoked_certificates=…) - added:
constructor CertificateSigningRequestBuilder(subject_name=…, extensions=…) - added:
constructor InvalidVersion(msg, parsed_version) - added:
constructor RevokedCertificateBuilder(serial_number=…, revocation_date=…, extensions=…) - added:
field Version.v1 - added:
field Version.v3 - added:
function load_der_x509_certificate(data, backend) - added:
function load_der_x509_crl(data, backend) - added:
function load_der_x509_csr(data, backend) - added:
function load_pem_x509_certificate(data, backend) - added:
function load_pem_x509_crl(data, backend) - added:
function load_pem_x509_csr(data, backend) - added:
function random_serial_number() - added:
method Certificate.extensions() - added:
method Certificate.fingerprint(algorithm) - added:
method Certificate.issuer() - added:
method Certificate.not_valid_after() - added:
method Certificate.not_valid_before() - added:
method Certificate.public_bytes(encoding) - added:
method Certificate.public_key() - added:
method Certificate.serial_number() - added:
method Certificate.signature() - added:
method Certificate.signature_algorithm_oid() - added:
method Certificate.signature_hash_algorithm() - added:
method Certificate.subject() - added:
method Certificate.tbs_certificate_bytes() - added:
method Certificate.version() - added:
method CertificateBuilder.add_extension(extension, critical) - added:
method CertificateBuilder.issuer_name(name) - added:
method CertificateBuilder.not_valid_after(time) - added:
method CertificateBuilder.not_valid_before(time) - added:
method CertificateBuilder.public_key(key) - added:
method CertificateBuilder.serial_number(number) - added:
method CertificateBuilder.sign(private_key, algorithm, backend) - added:
method CertificateBuilder.subject_name(name) - added:
method CertificateRevocationList.extensions() - added:
method CertificateRevocationList.fingerprint(algorithm) - added:
method CertificateRevocationList.issuer() - added:
method CertificateRevocationList.last_update() - added:
method CertificateRevocationList.next_update() - added:
method CertificateRevocationList.public_bytes(encoding) - added:
method CertificateRevocationList.signature() - added:
method CertificateRevocationList.signature_algorithm_oid() - added:
method CertificateRevocationList.signature_hash_algorithm() - added:
method CertificateRevocationList.tbs_certlist_bytes() - added:
method CertificateRevocationListBuilder.add_extension(extension, critical) - added:
method CertificateRevocationListBuilder.add_revoked_certificate(revoked_certificate) - added:
method CertificateRevocationListBuilder.issuer_name(issuer_name) - added:
method CertificateRevocationListBuilder.last_update(last_update) - added:
method CertificateRevocationListBuilder.next_update(next_update) - added:
method CertificateRevocationListBuilder.sign(private_key, algorithm, backend) - added:
method CertificateSigningRequest.extensions() - added:
method CertificateSigningRequest.is_signature_valid() - added:
method CertificateSigningRequest.public_bytes(encoding) - added:
method CertificateSigningRequest.public_key() - added:
method CertificateSigningRequest.signature() - added:
method CertificateSigningRequest.signature_algorithm_oid() - added:
method CertificateSigningRequest.signature_hash_algorithm() - added:
method CertificateSigningRequest.subject() - added:
method CertificateSigningRequest.tbs_certrequest_bytes() - added:
method CertificateSigningRequestBuilder.add_extension(extension, critical) - added:
method CertificateSigningRequestBuilder.sign(private_key, algorithm, backend) - added:
method CertificateSigningRequestBuilder.subject_name(name) - added:
method RevokedCertificate.extensions() - added:
method RevokedCertificate.revocation_date() - added:
method RevokedCertificate.serial_number() - added:
method RevokedCertificateBuilder.add_extension(extension, critical) - added:
method RevokedCertificateBuilder.build(backend) - added:
method RevokedCertificateBuilder.revocation_date(time) - added:
method RevokedCertificateBuilder.serial_number(number)
- added:
class LogEntryType(Enum) - added:
class SignedCertificateTimestamp(object) - added:
class Version(Enum) - added:
field LogEntryType.PRE_CERTIFICATE - added:
field LogEntryType.X509_CERTIFICATE - added:
field Version.v1 - added:
method SignedCertificateTimestamp.entry_type() - added:
method SignedCertificateTimestamp.log_id() - added:
method SignedCertificateTimestamp.timestamp() - added:
method SignedCertificateTimestamp.version()
- added:
class AccessDescription(object) - added:
class AuthorityInformationAccess(object) - added:
class AuthorityKeyIdentifier(object) - added:
class BasicConstraints(object) - added:
class CRLDistributionPoints(object) - added:
class CRLNumber(object) - added:
class CRLReason(object) - added:
class CertificateIssuer(object) - added:
class CertificatePolicies(object) - added:
class DistributionPoint(object) - added:
class DuplicateExtension(Exception) - added:
class ExtendedKeyUsage(object) - added:
class Extension(object) - added:
class ExtensionNotFound(Exception) - added:
class ExtensionType(object) - added:
class Extensions(object) - added:
class GeneralNames(object) - added:
class InhibitAnyPolicy(object) - added:
class InvalidityDate(object) - added:
class IssuerAlternativeName(object) - added:
class KeyUsage(object) - added:
class NameConstraints(object) - added:
class NoticeReference(object) - added:
class OCSPNoCheck(object) - added:
class PolicyConstraints(object) - added:
class PolicyInformation(object) - added:
class ReasonFlags(Enum) - added:
class SubjectAlternativeName(object) - added:
class SubjectKeyIdentifier(object) - added:
class UnrecognizedExtension(object) - added:
class UnsupportedExtension(Exception) - added:
class UserNotice(object) - added:
constructor AccessDescription(access_method, access_location) - added:
constructor AuthorityInformationAccess(descriptions) - added:
constructor AuthorityKeyIdentifier(key_identifier, authority_cert_issuer, authority_cert_serial_number) - added:
constructor BasicConstraints(ca, path_length) - added:
constructor CRLDistributionPoints(distribution_points) - added:
constructor CRLNumber(crl_number) - added:
constructor CRLReason(reason) - added:
constructor CertificateIssuer(general_names) - added:
constructor CertificatePolicies(policies) - added:
constructor DistributionPoint(full_name, relative_name, reasons, crl_issuer) - added:
constructor DuplicateExtension(msg, oid) - added:
constructor ExtendedKeyUsage(usages) - added:
constructor Extension(oid, critical, value) - added:
constructor ExtensionNotFound(msg, oid) - added:
constructor Extensions(extensions) - added:
constructor GeneralNames(general_names) - added:
constructor InhibitAnyPolicy(skip_certs) - added:
constructor InvalidityDate(invalidity_date) - added:
constructor IssuerAlternativeName(general_names) - added:
constructor KeyUsage(digital_signature, content_commitment, key_encipherment, data_encipherment, key_agreement, key_cert_sign, crl_sign, encipher_only, decipher_only) - added:
constructor NameConstraints(permitted_subtrees, excluded_subtrees) - added:
constructor NoticeReference(organization, notice_numbers) - added:
constructor PolicyConstraints(require_explicit_policy, inhibit_policy_mapping) - added:
constructor PolicyInformation(policy_identifier, policy_qualifiers) - added:
constructor SubjectAlternativeName(general_names) - added:
constructor SubjectKeyIdentifier(digest) - added:
constructor UnrecognizedExtension(oid, value) - added:
constructor UserNotice(notice_reference, explicit_text) - added:
field AccessDescription.access_location - added:
field AccessDescription.access_method - added:
field AuthorityInformationAccess.oid - added:
field AuthorityKeyIdentifier.authority_cert_issuer - added:
field AuthorityKeyIdentifier.authority_cert_serial_number - added:
field AuthorityKeyIdentifier.key_identifier - added:
field AuthorityKeyIdentifier.oid - added:
field BasicConstraints.ca - added:
field BasicConstraints.oid - added:
field BasicConstraints.path_length - added:
field CRLDistributionPoints.oid - added:
field CRLNumber.crl_number - added:
field CRLNumber.oid - added:
field CRLReason.oid - added:
field CRLReason.reason - added:
field CertificateIssuer.oid - added:
field CertificatePolicies.oid - added:
field DistributionPoint.crl_issuer - added:
field DistributionPoint.full_name - added:
field DistributionPoint.reasons - added:
field DistributionPoint.relative_name - added:
field ExtendedKeyUsage.oid - added:
field Extension.critical - added:
field Extension.oid - added:
field Extension.value - added:
field InhibitAnyPolicy.oid - added:
field InhibitAnyPolicy.skip_certs - added:
field InvalidityDate.invalidity_date - added:
field InvalidityDate.oid - added:
field IssuerAlternativeName.oid - added:
field KeyUsage.content_commitment - added:
field KeyUsage.crl_sign - added:
field KeyUsage.data_encipherment - added:
field KeyUsage.digital_signature - added:
field KeyUsage.key_agreement - added:
field KeyUsage.key_cert_sign - added:
field KeyUsage.key_encipherment - added:
field KeyUsage.oid - added:
field NameConstraints.excluded_subtrees - added:
field NameConstraints.oid - added:
field NameConstraints.permitted_subtrees - added:
field NoticeReference.notice_numbers - added:
field NoticeReference.organization - added:
field OCSPNoCheck.oid - added:
field PolicyConstraints.inhibit_policy_mapping - added:
field PolicyConstraints.oid - added:
field PolicyConstraints.require_explicit_policy - added:
field PolicyInformation.policy_identifier - added:
field PolicyInformation.policy_qualifiers - added:
field ReasonFlags.aa_compromise - added:
field ReasonFlags.affiliation_changed - added:
field ReasonFlags.ca_compromise - added:
field ReasonFlags.certificate_hold - added:
field ReasonFlags.cessation_of_operation - added:
field ReasonFlags.key_compromise - added:
field ReasonFlags.privilege_withdrawn - added:
field ReasonFlags.remove_from_crl - added:
field ReasonFlags.superseded - added:
field ReasonFlags.unspecified - added:
field SubjectAlternativeName.oid - added:
field SubjectKeyIdentifier.digest - added:
field SubjectKeyIdentifier.oid - added:
field UnrecognizedExtension.oid - added:
field UnrecognizedExtension.value - added:
field UserNotice.explicit_text - added:
field UserNotice.notice_reference - added:
method CertificateIssuer.get_values_for_type(type) - added:
method ExtensionType.oid() - added:
method Extensions.get_extension_for_class(extclass) - added:
method Extensions.get_extension_for_oid(oid) - added:
method GeneralNames.get_values_for_type(type) - added:
method IssuerAlternativeName.get_values_for_type(type) - added:
method SubjectAlternativeName.get_values_for_type(type) - added:
property KeyUsage.decipher_only - added:
property KeyUsage.encipher_only - added:
static method AuthorityKeyIdentifier.from_issuer_public_key(public_key) - added:
static method AuthorityKeyIdentifier.from_issuer_subject_key_identifier(ski) - added:
static method SubjectKeyIdentifier.from_public_key(public_key)
- added:
class DNSName(object) - added:
class DirectoryName(object) - added:
class GeneralName(object) - added:
class IPAddress(object) - added:
class OtherName(object) - added:
class RFC822Name(object) - added:
class RegisteredID(object) - added:
class UniformResourceIdentifier(object) - added:
class UnsupportedGeneralNameType(Exception) - added:
constructor DNSName(value) - added:
constructor DirectoryName(value) - added:
constructor IPAddress(value) - added:
constructor OtherName(type_id, value) - added:
constructor RFC822Name(value) - added:
constructor RegisteredID(value) - added:
constructor UniformResourceIdentifier(value) - added:
constructor UnsupportedGeneralNameType(msg, type) - added:
field DNSName.value - added:
field DirectoryName.value - added:
field IPAddress.value - added:
field OtherName.type_id - added:
field OtherName.value - added:
field RFC822Name.value - added:
field RegisteredID.value - added:
field UniformResourceIdentifier.value - added:
method GeneralName.value()
- added:
class Name(object) - added:
class NameAttribute(object) - added:
class RelativeDistinguishedName(object) - added:
constructor Name(attributes) - added:
constructor NameAttribute(oid, value) - added:
constructor RelativeDistinguishedName(attributes) - added:
field NameAttribute.oid - added:
field NameAttribute.value - added:
method Name.get_attributes_for_oid(oid) - added:
method Name.public_bytes(backend) - added:
method RelativeDistinguishedName.get_attributes_for_oid(oid) - added:
property Name.rdns
- added:
class AuthorityInformationAccessOID(object) - added:
class CRLEntryExtensionOID(object) - added:
class CertificatePoliciesOID(object) - added:
class ExtendedKeyUsageOID(object) - added:
class ExtensionOID(object) - added:
class NameOID(object) - added:
class ObjectIdentifier(object) - added:
class SignatureAlgorithmOID(object) - added:
constructor ObjectIdentifier(dotted_string) - added:
field AuthorityInformationAccessOID.CA_ISSUERS - added:
field AuthorityInformationAccessOID.OCSP - added:
field CRLEntryExtensionOID.CERTIFICATE_ISSUER - added:
field CRLEntryExtensionOID.CRL_REASON - added:
field CRLEntryExtensionOID.INVALIDITY_DATE - added:
field CertificatePoliciesOID.ANY_POLICY - added:
field CertificatePoliciesOID.CPS_QUALIFIER - added:
field CertificatePoliciesOID.CPS_USER_NOTICE - added:
field ExtendedKeyUsageOID.CLIENT_AUTH - added:
field ExtendedKeyUsageOID.CODE_SIGNING - added:
field ExtendedKeyUsageOID.EMAIL_PROTECTION - added:
field ExtendedKeyUsageOID.OCSP_SIGNING - added:
field ExtendedKeyUsageOID.SERVER_AUTH - added:
field ExtendedKeyUsageOID.TIME_STAMPING - added:
field ExtensionOID.AUTHORITY_INFORMATION_ACCESS - added:
field ExtensionOID.AUTHORITY_KEY_IDENTIFIER - added:
field ExtensionOID.BASIC_CONSTRAINTS - added:
field ExtensionOID.CERTIFICATE_POLICIES - added:
field ExtensionOID.CRL_DISTRIBUTION_POINTS - added:
field ExtensionOID.CRL_NUMBER - added:
field ExtensionOID.EXTENDED_KEY_USAGE - added:
field ExtensionOID.FRESHEST_CRL - added:
field ExtensionOID.INHIBIT_ANY_POLICY - added:
field ExtensionOID.ISSUER_ALTERNATIVE_NAME - added:
field ExtensionOID.KEY_USAGE - added:
field ExtensionOID.NAME_CONSTRAINTS - added:
field ExtensionOID.OCSP_NO_CHECK - added:
field ExtensionOID.POLICY_CONSTRAINTS - added:
field ExtensionOID.POLICY_MAPPINGS - added:
field ExtensionOID.PRECERT_SIGNED_CERTIFICATE_TIMESTAMPS - added:
field ExtensionOID.SUBJECT_ALTERNATIVE_NAME - added:
field ExtensionOID.SUBJECT_DIRECTORY_ATTRIBUTES - added:
field ExtensionOID.SUBJECT_INFORMATION_ACCESS - added:
field ExtensionOID.SUBJECT_KEY_IDENTIFIER - added:
field NameOID.BUSINESS_CATEGORY - added:
field NameOID.COMMON_NAME - added:
field NameOID.COUNTRY_NAME - added:
field NameOID.DN_QUALIFIER - added:
field NameOID.DOMAIN_COMPONENT - added:
field NameOID.EMAIL_ADDRESS - added:
field NameOID.GENERATION_QUALIFIER - added:
field NameOID.GIVEN_NAME - added:
field NameOID.JURISDICTION_COUNTRY_NAME - added:
field NameOID.JURISDICTION_LOCALITY_NAME - added:
field NameOID.JURISDICTION_STATE_OR_PROVINCE_NAME - added:
field NameOID.LOCALITY_NAME - added:
field NameOID.ORGANIZATIONAL_UNIT_NAME - added:
field NameOID.ORGANIZATION_NAME - added:
field NameOID.POSTAL_ADDRESS - added:
field NameOID.POSTAL_CODE - added:
field NameOID.PSEUDONYM - added:
field NameOID.SERIAL_NUMBER - added:
field NameOID.STATE_OR_PROVINCE_NAME - added:
field NameOID.STREET_ADDRESS - added:
field NameOID.SURNAME - added:
field NameOID.TITLE - added:
field NameOID.USER_ID - added:
field NameOID.X500_UNIQUE_IDENTIFIER - added:
field ObjectIdentifier.dotted_string - added:
field SignatureAlgorithmOID.DSA_WITH_SHA1 - added:
field SignatureAlgorithmOID.DSA_WITH_SHA224 - added:
field SignatureAlgorithmOID.DSA_WITH_SHA256 - added:
field SignatureAlgorithmOID.ECDSA_WITH_SHA1 - added:
field SignatureAlgorithmOID.ECDSA_WITH_SHA224 - added:
field SignatureAlgorithmOID.ECDSA_WITH_SHA256 - added:
field SignatureAlgorithmOID.ECDSA_WITH_SHA384 - added:
field SignatureAlgorithmOID.ECDSA_WITH_SHA512 - added:
field SignatureAlgorithmOID.RSA_WITH_MD5 - added:
field SignatureAlgorithmOID.RSA_WITH_SHA1 - added:
field SignatureAlgorithmOID.RSA_WITH_SHA224 - added:
field SignatureAlgorithmOID.RSA_WITH_SHA256 - added:
field SignatureAlgorithmOID.RSA_WITH_SHA384 - added:
field SignatureAlgorithmOID.RSA_WITH_SHA512