Esiste uno standard per determinare se una chiave / hash segreta è sicura?

1

Qual è la base per un determinato algoritmo dichiarato sicuro / non funzionante?
C'è uno standard come sotto?
* Capisco che ci sono alcuni difetti unici come le collisioni basate su quale algoritmo viene utilizzato.

tempo per calcolare single = T
condizioni = C
numero di possibilità = N
Minimo tempo richiesto = M

Dato C: T * N > M

    
posta Damien Golding 12.06.2017 - 03:25
fonte

2 risposte

1

Per le password, ad esempio, è comune calcolare il tempo necessario per forzare tutte le possibilità.

Il tempo impiegato dipende anche dall'hardware utilizzato. Forza brutale le bilance molto bene e investendo di più nell'hardware è possibile ridurre il tempo necessario per craccare una password. In genere, l'hardware di consumo di fascia alta viene utilizzato per calcolare il tempo, ma il scrypt paper , ad esempio, esegue un reverse approccio; elenca i costi di una macchina limitando il tempo:

Questoinrealtànonindicalasicurezzaeccessiva,inquantopresupponesolounattaccodiforzabruta.Lasicurezzadiunalgoritmopuòesserecompromessainaltrimodi.Questodisolitoèsegnalatodallariduzionedellavoronecessariopereseguirequalcheazione.Adesempio,percalcolareunMD5inmodochecorrispondaadunaltroMD5,sononormalmentenecessari2calcoli128.Conun attacco pre-attacco , sono necessari solo 2 calcoli 123.4 .

    
risposta data 12.06.2017 - 09:08
fonte
1

Non esiste un vero standard per questo, a meno che tu non ne abbia dichiarato uno per te stesso e il tuo caso d'uso.

Ma ecco alcuni esempi di proprietà comuni degli algoritmi secure :

Algoritmi di crittografia

  • Riservatezza: forza di crittografia con un minimo di 100 bit
    • Nota: dimensione della chiave! = forza di crittografia
  • Integrità: viene utilizzato un MAC?
  • Autenticazione: è firmato?
  • Affidabilità plausibile: es. OTR, Axolotl
  • ...

Algoritmi di hash

  • resistenza alle collisioni
  • resistenza pre-immagine
  • seconda resistenza pre-immagine
  • tempo per calcolare un singolo hash
    • è possibile la parallelizzazione? ( link )
    • è la memoria dell'algoritmo hash difficile, ad es. scrypt
  • ...

Tieni presente che questo non è un elenco completo, ma potrebbe darti una piccola panoramica della complessità della domanda: Non è sicuro / non funzionante?

    
risposta data 12.06.2017 - 09:37
fonte

Leggi altre domande sui tag