Криптография
Проверка по NIST: проверете ML-DSA-87, SLH-DSA и Ed25519 сами
Американският институт по стандартизация NIST публикува официални тестови вектори за ML-DSA (FIPS 204) и SLH-DSA (FIPS 205): входни данни с резултатите, които една коректна реализация трябва да даде, включително умишлено манипулирани подписи. Тук вашият браузър преизчислява тези случаи точно с модула, който проверява и нашите отзиви.
Стартиране на теста
Тестовите файлове се зареждат директно от NIST в GitHub, а не от нашите сървъри. Тестовият файл за SLH-DSA е около 30 MB, затова зареждането може да отнеме известно време.
Или: изтеглете файловете сами и ги изберете
- Отворете папките
ML-DSA-keyGen-FIPS204,ML-DSA-sigVer-FIPS204,SLH-DSA-keyGen-FIPS205,SLH-DSA-sigVer-FIPS205,EDDSA-SigGen-1.0иEDDSA-SigVer-1.0в GitHub на NIST. - От всяка изтеглете
internalProjection.json. - Изберете тук файловете (всички или отделни):
Какво показва тестът и какво не
- Генериране на ключове (keyGen): от всяка начална стойност на NIST (seed) нашият модул създава подпис. Той е валиден с публичния ключ, зададен от NIST, само ако нашият модул е изчислил точно същия ключ.
- Проверка на подписи (sigVer): във всеки случай нашият модул трябва да стигне до същата присъда като NIST, включително при умишлено променени подписи, съобщения и контексти.
- SLH-DSA-SHA2-256f: от трите начални стойности на NIST (skSeed, skPrf, pkSeed) нашият модул трябва да генерира точно същия частен и публичен ключ като NIST — сравнени байт по байт. За проверката на подписи важи същото като по-горе. Оценява се само наборът от параметри SHA2-256f, който McGesund използва.
- Ed25519: тук не се тества нашият собствен код, а вградената в браузъра криптография и нашата резервна библиотека noble, която проверява отзивите в браузъри без Ed25519. Тества се чист Ed25519 без предварителен хеш и контекст, както подписваме ние. NIST предоставя за това само няколко манипулирани случая; останалите са валидни подписи, които трябва да бъдат приети.
- Не е обхванато: управлението на ключовете, сървърите и процесите около подписа. Тестът доказва, че математиката отговаря на стандарта, нищо повече.
- FN-DSA (Falcon): стандартът FIPS 206 още не е окончателен, затова NIST все още не е публикувал официални тестови вектори. Щом излязат, ще ги добавим тук.