コード例 #1
0
        public string DecryptText(string cipherText)
        {
            int revA = SimpleMaths.ReverseElement(a, M);

            StringBuilder decryptedText = new StringBuilder();

            foreach (char c in cipherText)
            {
                if (c == ' ')
                {
                    decryptedText.Append(' ');
                    continue;
                }

                int
                    code = c - 'A',
                    x    = (revA * (code - b)) % M;

                if (x < 0)
                {
                    x += M;
                }

                char next = (x == 26) ? ' ' : (char)(x + 'A');
                decryptedText.Append(next);
            }

            return(decryptedText.ToString());
        }