Algorytmy podstawieniowe



Podobne dokumenty
Algorytmy podstawieniowe

Zarys algorytmów kryptograficznych

Bezpieczeństwo danych i przykłady kryptoanalizy prostych szyfrów. Błędy szyfrowania. Typy ataku kryptoanalitycznego

Szyfry Vigenere a. Grzegorz Szkibiel

INŻYNIERIA BEZPIECZEŃSTWA LABORATORIUM NR 2 ALGORYTM XOR ŁAMANIE ALGORYTMU XOR

II klasa informatyka rozszerzona SZYFROWANIE INFORMACJI

Bezpieczeństwo systemów komputerowych. Metody łamania szyfrów. Kryptoanaliza. Badane własności. Cel. Kryptoanaliza - szyfry przestawieniowe.

Bezpieczeństwo systemów komputerowych. Kryptoanaliza. Metody łamania szyfrów. Cel BSK_2003. Copyright by K.Trybicka-Francik 1

2 Kryptografia: algorytmy symetryczne

ZADANIE 1 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z D

Kryptografia systemy z kluczem tajnym. Kryptografia systemy z kluczem tajnym

Sieci komputerowe. Wykład 9: Elementy kryptografii. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Przykład. Przykład. Litera Homofony C F H I M

Laboratorium nr 1 Szyfrowanie i kontrola integralności

Akademia Techniczno-Humanistyczna w Bielsku-Białej

Kryptografia szyfrowanie i zabezpieczanie danych

Kryptografia epizody z historii. Kryptografia epizody z historii

kryptografię (z gr. κρυπτός oraz γράφω gráfo pisać ), czyli gałąź wiedzy o utajnianiu wiadomości;

Bezpieczeństwo systemów komputerowych. Algorytmy kryptograficzne (1) Algorytmy kryptograficzne. Algorytmy kryptograficzne BSK_2003

Dlaczego możemy czuć się bezpieczni w sieci czyli o szyfrowaniu informacji

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 7

Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5.

ŁAMIEMY SZYFR CEZARA. 1. Wstęp. 2. Szyfr Cezara w szkole. Informatyka w Edukacji, XV UMK Toruń, 2018

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 8

Scenariusz lekcji. wymienić różnice pomiędzy kryptologią, kryptografią i kryptoanalizą;

1 Rozwiązanie zadania 1. Szyfr Cezara

Monoalfabetyczny szyfr Beauforta. omnma pvazw hcybn cibcv jzwag vmjha

Matematyczna podróż w głąb Enigmy

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 1

Tajemnice szyfrów. Barbara Roszkowska Lech. MATEMATYKA DLA CIEKAWYCH ŚWIATA marzec 2017

Kryptologia(nie)stosowana

Wykład VI. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Szyfrowanie wiadomości

Laboratorium nr 1 Podstawy kryptografii i kryptoanalizy

Kryptologia przykład metody RSA

Kryptografia, pojęcia podstawowe

Zastosowanie teorii liczb w kryptografii na przykładzie szyfru RSA

Historia kryptografii

Bezpieczeństwo w Internecie

Laboratorium. Szyfrowanie algorytmami Vernam a oraz Vigenere a z wykorzystaniem systemu zaimplementowanego w układzie

Rozdział 4. Macierze szyfrujące. 4.1 Algebra liniowa modulo 26

1. Maszyny rotorowe Enigma

Kodowanie i szyfrowanie na lekcjach matematyki. Częstochowa, r.

KRYPTOGRAFIA I OCHRONA DANYCH. Krzysztof Kaczmarczyk

INŻYNIERIA BEZPIECZEŃSTWA LABORATORIUM NR 3. 1 Proste szyfry podstawieniowe przypomnienie wiadomości z laboratorium nr 1

Tajna wiadomość. Scenariusz lekcji

Wprowadzenie do PKI. 1. Wstęp. 2. Kryptografia symetryczna. 3. Kryptografia asymetryczna

Systemy Operacyjne zaawansowane uŝytkowanie pakietu PuTTY, WinSCP. Marcin Pilarski

