{
  "type": "failure-mode",
  "name": "Missing range checks and field aliasing",
  "slug": "missing-range-checks-and-field-aliasing",
  "section": {
    "id": "audit",
    "number": "03",
    "title": "Auditing a ZK protocol",
    "url": "https://zkpick.com/audit/"
  },
  "url": "https://zkpick.com/audit/failure-modes/missing-range-checks-and-field-aliasing/",
  "markdown": "https://zkpick.com/md/audit/failure-modes/missing-range-checks-and-field-aliasing.md",
  "detail": "Values are assumed to fit in a bit width that is never enforced, or a value near the field modulus wraps around so that two distinct field elements represent the same logical quantity. Comparisons, sums and Merkle indices then behave in ways the developer never considered.",
  "mitigation": "Enforce explicit range constraints on every externally influenced value, and check that decompositions into bits are both complete and canonical, rejecting non-canonical representations.",
  "relatedOptions": [],
  "updated": "2026-09-12",
  "version": "1.3",
  "canonical": "https://zkpick.com/audit/failure-modes/missing-range-checks-and-field-aliasing/",
  "license": "https://creativecommons.org/licenses/by/4.0/",
  "authors": [
    "MarketComp"
  ]
}