// cbom · CycloneDX 1.6

Kryptografische Infrastruktur

Diese Seite dokumentiert die 20 kryptografischen Komponenten, die auf beyond-shor.eu aktiv eingesetzt werden — von den post-quanten-sicheren Signaturalgorithmen im Hintergrund bis zu den klassischen Bausteinen im Playground. Wer Kryptoagilität ernst nimmt, muss wissen, was er hat. Das hier ist unsere Antwort darauf: ein maschinenlesbares Kryptografie-Inventar, das du herunterladen, prüfen und mit CBOMkit-coeus analysieren kannst.

Jede Komponente trägt eine kontextgenaue ID nach dem Schema algorithmus:verwendungszweck — etwa aes-256-gcm:playground. Dieses Muster stellt sicher, dass dasselbe Kryptographie-Primitiv in unterschiedlichen Einsatzkontexten als eigenständiger Eintrag erfasst werden kann, ohne ID-Kollisionen zu riskieren.

Die Zahl 20 ist dabei keine Einschränkung, sondern eine Präzision: Nicht jede Bibliothek landet im CBOM — nur die Algorithmen, die in beyond-shor.eu tatsächlich kryptografische Arbeit leisten. TLS-Layer des Hosting-Anbieters, interne Node.js-Hashes für Paketintegrität oder Build-Tools sind bewusst ausgeklammert.

Das Inventar wird täglich durch einen automatisierten Scanner aktualisiert, der die gesamte Codebasis nach kryptografischen Primitiven durchsucht. Neue Algorithmen erscheinen automatisch, entfernte verschwinden — ohne manuellen Aufwand.

ML-DSA-65NIST FIPS 204
Prüfen →

signed: cbom.json

sig: a3cd695b…131e2629

components

20

Kryptografische Assets

quantum-safe

18

Quantum-Safe

not-qs

2

Nicht quantum-safe

spec

CycloneDX

v1.6

// dependency-map

Abhängigkeiten

KEM

#classic-mceliece-8192128:playground

Classic McEliece 8192128

KEM

#frodokem-1344:playground

FrodoKEM-1344

KEM

#ml-kem-1024:playground

ML-KEM-1024

Key Exchange

#x25519:playground

X25519

KDF

#hkdf-sha256:playground

HKDF-SHA-256

Block Cipher

#aes-256-gcm:playground

AES-256-GCM

Hash

#sha-256:contact-form

SHA-256

MAC

#hmac-sha256:contact-form

HMAC-SHA-256

Hash

#sha-256:article-signing

SHA-256

Hash

#shake-256:article-signing

SHAKE-256

Signature

#ml-dsa-65:article-signing

ML-DSA-65

Hash

#shake-256:cbom-signing

SHAKE-256

Signature

#ml-dsa-65:cbom-signing

ML-DSA-65

Hash

#shake-256:playground

SHAKE-256

Signature

#ml-dsa-65:playground

ML-DSA-65

Hash

#sha-256:playground

SHA-256

Signature

#slh-dsa-sha2-128f:playground

SLH-DSA-SHA2-128f

Signature

#slh-dsa-sha2-128s:playground

SLH-DSA-SHA2-128s

Signature

#ecdsa-p256:playground

ECDSA P-256

// 1 standalone (no dependencies): hs256-jwt:strapi

// components

Komponenten-Inventar

#aes-256-gcm:playgroundBlock Cipher

AES-256-GCM

Quantum-Safe

Interactive Cryptography Playground — Authenticated symmetric encryption (AEAD, 256-bit key). Grover's algorithm halves the effective key length: AES-256 provides ~128-bit post-quantum security, corresponding to NIST Level 1.

Abhängigkeiten

#hkdf-sha256:playground
#classic-mceliece-8192128:playgroundKEM

Classic McEliece 8192128

Quantum-Safe

Interactive Cryptography Playground — Code-based KEM (binary Goppa codes). Oldest and most battle-tested PQC assumption (50+ years). Very large public keys (~1 MB). Quantum-safe at NIST security level 5. NIST Round 4 alternate candidate.

