|
|
Nazwa: Szyfr Playfair
Rodzaj: Szyfr poligramowy
Opis metody: Szyfr Playfair nie koduje pojedyńczych liter, lecz grupy dwóch
znaków jednocześnie. Szyfr ten opiera się na kluczu, względem którego tworzona
jest 25 elementowa dwuwymiarowa tablica znaków.
Niech przykładowy klucz ma postać:
ANUBIS, wówczas utworzona macierz będzie
miała postać:
| A |
N |
U |
B |
I |
| S |
T |
V |
W |
X |
| Y |
Z |
C |
D |
E |
| F |
G |
H |
K |
L |
| M |
O |
P |
Q |
R |
Jak widać, tablice ustala się poprzez wpisanie klucza
szyfrowania i uzupełnienie reszty liter w kolejności
alfabetycznej, bez powtarzania liter występujących w haśle. Podobnie jeżeli mielibyśmy hasło TAJEMNICA, należałoby wpisać TAIEMNC, drugi raz litery I oraz A nie występują. Zauważyć można, że w tablicy brak jest litery "J". W algorytmie szyfrowania
Playfair litera J oraz I są równoznaczne.
Proces kodowania
Podczas kodowania należy zastosować się do następujących reguł:
- W jednym kroku kodowane są 2 litery (w przypadku, gdy mamy nieparzystą liczbę liter, dopisujemy jedną literę np. X).
- W przypadku, gdy litery leżą w różnych wierszach i kolumnach, zastępowane są znakami znajdującymi się na drugiej
przekątnej, stworzonego przez te znaki prostokąta.
| A |
N |
U |
B |
I |
| S |
T |
V |
W |
X |
| Y |
Z |
C |
D |
E |
| F |
G |
H |
K |
L |
| M |
O |
P |
Q |
R |
Ważna jest kolejnośc podawania liter do szyfrowania, gdyż
inna interpretacja kolejności da inny ciąg wynikowy, np.
Szyfrując litery GB otrzymamy KN, natomiast
szyfrując w kolejności BG otrzymamy NK
- Jeżeli dwie szyfrowane litery znajdują się w jednym
wierszu, wówczas pobiera się
kolejne znaki po prawej stronie.
Przykładowo:
| A |
N |
U |
B |
I |
| S |
T |
V |
W |
X |
| Y |
Z |
C |
D |
E |
| F |
G |
H |
K |
L |
| M |
O |
P |
Q |
R |
Kodując ciąg ZD, otrzymamy ciąg wynikowy CE
- Jeżeli szyfrowane znaki znajdują się w jednej kolumnie
macierzy szyfrowania, wówczas zastępowane są znakami
znajdującymi się bezpośrednio poniżej.
Przykładowo:
| A |
N |
U |
B |
I |
| S |
T |
V |
W |
X |
| Y |
Z |
C |
D |
E |
| F |
G |
H |
K |
L |
| M |
O |
P |
Q |
R |
Kodując ciąg SM uzyskamy szyfr w postaci YA
Oczywiście na etapie ustalania klucza, należy wybrać klucz
stosunkowo długi.
Proces deszyfrowania przebiega w sposów identyczny
jak w przypadku szyfrowania - jest to klasyczny
przykład szyfru symetrycznego.
Za pomocą powyższej tablicy zaszyfrujemy wiadomość: PROGRAMOWANIE BY ANUBIS
Szyfrogram będzie miał postać: QMNOMIOPSBUADIFSUBIATS
Poziom bezpieczeństwa: Szyfr nie zapewnia bezpieczeństwa.
Procedura szyfrująca/deszyfrująca
Tekst oraz algorytm autorstwa: Marcin Anubis Tomaszewski (anubis2@poczta.wp.pl, www.anubis.prog.prv.pl).

|
|