public void CipherTest_DecryptResult() { SubstitutionCipher cipher = new SubstitutionCipher(); string fullPath = Path.Combine(TestContext.CurrentContext.TestDirectory, @"testData\dictionary.txt"); bool read = cipher.ReadDictionary(fullPath); bool solved; string result = cipher.Decrypt("pjihzkl dipd hkpi dt hriho zm dri jbtvbka zp klgkep gtbozuv htbbihdle mtb ikhr hkpi", out solved).Trim(); Assert.That(result.Equals("special test case to check if the program is always working correctly for each case"), Is.True); }
public void CipherTest_DecryptTrue() { SubstitutionCipher cipher = new SubstitutionCipher(); string fullPath = Path.Combine(TestContext.CurrentContext.TestDirectory, @"testData\dictionary.txt"); bool read = cipher.ReadDictionary(fullPath); bool solved; cipher.Decrypt("this is a test", out solved); Assert.That(solved, Is.True); }
/// <summary> /// Шифры простой и многократной подстановки /// </summary> public static void SubstitutionCipherTest() { Console.WriteLine("1. Шифры простой и многократной подстановки"); // Шифр простой подстановки Console.WriteLine("Шифр простой подстановки"); Console.WriteLine("Пример работы программы"); cryptogram = "I study at DNU"; Console.WriteLine("Текст: " + cryptogram); substitutionCipher = new SubstitutionCipher(); encryptText = substitutionCipher.Encrypt(cryptogram); Console.WriteLine("Зашифрованый текст: " + encryptText); decryptText = substitutionCipher.Decrypt(encryptText); Console.WriteLine("Расшифрованый текст: " + decryptText); // Упражнение. Используя перестановку примера, расшифруйте криптограмму: Console.WriteLine("Упражнение. Используя перестановку примера, расшифруйте криптограмму: "); cryptogram = "MEUSCXZOCXVQM"; Console.WriteLine(cryptogram); Console.WriteLine(substitutionCipher.Decrypt(cryptogram)); Console.WriteLine(); // Шифр многократной подстановки Console.WriteLine("Шифр многократной подстановки"); Console.WriteLine("Пример работы программы"); cryptogram = "INPUT"; Console.WriteLine("Текст: " + cryptogram); int n = 3; substitutionCipher = new SubstitutionCipher(n); encryptText = substitutionCipher.Encrypt(cryptogram); Console.WriteLine($"Зашифрованый текст при n = {n}: {encryptText}"); decryptText = substitutionCipher.Decrypt(encryptText); Console.WriteLine($"Расшифрованый текст при n = {n}: {decryptText}"); Console.WriteLine("\n"); }
public static string SubstitutionCipher(string text, int n, CryptType cryptType) { string result = string.Empty; substitutionCipher = new SubstitutionCipher(n); switch (cryptType) { case CryptType.Encrypt: result = substitutionCipher.Encrypt(text); break; case CryptType.Decrypt: result = substitutionCipher.Decrypt(text); break; } return result; }