コード例 #1
0
ファイル: test.py プロジェクト: cdhop/cryptanalysis
    def test_encrypt_vigenere(self):
        text = "divert troops to east ridge"
        key = "white"
        expected = "ZPDXVPAZHSLZBHIWZBKMZNM"

        cipher_text = encrypt_vigenere(text, key)

        self.assertEqual(cipher_text, expected)
コード例 #2
0
 def test_randomized(self):
     kwlen = random.randint(4, 24)
     keyword = ''.join(
         random.choice(string.ascii_letters) for _ in range(kwlen))
     plaintext = ''.join(
         random.choice(string.ascii_letters + ' -,') for _ in range(64))
     ciphertext = vigenere.encrypt_vigenere(plaintext, keyword)
     self.assertEqual(plaintext,
                      vigenere.decrypt_vigenere(ciphertext, keyword))
コード例 #3
0
ファイル: test_vigenere.py プロジェクト: buryattvoydrug/crypt
class vigenereTestCase(unittest.TestCase):
    def test_encrypt(self):
        cases = [('PYTHON', 'A', 'PYTHON'), ('python', 'a', 'python'),
                 ('ATTACKATDAWN', 'LEMON', 'LXFOPVEFRNHR')]
        for i, (plaintext, keyword, chiphertext) in enumerate(cases):
            with self.subTest(case=i,
                              plaintext=plaintext,
                              chiphertext=chiphertext):
                self.assertEqual(
                    chiphertext,
                    vigenere.encrypt_vigenere(plaintext, keyword=keyword))
コード例 #4
0
class VigenereTestCase(unittest.TestCase):
    def test_encrypt(self):
        cases = [
            ("PYTHON", "A", "PYTHON"),
            ("python", "a", "python"),
            ("introduction to python", "lsci", "tfvzzvwkeaqv lq aqvpzf"),
            ("ATTACKATDAWN", "LEMON", "LXFOPVEFRNHR"),
        ]

        for i, (plaintext, keyword, chiphertext) in enumerate(cases):
            with self.subTest(
                case=i, plaintext=plaintext, keyword=keyword, chiphertext=chiphertext
            ):
                self.assertEqual(chiphertext, vigenere.encrypt_vigenere(plaintext, keyword))
コード例 #5
0
 def test_encryption_complex_fail(self):
     with self.assertRaises(SystemExit):
         vigenere.encrypt_vigenere('TEST{Let\'s_73st_s0meth1ng}', 'Pr0bl3m',
                                   '[a-zA-Z{}]')
コード例 #6
0
 def test_encryption_complex(self):
     self.assertEqual(vigenere.encrypt_vigenere('TEST{Let\'s_73st_s0meth1ng}', 'Pr0bl3m', \
     '[a-zA-Z0-9{}]'), 'wVGUjCq8\'J_V4Dk_EDD4usSzVq')
コード例 #7
0
 def test_encryption_basic(self):
     self.assertEqual(vigenere.encrypt_vigenere('attackatdawn', 'lemon'),
                      'LXFOPVEFRNHR')
コード例 #8
0
 def test_encryption_basic(self):
     self.assertEqual(vigenere.encrypt_vigenere('ATTACKATDAWN', 'LEMON'),
                      'LXFOPVEFRNHR')
コード例 #9
0
os.chdir('Classical Ciphers\Input Files\Caesar')
with open("caesar_plain.txt", 'r') as f:   
    plainText = f.readlines()
caesar_cipherText = encrypt_caesar(plainText, key=int(i))
os.chdir(curdir)

os.chdir('Classical Ciphers\Input Files\PlayFair')
with open("playfair_plain.txt", 'r') as f:   
    plainText = f.readlines()
playfair_cipherText = encrypt_playfair(plainText, playfair_key)
os.chdir(curdir)

os.chdir('Classical Ciphers\Input Files\Vigenere')
with open("vigenere_plain.txt", 'r') as f:
    plainText = f.readlines()
vigenere_cipherText = encrypt_vigenere(plainText, vigenere_key, mode=vigenere_mode)
os.chdir(curdir)

os.chdir('Classical Ciphers\Input Files\Hill')
with open("hill_plain_3x3.txt", 'r') as f:
    plainText = f.readlines()
hill_cipherText = encrypt_hill(plainText, hill_key)
os.chdir(curdir)

os.chdir('Classical Ciphers\Input Files\Vernam')
# key = np.frombuffer(b'SPARTANS', np.uint8) - 65
with open("vernam_plain.txt", 'r') as f:
    plainText = f.readlines()
vernam_cipherText = encrypt_vernam(plainText, vernam_key)
os.chdir(curdir)