2009-09-18 4 views
1

J'essaie de comprendre pourquoi le code suivant a pour résultat que le tableau d'octets chiffrés est de 16 octets si plainText a une longueur de 8 octets. Je m'attendais à ce que le résultat soit aussi de 8 octets de longueur?Résultat C# CryptoStream pas comme prévu

private static byte[] encrypt(byte[] key, byte[] plainText) 
{ 
    try 
    { 
     using (MemoryStream ms = new MemoryStream()) 
     { 
      DES des = new DESCryptoServiceProvider() { Key = key, IV = key }; 

      using (CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write)) 
      { 
       using(BinaryWriter bw = new BinaryWriter(cs)) 
       { 
        bw.Write(plainText); 
       } 
      } 

      return ms.ToArray(); 
     } 
    } 
    catch (Exception e) 
    { 
     Logger.LogWarning(e); 
     throw e; 
    } 
} 

Répondre

3
+0

Merci. La solution dans l'autre thread l'a corrigé. –

+0

BTW ... J'ai écrit une petite application pour m'aider à tester différentes alg de cryptage il y a quelque temps ... J'ai posté le code source sur QDrive à https://www.qdrive.net/download/sharelinkdownloader.php?id = 45392 & key = zxF92nDxOmF3Iq86OpB98X8xzmX3MjD6zpN. C'est un peu rude, mais ça marche ... pas très fonctionnel mais peut-être quelque chose d'utile. –

Questions connexes