none
檔案加密問題 RRS feed

  • 問題

  •  

    我想要對檔案加密,我在微軟的MSDN 上這個方法,四個入的參數方別是什麼 ?

    inName   應該是檔案路徑吧 ~

    outName  加密後的檔案名稱 ?

    tdesKey  不知

    tdesIV     不知

    請問這方法是對檔案裡面的文字做加密嗎 ?

     

    http://msdn.microsoft.com/en-us/library/system.security.cryptography.tripledescryptoserviceprovider(VS.71).aspx

     

    Code Snippet

      

    private static void EncryptData(String inName, String outName, byte[] tdesKey, byte[] tdesIV)
      {   
       //Create the file streams to handle the input and output files.
       FileStream fin = new FileStream(inName, FileMode.Open, FileAccess.Read);
       FileStream fout = new FileStream(outName, FileMode.OpenOrCreate, FileAccess.Write);
       fout.SetLength(0);
         
       //Create variables to help with read and write.
       byte[] bin = new byte[100]; //This is intermediate storage for the encryption.
       long rdlen = 0;              //This is the total number of bytes written.
       long totlen = fin.Length;    //This is the total length of the input file.
       int len;                     //This is the number of bytes to be written at a time.

       TripleDESCryptoServiceProvider tdes = new TripleDESCryptoServiceProvider();         
       CryptoStream encStream = new CryptoStream(fout, tdes.CreateEncryptor(tdesKey, tdesIV), CryptoStreamMode.Write);
                  
       Console.WriteLine("Encrypting...");

       //Read from the input file, then encrypt and write to the output file.
       while(rdlen < totlen)
       {
        len = fin.Read(bin, 0, 100);
        encStream.Write(bin, 0, len);
        rdlen = rdlen + len;
        Console.WriteLine("{0} bytes processed", rdlen);
       }

       encStream.Close();                    
      }

     

     

     

    2008年10月28日 上午 06:13

解答

所有回覆