{
  "id": "argon2_hash",
  "kind": "datatype",
  "status": "draft",
  "name": "Argon2 password hash (PHC string)",
  "doc": "Password hash of Argon2 (RFC 9106), the winner of the Password Hashing Competition, in the PHC string format: $argon2id$ (or argon2i, argon2d), the version v=19, the memory, time and parallelism costs m, t and p, then the salt and the hash in Base64 without padding. Argon2id is the default of libsodium crypto_pwhash.",
  "is_pii": false,
  "categories": [
    "secrets",
    "cryptography"
  ],
  "langs": [
    "common"
  ],
  "classification": "identifier",
  "regexp": "^\\$argon2(?:id|i|d)\\$(?:v=(?:16|19)\\$)?m=[0-9]{1,10},t=[0-9]{1,10},p=[0-9]{1,3}(?:,keyid=[A-Za-z0-9+/]{0,11})?(?:,data=[A-Za-z0-9+/]{0,43})?\\$[A-Za-z0-9+/]{11,64}\\$[A-Za-z0-9+/]{16,86}$",
  "examples": [
    {
      "value": "$argon2id$v=19$m=19456,t=2,p=1$ZXhhbXBsZXNhbHQ$iZkkU2r9X5jHLoSY5bV80kDSU5BEB+SBOn0Rw4bjgLQ",
      "description": "Hash of the word \"example\" with the salt examplesalt (m=19456, t=2, p=1)",
      "valid": true
    },
    {
      "value": "$2y$10$PvHZA2qDCPtJ6C/JxFval.y80.N4NJBCHhyTY.XkcksghdCXe3oXG",
      "description": "bcrypt hash",
      "valid": false
    }
  ],
  "links": [
    {
      "type": "doc",
      "url": "https://www.rfc-editor.org/rfc/rfc9106"
    },
    {
      "type": "doc",
      "url": "https://github.com/C2SP/C2SP/blob/main/phc-strings.md"
    },
    {
      "type": "wikipedia",
      "url": "https://en.wikipedia.org/wiki/Argon2"
    }
  ],
  "quality": {
    "score": 68,
    "missing": [
      "second example",
      "mapping (Wikidata, Schema.org, ...)",
      "translation",
      "detector coverage"
    ]
  },
  "source": {
    "path": "data/datatypes/any/secrets/argon2_hash.yaml",
    "url": "https://github.com/apicrafter/metacrafter-registry/blob/main/data/datatypes/any/secrets/argon2_hash.yaml",
    "edit_url": "https://github.com/apicrafter/metacrafter-registry/edit/main/data/datatypes/any/secrets/argon2_hash.yaml"
  },
  "urls": {
    "html": "http://registry.apicrafter.io/datatype/argon2_hash",
    "json": "http://registry.apicrafter.io/api/v1/datatypes/argon2_hash.json"
  }
}