标题:DES加密源代码问题
只看楼主
冷新月
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-5-1
结帖率:100%
已结贴  问题点数:20 回复次数:2 
DES加密源代码问题
private static void EncryptData(String inName, String outName, byte[] desKey, byte[] desIV)
   {   
       //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.
  
  
       DES des = new DESCryptoServiceProvider();         
       CryptoStream encStream = new CryptoStream(fout, des.CreateEncryptor(desKey, desIV), 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();  
       fout.Close();
       fin.Close();                  
   }
 这是一个DES加密的代码,我现在需要把“encStream.Write(bin, 0, len);”写成一个函数调用的形式,其调用的就是DES加密的源代码(即为DES加密的过程、转换、生成密码)
随便问下放过来解密的代码
搜索更多相关主题的帖子: 源代码 
2011-05-01 00:38
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
得分:14 
表示不懂!

   唯实惟新 至诚致志
2011-05-01 07:32
buruizhi
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-6-17
得分:0 
/// <summary>
        /// Decrypt files
        /// Attention:key must be 8 bits
        /// </summary>
        /// <param name="m_InFilePath">Decrypt filepath</param>
        /// <param name="m_OutFilePath">output filepath</param>
        /// <param name="sDecrKey">key</param>
        public void DesDecryptFile(string m_InFilePath, string m_OutFilePath, string sDecrKey)
        {
            try
            {
                FileStream fin = new FileStream(m_InFilePath, FileMode.Open, FileAccess.Read);
                FileStream fout = new FileStream(m_OutFilePath, 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.

                DESCryptoServiceProvider des = new DESCryptoServiceProvider();
                des.Key = Encoding.ASCII.GetBytes(sDecrKey);
                des.IV = Encoding.ASCII.GetBytes(sDecrKey);
                ICryptoTransform ICT = des.CreateDecryptor();
                CryptoStream encStream = new CryptoStream(fout, ICT, CryptoStreamMode.Write);
                Console.WriteLine("文件正在解密中...");

                //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;
                  
                }

                MessageBox.Show("解密成功!");

                encStream.Close();
                fout.Close();
                fin.Close();
            }
            catch (System.Exception error)
            {
                MessageBox.Show(error.Message, "错误信息");
                //MessageBox.Show("error:" + error.Message);
            }
        }
2011-06-23 16:16



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-338491-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.050418 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved