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.");
            }
        }
posted on 2011-04-13 09:35  Black Bean  阅读(241)  评论(0编辑  收藏  举报