{
  "slug": "jasmin",
  "name": "Jasmin and libjade",
  "tagline": "Verified high-speed assembly with constant-time guarantees",
  "maintainer": "Formosa Crypto",
  "url": "https://github.com/jasmin-lang/jasmin",
  "repo": "https://github.com/formosa-crypto/libjade",
  "category": "implementations",
  "targets": [
    "ML-KEM (incl. AVX2)",
    "ML-DSA",
    "X-Wing",
    "Keccak / SHA-3",
    "X25519",
    "x86-64 assembly"
  ],
  "approach": "Verified compiler from a low-level language to assembly; correctness proved in EasyCrypt; constant-time checked",
  "license": "Open source",
  "status": "Active (Jasmin 2026.03.2 released July 2026)",
  "summary": "Jasmin is a language and verified compiler for writing cryptographic assembly whose functional correctness is proved in EasyCrypt and whose constant-time behaviour is checked by the compiler. libjade is the resulting library of verified implementations, including ML-KEM with AVX2 rejection sampling, ML-DSA, X-Wing, SHA-3 and X25519.",
  "details": [
    "Jasmin is the only pipeline where the security proof (EasyCrypt), the functional spec and the shipped assembly are all connected by machine-checked steps. The mlkem-libjade AVX2 work was published at IEEE S&P 2025."
  ],
  "strengths": [
    "Strongest end-to-end story: proof to assembly.",
    "Post-quantum coverage.",
    "Performance competitive with hand-written assembly."
  ],
  "limits": [
    "Assembly must be written in Jasmin.",
    "x86-64 focus.",
    "Expertise concentrated in a few groups."
  ],
  "fit": [
    "Choose Jasmin/libjade when you ship a primitive and want the verified implementation itself, not a proof about someone else's code."
  ],
  "references": [
    [
      "Jasmin repository",
      "https://github.com/jasmin-lang/jasmin"
    ],
    [
      "libjade",
      "https://github.com/formosa-crypto/libjade"
    ],
    [
      "Formosa Crypto",
      "https://formosa-crypto.org"
    ]
  ],
  "category_name": "Verified implementations",
  "page": "https://sorryfree.com/frameworks/jasmin/",
  "updated": "2026-09-13"
}