Skip to content

ERC-8262: jurisdiction policy table + tighter settlement_root#1

Merged
DROOdotFOO merged 1 commit into
add-erc-zk-compliance-oraclefrom
f-2-f-3-normative-fixes
Jun 14, 2026
Merged

ERC-8262: jurisdiction policy table + tighter settlement_root#1
DROOdotFOO merged 1 commit into
add-erc-zk-compliance-oraclefrom
f-2-f-3-normative-fixes

Conversation

@DROOdotFOO

Copy link
Copy Markdown

Summary

Two pre-audit normative fixes for the in-flight ERC-8262 submission (ethereum#1747). Both land in the reference implementation repo as well; this PR brings the fork branch in sync.

F-2 -- Jurisdiction Policy as normative table

The current draft mentions requireSignedSignals and minMultiProviderThreshold only as parenthetical asides ("e.g. US BSA, Singapore, UAE VARA require M >= 2"). A reader implementing from the spec alone could ship without the rejection logic.

This PR adds a Jurisdiction Policy subsection right after the threshold table. It tabulates the canonical "Accepts unsigned" and "Min threshold_m" values per jurisdiction with MUST language. Three scattered prose asides are replaced with "(see Jurisdiction Policy)" cross-refs.

F-3 -- pattern.settlement_root binding strengthened to MUST

The Pattern proof bullet previously said consumers SHOULD mark each consumed pattern proof to prevent reuse. With only the SettlementRegistry as a downstream consumer demonstrating this, a future consumer could silently accept a single PATTERN attestation as a standin for the binding it expects.

This PR promotes SHOULD mark to MUST mark and adds the canonical computation keccak256(abi.encode(uint8 subTradeCount, bytes32[] subProofHashes)) mod BN254_FR_MODULUS. The note also calls out that field width or abi.encode byte layout drift produces a different root and the equality check rejects.

Notes

  • F-1 (UAE jurisdiction) was already in the draft; no change here.
  • F-4 (proofHash forward-ref) was already in the draft via the -- see Proof Hash Computation comment.
  • The Jurisdiction column widths in the threshold table widened by 3 chars to fit "Singapore (MAS)"; the markdown renders identically either way.

After this lands, the fork branch and the reference implementation's ERC-8262.md are byte-equal.

@DROOdotFOO DROOdotFOO merged commit 973a777 into add-erc-zk-compliance-oracle Jun 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant