{
  "slug": "cryptoline",
  "name": "CryptoLine",
  "tagline": "Verification of low-level arithmetic assembly",
  "maintainer": "Academia Sinica (Bow-Yaw Wang)",
  "url": "https://github.com/fmlab-iis/cryptoline",
  "repo": "https://github.com/fmlab-iis/cryptoline",
  "category": "implementations",
  "targets": [
    "Bignum and NTT assembly",
    "OpenSSL",
    "BoringSSL",
    "wolfSSL",
    "PQC NTTs"
  ],
  "approach": "Algebraic and range reasoning on straight-line arithmetic code",
  "license": "Open source",
  "status": "Active research",
  "summary": "CryptoLine verifies straight-line arithmetic assembly such as bignum multiplication and NTT butterflies, and has been applied to OpenSSL, BoringSSL, wolfSSL and post-quantum NTT implementations.",
  "details": [
    "Its algebraic approach scales to code where SMT alone struggles, which is why it is used on the hot loops of production libraries."
  ],
  "strengths": [
    "Handles large arithmetic kernels.",
    "Applied to production libraries.",
    "Complements SAW-style equivalence."
  ],
  "limits": [
    "Straight-line code only.",
    "Specialist tool.",
    "Academic maintenance."
  ],
  "fit": [
    "Use CryptoLine for the arithmetic kernels of a classical or post-quantum library."
  ],
  "references": [
    [
      "CryptoLine repository",
      "https://github.com/fmlab-iis/cryptoline"
    ]
  ],
  "category_name": "Verified implementations",
  "page": "https://sorryfree.com/frameworks/cryptoline/",
  "updated": "2026-09-13"
}