Kryptografi
NIST-kontrol: tjek ML-DSA-87, SLH-DSA og Ed25519 selv
Det amerikanske standardiseringsinstitut NIST offentliggør officielle testvektorer for ML-DSA (FIPS 204) og SLH-DSA (FIPS 205): input med de resultater, en korrekt implementering skal give, herunder bevidst manipulerede signaturer. Her genberegner din browser disse tilfælde med præcis det modul, der også kontrollerer vores anmeldelser.
Start testen
Testfilerne hentes direkte fra NIST på GitHub, ikke fra vores servere. SLH-DSA-testfilen er på ca. 30 MB, så indlæsningen kan tage lidt tid.
Eller: download filerne selv og vælg dem
- Åbn mapperne
ML-DSA-keyGen-FIPS204,ML-DSA-sigVer-FIPS204,SLH-DSA-keyGen-FIPS205,SLH-DSA-sigVer-FIPS205,EDDSA-SigGen-1.0ogEDDSA-SigVer-1.0hos NIST på GitHub. - Download
internalProjection.jsonfra hver. - Vælg filerne her (alle eller enkelte):
Hvad testen viser, og hvad den ikke viser
- Nøglegenerering (keyGen): ud fra hver startværdi fra NIST (seed) laver vores modul en signatur. Den er kun gyldig under den offentlige nøgle, NIST har angivet, hvis vores modul har beregnet præcis den samme nøgle.
- Signaturkontrol (sigVer): vores modul skal i hvert tilfælde nå samme afgørelse som NIST, også ved bevidst ændrede signaturer, beskeder og kontekster.
- SLH-DSA-SHA2-256f: Ud fra NIST’s tre startværdier (skSeed, skPrf, pkSeed) skal vores modul generere nøjagtig samme private og offentlige nøgle som NIST — sammenlignet byte for byte. Ved signaturkontrollen gælder det samme som ovenfor. Kun parametersættet SHA2-256f, som McGesund bruger, evalueres.
- Ed25519: her testes ikke vores egen kode, men den kryptografi, der er indbygget i browseren, og vores reservebibliotek noble, som kontrollerer anmeldelser i browsere uden Ed25519. Der testes rent Ed25519 uden forhåndshash og kontekst, sådan som vi signerer. NIST leverer kun få manipulerede tilfælde hertil; resten er gyldige signaturer, der skal accepteres.
- Ikke dækket: nøglehåndtering, servere og processerne omkring signaturen. Testen viser, at matematikken overholder standarden, intet mere.
- FN-DSA (Falcon): standarden FIPS 206 er endnu ikke endelig, derfor har NIST endnu ikke offentliggjort officielle testvektorer. Så snart de udkommer, tilføjer vi dem her.