Abhängigkeiten

#frodokem-1344:playgroundKEM

FrodoKEM-1344

Quantum-Safe

Interactive Cryptography Playground — Lattice-based KEM (plain LWE — no ring/module structure). Most conservative lattice assumption. Quantum-safe at NIST security level 5. NIST Round 3 alternate candidate maintained by Microsoft Research.

Abhängigkeiten

#hkdf-sha256:playgroundKDF

HKDF-SHA-256

Quantum-Safe

Interactive Cryptography Playground — HMAC-based Key Derivation Function with SHA-256 (RFC 5869 / NIST SP 800-56C). Derives a combined AES-256 key from the X25519 and KEM shared secrets in the hybrid encryption playground.

Abhängigkeiten

#classic-mceliece-8192128:playground#frodokem-1344:playground#ml-kem-1024:playground#x25519:playground
#hmac-sha256:contact-formMAC

HMAC-SHA-256

Quantum-Safe

Contact form — HMAC with SHA-256 (NIST FIPS 198). Grover's algorithm reduces the underlying hash preimage resistance to ~128 bits. Level 2 follows CycloneDX categorisation.

Abhängigkeiten

#sha-256:contact-form
#hs256-jwt:strapiMAC

HS256 (JWT)

Quantum-Safe

Strapi CMS — API authentication tokens (internal, server-to-server only).

Abhängigkeiten

#ml-dsa-65:article-signingSignature

ML-DSA-65

Quantum-Safe

Article signing and verification — NIST FIPS 204 (August 2024). Lattice-based digital signature (Module-LWE + Module-SIS). Pure ML-DSA: message bytes passed directly without pre-hashing — SHAKE-256 applied internally (µ = SHAKE-256(tr ∥ M, 64) per FIPS 204 §5.2). Quantum-safe at NIST security level 3.

Abhängigkeiten

#sha-256:article-signing#shake-256:article-signing
#ml-dsa-65:cbom-signingSignature

ML-DSA-65

Quantum-Safe

CBOM signing — NIST FIPS 204 (August 2024). Lattice-based digital signature (Module-LWE + Module-SIS). Pure ML-DSA: message bytes passed directly without pre-hashing — SHAKE-256 applied internally (µ = SHAKE-256(tr ∥ M, 64) per FIPS 204 §5.2). Quantum-safe at NIST security level 3.

Abhängigkeiten

#shake-256:cbom-signing
#ml-dsa-65:playgroundSignature

ML-DSA-65

Quantum-Safe

Interactive Cryptography Playground — NIST FIPS 204 (August 2024). Lattice-based digital signature (Module-LWE + Module-SIS). Pure ML-DSA: message bytes passed directly without pre-hashing — SHAKE-256 applied internally (µ = SHAKE-256(tr ∥ M, 64) per FIPS 204 §5.2). Quantum-safe at NIST security level 3.

Abhängigkeiten

#shake-256:playground
#ml-kem-1024:playgroundKEM

ML-KEM-1024

Quantum-Safe

Interactive Cryptography Playground — NIST FIPS 203 (August 2024). Lattice-based KEM (Module-LWE). Quantum-safe at NIST security level 5.

Abhängigkeiten

#sha-256:article-signingHash

SHA-256

Quantum-Safe

Article signing and verification — SHA-256 (NIST FIPS 180-4). Used here to hash media file content (images) into a compact 32-byte digest that is embedded in the signed article message. Grover's algorithm reduces preimage resistance to ~128 bits. Level 2 follows the classical CycloneDX categorisation.

Abhängigkeiten

#sha-256:contact-formHash

SHA-256

Quantum-Safe

Contact form — SHA-256 (NIST FIPS 180-4). Used here to hash media file content (images) into a compact 32-byte digest that is embedded in the signed article message. Grover's algorithm reduces preimage resistance to ~128 bits. Level 2 follows the classical CycloneDX categorisation.

Abhängigkeiten

#sha-256:playgroundHash

SHA-256

Quantum-Safe