Szyfry afiniczne. hczue zfuds dlcsr

Podstawy systemów kryptograficznych z kluczem jawnym RSA

Wykład VII. Kryptografia Kierunek Informatyka - semestr V. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej

Ataki kryptograficzne.

Bezpieczeństwo danych, zabezpieczanie safety, security

Szyfrowanie informacji

1) indeks koincyndencji Określa prawdopodobieostwo wystąpienia w szyfrogramie dwóch jednakowych liter: N długośd szyfrogramu

Bezpieczeństwo danych i systemów informatycznych. Wykład 5

Złam szyfr i odkryj tajemnicę

Przewodnik użytkownika


ALGORYTMY I STRUKTURY DANYCH

ZESZYTY NAUKOWE WYDZIAŁU ETI POLITECHNIKI GDAŃSKIEJ Nr 4 Seria: Technologie Informacyjne 2006 ANALIZA METODY SZYFROWANIA "ZT-UNITAKOD"

Wprowadzenie do zagadnień bezpieczeńśtwa i kryptografii

Bezpieczeństwo systemów komputerowych. Algorytmy kryptograficzne. Algorytmy kryptograficzne (1) Algorytmy kryptograficzne. Szyfry przestawieniowe

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 14, Kryptografia: algorytmy asymetryczne (RSA)

Laboratorium kryptograficzne dla licealistów 2

Kryptografia kwantowa

Zamiana porcji informacji w taki sposób, iż jest ona niemożliwa do odczytania dla osoby postronnej. Tak zmienione dane nazywamy zaszyfrowanymi.

Czym jest szyfrowanie?

Sieci komputerowe. Wykład 11: Kodowanie i szyfrowanie. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Projekt AS KOMPETENCJI jest współfinansowany przez Unię Europejską w ramach środków Europejskiego Funduszu Społecznego

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 15, Kryptografia: algorytmy asymetryczne (RSA)

Bezpieczeństwo kart elektronicznych

Laboratorium kryptograficzne dla licealistów 4

Authenticated Encryption

Polcode Code Contest PHP-10.09

n = p q, (2.2) przy czym p i q losowe duże liczby pierwsze.

Sieci komputerowe Wykład 7. Bezpieczeństwo w sieci. Paweł Niewiadomski Katedra Informatyki Stosowanej Wydział Matematyki UŁ niewiap@math.uni.lodz.

Algorytmy asymetryczne

1. Operacje logiczne A B A OR B

Istnieją trzy kluczowe elementy bezpieczeństwa danych. Poufność, integralność i uwierzytelnianie są znane jako triada CIA

(b) (d) 3,3,2,3,3,0,0,

Kryptografia-0. przykład ze starożytności: około 489 r. p.n.e. niewidzialny atrament (pisze o nim Pliniusz Starszy I wiek n.e.)

Szyfrowanie RSA (Podróż do krainy kryptografii)

WOJEWÓDZKI KONKURS INFORMATYCZNY DLA UCZNIÓW DOTYCHCZASOWYCH GIMNAZJÓW ETAP WOJEWÓDZKI BIAŁYSTOK, 16 MARCA 2018

KUS - KONFIGURACJA URZĄDZEŃ SIECIOWYCH - E.13 ZABEZPIECZANIE DOSTĘPU DO SYSTEMÓW OPERACYJNYCH KOMPUTERÓW PRACUJĄCYCH W SIECI.

urządzenia: awaria układów ochronnych, spowodowanie awarii oprogramowania

PuTTY. Systemy Operacyjne zaawansowane uŝytkowanie pakietu PuTTY, WinSCP. Inne interesujące programy pakietu PuTTY. Kryptografia symetryczna

Bezpieczeństwo danych i systemów. Technologia informacyjna

OCHRONA INFORMACJI W SYSTEMACH I SIECIACH KOMPUTEROWYCH SYMETRYCZNE SZYFRY BLOKOWE

Laboratorium kryptograficzne dla licealistów 3

