Fuzz introspector: fuzz_dh
For issues and ideas: https://github.com/ossf/fuzz-introspector/issues

Fuzz blockers

The following nodes represent call sites where fuzz blockers occur.

Amount of callsites blocked Calltree index Parent function Callsite Largest blocked function
5 32 cryptography.hazmat.backends.openssl.dh._dh_params_dup call site: {node_id} cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert
1 0 EP call site: {node_id} atheris.FuzzedDataProvider
1 5 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert call site: {node_id} cryptography.hazmat.bindings.openssl.binding._consume_errors
1 11 cryptography.hazmat.bindings.openssl.binding._consume_errors call site: {node_id} cryptography.hazmat.bindings.openssl.binding._errors_with_text
1 17 cryptography.hazmat.bindings.openssl.binding._errors_with_text call site: {node_id} typing.NamedTuple.__init__
1 24 cryptography.hazmat.backends.openssl.backend.Backend.generate_dh_parameters call site: {node_id} fdp.ConsumeBool
1 45 ...fuzz_dh.TestInput call site: {node_id} cryptography.hazmat.backends.openssl.dh._DHPrivateKey.public_key
1 58 cryptography.hazmat.backends.openssl.dh._get_dh_num_bits call site: {node_id} cryptography.hazmat.backends.openssl.dh._DHPrivateKey.exchange
1 64 cryptography.hazmat.backends.openssl.dh._DHPrivateKey.exchange call site: {node_id} cryptography.hazmat.backends.openssl.backend.Backend._consume_errors_with_text
1 76 ...fuzz_dh.TestInput call site: {node_id} cryptography.utils._check_bytes
1 93 cryptography.hazmat.backends.openssl.hmac._HMACContext.__init__ call site: {node_id} .len

Fuzzer calltree

