È normale che quando uso la chiave segreta Double DES per crittografare una stringa nella modalità CBC DES3, ottengo sempre lo stesso testo cifrato? Per il test sto usando IVC = 0.
Se si cripta la stessa cosa è normale, se si cripta qualcosa di diverso non è normale. In tal caso, probabilmente hai un errore nella tua implementazione.
Un errore comune è tradurre il risultato crittografato in stringa per il trasporto, quindi tutti i byte non leggibili vengono modificati in "?" da .net.
Sì, se IV è lo stesso e il messaggio è lo stesso, allora dovresti aspettarti che il testo cifrato sia lo stesso.
Spero che tu sappia che l'utilizzo di un IV fisso (come IV = 0) non è sicuro. (Il riferimento al doppio DES è anche sconcertante. Il doppio DES è insicuro Ovviamente, si cita anche DES3, quindi se si intende il DES triplo, questo commento può essere ignorato.) Inoltre, se si utilizza la crittografia senza autenticazione, è anche probabile che sia insicuro.
Invece di mettere insieme la tua crittografia, ti suggerisco di utilizzare uno schema standard, come il formato di crittografia dei dati OpenPGP (per i dati a riposo) o SSL / TLS (per i canali di comunicazione).
Leggi altre domande sui tag .net encryption