---
id: "sha256crypt_hash"
kind: "datatype"
status: "draft"
is_pii: false
categories: ["secrets", "cryptography"]
langs: ["common"]
quality: 75
url: "http://registry.apicrafter.io/datatype/sha256crypt_hash"
---

# SHA-256-crypt password hash (`sha256crypt_hash`)

> **Draft.** Draft records have not been reviewed yet and may be incomplete or wrong; do not treat them as authoritative for legal or compliance decisions.

Password hash of the SHA-256-based crypt scheme by Ulrich Drepper, in Modular Crypt Format: $5$, an optional rounds=N$ (5000 rounds by default), a salt of up to 16 characters, $ and 43 characters of crypt Base64.

- Personal data (PII): no
- Categories: Secrets and credentials (passwords, keys, tokens) (secrets), Cryptographic identifiers (cryptography)
- Countries: global
- Languages: Common to most languages (common)
- Classification: identifier

## Detection

Regular expression (Python `re`):

```
^\$5\$(?:rounds=[1-9][0-9]+\$)?[^$:\n]{1,16}\$[./0-9A-Za-z]{43}$
```

## Examples

- `$5$saltstring$5B8vYYiY.CVt1RlTTf8KbXBH3hsxY/GNooZaBBGWEc5` — Test vector of the specification: Hello world! with the salt saltstring
- `$5$rounds=10000$saltstringsaltst$3xv.VbSHBb41AL9AvLeujZkZRBAwqFMz2.opqey6IcA` — Test vector of the specification with 10000 rounds
- `$6$saltstring$svn8UoSVapNtMuq1ukKS4tPQd8iKwSMHWjl/O817G3uBnIFNjnQJuesI68u4OTLiBFdcbYEdFCoEOfaS35inz1` (invalid example) — SHA-512-crypt hash

## Sources

- doc: <https://www.akkadia.org/drepper/SHA-crypt.txt>
- doc: <https://man.archlinux.org/man/crypt.5>

## Quality

Score 75/100. Missing: mapping (Wikidata, Schema.org, ...), translation, detector coverage.

JSON: <http://registry.apicrafter.io/api/v1/datatypes/sha256crypt_hash.json> · Edit: <https://github.com/apicrafter/metacrafter-registry/edit/main/data/datatypes/any/secrets/sha256crypt_hash.yaml>
