Known-answer test (KAT)
Un autotest in cui un modulo crittografico cifra, calcola l'hash o firma input fissi e confronta il risultato con un valore atteso precalcolato.
Il codice crittografico ha la sgradevole proprietà che un output errato appare casuale quanto uno corretto. Un AES con un bug nella schedulazione delle chiavi produce comunque rumore, solo il rumore sbagliato, e nessuno se ne accorge finché un'altra implementazione non prova a decifrarlo. Il KAT è la salvaguardia più semplice possibile: si esegue l'algoritmo su un vettore di prova e si confronta il risultato con la soluzione.
FIPS 140 lo rende obbligatorio. Un modulo validato deve eseguire un KAT per ogni algoritmo approvato all'avvio e rifiutare qualsiasi servizio crittografico se un test fallisce; un HSM che non supera gli autotest passa in stato di errore invece di proseguire. I vettori di prova provengono in genere dal programma di validazione degli algoritmi del NIST, lo stesso usato quando CMVP certifica il modulo.