Algorytmy kryptograficzne | Laboratorium 1

  1. Stwórz funkcje do szyfrowania wiadomości szyfrem

    • Cezara,
    • afinicznym,
    • podstawieniowym,
    • Vigenère’a.
  2. Przy pomocy funkcji z zadania 1 zaszyfruj tekst jawny The enemy knows the system. dla szyfru:

    • Cezara z przesunięciem 12,
    • afinicznego z parametrami a = 5 i b = 13,
    • podstawieniowego dla permutacji
      1
      2
      
      ABCDEFGHIJKLMNOPQRSTUVWXYZ
      QWERTYUIOPASDFGHJKLZXCVBNM
      
    • szyfru Vigenère’a z kluczem SHANNON
  3. Stwórz funkcje do deszyfrowania dla szyfrów z zadania 1 i sprawdź ich poprawność dla szyfrogramów uzyskanych w zadaniu zadaniu 2.

  4. Odtwórz tekst jawny dla szyfrogramu PXVTGHGERLXXTLAHKMWBLMTGVXTAXTWUNMPXVTGLXXIEXGMRMAXKXMATMGXXWLMHUXWHGX, który powstał z wykorzystaniem szyfru Cezara z nieznanym przesunięciem.

  5. Odtwórz tekst jawny dla szyfrogramu ORHCJGEFOCROUFDWJWUCVQFOCRCHQRAWJFEORFI, który powstał z wykorzystaniem szyfru afinicznego z nieznanymi parametrami.

  6. Odszyfruj szyfrogram

1
2
3
4
5
6
YJKAKZNYRMZKRFNYRTYFAYHNFFNYRTAEIMYRFMQQYHMRFQB
FNKRVMCEKRCFNMRVNMIMGNEDQCVMXMMSMRYJVMZEDQCTMML
FNMAKZNYRMGYRKGDXGMISYMRFLEGYFYERJEIYRGFKRZMXBF
DIRYRHEJJFNMLEVMIKFGFIKFMHYZAEAMRFGVMGNEDQCKGKG
LMZYMGJMMQHIMKFQBNDAXQMCFNYGRMVCKRHMIYGZMIFKYRQ
BGEAMFNYRHVNYZNZKRHYSMDGKROYMFB

który powstał z wykorzystaniem szyfru podstawieniowego z nieznanym alfabetem.

  1. Odszyfruj szyfrogram
1
2
3
GYIOSYXATPWGJPTDGRVMELHUYTXMDXEOZTRQAYWGUSEISJE
ELZFQSMPQLZGMJCCAFLGAFGIDKLXUGYAULSMFSDMROTXTSY
MZLPPXARIZLAEDLYID

który powstał z wykorzystaniem szyfru Vigenère’a z kluczem o długości 4.