Quali parametri attribuisco a cryptsetup?

1

Voglio avere una partizione crittografata sul mio SSD.

Benchmarks (a 100 samples of 100MiB each):
Average read speeds: 418 MB/s
Average write speeds: 386 MB/s

# Tests are approximate using memory only (no storage IO).
PBKDF2-sha1       484554 iterations per second for 256-bit key
PBKDF2-sha256     666185 iterations per second for 256-bit key
PBKDF2-sha512     459096 iterations per second for 256-bit key
PBKDF2-ripemd160  297552 iterations per second for 256-bit key
PBKDF2-whirlpool  204161 iterations per second for 256-bit key
#  Algorithm | Key |  Encryption |  Decryption
     aes-cbc   128b   535.0 MiB/s  1903.7 MiB/s
 serpent-cbc   128b    75.2 MiB/s   264.3 MiB/s
 twofish-cbc   128b   165.7 MiB/s   311.6 MiB/s
     aes-cbc   256b   392.5 MiB/s  1433.2 MiB/s
 serpent-cbc   256b    75.2 MiB/s   265.2 MiB/s
 twofish-cbc   256b   165.4 MiB/s   312.8 MiB/s
     aes-xts   256b  1592.4 MiB/s  1583.7 MiB/s
 serpent-xts   256b   271.9 MiB/s   260.4 MiB/s
 twofish-xts   256b   306.6 MiB/s   307.5 MiB/s
     aes-xts   512b  1218.7 MiB/s  1241.1 MiB/s
 serpent-xts   512b   272.0 MiB/s   258.8 MiB/s
 twofish-xts   512b   306.1 MiB/s   306.4 MiB/s

Non so davvero come interpretarlo. Vedo che una scelta ovvia è AES-XTS, ma quale? cioè, come è possibile che AES-XTS sia in grado di leggere e scrivere più velocemente delle mie attuali velocità di lettura / scrittura ?! Importa a questo punto se scelgo AES-XTS 512 VS 256? Oppure entrambi possono darmi la massima velocità di lettura / scrittura del mio disco?

E riguardo l'hashing? Perché PBKDF2-SHA1 è più lento di PBKDF2-SHA2? E quante iterazioni dovrei scegliere se ho scelto PBKDF2-SHA512? (Non mi dispiace aspettare fino a 3-5 secondi.

    
posta Mars 18.07.2016 - 18:13
fonte

2 risposte

1

AES , Serpent e Twofish sono cifrari a blocchi, ovvero i blocchi di base di alcuni crittosistemi basati su chiavi simmetriche. AES è lo standard e non c'è motivo di scegliere qualcos'altro. Tutti e tre sono sicuri, ma AES ha ricevuto più controllo per poter essere considerato più sicuro. AES ha prestazioni migliori se la tua macchina ha un'accelerazione hardware per questo, che è il caso della maggior parte delle macchine di fascia alta e di molti processori Intel midrange.

Per la dimensione della chiave , 128 bit vanno bene per quasi tutti i casi d'uso. (È considerato rischioso solo se vuoi che i tuoi dati resistano per più di un decennio.)

CBC e XTS sono due modalità di crittografia a blocchi. Una modalità operativa descrive come la primitiva del codice a blocchi viene applicata ai dati. Sia CBC che XTS vanno bene dal punto di vista della sicurezza. La differenza è che CBC fornisce solo riservatezza, mentre XTS fornisce sia riservatezza che integrità. Se sei solo preoccupato per qualcuno che decrittografa i tuoi dati, CBC è abbastanza buono. Con XTS, saprai se qualcuno (o qualcosa) corrompe i dati sul tuo disco: riceverai un messaggio di errore invece di dati inutili. La verifica dell'integrità è utile solo se qualcuno può modificare i tuoi dati, ma in futuro ti fidi ancora dell'hardware, il che è raro che sia così. Con XTS, ci sono due chiavi, ecco perché le cifre delle dimensioni della chiave sono doppie rispetto a quelle della CBC. aes-xts 256b utilizza due chiavi AES-128, ecc.

Infine PBKDF2 è un funzione di allungamento della chiave , ovvero un modo per calcolare una chiave da una password che rallenta i tentativi di forza bruta. La seconda parte è una funzione di hash . PBKDF2 è in realtà una famiglia di funzioni di stretching chiave: ogni scelta di hash definisce una scelta di modalità PBKDF2. Qui, tutte le scelte sono ok, ma SHA-1 è deprecato. Scegli SHA-256 o SHA-512: sono la scelta standard. Per quanto riguarda le prestazioni, SHA-256 ha un leggero vantaggio sulle macchine a 32 bit, SHA-512 su macchine a 64 bit. SHA-1 è deprecato (anche se non è ancora noto per essere rotto, specialmente in un contesto di stretching chiave). SHA-256 o SHA-512 vanno bene.

Riepilogo: scegli PBKDF2-sha256 e aes-cbc a meno che tu non abbia una buona ragione.

    
risposta data 19.07.2016 - 03:31
fonte
0

Innanzitutto, la lunghezza della chiave ("512 vs 256") è davvero all'altezza dell'importanza dei dati protetti, ma - IMHO - se è così importante che richiede una chiave 512, una crittografia del disco da sola non è abbastanza per proteggere quel tipo di dati. E - a meno che tu non abbia un AES512 con accelerazione hardware - ti consiglio vivamente di utilizzare 256 bit per ridurre il carico utile della crittografia del disco: AES fino a 256 inclusi è accelerato dall'hardware della maggior parte delle CPU oggigiorno, come CPU Intel

In secondo luogo, l'hashing con SHA256 o SHA512 va bene, non usare SHA1 a causa della sua debolezza (supposto). SHA256 e 512 vengono spesso sottoposti a backup anche dalle istruzioni della CPU, in particolare SHA256, ad esempio tramite CPU Intel .

Quindi - in breve - utilizzare AES256 e SHA256 per la crittografia del disco

    
risposta data 18.07.2016 - 19:24
fonte

Leggi altre domande sui tag