Quanto è sicuro un testo crittografato? [chiuso]

0

Esistono app come CTI Text Encryption che crittografano i testi con una o più password e li rendono in parole e cifre prive di significato.

e.x

Original Text (before encryption):

The quick brown fox jump over the lazy dog.

Encrypted Text (after encryption): ga8Ba3jH55sI4eFT0nRBesHoLGLbriXeWomE7vpxbFszJFnSXJRYy1MJoKy+y+krLmdmYxGBhRg3oRDA9OjqemJSZdryFI2b5BjseUnhsC8=

Decryption Result of the Encrypted Text:

The quick brown fox jump over the lazy dog.

Quindi ho alcune domande

  1. Quanto sono sicuri questi testi crittografati?
  2. Sono reversibili e si può trovare il testo originale usando tecniche usate per hash, file crittografati, TrueCrypt, ecc?
  3. Se possibile, quanto tempo ci vorrà per trovare il testo originale crittografato con 4 password e quale hardware potrebbe essere necessario?
posta John 27.09.2015 - 18:50
fonte

1 risposta

8

Uno sguardo al codice sorgente, in particolare il file AES256BitExpress.cs , rivela il seguente estratto:

    public static byte[] AES_Encrypt(byte[] bytesToBeEncrypted, byte[] passwordBytes)
    {
        byte[] encryptedBytes = null;
        byte[] saltBytes = passwordBytes;

        using (MemoryStream ms = new MemoryStream())
        {
            using (RijndaelManaged AES = new RijndaelManaged())
            {
                AES.KeySize = 256;
                AES.BlockSize = 128;

                var key = new Rfc2898DeriveBytes(passwordBytes, saltBytes, 1000);
                AES.Key = key.GetBytes(AES.KeySize / 8);
                AES.IV = key.GetBytes(AES.BlockSize / 8);

Utilizza AES (con una chiave a 256 bit), che è buona. Deriva la chiave e IV dalla password usando PBKDF2 (questo è ciò che Rfc2898DeriveBytes implementa), che è un po 'OK (anche se 1000 iterazioni sono un po 'troppo basse per il comfort con le macchine moderne). Utilizza la password stessa come sale per PBKDF2, che può essere descritta solo come "atrocemente debole". Ciò ignora totalmente il punto del sale e consente attacchi paralleli, incluso il parallelismo in base al tempo (noto anche come "tabelle precalcolate").

Questa è una bella illustrazione di come algoritmi sicuri e sicuri possono essere assemblati in qualcosa che offre solo pochissima sicurezza. Posso solo sconsigliare l'utilizzo di tale software per qualsiasi scopo relativo alla sicurezza.

    
risposta data 27.09.2015 - 19:04
fonte

Leggi altre domande sui tag