API public
API JSON pentru suita NIST SP 800-22. Toate cele 15 teste folosesc același contract, testul fiind selectat prin slug-ul din cale. Adresa de bază: https://prng-nist-tests.student-dev.ro/api (local: http://localhost:3000/api).
Acces și limite
POST /api/assess și GET /api/sequence necesită un API key transmis prin antetul X-API-Key sau parametrul ?api_key=. Fără cheie validă se returnează 401.
Toate endpoint-urile sunt supuse limitelor de rată (fereastră glisantă de 30 de zile); depășirea returnează 429 cu Retry-After. Configurația curentă: GET /api/health.
Rulează un test pe o secvență de biți. Slug-urile sunt în tabelul de mai jos.
{
"bits": "1100100100...",
"alpha": 0.01,
"block": 10,
"method": "auto"
}Câmpurile răspunsului și parametrii per test: tabelul de mai jos. Coduri: 400, 404, 429, 500/504.
| Slug | Secțiune | Câmp suplimentar în răspuns |
|---|---|---|
| monobit | §2.1 | Răspuns standard: n, p_value, statistic, critical, distribution. |
| block-frequency | §2.2 | Acceptă parametrul `block`; răspuns standard. |
| runs | §2.3 | Răspuns standard: n, p_value, statistic, critical, distribution. |
| longest-run | §2.4 | Răspuns standard: n, p_value, statistic, critical, distribution. |
| rank | §2.5 | Răspuns standard: n, p_value, statistic, critical, distribution. |
| dft | §2.6 | Adaugă `spectrum[]` (până la ~4000 de puncte) plus stats cu N1/N0/d/threshold. |
| non-overlapping | §2.7 | Acceptă parametrul `block`; răspuns standard. |
| overlapping | §2.8 | Răspuns standard: n, p_value, statistic, critical, distribution. |
| universal | §2.9 | Răspuns standard: n, p_value, statistic, critical, distribution. |
| linear-complexity | §2.10 | Acceptă parametrul `block`; răspuns standard. |
| serial | §2.11 | Acceptă `block` (m); întoarce două p-values în stats. |
| approx-entropy | §2.12 | Acceptă parametrul `block`; răspuns standard. |
| cusum | §2.13 | Răspuns standard: n, p_value, statistic, critical, distribution. |
| random-excursions | §2.14 | Adaugă `p_values[]` pentru 8 stări (x = -4..-1, 1..4) plus stats.J. |
| random-excursions-variant | §2.15 | Adaugă `p_values[]` pentru 18 stări (x = -9..-1, 1..9) plus stats.J. |
Analiză pe fluxuri multiple (proporție + uniformitate) peste fișierele NIST. Necesită X-API-Key.
{
"files": ["data.pi", "data.e"],
"length": 10000,
"maxStreams": 0,
"alpha": 0.01, "block": 10
}Felie dintr-un fișier NIST (max 65536 biți). Necesită X-API-Key.
Stare + capabilități: binare, limite de trafic, catalog de teste. Fără limită de rată.