BIP-374: treat challenge hash result e as scalar, bump to version 0.3.0

Note that the purpose of this change is primarily to improve clarity
for implementers and consistency with existing BIPs like BIP-340 and
BIP-327. Under the assumption that reaching a challenge hash with
`e >= n` is negligible, the newly introduced test vectors in the next
commit would also fail without the new rejection branch.
This commit is contained in:
Sebastian Falbesoner committed 2026-08-19 16:02:37 +02:00
1 parent 857a7debc6
commit c88e295d92
2 files changed
+9 -5

No files matched your search

+3 -1
View File
@@ -36,7 +36,7 @@ def dleq_challenge(
+ m,
),
"big",
)
) % GE.ORDER
def dleq_generate_proof(
@@ -76,6 +76,8 @@ def dleq_verify_proof(
return False
assert len(proof) == 64
e = int.from_bytes(proof[:32], "big")
if e >= GE.ORDER:
return False
s = int.from_bytes(proof[32:], "big")
if s >= GE.ORDER:
return False