Domanda generale sui requisiti FIPS

5

Capisco che FIPS indirizzi operazioni crittografiche.
La mia domanda è, si sta affrontando esattamente questo?
Ad esempio, un'applicazione che carica un keystore può utilizzare un provider non FIPS?

Qualsiasi input o riferimento pertinente è apprezzato

    
posta Jim 01.06.2011 - 22:37
fonte

2 risposte

2

Il Federal Information Processing Standards (FIPS) è una serie di pubblicazioni che specificano una vasta gamma di standard, che vanno dalle specifiche per smart card (PIV) alle specifiche dell'algoritmo, i requisiti di test e persino i nomi dei luoghi geografici. Mentre in molti casi, le agenzie federali statunitensi sono tenute ad aderire agli standard, non sono generalmente obbligatorie per l'uso commerciale.

A seconda degli standard di cui parli e del livello di conformità che potresti dover soddisfare, le risposte possono variare.

    
risposta data 05.06.2011 - 19:00
fonte
2

For example an application loading a keystore using a non-FIPS provider, is it something forbidden or am I confused on this?

Penso che la definizione di FIPS potrebbe aiutare: elaborazione delle informazioni federali standard . La chiave qui è Standard , molto simile a un rapporto tecnico W3C, standard ISO ecc. Non sei obbligato a conformarti a questi standard. Dai un'occhiata ai browser web . Sei più che benvenuto a fare le tue cose. Non è necessariamente sbagliato non conformarsi a questi standard.

Ma , c'è sempre una ragione per questi standard. Per uno, conformarsi a loro significa che dovresti essere in grado di interoperare con altri software conformi. Ad esempio, prendi C99, lo standard ISO C. Qualsiasi codice C99 che scrivo dovrebbe funzionare su qualsiasi compilatore C99-compatibile.

Nel caso della crittografia e della sicurezza delle informazioni, consiglierei davvero di seguire questi standard. Per i principianti, definiscono come deve comportarsi un algoritmo o un keystore, vale a dire non solo l'interoperabilità, ma anche un livello ragionevole di test di sicurezza. In altre parole, sai che il tuo ambiente (che hai appena implementato) non deve contenere problemi di debolezza, libreria, sistema operativo e ambiente.

Come utente finale, sai che il tuo keystore compatibile con FIPS dovrebbe darti una certa sicurezza, al contrario di qualsiasi formato di archiviazione immaginato da Joe Bloggs. Dovresti scoprire che il tuo software ha un certo livello di interoperabilità (per esempio, standard diversi, ma molti programmi possono leggere le chiavi PKCS # 11 e le chiavi OpenPGP).

Quindi non è proibito di per sé, solo altamente raccomandato. Se scegli il software, preferirei qualcosa che segua FIPS, PKCS o OpenPGP.

Un altro punto da menzionare qui è che FIPS, RFC ecc. spesso definiscono una parte utilizzabile di ciò che è là fuori (per mezzo di uno standard). Rijndael! = AES, per esempio. Il codice Rijndael supporta molte più lunghezze di tasti e dimensioni di blocchi di AES, ma semplificando il fatto che per un determinato sottoinsieme significa che è più semplice da implementare, e questo è esattamente ciò che fa AES (FIPS 197). Cosa succederebbe se tu avessi detto "implementare Rijndael" è che molti sviluppatori non implementerebbero certe dimensioni a causa di limiti di tempo, pura pigrizia o altro. In caso contrario, il software che utilizza lo stesso algoritmo core sarebbe incompatibile.

Quindi, come risposta finale, no, non è vietato, ma è altamente raccomandato. Principalmente, si tratta di interoperabilità, ma ci sarà un certo livello di sicurezza ("non stiamo raccomandando un codice cifrato" (in FIPS corrente rispetto a quelli in pensione)).

    
risposta data 01.06.2011 - 23:16
fonte

Leggi altre domande sui tag