Od problemu żarówek do nowego systemu szyfrowania

Algorytmy stochastyczne, wykład 05 Systemy Liendenmayera, modelowanie roślin

BSK. Copyright by Katarzyna Trybicka-Fancik 1. Bezpieczeństwo systemów komputerowych. Podpis cyfrowy. Podpisy cyfrowe i inne protokoły pośrednie

Autor: Opis implementacji: Zaawansowane użytkowanie Linuksa, podstawowe informacje o bezpieczeństwie danych i szyfrowaniu. A B C D E F G H I J

Matematyczna podróż w głąb Enigmy

Zadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for.

Projekty zaliczeniowe Podstawy Programowania 2012/2013

0 --> 5, 1 --> 7, 2 --> 9, 3 -->1, 4 --> 3, 5 --> 5, 6 --> 7, 7 --> 9, 8 --> 1, 9 --> 3.

KAMELEON.CRT OPIS. Funkcjonalność szyfrowanie bazy danych. Wtyczka kryptograficzna do KAMELEON.ERP. Wymagania : KAMELEON.ERP wersja

Zajęcia 4 procedury i funkcje

Transkrypt:

Algorytmy podstawieniowe Nazwa: AtBash Rodzaj: Monoalfabetyczny szyfr podstawieniowy, ograniczony Opis metody: Zasada jego działanie polega na podstawieniu zamiast jednej litery, litery lezącej po drugiej stronie alfabetu w takiej samej odległości od końca/początku. Najłatwiej będzie wyjaśnić to na przykładzie. Otóż za literę a powinniśmy podstawić literę z. Natomiast za literę c literę 3 od końca alfabetu a wiec literę x. Warto zauważyć, że aby odszyfrować wiadomość należy ją ponownie zaszyfrować. Otrzymamy tym samym tekst jawny. Przykład: Tekst jawny: AlgorytmyiStrukturyDanych Tekst zaszyfrowany: ZotlibgnbrHgifpgfibWzmbxs Poziom bezpieczeństwa: Szyfr nie zapewnia bezpieczeństwa Metody kryptoanalizy: Analiza częstości występowania poszczególnych liter w tekście. Krzysztof Maćkowiak 1

Nazwa: Szyfr Cezara Rodzaj: Monoalfabetyczny szyfr podstawieniowy, ograniczony Historia i zastosowanie: Jest to szyfr za pomocą, którego Juliusz Cezar szyfrował swoje listy do Cycerona. Jako ciekawostkę można podać, że szyfr ten był podobno używany jeszcze w 1915 roku w armii rosyjskiej, gdyż tylko tak prosty szyfr wydawał się zrozumiały dla sztabowców Opis metody: Każdą literę tekstu jawnego zamieniamy na literę przesuniętą o 3 miejsca w prawo. I tak literę A szyfrujemy jako literę D, literę B jako E itd. W przypadku litery Z wybieramy literę C. W celu odszyfrowania tekstu powtarzamy operację tym razem przesuwając litery o 3 pozycje w lewo. Zapis matematyczny tych operacji wygląda następująco: Szyfrowanie: C=E(p)=(p+3)mod 26 Deszyfrowanie: p=d(c)=(c-3)mod 26 Przyjmuje się, że alfabet składa się z 26 liter. Przykład: Tekst jawny: AlgorytmyiStrukturyDanych Tekst zaszyfrowany: DojrubwpblVwuxnwxubGdqbfk Poziom bezpieczeństwa: szyfr nie zapewnia bezpieczeństwa Metody kryptoanalizy: analiza częstości występowania poszczególnych liter Krzysztof Maćkowiak 2

