Wpisany przez Krzysztof Maćkowiak,
18 sierpnia 2005 00:06
Nazwa: Macierz (kwadrat)
Rodzaj: Szyfr przestawieniowy
Opis metody: Jest to prosty szyfr przestawieniowy oparty na figurze geometrycznej. W tym przypadku jest to kwadrat. Szyfrowanie polega na wprowadzeniu tekstu do macierzy po kolei wierszami a następnie odczytanie tekstu z macierzy kolumnami.
Przykład:
Tekst jawny: AlgorytmyiStrukturyDanych
Tekst zapisujemy w kwadrat 5x5
Algor
ytmyi
Struk
turyD
anych
Następnie odczytujemy kolumnami: AyStalttungmrryoyuycrikDh
Aby odszyfrować dany tekst należy operację powtórzyć drugi raz. Otrzymany tekst będzie tekstem jawnym.
Opis procedury: W pierwszej kolejności otwierane są pliki z tekstem oraz pusty (plik wynikowy). Wszystkie znaki z pliku wejściowego przenoszone są do tablicy pomocniczej. Dodatkowo obliczana jest liczba tych znaków (i). Na podstawie tej liczby obliczana jest wielkość potrzebnej macierzy kwadratowej. Następnie macierz tą wypełniamy jakimiś symbolami. W moim przypadku macierz wypełniana jest spacjami. Następnie przepisujemy znaki z tablicy pomocniczej do macierzy a następnie odczytujemy z macierzy kolumnami zapisując do pliku wynikowego.
Poziom bezpieczeństwa: Bezpieczeństwo nie jest zapewnione
Metody kryptoanalizy: Analiza statystyczna tekstu.
Rodzaj: Szyfr przestawieniowy
Opis metody: Jest to prosty szyfr przestawieniowy oparty na figurze geometrycznej. W tym przypadku jest to kwadrat. Szyfrowanie polega na wprowadzeniu tekstu do macierzy po kolei wierszami a następnie odczytanie tekstu z macierzy kolumnami.
Przykład:
Tekst jawny: AlgorytmyiStrukturyDanych
Tekst zapisujemy w kwadrat 5x5
Algor
ytmyi
Struk
turyD
anych
Następnie odczytujemy kolumnami: AyStalttungmrryoyuycrikDh
Aby odszyfrować dany tekst należy operację powtórzyć drugi raz. Otrzymany tekst będzie tekstem jawnym.
Opis procedury: W pierwszej kolejności otwierane są pliki z tekstem oraz pusty (plik wynikowy). Wszystkie znaki z pliku wejściowego przenoszone są do tablicy pomocniczej. Dodatkowo obliczana jest liczba tych znaków (i). Na podstawie tej liczby obliczana jest wielkość potrzebnej macierzy kwadratowej. Następnie macierz tą wypełniamy jakimiś symbolami. W moim przypadku macierz wypełniana jest spacjami. Następnie przepisujemy znaki z tablicy pomocniczej do macierzy a następnie odczytujemy z macierzy kolumnami zapisując do pliku wynikowego.
Poziom bezpieczeństwa: Bezpieczeństwo nie jest zapewnione
Metody kryptoanalizy: Analiza statystyczna tekstu.
Implementacje
Autor | Język programowania | Komentarz | Otwórz | Pobierz | Ocena |
Krzysztof Maćkowiak | C/C++ | kodowanie/dekodowanie tekstu z pliku | .cpp | .cpp | ***** / 4 |
Kamil Konieczka | C/C++ | kodowanie/dekodowanie tekstu wpisanego z konsoli | .cpp | .cpp | ***** / 3 |
Poprawiony: 21 czerwca 2011 19:01
Można dodać jakiś rysunek dla laików.