0 ...fuzz_dh.TestInput [function] [call site] 00000
1 atheris.FuzzedDataProvider [function] [call site] 00001
1 cryptography.hazmat.primitives.asymmetric.dh.generate_parameters [function] [call site] 00002
2 cryptography.hazmat.backends.openssl.backend.Backend.generate_dh_parameters [function] [call site] 00003
3 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00004
4 cryptography.hazmat.bindings.openssl.binding._openssl_assert [function] [call site] 00005
5 cryptography.hazmat.bindings.openssl.binding._consume_errors [function] [call site] 00006
6 lib.ERR_get_error [function] [call site] 00007
6 lib.ERR_GET_LIB [function] [call site] 00008
6 lib.ERR_GET_REASON [function] [call site] 00009
6 cryptography.hazmat.bindings.openssl.binding._OpenSSLError.__init__ [function] [call site] 00010
6 errors.append [function] [call site] 00011
5 cryptography.hazmat.bindings.openssl.binding._errors_with_text [function] [call site] 00012
6 cryptography.hazmat.bindings._openssl.ffi.new [function] [call site] 00013
6 cryptography.hazmat.bindings._openssl.lib.ERR_error_string_n [function] [call site] 00015
6 cryptography.hazmat.bindings._openssl.ffi.string [function] [call site] 00016
6 errors_with_text.append [function] [call site] 00017
6 typing.NamedTuple.__init__ [function] [call site] 00018
3 cryptography.hazmat.bindings._openssl.ffi.gc [function] [call site] 00019
3 cryptography.hazmat.backends.openssl.backend.Backend._consume_errors_with_text [function] [call site] 00020
4 cryptography.hazmat.bindings.openssl.binding._consume_errors_with_text [function] [call site] 00021
5 cryptography.hazmat.bindings.openssl.binding._consume_errors [function] [call site] 00022
5 cryptography.hazmat.bindings.openssl.binding._errors_with_text [function] [call site] 00023
3 cryptography.hazmat.backends.openssl.dh._DHParameters.__init__ [function] [call site] 00024
1 fdp.ConsumeBool [function] [call site] 00025
1 fdp.ConsumeInt [function] [call site] 00026
1 cryptography.hazmat.backends.openssl.dh._DHParameters.generate_private_key [function] [call site] 00027
2 cryptography.hazmat.backends.openssl.backend.Backend.generate_dh_private_key [function] [call site] 00028
3 cryptography.hazmat.backends.openssl.dh._dh_params_dup [function] [call site] 00029
4 lib.DHparams_dup [function] [call site] 00030
4 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00031
4 cryptography.hazmat.bindings._openssl.ffi.gc [function] [call site] 00032
4 cryptography.hazmat.bindings._openssl.ffi.new [function] [call site] 00033
4 lib.DH_get0_pqg [function] [call site] 00034
4 lib.BN_dup [function] [call site] 00035
4 lib.DH_set0_pqg [function] [call site] 00036
4 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00037
3 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00038
3 cryptography.hazmat.backends.openssl.backend.Backend._dh_cdata_to_evp_pkey [function] [call site] 00039
4 cryptography.hazmat.backends.openssl.backend.Backend._create_evp_pkey_gc [function] [call site] 00040
5 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00041
5 cryptography.hazmat.bindings._openssl.ffi.gc [function] [call site] 00042
4 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00043
3 cryptography.hazmat.backends.openssl.dh._DHPrivateKey.__init__ [function] [call site] 00044
1 cryptography.hazmat.backends.openssl.dh._DHParameters.generate_private_key [function] [call site] 00045
1 cryptography.hazmat.backends.openssl.dh._DHPrivateKey.public_key [function] [call site] 00046
2 cryptography.hazmat.backends.openssl.dh._dh_params_dup [function] [call site] 00047
2 cryptography.hazmat.bindings._openssl.ffi.new [function] [call site] 00048
2 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00049
2 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00050
2 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00051
2 cryptography.hazmat.backends.openssl.backend.Backend._dh_cdata_to_evp_pkey [function] [call site] 00052
2 cryptography.hazmat.backends.openssl.dh._DHPublicKey.__init__ [function] [call site] 00053
3 cryptography.hazmat.backends.openssl.dh._get_dh_num_bits [function] [call site] 00054
4 cryptography.hazmat.bindings._openssl.ffi.new [function] [call site] 00055
4 backend._lib.DH_get0_pqg [function] [call site] 00056
4 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00057
4 backend._lib.BN_num_bits [function] [call site] 00058
1 cryptography.hazmat.backends.openssl.dh._DHPrivateKey.exchange [function] [call site] 00059
2 .isinstance [function] [call site] 00060
2 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00061
2 cryptography.hazmat.bindings._openssl.ffi.gc [function] [call site] 00062
2 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00063
2 cryptography.hazmat.backends.openssl.dh._DHPrivateKey._exchange_assert [function] [call site] 00064
3 cryptography.hazmat.backends.openssl.backend.Backend._consume_errors_with_text [function] [call site] 00065
2 cryptography.hazmat.bindings._openssl.ffi.new [function] [call site] 00066
2 cryptography.hazmat.backends.openssl.dh._DHPrivateKey._exchange_assert [function] [call site] 00067
2 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00068
2 cryptography.hazmat.bindings._openssl.ffi.new [function] [call site] 00069
2 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00070
2 cryptography.hazmat.bindings._openssl.ffi.buffer [function] [call site] 00071
1 cryptography.hazmat.backends.openssl.dh._DHPrivateKey.public_key [function] [call site] 00073
1 cryptography.hazmat.backends.openssl.dh._DHPrivateKey.exchange [function] [call site] 00074
1 fdp.ConsumeBytes [function] [call site] 00075
1 cryptography.hazmat.primitives.kdf.hkdf.HKDF.__init__ [function] [call site] 00076
2 cryptography.utils._check_bytes [function] [call site] 00077
3 .isinstance [function] [call site] 00078
2 cryptography.hazmat.primitives.kdf.hkdf.HKDFExpand.__init__ [function] [call site] 00079
3 cryptography.utils._check_bytes [function] [call site] 00080
1 cryptography.hazmat.primitives.kdf.hkdf.HKDF.derive [function] [call site] 00081
2 cryptography.utils._check_byteslike [function] [call site] 00082
3 .memoryview [function] [call site] 00083
2 cryptography.hazmat.primitives.kdf.hkdf.HKDF._extract [function] [call site] 00084
3 cryptography.hazmat.primitives.hmac.HMAC.__init__ [function] [call site] 00085
4 .isinstance [function] [call site] 00086
4 cryptography.hazmat.backends.openssl.backend.Backend.create_hmac_ctx [function] [call site] 00087
5 cryptography.hazmat.backends.openssl.hmac._HMACContext.__init__ [function] [call site] 00088
6 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00089
6 cryptography.hazmat.bindings._openssl.ffi.gc [function] [call site] 00090
6 cryptography.hazmat.backends.openssl.backend.Backend._evp_md_from_algorithm [function] [call site] 00091
7 algorithm.name.encode [function] [call site] 00092
6 cryptography.hazmat.bindings._openssl.ffi.from_buffer [function] [call site] 00093
6 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00095
3 cryptography.hazmat.primitives.hmac.HMAC.update [function] [call site] 00096
4 cryptography.utils._check_byteslike [function] [call site] 00097
4 cryptography.hazmat.backends.openssl.hmac._HMACContext.update [function] [call site] 00098
5 cryptography.hazmat.bindings._openssl.ffi.from_buffer [function] [call site] 00099
5 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00101
3 cryptography.hazmat.primitives.hmac.HMAC.finalize [function] [call site] 00102
4 cryptography.hazmat.backends.openssl.hmac._HMACContext.finalize [function] [call site] 00103
5 cryptography.hazmat.bindings._openssl.ffi.new [function] [call site] 00104
5 cryptography.hazmat.bindings._openssl.ffi.new [function] [call site] 00105
5 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00106
5 cryptography.hazmat.backends.openssl.backend.Backend.openssl_assert [function] [call site] 00107
5 cryptography.hazmat.bindings._openssl.ffi.buffer [function] [call site] 00108
2 cryptography.hazmat.primitives.kdf.hkdf.HKDFExpand.derive [function] [call site] 00109
3 cryptography.utils._check_byteslike [function] [call site] 00110
3 cryptography.hazmat.primitives.kdf.hkdf.HKDFExpand._expand [function] [call site] 00111
4 cryptography.hazmat.primitives.hmac.HMAC.__init__ [function] [call site] 00113
4 cryptography.hazmat.primitives.hmac.HMAC.update [function] [call site] 00114
4 cryptography.hazmat.primitives.hmac.HMAC.update [function] [call site] 00115
4 cryptography.hazmat.primitives.hmac.HMAC.update [function] [call site] 00117
4 cryptography.hazmat.primitives.hmac.HMAC.finalize [function] [call site] 00118
4 output.append [function] [call site] 00119
1 cryptography.hazmat.primitives.kdf.hkdf.HKDF.__init__ [function] [call site] 00120
1 cryptography.hazmat.primitives.kdf.hkdf.HKDF.derive [function] [call site] 00121