Všetky balíky
Sentinel for Laravel
Štandardy
Ktoré štandardy Sentinel implementuje a ako (stav overený 2. októbra 2026):
| Štandard | Uplatnenie |
|---|---|
| RFC 2104 / FIPS 198-1 (HMAC) | HMAC cez crypto; podkľúče pečatí odvodené cez HKDF s dĺžkou výstupu hashu. |
| NIST SP 800-107r1 | Dĺžka kľúča ≥ bezpečnostná sila; značky polí skrátené na 128 bitov. |
| NIST SP 800-131A r2 | Kľúče HMAC < 112 bitov sú zakázané — Sentinel vyžaduje ≥ 256 bitov koreňového kľúča. |
| NIST SP 800-57 Pt 1 r5 | Kryptoperiódy → activates_at / signs_until / verifies_until; odvolanie je samostatné. |
| FIPS 186-5 + RFC 8032 | ECDSA P-256/P-384 a EdDSA Ed25519 ako schválené podpisové schémy. |
| RFC 5869 (HKDF) | Podkľúče podľa účelu; vektory z prílohy A ako testy so známou odpoveďou. |
| RFC 8785 (JCS) | Kanonická serializácia JSON (odchýlka: presné celé čísla). |
| RFC 8725 (JWT BCP) §3.1–3.2 | Algoritmus pripnutý ku kľúču, nikdy nedôverovať uloženému či prijatému alg, žiadne none. |
| RFC 9421 (HTTP Message Signatures) | Profil pre prichádzajúce aj odchádzajúce požiadavky; príloha B.2.4–B.2.6 ako testy so známou odpoveďou, B.2.1–B.2.3 (rsa-pss-sha512) sa odmietajú ako nepodporované. |
| RFC 9530 (Digest Fields) | Content-Digest so sha-256 / sha-512; zastarané algoritmy sa ignorujú. |
| RFC 9651 (Structured Fields) | Vlastný parser a serializér overený sadou httpwg structured-field-tests. |
| RFC 9457 (Problem Details) | application/problem+json pri odmietnutí idempotencie a podpisov. |
| draft-ietf-httpapi-idempotency-key-header-07 | Expirovaný Internet-Draft: Idempotency-Key ako sf-string; POST/PATCH; 400 / 422 / 409; zdokumentovaná expirácia; Idempotent-Replayed ako de facto hlavička prehratia. |
| OWASP ASVS 5.0 V11 | Životný cyklus a inventár kľúčov, overené implementácie, kryptoagilita, ≥ 128-bitová bezpečnosť, porovnávanie v konštantnom čase, fail secure, CSPRNG nonce, schválené podpisové algoritmy. |
| OWASP ASVS 5.0 V2.3 | Atomicita biznis logiky a odolnosť voči dvojitému odoslaniu → idempotenčné kľúče + zamykanie. |
Ako je to dokázané
- Každý riadok matice detekcie je zakódovaný v teste, v oboch stĺpcoch — len databáza aj s kotvou.
- Property test spúšťa 200 sekvencií po 25 náhodných operácií — zápisy, manipulácie, mazanie pečatí, obnovy snapshotov, potvrdenia, rotácie, prepečatenia, mazania, kontrolné body a kontroly denníka — proti čistému referenčnému modelu a po každom kroku porovnáva stavy, verzie aj zistenia v denníku.
- Testy na skutočných databázach púšťajú osem súbežných procesov na PostgreSQL a MySQL: pečate, prvé pečate, idempotenčné kľúče, nonce, klientske nonce, kontrolné body a zámky riadkov.
- Architektonické testy zaručujú, že hash_hkdf volá len jedna trieda, čas číta len jedna, kryptografické primitívy žijú v troch triedach, porovnania v konštantnom čase idú cez crypto a vnútorné triedy sú označené @internal.
- Pokrytie musí byť 95 % celkovo a 100 % v Actions, Canonical, Engine, Http\Signatures, Http\StructuredFields, Keys a Ledger.
- Sada testov hygieny tajomstiev overuje, že žiadne tajomstvo sa nedostane do výnimiek, logov, about, výpisov, serializácie, udalostí ani výstupu príkazov a že každý parameter s materiálom kľúča nesie #[\SensitiveParameter].
Prejavte lásku k open source
Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.
Ďalšie spôsoby podpory vrátane kryptomienOdoslaním daru súhlasíte s našimi podmienkami prijímania darov.
Chcete to zabudovať do svojho produktu?
Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.