C#中使用ROT13加密解密

    ROT13是一种简单的加密方式,主要是把26个英文字母前13个和后13个对调,起到一定的英文文字加密保护作用。 今天我们来看下在C#中使用ROT13加密解密的实现,我们就用一个实例来为大家解答一下吧.
    虽然加密方式简单,但是Windows的注册表里面都使用了ROT13加密,可见其使用还是比较多的。

public string ROT13Encode(string InputText)
        {
            int i;
            char CurrentCharacter;
            int CurrentCharacterCode;
            string EncodedText = \"\";
            //Iterate through the length of the input parameter  
            for (i = 0; i < InputText.Length; i++)
            {
                //Convert the current character to a char  
                CurrentCharacter = System.Convert.ToChar(InputText.Substring(i, 1));
                //Get the character code of the current character  
                CurrentCharacterCode = (int)CurrentCharacter;
                //Modify the character code of the character, - this  
                //so that \"a\" becomes \"n\", \"z\" becomes \"m\", \"N\" becomes \"Y\" and so on  
                if (CurrentCharacterCode >= 97 && CurrentCharacterCode <= 109)
                {
                    CurrentCharacterCode = CurrentCharacterCode + 13; [Page]
                }
                else if (CurrentCharacterCode >= 110 && CurrentCharacterCode <= 122)
                {
                    CurrentCharacterCode = CurrentCharacterCode - 13;
                }
                else if (CurrentCharacterCode >= 65 && CurrentCharacterCode <= 77)
                {
                    CurrentCharacterCode = CurrentCharacterCode + 13;
                }
                else if (CurrentCharacterCode >= 78 && CurrentCharacterCode <= 90)
                {
                    CurrentCharacterCode = CurrentCharacterCode - 13;
                }
                //Add the current character to the string to be returned   
            EncodedText = EncodedText + (char)CurrentCharacterCode;
            }
            return EncodedText;
        }

  [Page]
加密和解密的方法都一样,把字符串传入方法返回得到的字符串就是要加密和解密的字符串了。
posted @ 2008-10-01 13:46  古道轻风  阅读(845)  评论(0编辑  收藏  举报