Bitcoin Improvement Proposals
This report summarizes scanner evidence for bitcoin/bips, a Wikitext project with 10,962 GitHub stars. SynthScan examined 61,688 lines of code across 169 source files, recording 298 pattern matches distributed across 14 syntactic categories. The legacy adjusted pattern signal is 17.1 (Elevated pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 99 finding(s).
Are imports declared and package/API names verified? 11 finding(s).
Are wrappers, guards, and repeated structures necessary? 242 finding(s).
Which changes need focused human review? 298 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 298 distinct pattern matches across 14 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | test-only implementation of low-level secp256k1 field and group arithmetic it is designed for ease of understanding, not | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | test-only implementation of low-level secp256k1 field and group arithmetic it is designed for ease of understanding, not | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | test-only implementation of low-level secp256k1 field and group arithmetic it is designed for ease of understanding, not | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | test-only implementation of low-level secp256k1 field and group arithmetic it is designed for ease of understanding, not | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | objects of this class represent elements of a prime field. they are represented internally in numerator / denominator fo | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | objects of this class represent elements of a prime field. they are represented internally in numerator / denominator fo | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | objects of this class represent elements of a prime field. they are represented internally in numerator / denominator fo | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | objects of this class represent elements of a prime field. they are represented internally in numerator / denominator fo | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | initialize a field element a/b; both a and b can be ints or field elements. | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | initialize a field element a/b; both a and b can be ints or field elements. | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | initialize a field element a/b; both a and b can be ints or field elements. | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | initialize a field element a/b; both a and b can be ints or field elements. | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the sum of two field elements (second may be int). | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the sum of two field elements (second may be int). | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | compute the sum of two field elements (second may be int). | STRING |
| HIGH | bip-0324/reference.py | 0 | compute the sum of two field elements (second may be int). | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the sum of two field elements (second may be int). | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the sum of field elements. sum(a, b, c, ...) is identical to (0 + a + b + c + ...). | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the sum of field elements. sum(a, b, c, ...) is identical to (0 + a + b + c + ...). | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | compute the sum of field elements. sum(a, b, c, ...) is identical to (0 + a + b + c + ...). | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the sum of field elements. sum(a, b, c, ...) is identical to (0 + a + b + c + ...). | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the difference of two field elements (second may be int). | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the difference of two field elements (second may be int). | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | compute the difference of two field elements (second may be int). | STRING |
| HIGH | bip-0324/reference.py | 0 | compute the difference of two field elements (second may be int). | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the difference of two field elements (second may be int). | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the difference of an integer and a field element. | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the difference of an integer and a field element. | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | compute the difference of an integer and a field element. | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the difference of an integer and a field element. | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the product of two field elements (second may be int). | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the product of two field elements (second may be int). | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | compute the product of two field elements (second may be int). | STRING |
| HIGH | bip-0324/reference.py | 0 | compute the product of two field elements (second may be int). | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the product of two field elements (second may be int). | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the product of an integer with a field element. | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the product of an integer with a field element. | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | compute the product of an integer with a field element. | STRING |
| HIGH | bip-0324/reference.py | 0 | compute the product of an integer with a field element. | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the product of an integer with a field element. | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the ratio of two field elements (second may be int). | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the ratio of two field elements (second may be int). | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | compute the ratio of two field elements (second may be int). | STRING |
| HIGH | bip-0324/reference.py | 0 | compute the ratio of two field elements (second may be int). | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the ratio of two field elements (second may be int). | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | convert a field element to an integer in range 0..size-1. the result is cached. | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | convert a field element to an integer in range 0..size-1. the result is cached. | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | convert a field element to an integer in range 0..size-1. the result is cached. | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | convert a field element to an integer in range 0..size-1. the result is cached. | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the square root of a field element if it exists (none otherwise). | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the square root of a field element if it exists (none otherwise). | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | compute the square root of a field element if it exists (none otherwise). | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | compute the square root of a field element if it exists (none otherwise). | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | determine whether this field element, represented as integer in 0..size-1, is even. | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | determine whether this field element, represented as integer in 0..size-1, is even. | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | determine whether this field element, represented as integer in 0..size-1, is even. | STRING |
| HIGH | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | determine whether this field element, represented as integer in 0..size-1, is even. | STRING |
| HIGH | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | check whether two field elements are equal (second may be an int). | STRING |
| HIGH | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 0 | check whether two field elements are equal (second may be an int). | STRING |
| HIGH | bip-0089/secp256k1lab/secp256k1.py | 0 | check whether two field elements are equal (second may be an int). | STRING |
| 104 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bip-0374/gen_test_vectors.py | 49 | def gen_all_generate_proof_vectors(f): | CODE |
| LOW | bip-0374/gen_test_vectors.py | 80 | def gen_all_verify_proof_vectors(f): | CODE |
| LOW | bip-0374/secp256k1lab/src/secp256k1lab/ecdh.py | 6 | def ecdh_compressed_in_raw_out(seckey: bytes, pubkey: bytes) -> GE: | CODE |
| LOW | bip-0374/secp256k1lab/src/secp256k1lab/secp256k1.py | 332 | def to_bytes_compressed_with_infinity(self): | CODE |
| LOW | bip-0327/gen_vectors_helper.py | 18 | def check_sign_verify_vectors(): | CODE |
| LOW | bip-0327/reference.py | 344 | def get_session_key_agg_coeff(session_ctx: SessionContext, P: Point) -> int: | CODE |
| LOW | bip-0327/reference.py | 432 | def partial_sig_verify_internal(psig: bytes, pubnonce: bytes, pk: bytes, session_ctx: SessionContext) -> bool: | CODE |
| LOW | bip-0327/reference.py | 812 | def test_sign_and_verify_random(iters: int) -> None: | CODE |
| LOW | bip-0375/validator/validate_psbt.py | 272 | def validate_input_eligibility(psbt: PSBT) -> Tuple[bool, str]: | CODE |
| LOW | bip-0375/validator/bip352_crypto.py | 13 | def compute_silent_payment_output_script( | CODE |
| LOW | bip-0375/validator/inputs.py | 24 | def collect_input_ecdh_and_pubkey( | CODE |
| LOW | bip-0375/validator/inputs.py | 70 | def pubkey_from_eligible_input(input_map: BIP375PSBTMap) -> Optional[GE]: | CODE |
| LOW⚡ | bip-0375/validator/inputs.py | 98 | def _script_pubkey_from_psbt_input(input_map: BIP375PSBTMap) -> Optional[bytes]: | CODE |
| LOW | bip-0375/validator/inputs.py | 164 | def _has_eligible_script_type(script_pubkey: bytes) -> bool: | CODE |
| LOW | bip-0375/deps/bitcoin_test/messages.py | 375 | def serialize_without_witness(self): | CODE |
| LOW | bip-0375/deps/secp256k1lab/src/secp256k1lab/ecdh.py | 6 | def ecdh_compressed_in_raw_out(seckey: bytes, pubkey: bytes) -> GE: | CODE |
| LOW | …p-0375/deps/secp256k1lab/src/secp256k1lab/secp256k1.py | 332 | def to_bytes_compressed_with_infinity(self): | CODE |
| LOW | bip-0328/_bip327.py | 344 | def get_session_key_agg_coeff(session_ctx: SessionContext, P: Point) -> int: | CODE |
| LOW | bip-0328/_bip327.py | 432 | def partial_sig_verify_internal(psig: bytes, pubnonce: bytes, pk: bytes, session_ctx: SessionContext) -> bool: | CODE |
| LOW | bip-0328/_bip327.py | 812 | def test_sign_and_verify_random(iters: int) -> None: | CODE |
| LOW | bip-0089/bip32.py | 122 | def parse_extended_public_key(data: Mapping[str, object]) -> ExtendedPublicKey: | CODE |
| LOW | bip-0089/bip32.py | 153 | def build_extended_public_key( | CODE |
| LOW | bip-0089/reference.py | 141 | def blind_challenge_gen_internal(rand: bytes, msg: bytes, blindpubnonce: bytes, pk: PlainPk, tweaks: List[bytes], is_xon | CODE |
| LOW | bip-0089/reference.py | 282 | def test_blind_nonce_gen_vectors(): | CODE |
| LOW | bip-0089/reference.py | 313 | def test_blind_challenge_gen_vectors(): | CODE |
| LOW | bip-0089/reference.py | 390 | def test_blind_sign_and_verify_vectors(): | CODE |
| LOW | bip-0089/reference.py | 481 | def test_unblind_signature_vectors(): | CODE |
| LOW | bip-0089/reference.py | 520 | def test_sign_and_verify_random(iters: int) -> None: | CODE |
| LOW | bip-0089/reference.py | 571 | def change_output_verification( | CODE |
| LOW | bip-0089/reference.py | 585 | def _verify_tweaked_descriptor( | CODE |
| LOW | bip-0089/reference.py | 621 | def test_compute_tweak_vectors() -> None: | CODE |
| LOW | bip-0089/reference.py | 677 | def test_delegator_sign_vectors() -> None: | CODE |
| LOW | bip-0089/reference.py | 708 | def test_input_verification_vectors() -> None: | CODE |
| LOW | bip-0089/reference.py | 731 | def test_change_output_verification_vectors() -> None: | CODE |
| LOW | bip-0089/secp256k1lab/ecdh.py | 6 | def ecdh_compressed_in_raw_out(seckey: bytes, pubkey: bytes) -> GE: | CODE |
| LOW | bip-0089/secp256k1lab/secp256k1.py | 207 | def from_bytes_nonzero_checked(cls, b: bytes) -> Self: | CODE |
| LOW | bip-0089/secp256k1lab/secp256k1.py | 353 | def to_bytes_compressed_with_infinity(self) -> bytes: | CODE |
| LOW | bip-0089/secp256k1lab/secp256k1.py | 392 | def from_bytes_compressed_with_infinity(b: bytes) -> GE: | CODE |
| LOW | bip-0324/secp256k1_test_vectors.py | 23 | def output_xswiftec_inv_cases(): | CODE |
| LOW | bip-0324/secp256k1_test_vectors.py | 38 | def output_ellswift_decode_cases(): | CODE |
| LOW | bip-0324/gen_test_vectors.py | 58 | def ellswift_create_deterministic(seed, features): | CODE |
| LOW | bip-0324/gen_test_vectors.py | 175 | def gen_ellswift_decode_cases(seed, simplified=False): | CODE |
| LOW | bip-0324/gen_test_vectors.py | 214 | def gen_all_ellswift_decode_vectors(fil): | CODE |
| LOW | bip-0324/gen_test_vectors.py | 272 | def xswiftec_inv_combo_flagged(x, u): | CODE |
| LOW | bip-0324/gen_test_vectors.py | 284 | def gen_all_xswiftec_inv_vectors(fil): | CODE |
| LOW | bip-0324/gen_test_vectors.py | 330 | def gen_packet_encoding_vector(case): | CODE |
| LOW | bip-0324/gen_test_vectors.py | 375 | def gen_all_packet_encoding_vectors(fil): | CODE |
| LOW | bip-0119/simulation.py | 79 | def make_patch_spines_invisible(ax): | CODE |
| LOW | bip-0340/test-vectors.py | 90 | def insecure_schnorr_sign_fixed_nonce(msg, seckey0, k): | CODE |
| LOW⚡ | bip-0352/reference.py | 101 | def encode_silent_payment_address(B_scan: GE, B_m: GE, hrp: str = "tsp", version: int = 0) -> str: | CODE |
| LOW⚡ | bip-0352/reference.py | 110 | def create_labeled_silent_payment_address(b_scan: Scalar, B_spend: GE, m: int, hrp: str = "tsp", version: int = 0) -> st | CODE |
| LOW⚡ | bip-0352/reference.py | 118 | def decode_silent_payment_address(address: str, hrp: str = "tsp") -> Tuple[GE, GE]: | CODE |
| LOW | bip-0352/secp256k1lab/src/secp256k1lab/ecdh.py | 6 | def ecdh_compressed_in_raw_out(seckey: bytes, pubkey: bytes) -> GE: | CODE |
| LOW | bip-0352/secp256k1lab/src/secp256k1lab/secp256k1.py | 332 | def to_bytes_compressed_with_infinity(self): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | bip-0374/secp256k1lab/src/secp256k1lab/bip340.py | 1 | # The following functions are based on the BIP 340 reference implementation: | COMMENT |
| MEDIUM | bip-0374/secp256k1lab/src/secp256k1lab/keys.py | 4 | # The following function is based on the BIP 327 reference implementation | COMMENT |
| MEDIUM | bip-0327/reference.py | 460 | # The following code is only used for testing. | COMMENT |
| MEDIUM | bip-0375/deps/secp256k1lab/src/secp256k1lab/bip340.py | 1 | # The following functions are based on the BIP 340 reference implementation: | COMMENT |
| MEDIUM | bip-0375/deps/secp256k1lab/src/secp256k1lab/keys.py | 4 | # The following function is based on the BIP 327 reference implementation | COMMENT |
| MEDIUM | bip-0328/_bip327.py | 460 | # The following code is only used for testing. | COMMENT |
| MEDIUM | bip-0089/reference.py | 244 | # The following code is only used for testing. | COMMENT |
| MEDIUM | bip-0089/secp256k1lab/bip340.py | 1 | # The following functions are based on the BIP 340 reference implementation: | COMMENT |
| MEDIUM | bip-0089/secp256k1lab/keys.py | 4 | # The following function is based on the BIP 327 reference implementation | COMMENT |
| MEDIUM | bip-0340/reference.py | 140 | # The following code is only used to verify the test vectors. | COMMENT |
| MEDIUM | bip-0340/reference.py | 197 | # The following code is only used for debugging | COMMENT |
| MEDIUM | bip-0352/secp256k1lab/src/secp256k1lab/bip340.py | 1 | # The following functions are based on the BIP 340 reference implementation: | COMMENT |
| MEDIUM | bip-0352/secp256k1lab/src/secp256k1lab/keys.py | 4 | # The following function is based on the BIP 327 reference implementation | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | bip-0360/ref-impl/python/p2mr.py | 446 | except ValueError: | CODE |
| HIGH | bip-0360/ref-impl/python/p2mr.py | 462 | except ValueError: | CODE |
| HIGH | bip-0352/reference.py | 69 | except (ValueError, AssertionError): | CODE |
| HIGH | bip-0352/reference.py | 64 | except (ValueError, AssertionError): | CODE |
| HIGH | bip-0352/reference.py | 89 | except ValueError: | CODE |
| HIGH | bip-0352/reference.py | 57 | except ValueError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | bip-0375/validator/inputs.py | 93 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | bip-0375/validator/inputs.py | 95 | # ============================================================================ | COMMENT |
| MEDIUM | bip-0375/validator/inputs.py | 131 | # ============================================================================ | COMMENT |
| MEDIUM | bip-0375/validator/inputs.py | 133 | # ============================================================================ | COMMENT |
| MEDIUM | bip-0375/deps/bitcoin_test/messages.py | 35 | # ============================================================================ | COMMENT |
| MEDIUM | bip-0375/deps/bitcoin_test/messages.py | 37 | # ============================================================================ | COMMENT |
| MEDIUM | bip-0375/deps/bitcoin_test/messages.py | 195 | # ============================================================================ | COMMENT |
| MEDIUM | bip-0375/deps/bitcoin_test/messages.py | 197 | # ============================================================================ | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bip-0327/reference.py | 417 | except Exception: | CODE |
| MEDIUM | bip-0375/test_runner.py | 69 | print(f"Error: Test vector file '{filename}' not found") | CODE |
| MEDIUM | bip-0375/test_runner.py | 72 | print(f"Error: Invalid JSON in test vector file: {e}") | CODE |
| LOW | bip-0328/_bip327.py | 417 | except Exception: | CODE |
| LOW | bip-0089/reference.py | 267 | except Exception as e: | CODE |
| LOW | bip-0089/reference.py | 381 | except Exception as e: | CODE |
| LOW | bip-0089/reference.py | 513 | except Exception as e: | CODE |
| MEDIUM | bip-0089/reference.py | 264 | def assert_raises(exc_cls, fn, pred): | CODE |
| MEDIUM | bip-0360/ref-impl/python/p2mr.py | 355 | print(f"Error: {v['error']}") | CODE |
| MEDIUM | bip-0360/ref-impl/python/p2mr.py | 369 | print(f"Error: {v['error']}") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | bip-0327/reference.py | 820 | # In this example, the message and aggregate pubkey are known | COMMENT |
| HIGH | bip-0328/_bip327.py | 820 | # In this example, the message and aggregate pubkey are known | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | bip-0327/reference.py | 3 | # WARNING: This implementation is for demonstration purposes only and _not_ to | COMMENT |
| MEDIUM | bip-0328/_bip327.py | 3 | # WARNING: This implementation is for demonstration purposes only and _not_ to | COMMENT |
| MEDIUM | bip-0089/reference.py | 3 | # WARNING: This implementation is for demonstration purposes only and _not_ to | COMMENT |
| MEDIUM | bip-0352/reference.py | 51 | # note: this is an incredibly inefficient implementation, for demonstration purposes only. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bip-0375/validator/validate_psbt.py | 42 | CODE | |
| LOW | bip-0375/validator/validate_psbt.py | 143 | CODE | |
| LOW | bip-0375/validator/validate_psbt.py | 272 | CODE | |
| LOW | bip-0375/validator/validate_psbt.py | 307 | CODE | |
| LOW | bip-0375/validator/inputs.py | 98 | CODE | |
| LOW | bip-0388/wallet_policies.py | 76 | CODE | |
| LOW | bip-0360/ref-impl/python/p2mr.py | 345 | CODE | |
| LOW | bip-0340/reference.py | 146 | CODE | |
| LOW | bip-0352/reference.py | 37 | CODE | |
| LOW | bip-0352/reference.py | 128 | CODE | |
| LOW | bip-0352/reference.py | 182 | CODE | |
| LOW | bip-0352/ripemd160.py | 51 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bip-0327/gen_vectors_helper.py | 1 | CODE | |
| LOW | bip-0328/reference.py | 7 | CODE | |
| LOW | bip-0089/descriptor.py | 3 | CODE | |
| LOW | bip-0089/bip32.py | 3 | CODE | |
| LOW | bip-0089/secp256k1lab/secp256k1.py | 18 | CODE | |
| LOW | bip-0324/test_sage_decoding.py | 26 | CODE | |
| LOW | bip-0110/test-vectors.py | 44 | CODE | |
| LOW | bip-0110/test-vectors.py | 71 | CODE | |
| LOW | bip-0340/test-vectors.py | 2 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bip-0327/reference.py | 1 | # BIP327 reference implementation | COMMENT |
| LOW | bip-0327/reference.py | 101 | COMMENT | |
| LOW | bip-0327/reference.py | 821 | # before nonce generation, so they can be passed into the nonce | COMMENT |
| LOW | bip-0328/_bip327.py | 1 | # BIP327 reference implementation | COMMENT |
| LOW | bip-0328/_bip327.py | 101 | COMMENT | |
| LOW | bip-0328/_bip327.py | 821 | # before nonce generation, so they can be passed into the nonce | COMMENT |
| LOW | bip-0352/bech32m.py | 1 | # Copyright (c) 2017, 2020 Pieter Wuille | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bip-0327/reference.py | 470 | # Check if calling `try_fn` raises an exception. If yes, examine it with `except_fn`. | COMMENT |
| LOW | bip-0375/validator/validate_psbt.py | 280 | # Check if SP outputs exist | COMMENT |
| LOW | bip-0328/_bip327.py | 470 | # Check if calling `try_fn` raises an exception. If yes, examine it with `except_fn`. | COMMENT |
| LOW | bip-0340/reference.py | 4 | # Set DEBUG to True to get a detailed debug output including | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | bip-0360/ref-impl/python/p2mr.py | 76 | """Serialize variably-sized data as: compact-size byte || data bytes.""" | STRING |
| HIGH | bip-0110/test-vectors.py | 34 | cmake -B build && cmake --build build -j"$(nproc)" | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bip-0327/reference.py | 3 | # WARNING: This implementation is for demonstration purposes only and _not_ to | COMMENT |
| LOW | bip-0328/_bip327.py | 3 | # WARNING: This implementation is for demonstration purposes only and _not_ to | COMMENT |
| LOW | bip-0089/reference.py | 3 | # WARNING: This implementation is for demonstration purposes only and _not_ to | COMMENT |