Safeguard
Application Security•

ASVS 5.0 V11.1.2: Build a Cryptographic Inventory

ASVS V11.1.2 requires a maintained inventory of every key, algorithm and certificate, with rules on where each may be used. A simple format and a test.

Safeguard Security Team
2 min read

ASVS 5.0 V11.1.2 (Level 2) requires a cryptographic inventory that is performed, maintained and regularly updated. It must list every key, algorithm and certificate the application uses, and document where each key can and cannot be used and which types of data it may protect.

Why it matters

You cannot rotate, upgrade or revoke what you cannot list. When a library announces a break, or a certificate expires at 2 a.m., the inventory is the difference between a ten minute fix and a day of grepping.

It also supports other requirements. Crypto agility (V11.2.2), migration planning (V11.1.4) and key policy (V11.1.1) all assume this list exists.

How to implement it

Keep the inventory in version control next to the code, so changes go through review. One YAML file per service works well:

keys:
  - id: orders-data-key
    type: AES-256-GCM
    store: cloud-kms
    owner: payments-team
    allowed_use: encrypt order PII at rest
    forbidden_use: signing, tokens, other services
    data_classes: [customer-address, phone]
    rotation_days: 90
certificates:
  - id: api-public-tls
    algorithm: ECDSA P-256
    expires: 2027-03-01
    owner: platform-team
algorithms:
  - use: password hashing
    algorithm: argon2id
    library: argon2-cffi

Fill it from three sources: the KMS or vault listing, a certificate scan of your domains, and a code search for crypto calls. Review it every quarter and whenever a service is added.

How to test it

Pick five crypto calls from the code at random and look each one up in the inventory. Then pick five inventory rows and confirm the key actually exists in the named store. Mismatches in either direction are findings. Also check that every certificate has an expiry date and an owner, and that no key lists a use that conflicts with another row.

Common mistakes

  • An inventory built once for an audit and never touched again
  • Listing algorithms but not the keys or certificates
  • No forbidden use column, so one key quietly serves five purposes
  • Ignoring third party libraries that bring their own crypto

Quick check

What three item types must the inventory cover?

Keys, algorithms and certificates.

Why record forbidden uses?

It stops key reuse across purposes and data types, which weakens isolation if one use is compromised.

Sources

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.