Użytkowanie
Szyfrowanie
Aby zaszyfrować tekst „HARCERZ I HARCERKA” słowem klucz „KAROLINKA” należy zaimportować klasę Karolinka z zainstalowanej biblioteki, stworzyć obiekt klasy, a następnie wywołać funkcję zaszyfruj tego obiektu.
from karolinka import Karolinka
karolinka = Karolinka()
zaszyfrowany_tekst = karolinka.zaszyfruj("HARCERZ I HARCERKA")
print(zaszyfrowany_tekst)
8x9 8x3 6x5 3x9 5x2 7x1 7x3
9x9
8x9 1x2 6x5 3x2 5x2 7x8 1x1 8x3
Jeżeli chcesz zaszyfrować wiadomość innym słowem klucz, podaj je jako pierwszy argument klasy Karolinka przy tworzeniu obiektu.
from karolinka import Karolinka
karolinka = Karolinka("ALEKSANDRA")
zaszyfrowany_tekst = karolinka.zaszyfruj("HARCERZ I HARCERKA")
print(zaszyfrowany_tekst)
5x8 1x10 6x2 3x10 5x10 6x2 6x5
6x8
8x1 1x1 7x4 9x5 5x10 1x9 7x3 1x10
Zarówno słowo klucz jak i tekst do zaszyfrowania mogą być podane przy użyciu małych liter, jednak po odszyfrowaniu tekst będzie się składał z wielkich liter.
from karolinka import Karolinka
karolinka = Karolinka("Aleksandra")
zaszyfrowany_tekst = karolinka.zaszyfruj("harcerz i harcerka")
print(zaszyfrowany_tekst)
8x6 1x6 7x4 9x5 2x8 1x9 7x9
5x3
8x10 1x6 6x2 3x10 5x6 7x4 1x4 1x10
Jak widać zaszyfrowana wiadomość ma pewien element pseudolosowy, więc może być różna za każdym razem.
W razie potrzeby można zdefiniować własny alfabet, jako argument klasy Karolinka.
from karolinka import Karolinka
karolinka = Karolinka("Aleksandra", alfabet="ABCDEFGHIJKLMNOPRSTUWYZ")
zaszyfrowany_tekst = karolinka.zaszyfruj("HARCERZ I HARCERKA")
print(zaszyfrowany_tekst)
4x3 1x1 7x4 10x9 5x10 4x7 7x9
5x3
8x6 8x9 1x9 3x6 5x10 1x9 8x8 7x5
Należy jednak pamiętać, że ten sam alfabet musi zostać użyty przy odszyfrowywaniu. Może to stanowić swego rodzaju drugi klucz.
Odszyfrowywanie
Aby odszyfrować tekst 8x2 1x9 7x8 3x9 5x2 3x4 7x3\n9x2\n8x2 1x9 9x6 3x2 5x2 7x8 1x1 1x9 zaszyfrowany słowem klucz „KAROLINKA” należy zaimportować klasę Karolinka z zainstalowanej biblioteki, stworzyć obiekt klasy, a następnie wywołać funkcję odszyfruj tego obiektu.
from karolinka import Karolinka
karolinka = Karolinka()
odszyfrowany_tekst = karolinka.odszyfruj("8x2 1x9 7x8 3x9 5x2 3x4 7x3\n9x2\n8x2 1x9 9x6 3x2 5x2 7x8 1x1 1x9")
print(odszyfrowany_tekst)
HARCERZ I HARCERKA
Jeżeli do zaszyfrowania wiadomości użyto innego słowa klucz, podaj je jako pierwszy argument klasy Karolinka przy tworzeniu obiektu.
from karolinka import Karolinka
karolinka = Karolinka("ALEKSANDRA")
odszyfrowany_tekst = karolinka.odszyfruj("4x3 1x1 7x4 10x9 5x10 4x7 7x9\n5x3\n8x6 8x9 1x9 3x6 5x10 1x9 8x8 7x5")
print(odszyfrowany_tekst)
HARCERZ I HARCERKA
Jeśli do zaszyfrowania wiadomości użyto innego alfabetu, może być konieczna jego zmiana:
from karolinka import Karolinka
karolinka = Karolinka("ALEKSANDRA", alfabet="ABCDEFGHIJKLMNOPRSTUWYZ")
odszyfrowany_tekst = karolinka.odszyfruj("4x3 1x1 7x4 10x9 5x10 4x7 7x9\n5x3\n8x6 8x9 1x9 3x6 5x10 1x9 8x8 7x5")
print(odszyfrowany_tekst)
HARCERZ I HARCERKA