加密解密-C#

來源:互聯網
上載者:User
public static string Encrypt(string strPWtoEncrypt)        {            string CurrentFunction = "" + CommonSettings.ModNFunComStr + "Encrypt";            try            {                string strPword=string.Empty;                byte bytCount;                int intTemp;                for (bytCount = 1; bytCount <= strPWtoEncrypt.Length; bytCount++)                {                    intTemp = Convert.ToChar(strPWtoEncrypt.Substring(bytCount - 1, 1));                    if (bytCount % 2 == 0)                    {                        intTemp = intTemp - 0;                    }                    else                    {                        intTemp = intTemp + 0;                    }                    intTemp = intTemp ^ (10 - 0);                    strPword = strPword + Chr(intTemp);                }                string strEncrypt = strPword;                strEncrypt = strEncrypt.Replace("\\", "{01}");                strEncrypt = strEncrypt.Replace("/", "{02}");                strEncrypt = strEncrypt.Replace(":", "{03}");                strEncrypt = strEncrypt.Replace("*", "{04}");                strEncrypt = strEncrypt.Replace("?", "{05}");                strEncrypt = strEncrypt.Replace("\"", "{06}");                strEncrypt = strEncrypt.Replace("<", "{07}");                strEncrypt = strEncrypt.Replace(">", "{08}");                strEncrypt = strEncrypt.Replace("|", "{09}");                return strEncrypt;            }            catch (Exception ex)            {                //LogManager.WriteTextLog(CurrentFunction, ex);                return "";            }        }        public static string Decrypt(string strPWtoDecrypt)        {            string CurrentFunction = "" + CommonSettings.ModNFunComStr + "Decrypt";            try            {                string strPword=string.Empty;                byte bytCount;                int intTemp;                strPWtoDecrypt = strPWtoDecrypt.Replace("{01}", "\\");                strPWtoDecrypt = strPWtoDecrypt.Replace("{02}", "/");                strPWtoDecrypt = strPWtoDecrypt.Replace("{03}", ":");                strPWtoDecrypt = strPWtoDecrypt.Replace("{04}", "*");                strPWtoDecrypt = strPWtoDecrypt.Replace("{05}", "?");                strPWtoDecrypt = strPWtoDecrypt.Replace("{06}", "\"");                strPWtoDecrypt = strPWtoDecrypt.Replace("{07}", "<");                strPWtoDecrypt = strPWtoDecrypt.Replace("{08}", ">");                strPWtoDecrypt = strPWtoDecrypt.Replace("{09}", "|");                for (bytCount = 1; bytCount <= strPWtoDecrypt.Length; bytCount++)                {                    intTemp = Convert.ToChar(strPWtoDecrypt.Substring(bytCount - 1, 1));                    intTemp = intTemp ^ (10 - 0);                    if (bytCount % 2 == 0)                    {                        intTemp = intTemp + 0;                    }                    else                    {                        intTemp = intTemp - 0;                    }                                        strPword = strPword + Chr(intTemp);                }                return strPword;            }            catch (Exception ex)            {                //LogManager.WriteTextLog(CurrentFunction, ex);                return "";            }        }        public static int Asc(string character)        {            if (character.Length == 1)            {                System.Text.ASCIIEncoding asciiEncoding = new System.Text.ASCIIEncoding();                int intAsciiCode = (int)asciiEncoding.GetBytes(character)[0];                return (intAsciiCode);            }            else            {                throw new Exception("Character is not valid.");            }        }        public static string Chr(int asciiCode)        {            if (asciiCode >= 0 && asciiCode <= 255)            {                System.Text.ASCIIEncoding asciiEncoding = new System.Text.ASCIIEncoding();                byte[] byteArray = new byte[] { (byte)asciiCode };                string strCharacter = asciiEncoding.GetString(byteArray);                return (strCharacter);            }            else            {                throw new Exception("ASCII Code is not valid.");            }        }

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.