Nazwa: ROT-13 Rodzaj: Monoalfabetyczny szyfr podstawieniowy, ograniczony. Historia i zastosowanie: Algorytm ten używany był w grupach dyskusyjnych. Stosowanie jego nie miało jednak zapewnić tajemnicy. Szyfrowane były teksty często niecenzuralne tak, aby odczytywane były przez osoby, które sobie tego życzą. Dodatkowo zaszyfrowany tekst zawierający jakieś zabronione słowa przechodził bez problemu przez wszystkie filtry wyszukujące określonych wyrazów czy też fraz w tekstach. W późniejszym okresie filtry radziły sobie z tak prostym szyfrem. Opis metody: Zasada działania jest identyczna jak w przypadku szyfru Cezara różnica polega na wartości przesunięcia. W tym przypadku każdą literę tekstu jawnego zamieniamy na literę przesuniętą o 13 miejsca w prawo. W celu odszyfrowania tekst powtarzamy operację tym razem przesuwając litery o 13 pozycje w lewo. Zapis matematyczny tych operacji wygląda następująco: Szyfrowanie: C=E(p)=(p+13)mod 26 Deszyfrowanie: p=d(c)=(c-13)mod 26 Przyjmuje się, że alfabet składa się z 26 liter. Należy również zauważyć, że przyjmując przesunięcie o wartości 13 przy deszyfrowaniu tekstu nie ważne jest czy wykonamy operację odejmowania czy dodawania (występuje przecież operacja mod 26). Zatem jeżeli szyfrujemy jedynie litery możemy użyć tej samej procedury do szyfrowania jak i deszyfrowania. Poziom bezpieczeństwa: szyfr nie zapewnia bezpieczeństwa Metody kryptoanalizy: analiza częstości występowania poszczególnych liter Krzysztof Maćkowiak 3

Nazwa: Szyfr Vigenere`a Rodzaj: Polialfabetyczny szyfr podstawieniowy Historia i zastosowanie: Słabość szyfrów monoalfabetycznych sprawiła, że próbowano wymyślać bardziej rozbudowane szyfry. Naturalnym krokiem było korzystanie z kilku alfabetów zamiast jednego jak w przypadku szyfrów monoalfabetycznych. Dało to początek polialfabetycznym szyfrom podstawieniowym. Idea takiego szyfru pojawiła się już w XV wieku (Leon Battista Alberti). Kolejne pomysły związane są z takimi nazwiskami jak Johannes Trithemius oraz Giovanni della Porta. W tym miejscu chciałbym przedstawić najbardziej znany szyfr polialfabetyczny stworzony przez Blaise de Vigenere`a, oficjalnie opublikowany w jego pracy Traicte des Chiffres w 1586 roku. Podczas tworzenia swojego szyfru Vigenere opierał się na przemyśleniach wcześniej wymienionych osób. Opis metody: Szyfrowanie i deszyfrowanie odbywa się na podstawie tablicy Vigenere`a. Krzysztof Maćkowiak 4

Tablica Vigenere`a Jawny a b c d e f g h i j k l m n o p q r s t u V w x y z B C D E F G H I J K L M N O P Q R S T U V W X Y Z A C D E F G H I J K L M N O P Q R S T U V W X Y Z A B D E F G H I J K L M N O P Q R S T U V W X Y Z A B C E F G H I J K L M N O P Q R S T U V W X Y Z A B C D F G H I J K L M N O P Q R S T U V W X Y Z A B C D E G H I J K L M N O P Q R S T U V W X Y Z A B C D E F H I J K L M N O P Q R S T U V W X Y Z A B C D E F G I J K L M N O P Q R S T U V W X Y Z A B C D E F G H J K L M N O P Q R S T U V W X Y Z A B C D E F G H I K L M N O P Q R S T U V W X Y Z A B C D E F G H I J L M N O P Q R S T U V W X Y Z A B C D E F G H I J K M N O P Q R S T U V W X Y Z A B C D E F G H I J K L N O P Q R S T U V W X Y Z A B C D E F G H I J K L M O P Q R S T U V W X Y Z A B C D E F G H I J K L M N P Q R S T U V W X Y Z A B C D E F G H I J K L M N O Q R S T U V W X Y Z A B C D E F G H I J K L M N O P R S T U V W X Y Z A B C D E F G H I J K L M N O P Q S T U V W X Y Z A B C D E F G H I J K L M N O P Q R T U V W X Y Z A B C D E F G H I J K L M N O P Q R S U V W X Y Z A B C D E F G H I J K L M N O P Q R S T V W X Y Z A B C D E F G H I J K L M N O P Q R S T U W X Y Z A B C D E F G H I J K L M N O P Q R S T U V X Y Z A B C D E F G H I J K L M N O P Q R S T U V W Y Z A B C D E F G H I J K L M N O P Q R S T U V W X Z A B C D E F G H I J K L M N O P Q R S T U V W X Y A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Tekst szyfrujemy na podstawie hasła. Szyfrowanie odbywa się w sposób następujący. Każdą literę tekstu jawnego szyfrujemy korzystając z alfabetu zaczynającego się od odpowiadającej litery w haśle. W przypadku, gdy hasło jest krótsze od szyfrowanego tekstu powtarzamy je wielokrotnie. Krzysztof Maćkowiak 5

