2010-06-15 13 views
-1

Quelqu'un peut-il s'il vous plaît laissez-moi savoir ce que cela signifie et c'est la sortie? c'est un script .Net.qu'est-ce que cela signifie et c'est la sortie?

private static readonly byte[] Key = { 
               0xda, 0x3c, 0x35, 0x6f, 0xbd, 0xd, 0x87, 0xf0, 
               0x9a, 0x7, 0x6d, 0xab, 0x7e, 0x82, 0x36, 0xa, 
               0x1a, 0x5a, 0x77, 0xfe, 0x74, 0xf3, 0x7f, 0xa8, 
               0xaa, 0x4, 0x11, 0x46, 0x6b, 0x2d, 0x48, 0xa1 
              }; 

     private static readonly byte[] IV = { 
               0x6d, 0x2d, 0xf5, 0x34, 0xc7, 0x60, 0xc5, 0x33, 
               0xe2, 0xa3, 0xd7, 0xc3, 0xf3, 0x39, 0xf2, 0x16 
              }; 

Répondre

2

Ce ne sont que des déclarations et initialisations des variables de tableau d'octets, les remplir avec les données appropriées. Alors Key sera un tableau d'octets dont le premier élément est 0xda, etc.

Les variables sont en lecture seule, mais cela ne signifie pas qu'ils sont immuables - le code pourrait encore modifier les données contenues dans le tableau; les variables étant en lecture seule signifie simplement qu'elles ne peuvent pas faire référence à des tableaux différents.

Il n'y a pas de sortie en tant que telle - l'extrait de code que vous avez fourni ne fait que définir deux variables.

1

Ce sont des tampons utilisés par le chiffrement DES; le premier est la clé et le second le vecteur. Voici un code possible pour le cryptage:

public static string Encrypt(string data) 
     { 
      MemoryStream output; 
      using (output = new MemoryStream())  
      { 
       byte[] byteData = new UnicodeEncoding().GetBytes(data); 
       TripleDESCryptoServiceProvider des = new TripleDESCryptoServiceProvider(); 
       using (CryptoStream cs = new CryptoStream(output, des.CreateEncryptor(Key, IV), CryptoStreamMode.Write)) 
       { 
        cs.Write(byteData, 0, byteData.Length); 
       } 
      } 
      return Convert.ToBase64String(output.ToArray()); 
     } 
+0

Vous avez raison sur le cryptage, mais ce n'est pas DES. Basé sur la taille de la clé (256 bits) et la taille du bloc (128 bits), c'est probablement AES-256. – interjay

Questions connexes