Sarebbe bene controllare solo una parte di un valore hash

2

In pratica, il valore hash di una chiave host del server può essere (relativamente) lungo e confrontarlo accuratamente con il record ancora e ancora può essere fastidioso. Ad esempio, per un dato valore hash md5:

43: 89: 1b: 62: fa: 5c: 86: cf: 57: fd: 2d: e2: a1: 12: 9e: d1

Che cosa succede se controllo solo la prima metà di esso, ovvero:

43: 89: 1b: 62: fa: 5c: 86: CF

Avrei comunque ottenuto il 50% di sicurezza rispetto al controllo dell'intera stringa?

Cosa succede se controllo il primo 25% e l'ultimo 25% dell'impronta digitale?

PS: programmi come WinSCP e PuTTY mostrano l'impronta digitale solo attraverso una finestra pop-up e quindi non posso copiare l'impronta digitale e utilizzare un programma di confronto per confrontare due valori.

    
posta Mamsds 27.08.2017 - 05:14
fonte

3 risposte

5

Se si controlla solo la prima metà della chiave host, si riducono i bit selezionati da 128 bit a 64 bit. Poiché non ci sono 2 chiavi ma 2 ^ 64 chiavi che condividono i primi 64 bit, la sicurezza non viene ridotta di un fattore 2 ma di un fattore di 2 ^ 64, cioè non si ottiene il 50% di sicurezza ma il 5e-18% sicurezza.

Si noti che anche il controllo ridotto di 64 bit potrebbe essere ancora sufficiente a seconda del tipo di attacco che ci si aspetta. Tuttavia, dal momento che di solito è sufficiente controllare la chiave host al primo collegamento a un nuovo sistema o alla prima connessione da un nuovo sistema, potrebbe valere la pena di dedicare qualche secondo in più per controllare più a fondo la chiave.

    
risposta data 27.08.2017 - 07:07
fonte
3

No, non dovresti controllare solo parte della chiave.

PS: Programs like WinSCP and PuTTY only show the fingerprint through a pop-up window and thus I cannot copy the fingerprint and use a comparison program to compare two values.

WinSCP ha copia le impronte digitali dei tasti nel comando appunti esattamente per questo motivo.

WinSCPhaancheilcomandoIncollachiave,checonsentediverificarelachiaveincollandolachiaveprevistaolasuaimprontadigitaledagliappunti.

Vedi Verifica l'articolo della chiave host nella documentazione di WinSCP.

E in PuTTY, puoi almeno premere Ctrl + C per copiare un intero messaggio negli appunti. Puoi quindi estrarre la chiave.

    
risposta data 27.08.2017 - 14:15
fonte
0

Anche se NON lo è, quando verifichi manualmente gli hash con gli occhi (e il cervello), sembra un'ottima ottimizzazione. Dopotutto anche piccole modifiche nel contenuto dovrebbero causare un hash completamente diverso, giusto?

Sfortunatamente, questo fa diverse ipotesi che potrebbero essere la tua rovina. A causa di questi presupposti, la sicurezza ridotta non è una funzione del numero ridotto di bit che stai controllando. Ma qualcos'altro, non è facile da calcolare. Ma non è probabilmente un piccolo impatto.

Ad esempio:

  • Se si assume che l'avversario stia apportando piccole modifiche. Molto probabilmente falso, a meno che tu non stia guardando un documento di prestito che è solo un hash (non firmato digitalmente), dove semplicemente aggiungere pochi zeri all'importo del prestito è un impatto abbastanza buono.
  • Se si presuppone che l'avversario non tenterà collisioni hash, di nuovo è probabilmente falso - perché il tipo di persone che manomettono i documenti di solito hanno puntate alte e di solito vale la pena tentare. Riducendo i bit della metà, è probabile ridurre lo sforzo di generare collisioni hash da "100s of years" a "pochi minuti / ore" (ovvero, probabilità da ~ 0 a ~ 1) - non esattamente una riduzione del 50% in sicurezza. In questo modo sono state raggiunte le prime collisioni SHA1, tra l'altro: riducendo lo sforzo necessario (questo l'articolo di arstechnica parla di identici attacchi di prefisso - in termini di laici - significa che se si conosce una buona parte del documento in questione, lo sforzo si riduce in modo significativo ).

Ci sono anche altri problemi, ma credo che questo sia un motivo sufficiente per non seguire questa strada.

Quindi uso sempre gli strumenti per fare il controllo per me. ad esempio, Linux sha1sum e sha256sum non generano solo gli hash (per verificare manualmente) ma, dato il 2 ° input, possono verificare e dirti se tutto va bene.

    
risposta data 27.08.2017 - 08:04
fonte

Leggi altre domande sui tag