Przykład: Tekst jawny: A L G O R Y T M Y I S T R U K T U R Y D A N Y C H Hasło: V I G E N E R E V I G E N E R E V I G E N E R E V T. zaszyfrowany W U N T F D L R U R Z Y F Z C Y Q A F I O S Q H D Jawny A B C D E F G H I J K L M N O P Q R S T U V W X Y Z B C D E F G H I J K L M N O P Q R S T U V W X Y Z A C D E F G H I J K L M N O P Q R S T U V W X Y Z A B D E F G H I J K L M N O P Q R S T U V W X Y Z A B C E F G H I J K L M N O P Q R S T U V W X Y Z A B C D F G H I J K L M N O P Q R S T U V W X Y Z A B C D E G H I J K L M N O P Q R S T U V W X Y Z A B C D E F H I J K L M N O P Q R S T U V W X Y Z A B C D E F G I J K L M N O P Q R S T U V W X Y Z A B C D E F G H J K L M N O P Q R S T U V W X Y Z A B C D E F G H I K L M N O P Q R S T U V W X Y Z A B C D E F G H I J L M N O P Q R S T U V W X Y Z A B C D E F G H I J K M N O P Q R S T U V W X Y Z A B C D E F G H I J K L N O P Q R S T U V W X Y Z A B C D E F G H I J K L M O P Q R S T U V W X Y Z A B C D E F G H I J K L M N P Q R S T U V W X Y Z A B C D E F G H I J K L M N O Q R S T U V W X Y Z A B C D E F G H I J K L M N O P R S T U V W X Y Z A B C D E F G H I J K L M N O P Q S T U V W X Y Z A B C D E F G H I J K L M N O P Q R T U V W X Y Z A B C D E F G H I J K L M N O P Q R S U V W X Y Z A B C D E F G H I J K L M N O P Q R S T V W X Y Z A B C D E F G H I J K L M N O P Q R S T U W X Y Z A B C D E F G H I J K L M N O P Q R S T U V X Y Z A B C D E F G H I J K L M N O P Q R S T U V W Y Z A B C D E F G H I J K L M N O P Q R S T U V W X Z A B C D E F G H I J K L M N O P Q R S T U V W X Y A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Poziom bezpieczeństwa: Uzależniony od długości klucza. Od niskiego do bezwarunkowo bezpiecznego (one-time pad). Metody kryptoanalizy: Test Kasiskiego, indeks koincydencji. Krzysztof Maćkowiak 6

Nazwa: Algorytm XOR Rodzaj szyfru: Podstawieniowy Historia i zastosowanie: Operacja ta jest częścią składową wielu rozbudowanych algorytmów kryptograficznych jak np. DES (Data Encryption Standard). Operacja ta sama w sobie stanowi również prosty algorytm szyfrowania, który nie zapewnia jednak większego bezpieczeństwa. Jednak przy spełnieniu kilku bardzo ważnych warunków może stanowić mimo swej prostoty algorytm niemożliwym do złamania (binarna wersja algorytmu one-time pad). Opis metody: Oprócz tej nazwy możemy spotkać się z takimi nazwami jak alternatywa wykluczająca lub binarne sumowanie mod 2. W matematyce oznaczana jest często przez symbol krzyżyk w kółeczku. Operacja ta wygląda następująco: 0 XOR 0 = 0 1 XOR 1 = 0 0 XOR 1 = 1 1 XOR 0 = 1 Należy pamiętać, że w wyniku podwójnego wykonania operacji XOR otrzymamy tekst jawny. Zatem: MXOR K = C C XOR K = M Czyli: (M XOR K) XOR K = M W wyniku tego mamy tylko jedną procedurę, zarówno do szyfrowania jak i do deszyfrowania. Krzysztof Maćkowiak 7

