簡體   English   中英

通過C#加密和通過SQL Server 2008 for ASP.NET應用程序解密

[英]Encryption through C# & Decryption through SQL Server 2008 for ASP.NET app

在前端,我具有以下功能:

加密方法:

  public static string Encrypt(string strToEncrypt)
        {

            TripleDESCryptoServiceProvider objDESCrypto = new TripleDESCryptoServiceProvider();
            MD5CryptoServiceProvider objHashMD5 = new MD5CryptoServiceProvider();
            byte[] byteHash, byteBuff;
            byteHash = objHashMD5.ComputeHash(ASCIIEncoding.ASCII.GetBytes(GetEncryptionKey));
            objHashMD5 = null;
            objDESCrypto.Key = byteHash;
            objDESCrypto.Mode = CipherMode.ECB; //CBC, CFB
            byteBuff = ASCIIEncoding.ASCII.GetBytes(strToEncrypt);
            return Convert.ToBase64String(objDESCrypto.CreateEncryptor().TransformFinalBlock(byteBuff, 0, byteBuff.Length));


        }

解密方法:

public static string Decrypt(string strEncrypted)
        {

            TripleDESCryptoServiceProvider objDESCrypto = new TripleDESCryptoServiceProvider();
            MD5CryptoServiceProvider objHashMD5 = new MD5CryptoServiceProvider();
            byte[] byteHash, byteBuff;
            byteHash = objHashMD5.ComputeHash(ASCIIEncoding.ASCII.GetBytes(GetEncryptionKey));
            objHashMD5 = null;
            objDESCrypto.Key = byteHash;
            objDESCrypto.Mode = CipherMode.ECB; //CBC, CFB
            byteBuff = Convert.FromBase64String(strEncrypted);
            string strDecrypted = ASCIIEncoding.ASCII.GetString(objDESCrypto.CreateDecryptor().TransformFinalBlock(byteBuff, 0, byteBuff.Length));
            objDESCrypto = null;
            return strDecrypted;

        }

並且GetEncryptionKey函數是

   private static string GetEncryptionKey
    {
        get { return "#$&*(^($%"; }
    }

編輯:現在這是我的問題:因此,有人要求使用前端編寫的加密功能(在注冊或更改密碼時)對用戶的密碼進行加密,並通過存儲過程(在登錄期間)對加密的密碼(從前端)進行解密。 我該怎么辦?

要回答您的問題:您可以將.net程序集插入SqlServer以運行.net函數-這是.net 2.0 / SqlServer2005教程

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM