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()); }