4. Realizacja programowa szyfru blokowego wykrywającego manipulacje na kryptogramach.
4.1. Opis aplikacji
Aplikacja została napisana pod środowisko Windows, przez co może być używana przez większość użytkowników komputerów osobistych. Program może służyć jako pomoc naukowa do wykładów lub ćwiczeń z dziedziny kryptografii lub kryptoanalizy . Stworzenie tej aplikacji miało na celu udowodnić trzy rzeczy:
program może być zaimplementowany przez jedną osobę, a nie przez sztab specjalistów,
pokazanie przydatności cyklicznego kodu Reeda - Solomona do zabezpieczania danych,
obsługa programu nie wymaga wiedzy z dziedziny kryptografii, a jedynie podstawową wiedzę o obsłudze komputera.
4.1.1 Dostępne funkcje
Program udostępnia dwie podstawowe funkcje jakimi są szyfrowanie wiadomości oraz deszyfrowanie wiadomości z kryptogramu. Algorytm szyfrowania pracuje w trzech trybach, które użytkownik wybiera przed procesem kodowania:
szyfrowanie jednym kluczem ( dla każdego bloku danych wykorzystuje się ten sam klucz, który został wygenerowany na podstawie podanego hasła ),
szyfrowanie z kluczami losowymi ( dla każdego bloku danych losowany inny klucz, który generowany przez generator liczb pseudolosowych o rozkładzie równomiernym ),
szyfrowanie z łączeniem bloków kryptogramu ( dla każdego bloku danych kluczem jest poprzedni blok danych, dla pierwszego bloku danych klucz generowany jest przez generator liczb pseudolosowych o rozkładzie równomiernym ).
4.1.2 Praca z programem
Po włączeniu programu ukaże się formularz główny:
W polu (1) wypisana będzie katalog i nazwa pliku wybranego przyciskiem (2) lub z menu głównego Plik -> Otwórz. Po dokonaniu tej czynności w polu (3) pojawi się katalog i nazwa kryptogramu (rozszerzenie *.rs) lub odczytywanej wiadomości. Program automatycznie rozpoznaje czy w danej chwili deszyfrujemy kryptogram czy kodujemy wiadomość. Przyciskiem (4) możemy zmienić katalog do którego ma być zapisany plik z pola (3). Rodzaj szyfrowania wybieramy z opcji (5), jeżeli deszyfrujemy kryptogram ta opcja jest nieaktywna, program automatycznie dobiera parametry deszyfrowania. W polach (6) wpisujemy hasło za pomocą którego będzie szyfrowany plik. (7) to pasek postępu obliczeń. Przyciski (9) rozpoczyna procedurę szyfrowania, (10) rozpoczyna procedurę deszyfrowania. Klawisze te są aktywowane zależnie od wybranego pliku i wpisania hasła. (8) zamyka program. Po wciśnięciu przycisku (2) pokazuje się okno wyboru pliku:
Jest to standardowe okno dialogowe w środowisku Windows do wyboru pliku. Po wybraniu katalogu klikamy na nazwę żądanego pliku, a następnie na przycisk „Otwórz”. Jeśli będziemy zmieniać katalog przyciskiem (4) zobaczymy okno:
Z pola (11) wybieramy dysk, z listy (12) wybieramy katalog, który zostanie wypisany poniżej (13) .Wybór katalogu potwierdzamy przyciskiem (14), anulujemy operacje przyciskiem (15). Na formularzu głównym w polu (3) katalog zostanie wpisany zamiast poprzedniego, zaś nazwa pliku zostanie bez zmian.
Jeżeli wybierzemy kryptogram i wpiszemy hasło formularz główny będzie wyglądał następująco:
Program jest gotowy do deszyfrowania. Jeżeli wybierzemy dowolny inny plik, wybierzemy rodzaj szyfrowania i wpiszemy hasło program będzie gotowy do zaszyfrowanie żądanego pliku:
Formularz główny podczas procedury deszyfrowania :
i szyfrowania
Na zakończenie opisu aplikacji umieszczono objaśnienia do komunikatów pojawiających się w czasie użytkowania aplikacji:
1) Komunikaty pojawiają się gdy chcemy nad pisać już istniejący plik
2) Komunikat pojawia się gdy na dysku nie wolnego miejsca do zapisania wiadomości lub kryptogramu.
3) Komunikat występuje po zdeszyfrowaniu kryptogramu, który nie był modyfikowany.
4) Kolejne komunikaty występują gdy program natrafił na modyfikacje kryptogramu
1
2
3
4
13
14
15
11
12
10
9
8
7
6
5