Przykład: Szyfrowanie Tekst jawny: 0100 1010 Hasło: 0100 1000 Szyfrogram: 0000 0010 Deszyfrowanie Szyfrogram: 0000 0010 Hasło: 0100 1000 Tekst jawny: 0100 1010 Poziom bezpieczeństwa: Dla krótkich kluczy niski Dla kluczy długich (powyżej 160-bitów) średni Przy spełnieniu pewnych warunków (one-time pad) bezwarunkowo bezpieczny Metody kryptoanalizy: Zliczanie koincydencji. Krzysztof Maćkowiak 8

Nazwa: Szyfr One-time pad Historia i zastosowanie: Jest to jedyny bezwarunkowo bezpieczny szyfr, co zostało udowodnione matematycznie w 1949 przez Shannon a. Algorytm ten zaproponowany został przez Gilberta Vernama z AT&T w 1917 roku. Jeżeli chodzi o pojęcie klucza losowego to pierwszy raz wprowadził je Joseph Mauborgne. W literaturze można spotkać informacje, że podobno gorąca linia pomiędzy Waszyngtonem a Moskwą szyfrowana była z wykorzystaniem tego algorytmu. Opis metody: Można wyróżnić 2 wersje tego algorytmu: -wersja binarna (szyfr Vernama) -wersja znakowa (szyfr Vigenere a) W wersji binarnej szyfrujemy/deszyfrujemy korzystając z algorytmu Xor. W wersji znakowej szyfrujemy/deszyfrujemy korzystając z algorytmu Vigenere`a. Można zatem zadać sobie pytanie dlaczego tamte algorytmy zapewniają słabe lub średnie bezpieczeństwo a ten zapewnia bezwarunkowe bezpieczeństwo. Otóż cała tajemnica tkwi tutaj w założeniach nałożonych na hasło. Spełnione muszą być wszystkie 3 poniższe warunki: hasło musi być ciągiem losowym hasło musi być jednorazowe długość hasła musi być przynajmniej tak samo długa jak długość szyfrowanego tekstu Przy krótkich tekstach nawet sprawdzenie wszystkich możliwości nie da nam odpowiedzi, gdyż napastnik otrzyma wiele poprawnych słów i nie będzie w stanie wybrać z nich słowa właściwego (bezpieczeństwo semantyczne). Złamanie choćby jednego z tych warunków powoduje, że otrzymany szyfrogram może być już łatwy do odszyfrowania. Jeżeli chodzi o 2 i 3 warunek to są one stosunkowo proste do spełnienia, chociaż trudno wyobrazić sobie przekazywanie nowego hasła dla każdej wiadomości. Krzysztof Maćkowiak 9

Największym problemem jest wygenerowanie losowego hasła. Wiele metod, które mogą wydawać się losowe (stukanie w klawiaturę, ciąg wyliczany na podstawie czasu czy stanów procesora nie jest do końca wartością losową). Istnieją jednak algorytmy generujące ciągi pseudolosowe. Ciągi pseudolosowe są to ciągi generowane na podstawie losowego zarodka, korzystające z algorytmów deterministycznych. Powstający ciąg ma cechy ciągu losowego. Przykładowym algorytmem generującym ciągi pseudolosowe jest algorytm BBS. Poziom bezpieczeństwa: Udowodniono bezwarunkowy poziom bezpieczeństwa Metody kryptoanalizy: brak Krzysztof Maćkowiak 10