Kriptográfia

NIST-ellenőrzés: ellenőrizze maga az ML-DSA-87-et, az SLH-DSA-t és az Ed25519-et

Az amerikai szabványügyi intézet, a NIST hivatalos tesztvektorokat tesz közzé az ML-DSA-hoz (FIPS 204) és az SLH-DSA-hoz (FIPS 205): bemeneteket azokkal az eredményekkel, amelyeket egy helyes implementációnak adnia kell, köztük szándékosan manipulált aláírásokat. Itt az Ön böngészője pontosan azzal a modullal számolja újra ezeket az eseteket, amely az értékeléseinket is ellenőrzi.

Teszt indítása

A tesztfájlok közvetlenül a NIST GitHub-oldaláról töltődnek be, nem a mi szervereinkről. Az SLH-DSA-tesztfájl körülbelül 30 MB-os, ezért a betöltés eltarthat egy ideig.

Vagy: töltse le maga a fájlokat, és válassza ki őket
  1. Nyissa meg a NIST GitHub-oldalán az ML-DSA-keyGen-FIPS204, ML-DSA-sigVer-FIPS204, SLH-DSA-keyGen-FIPS205, SLH-DSA-sigVer-FIPS205, EDDSA-SigGen-1.0 és EDDSA-SigVer-1.0 mappát.
  2. Mindkettőből töltse le az internalProjection.json fájlt.
  3. Válassza ki itt a fájlokat (mindet vagy egyenként):

Mit mutat a teszt, és mit nem

  • Kulcsgenerálás (keyGen): a NIST minden kezdőértékéből (seed) modulunk aláírást készít. Ez csak akkor érvényes a NIST által megadott nyilvános kulccsal, ha modulunk pontosan ugyanazt a kulcsot számolta ki.
  • Aláírás-ellenőrzés (sigVer): modulunknak minden esetben ugyanarra az ítéletre kell jutnia, mint a NIST-nek, a szándékosan módosított aláírások, üzenetek és kontextusok esetén is.
  • SLH-DSA-SHA2-256f: A NIST három kiinduló értékéből (skSeed, skPrf, pkSeed) modulunknak pontosan ugyanazt a privát és nyilvános kulcsot kell előállítania, mint a NIST-nek — bájtról bájtra összehasonlítva. Az aláírás-ellenőrzésre ugyanaz érvényes, mint fent. Csak az SHA2-256f paraméterkészletet értékeljük, amelyet a McGesund használ.
  • Ed25519: itt nem a saját kódunkat teszteljük, hanem a böngészőbe épített kriptográfiát és a noble tartalék könyvtárunkat, amely az Ed25519 nélküli böngészőkben ellenőrzi az értékeléseket. Tiszta Ed25519-et tesztelünk előzetes hash és kontextus nélkül, ahogy mi is aláírunk. A NIST ehhez csak kevés manipulált esetet ad; a többi érvényes aláírás, amelyet el kell fogadni.
  • Nem terjed ki rá: a kulcskezelés, a szerverek és az aláírás körüli folyamatok. A teszt azt igazolja, hogy a matematika megfelel a szabványnak, többet nem.
  • FN-DSA (Falcon): a FIPS 206 szabvány még nem végleges, ezért a NIST még nem tett közzé hivatalos tesztvektorokat. Amint megjelennek, itt kiegészítjük velük.

← Vissza a kriptográfiai áttekintéshez