Interactive Cryptography Playground — SHA-256 (NIST FIPS 180-4). Used here to hash media file content (images) into a compact 32-byte digest that is embedded in the signed article message. Grover's algorithm reduces preimage resistance to ~128 bits. Level 2 follows the classical CycloneDX categorisation.

Abhängigkeiten

#shake-256:article-signingHash

SHAKE-256

Quantum-Safe

Article signing and verification — SHAKE-256 (NIST FIPS 202) — extendable output function (XOF) based on Keccak-1600. Used internally by ML-DSA-65 to derive the message representative µ = SHAKE-256(tr ∥ M, 64) per FIPS 204 §5.2. Not called directly in source; implicit via @noble/post-quantum.

Abhängigkeiten

#shake-256:cbom-signingHash

SHAKE-256

Quantum-Safe

CBOM signing — SHAKE-256 (NIST FIPS 202) — extendable output function (XOF) based on Keccak-1600. Used internally by ML-DSA-65 to derive the message representative µ = SHAKE-256(tr ∥ M, 64) per FIPS 204 §5.2. Not called directly in source; implicit via @noble/post-quantum.

Abhängigkeiten

#shake-256:playgroundHash

SHAKE-256

Quantum-Safe

Interactive Cryptography Playground — SHAKE-256 (NIST FIPS 202) — extendable output function (XOF) based on Keccak-1600. Used internally by ML-DSA-65 to derive the message representative µ = SHAKE-256(tr ∥ M, 64) per FIPS 204 §5.2. Not called directly in source; implicit via @noble/post-quantum.

Abhängigkeiten

#slh-dsa-sha2-128f:playgroundSignature

SLH-DSA-SHA2-128f

Quantum-Safe

Interactive Cryptography Playground — Hash-based stateless signature scheme (fast variant). NIST FIPS 205 (August 2024). Faster signing than the small variant at the cost of larger signatures. Quantum-safe at NIST security level 1. Based on SPHINCS+.

Abhängigkeiten

#sha-256:playground
#slh-dsa-sha2-128s:playgroundSignature

SLH-DSA-SHA2-128s

Quantum-Safe

Interactive Cryptography Playground — Hash-based stateless signature scheme (small variant). NIST FIPS 205 (August 2024). Smallest signatures of the SLH-DSA family at the cost of significantly slower signing. Quantum-safe at NIST security level 1. Based on SPHINCS+.

Abhängigkeiten

#sha-256:playground
#ecdsa-p256:playgroundSignature

ECDSA P-256

Nicht quantum-safe

Interactive Cryptography Playground — Classical elliptic-curve digital signature (NIST P-256 / secp256r1). Quantum-VULNERABLE — Shor's algorithm can recover the private key from the public key. Intentionally included as a quantum-vulnerable classical baseline in the Signature Playground.

Abhängigkeiten

#sha-256:playground
#x25519:playgroundKey Exchange

X25519

Nicht quantum-safe

Interactive Cryptography Playground — Classical ECDH key exchange (Curve25519). Quantum-VULNERABLE — Shor's algorithm breaks the elliptic curve discrete logarithm. Intentionally included as quantum-vulnerable baseline in hybrid schemes.

Abhängigkeiten

// export

Export

