Archive | Kryptografia RSS for this section

Szyfr płotkowy ver. 1.1 ^^

Nareszcie, po wielu trudach i mozołach udało mi się zrobić
funkcję rozkodowującą tekst zakodowany szyfrem płotkowym..

Prawdopodobnie już wcześniej bym to zrobił, gdyby nie pewien mały
problem…

Ważną rzeczą w algorytmie rozkodowania był podział na
‘części’.
Każda część była równa długości napisu podzielonej przez liczbę
poziomów. Wynik tego działania był zaokrąglany w górę.
Okazało się, że mały drobny błąd sprawiał, że obliczenie tej części
było złe..
Błąd był tutaj:

float czesc;
czesc = ceil( szyfr.length() / poziomy );

Szyfr.length() i poziomy były typu int i właśnie ten szczegół
sprawił, że zmienna czesc otrzymywała błędną wartość.

Tym razem sobie zaszalałem i zrobiłem dodatkowo małe menu :)
Wersję z menu możesz zobaczyć class="external" rel="external">tutaj.
Wersję okrojoną, z samymi funkcjami, możesz zobaczyć "http://phpfi.com/168400" class="external" rel=
"external">tutaj
.

Szyfr płotkowy

W wyniku mojej dalszej zabawy z różnymi szyframi zrobiłem tym
razem coś prostego :)
Jest to program, który szyfruje tekst "http://pl.wikipedia.org/wiki/Szyfr_p%C5%82otkowy" class="external"
rel="external">szyfrem płotkowym
.
Jego kod źródłowy znajdziesz class="external" rel="external">tutaj.

Rot13 cipher

Heh postanowilem, ze zrobie znane mi algorymty szyfrowania w cpp
i oto kolejny. Tym razem rot13. Wiem, ze to nie jest skomplikowany
algorytm, jednak postanowilem wstawic ;p
"external">Tutaj znajdziesz kod.

Vigenere’s cipher – 2 podejscie

Tym razem postanowilem zrobic ten sam program. Ok nie taki sam.
Wprawdzie robi to samo, ale metoda dojscia do celu jest inna.
Wczesniejsza wersja programu dzialala w ten sposob ze sposrod
tablic Vigenere’a szukala tego miejsca gdzie krzyzowaly sie
litery.

W tym wypadku jest inaczej. Program sprawdza jakie miejsce w tabeli
ma litera, a potem jej odpowiednik w slowie kluczowym. Ten wynik
sie ze soba sumuje i jesli jest mniejszy niz 26 to mamy zakodowany
jeden znak, a jesli jest wiekszy od 26 to od tej sumy sie odejmuje
26 i tez mam zakodowany znak :P
Nie bede bardziej gmatwal, "external" rel="external">tutaj znajdziecie kodziwo ;]
Peace!

P.S. Warto wspomniec ze 1 wersja tego programu zajmowala
nieco ponad 100 linii (bez komentarzy to bedzie jakies 95 linijek),
natomiast ta 2-ga wersja zajmuje 53 linie :)

W koncu mi sie udalo.. :)

Wiem, wiem mozna to ylo wykonac w jedna noc, ale ja jak zwykle
sobie pokomplikowalem sprawy.. ;p

Po dlugim nie kodzeniu w cpp napisalem program, ktory szyfruje
wiadomosci szyfrem Vigenere’a
Kod pisalem w calosci sam, byc moze ma mase bledow, ale spelnia
swoje zadanie.
Jezeli ktos chce to moze obejrzec kod "http://phpfi.com/159866?lang=cpp" class="external" rel=
"external">tutaj
.