Wpis z mikrobloga

[MEDIUM] Always play fair
Twoim zadaniem jest napisanie programu szyfrującego szyfr Charlesa Wheatstona Playfair. Program na początku powinien zapytać użytkownika o tekst jawny (plaintext) oraz o klucz za pomocą którego ma odbyć się szyfrowanie tej wiadomości.

What's Playfair?
Playfair to szyfr poligramowy, co oznacza w praktyce tyle, że szyfrowanie tesktu jawnego nie odbywa sie litera po literze lecz układa się litery w tzw. digramy (z ang. digrams/bigrams), które są tak naprawdę parą liter np. ABCD, podzielimy na AB,CD. W szyfrze Playfair do szyfrowania i deszyfrowania wiadomości używamy klucza podanego przez użytkownika.

Program flow
Użytkownik uruchamia nasz program i zostaje poproszony o wiadomość, którą chce zaszyfrować oraz o tajny klucz za pomocą, którego to szyfrowanie ma się odbyć. Natomiast zwraca mu już zaszyfrowaną wiadomość. Przykład:

$ ./playfair
Plaintext: Tajna wiadomosc
Secret: klucz
Cipher: KGMGDTGDAQGRRZ

Testing testing...

Tajna wiadomość => KLUCZ => KGMGDTGDAQGRRZ
Super tajna wiadomsoc => TAJNYKLUCZ => VLOFTKINYIVNLMPOVMZP
Programuj z wykopem => wykop => OSYIMDNTLXYKOPELNR

BONUS
Jeżeli dobrze Ci poszło możesz pomyśleć o urozmaiceniu swojego programu o deszyfrację oraz zadbać o to aby program spełnił poniższe wymagania:
1. Zachowuje wielkość liter w zaszyfrowanej wiadomości
2. Uwzględnia znaki specjalne zawarte w wiadomości (niepodlegają one szyfrowaniu, są pomijane, ale są one w zaszyfrowanej wiadomości w tym samym miejscu co były w plaintext).
A następnie spróbować rozwiązać takiego małego ctfa ;)


#programujemy #programowanie #kryptografia #ctf
h00k - [MEDIUM] Always play fair
Twoim zadaniem jest napisanie programu szyfrującego...

źródło: comment_1644162069OcByjWBVYhuCqCRyYdNcDf.jpg

Pobierz