CycloneDX 1.6 — kompatibel mit CBOMkit-coeus
// CBOM-JSON anzeigen
{
  "bomFormat": "CycloneDX",
  "specVersion": "1.6",
  "version": 12,
  "serialNumber": "urn:uuid:b7e3c2a1-4f8d-4e9b-a1c3-d6f2e8b5a790",
  "metadata": {
    "timestamp": "2026-03-27T18:53:51Z",
    "component": {
      "type": "application",
      "name": "beyond-shor.eu",
      "version": "1.0.0",
      "description": "Post-Quantum Cryptography blog and interactive playground"
    },
    "tools": [
      {
        "name": "scan-cbom.mjs",
        "version": "1.0.0"
      }
    ]
  },
  "components": [
    {
      "bom-ref": "aes-256-gcm:playground",
      "type": "cryptographic-asset",
      "name": "AES-256-GCM",
      "description": "Interactive Cryptography Playground — Authenticated symmetric encryption (AEAD, 256-bit key). Grover's algorithm halves the effective key length: AES-256 provides ~128-bit post-quantum security, corresponding to NIST Level 1.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "block-cipher",
          "nistQuantumSecurityLevel": 1
        }
      }
    },
    {
      "bom-ref": "classic-mceliece-8192128:playground",
      "type": "cryptographic-asset",
      "name": "Classic McEliece 8192128",
      "description": "Interactive Cryptography Playground — Code-based KEM (binary Goppa codes). Oldest and most battle-tested PQC assumption (50+ years). Very large public keys (~1 MB). Quantum-safe at NIST security level 5. NIST Round 4 alternate candidate.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "kem",
          "nistQuantumSecurityLevel": 5
        }
      }
    },
    {
      "bom-ref": "frodokem-1344:playground",
      "type": "cryptographic-asset",
      "name": "FrodoKEM-1344",
      "description": "Interactive Cryptography Playground — Lattice-based KEM (plain LWE — no ring/module structure). Most conservative lattice assumption. Quantum-safe at NIST security level 5. NIST Round 3 alternate candidate maintained by Microsoft Research.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "kem",
          "nistQuantumSecurityLevel": 5
        }
      }
    },
    {
      "bom-ref": "hkdf-sha256:playground",
      "type": "cryptographic-asset",
      "name": "HKDF-SHA-256",
      "description": "Interactive Cryptography Playground — HMAC-based Key Derivation Function with SHA-256 (RFC 5869 / NIST SP 800-56C). Derives a combined AES-256 key from the X25519 and KEM shared secrets in the hybrid encryption playground.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "kdf",
          "nistQuantumSecurityLevel": 2
        }
      }
    },
    {
      "bom-ref": "hmac-sha256:contact-form",
      "type": "cryptographic-asset",
      "name": "HMAC-SHA-256",
      "description": "Contact form — HMAC with SHA-256 (NIST FIPS 198). Grover's algorithm reduces the underlying hash preimage resistance to ~128 bits. Level 2 follows CycloneDX categorisation.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "mac",
          "nistQuantumSecurityLevel": 2
        }
      }
    },
    {
      "bom-ref": "hs256-jwt:strapi",
      "type": "cryptographic-asset",
      "name": "HS256 (JWT)",
      "description": "Strapi CMS — API authentication tokens (internal, server-to-server only).",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "mac",
          "nistQuantumSecurityLevel": 2
        }
      }
    },
    {
      "bom-ref": "ml-dsa-65:article-signing",
      "type": "cryptographic-asset",
      "name": "ML-DSA-65",
      "description": "Article signing and verification — NIST FIPS 204 (August 2024). Lattice-based digital signature (Module-LWE + Module-SIS). Pure ML-DSA: message bytes passed directly without pre-hashing — SHAKE-256 applied internally (µ = SHAKE-256(tr ∥ M, 64) per FIPS 204 §5.2). Quantum-safe at NIST security level 3.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "signature",
          "nistQuantumSecurityLevel": 3
        }
      }
    },
    {
      "bom-ref": "ml-dsa-65:cbom-signing",
      "type": "cryptographic-asset",
      "name": "ML-DSA-65",
      "description": "CBOM signing — NIST FIPS 204 (August 2024). Lattice-based digital signature (Module-LWE + Module-SIS). Pure ML-DSA: message bytes passed directly without pre-hashing — SHAKE-256 applied internally (µ = SHAKE-256(tr ∥ M, 64) per FIPS 204 §5.2). Quantum-safe at NIST security level 3.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "signature",
          "nistQuantumSecurityLevel": 3
        }
      }
    },
    {
      "bom-ref": "ml-dsa-65:playground",
      "type": "cryptographic-asset",
      "name": "ML-DSA-65",
      "description": "Interactive Cryptography Playground — NIST FIPS 204 (August 2024). Lattice-based digital signature (Module-LWE + Module-SIS). Pure ML-DSA: message bytes passed directly without pre-hashing — SHAKE-256 applied internally (µ = SHAKE-256(tr ∥ M, 64) per FIPS 204 §5.2). Quantum-safe at NIST security level 3.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "signature",
          "nistQuantumSecurityLevel": 3
        }
      }
    },
    {
      "bom-ref": "ml-kem-1024:playground",
      "type": "cryptographic-asset",
      "name": "ML-KEM-1024",
      "description": "Interactive Cryptography Playground — NIST FIPS 203 (August 2024). Lattice-based KEM (Module-LWE). Quantum-safe at NIST security level 5.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "kem",
          "nistQuantumSecurityLevel": 5
        }
      }
    },
    {
      "bom-ref": "sha-256:article-signing",
      "type": "cryptographic-asset",
      "name": "SHA-256",
      "description": "Article signing and verification — SHA-256 (NIST FIPS 180-4). Used here to hash media file content (images) into a compact 32-byte digest that is embedded in the signed article message. Grover's algorithm reduces preimage resistance to ~128 bits. Level 2 follows the classical CycloneDX categorisation.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "hash",
          "nistQuantumSecurityLevel": 2
        }
      }
    },
    {
      "bom-ref": "sha-256:contact-form",
      "type": "cryptographic-asset",
      "name": "SHA-256",
      "description": "Contact form — SHA-256 (NIST FIPS 180-4). Used here to hash media file content (images) into a compact 32-byte digest that is embedded in the signed article message. Grover's algorithm reduces preimage resistance to ~128 bits. Level 2 follows the classical CycloneDX categorisation.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "hash",
          "nistQuantumSecurityLevel": 2
        }
      }
    },
    {
      "bom-ref": "sha-256:playground",
      "type": "cryptographic-asset",
      "name": "SHA-256",
      "description": "Interactive Cryptography Playground — SHA-256 (NIST FIPS 180-4). Used here to hash media file content (images) into a compact 32-byte digest that is embedded in the signed article message. Grover's algorithm reduces preimage resistance to ~128 bits. Level 2 follows the classical CycloneDX categorisation.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "hash",
          "nistQuantumSecurityLevel": 2
        }
      }
    },
    {
      "bom-ref": "shake-256:article-signing",
      "type": "cryptographic-asset",
      "name": "SHAKE-256",
      "description": "Article signing and verification — SHAKE-256 (NIST FIPS 202) — extendable output function (XOF) based on Keccak-1600. Used internally by ML-DSA-65 to derive the message representative µ = SHAKE-256(tr ∥ M, 64) per FIPS 204 §5.2. Not called directly in source; implicit via @noble/post-quantum.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "hash",
          "nistQuantumSecurityLevel": 3
        }
      }
    },
    {
      "bom-ref": "shake-256:cbom-signing",
      "type": "cryptographic-asset",
      "name": "SHAKE-256",
      "description": "CBOM signing — SHAKE-256 (NIST FIPS 202) — extendable output function (XOF) based on Keccak-1600. Used internally by ML-DSA-65 to derive the message representative µ = SHAKE-256(tr ∥ M, 64) per FIPS 204 §5.2. Not called directly in source; implicit via @noble/post-quantum.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "hash",
          "nistQuantumSecurityLevel": 3
        }
      }
    },
    {
      "bom-ref": "shake-256:playground",
      "type": "cryptographic-asset",
      "name": "SHAKE-256",
      "description": "Interactive Cryptography Playground — SHAKE-256 (NIST FIPS 202) — extendable output function (XOF) based on Keccak-1600. Used internally by ML-DSA-65 to derive the message representative µ = SHAKE-256(tr ∥ M, 64) per FIPS 204 §5.2. Not called directly in source; implicit via @noble/post-quantum.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "hash",
          "nistQuantumSecurityLevel": 3
        }
      }
    },
    {
      "bom-ref": "slh-dsa-sha2-128f:playground",
      "type": "cryptographic-asset",
      "name": "SLH-DSA-SHA2-128f",
      "description": "Interactive Cryptography Playground — Hash-based stateless signature scheme (fast variant). NIST FIPS 205 (August 2024). Faster signing than the small variant at the cost of larger signatures. Quantum-safe at NIST security level 1. Based on SPHINCS+.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "signature",
          "nistQuantumSecurityLevel": 1
        }
      }
    },
    {
      "bom-ref": "slh-dsa-sha2-128s:playground",
      "type": "cryptographic-asset",
      "name": "SLH-DSA-SHA2-128s",
      "description": "Interactive Cryptography Playground — Hash-based stateless signature scheme (small variant). NIST FIPS 205 (August 2024). Smallest signatures of the SLH-DSA family at the cost of significantly slower signing. Quantum-safe at NIST security level 1. Based on SPHINCS+.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "signature",
          "nistQuantumSecurityLevel": 1
        }
      }
    },
    {
      "bom-ref": "ecdsa-p256:playground",
      "type": "cryptographic-asset",
      "name": "ECDSA P-256",
      "description": "Interactive Cryptography Playground — Classical elliptic-curve digital signature (NIST P-256 / secp256r1). Quantum-VULNERABLE — Shor's algorithm can recover the private key from the public key. Intentionally included as a quantum-vulnerable classical baseline in the Signature Playground.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "signature",
          "nistQuantumSecurityLevel": 0
        }
      }
    },
    {
      "bom-ref": "x25519:playground",
      "type": "cryptographic-asset",
      "name": "X25519",
      "description": "Interactive Cryptography Playground — Classical ECDH key exchange (Curve25519). Quantum-VULNERABLE — Shor's algorithm breaks the elliptic curve discrete logarithm. Intentionally included as quantum-vulnerable baseline in hybrid schemes.",
      "cryptoProperties": {
        "assetType": "algorithm",
        "algorithmProperties": {
          "primitive": "ke",
          "nistQuantumSecurityLevel": 0
        }
      }
    }
  ],
  "dependencies": [
    {
      "ref": "aes-256-gcm:playground",
      "dependsOn": [
        "hkdf-sha256:playground"
      ]
    },
    {
      "ref": "classic-mceliece-8192128:playground",
      "dependsOn": []
    },
    {
      "ref": "frodokem-1344:playground",
      "dependsOn": []
    },
    {
      "ref": "hkdf-sha256:playground",
      "dependsOn": [
        "classic-mceliece-8192128:playground",
        "frodokem-1344:playground",
        "ml-kem-1024:playground",
        "x25519:playground"
      ]
    },
    {
      "ref": "hmac-sha256:contact-form",
      "dependsOn": [
        "sha-256:contact-form"
      ]
    },
    {
      "ref": "hs256-jwt:strapi",
      "dependsOn": []
    },
    {
      "ref": "ml-dsa-65:article-signing",
      "dependsOn": [
        "sha-256:article-signing",
        "shake-256:article-signing"
      ]
    },
    {
      "ref": "ml-dsa-65:cbom-signing",
      "dependsOn": [
        "shake-256:cbom-signing"
      ]
    },
    {
      "ref": "ml-dsa-65:playground",
      "dependsOn": [
        "shake-256:playground"
      ]
    },
    {
      "ref": "ml-kem-1024:playground",
      "dependsOn": []
    },
    {
      "ref": "sha-256:article-signing",
      "dependsOn": []
    },
    {
      "ref": "sha-256:contact-form",
      "dependsOn": []
    },
    {
      "ref": "sha-256:playground",
      "dependsOn": []
    },
    {
      "ref": "shake-256:article-signing",
      "dependsOn": []
    },
    {
      "ref": "shake-256:cbom-signing",
      "dependsOn": []
    },
    {
      "ref": "shake-256:playground",
      "dependsOn": []
    },
    {
      "ref": "slh-dsa-sha2-128f:playground",
      "dependsOn": [
        "sha-256:playground"
      ]
    },
    {
      "ref": "slh-dsa-sha2-128s:playground",
      "dependsOn": [
        "sha-256:playground"
      ]
    },
    {
      "ref": "ecdsa-p256:playground",
      "dependsOn": [
        "sha-256:playground"
      ]
    },
    {
      "ref": "x25519:playground",
      "dependsOn": []
    }
  ]
}