用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - c#代码库

DES加密与解密

2012-09-18 作者: 神马举报

[c#]代码库

// <summary>
// 进行DES加密。
// </summary>
// <param name="pToEncrypt">要加密的字符串。</param>
// <param name="sKey">密钥,且必须为8位。</param>
// <returns>以Base64格式返回的加密字符串。</returns>
public string Encrypt ( string pToEncrypt, string sKey )
{
    using ( DESCryptoServiceProvider des = new DESCryptoServiceProvider() )
    {
        byte[] inputByteArray = Encoding.UTF8.GetBytes ( pToEncrypt );
        des.Key = ASCIIEncoding.ASCII.GetBytes ( sKey );
        des.IV = ASCIIEncoding.ASCII.GetBytes ( sKey );
        System.IO.MemoryStream ms = new System.IO.MemoryStream();
        using ( CryptoStream cs = new CryptoStream ( ms, des.CreateEncryptor(), CryptoStreamMode.Write ) )
        {
            cs.Write ( inputByteArray, 0, inputByteArray.Length );
            cs.FlushFinalBlock();
            cs.Close();
        }
        string str = Convert.ToBase64String ( ms.ToArray() );
        ms.Close();
        return str;
    }
}
 
 
// <summary>
// 进行DES解密。
// </summary>
// <param name="pToDecrypt">要解密的以Base64</param>
// <param name="sKey">密钥,且必须为8位。</param>
// <returns>已解密的字符串。</returns>
public string Decrypt ( string pToDecrypt, string sKey )
{
    byte[] inputByteArray = Convert.FromBase64String ( pToDecrypt );
    using ( DESCryptoServiceProvider des = new DESCryptoServiceProvider() )
    {
        des.Key = ASCIIEncoding.ASCII.GetBytes ( sKey );
        des.IV = ASCIIEncoding.ASCII.GetBytes ( sKey );
        System.IO.MemoryStream ms = new System.IO.MemoryStream();
        using ( CryptoStream cs = new CryptoStream ( ms, des.CreateDecryptor(), CryptoStreamMode.Write ) )
        {
            cs.Write ( inputByteArray, 0, inputByteArray.Length );
            cs.FlushFinalBlock();
            cs.Close();
        }
        string str = Encoding.UTF8.GetString ( ms.ToArray() );
        ms.Close();
        return str;
    }
}


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...