Kryptografia
Overenie NIST: skontrolujte ML-DSA-87, SLH-DSA a Ed25519 sami
Americký normalizačný inštitút NIST zverejňuje oficiálne testovacie vektory pre ML-DSA (FIPS 204) a SLH-DSA (FIPS 205): vstupy s výsledkami, ktoré musí správna implementácia priniesť, vrátane úmyselne zmanipulovaných podpisov. Tu váš prehliadač prepočíta tieto prípady presne tým modulom, ktorý overuje aj naše hodnotenia.
Spustiť test
Testovacie súbory sa načítajú priamo z NIST na GitHube, nie z našich serverov. Testovací súbor SLH-DSA má približne 30 MB, načítanie preto môže chvíľu trvať.
Alebo: stiahnite si súbory sami a vyberte ich
- Na GitHube NIST otvorte priečinky
ML-DSA-keyGen-FIPS204,ML-DSA-sigVer-FIPS204,SLH-DSA-keyGen-FIPS205,SLH-DSA-sigVer-FIPS205,EDDSA-SigGen-1.0aEDDSA-SigVer-1.0. - Z každého stiahnite
internalProjection.json. - Tu vyberte súbory (všetky alebo jednotlivé):
Čo test ukazuje a čo nie
- Generovanie kľúčov (keyGen): z každej počiatočnej hodnoty NIST (seed) vytvorí náš modul podpis. Ten je platný pod verejným kľúčom určeným NIST iba vtedy, ak náš modul vypočítal presne ten istý kľúč.
- Overenie podpisu (sigVer): náš modul musí v každom prípade dospieť k rovnakému verdiktu ako NIST, aj pri úmyselne zmenených podpisoch, správach a kontextoch.
- SLH-DSA-SHA2-256f: Z troch počiatočných hodnôt NIST (skSeed, skPrf, pkSeed) musí náš modul vytvoriť presne rovnaký súkromný a verejný kľúč ako NIST — porovnané bajt po bajte. Pri overení podpisu platí to isté ako vyššie. Vyhodnocuje sa iba sada parametrov SHA2-256f, ktorú McGesund používa.
- Ed25519: tu sa netestuje náš vlastný kód, ale kryptografia vstavaná v prehliadači a naša záložná knižnica noble, ktorá overuje hodnotenia v prehliadačoch bez Ed25519. Testuje sa čisté Ed25519 bez predhashovania a kontextu, tak ako podpisujeme. NIST na to poskytuje len niekoľko zmanipulovaných prípadov; ostatné sú platné podpisy, ktoré musia byť prijaté.
- Nepokryté: správa kľúčov, servery a procesy okolo podpisu. Test dokazuje, že matematika zodpovedá štandardu, nič viac.
- FN-DSA (Falcon): štandard FIPS 206 ešte nie je konečný, preto NIST zatiaľ nezverejnil oficiálne testovacie vektory. Hneď ako vyjdú, doplníme ich sem.