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



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

Programowalne układy logiczne Wydziałowy Zakład Nanometrologii SEMESTR LETNI

INSTRUKCJA INSTALACJI I OBSŁUGI GPG4Win

Bezpieczeństwo informacji oparte o kryptografię kwantową

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

EGZAMIN MATURALNY Z INFORMATYKI 11 MAJA 2018 POZIOM PODSTAWOWY. Godzina rozpoczęcia: 14:00 CZĘŚĆ I WYBRANE: Czas pracy: 75 minut

Instrukcja obsługi Konfigurator MLAN-1000

a) Zapisz wynik działania powyższego algorytmu dla słów ARKA i MOTOR...

Instalacja i opis podstawowych funkcji programu Dev-C++

Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS cz. 1

Poradnik instalacyjny sterownika CDC-ACM Dla systemów Windows

Instrukcja Szyfrowania / Deszyfracji plików programem 7-zip. v. 1.2

Instrukcja instalacji nos niko w USB w bankowos ci Alior Banku

Instrukcja użytkownika aplikacji npodpis r.

Laboratorium Elektrycznych Systemów Inteligentnych

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

Informatyka Arkusz kalkulacyjny Excel 2010 dla WINDOWS cz. 1

Instalacja Czytnika Kart w systemie Windows 7

Programowanie w języku Python. Grażyna Koba

Podstawy programowania w środowisku Step 7

KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED

Certyfikat Certum Basic ID. Instrukcja dla użytkowników Windows Vista. wersja 1.3 UNIZETO TECHNOLOGIES SA

Instrukcja dla użytkowników Windows Vista Certyfikat Certum Basic ID

Notepad++ / PuTTY. Interaktywne środowisko programowania w języku ForthLogic. Wersja dokumentu P.1. Wersja dokumentu NP1.

THOMSON SpeedTouch 706 WL

SecureFile. Podręcznik użytkownika

Instalacja i obsługa aplikacji MAC Diagnoza EW

EGZAMIN MATURALNY Z INFORMATYKI MAJ 2010 POZIOM PODSTAWOWY CZĘŚĆ I WYBRANE: Czas pracy: 75 minut. Liczba punktów do uzyskania: 20 WPISUJE ZDAJĄCY

Laboratorium nr 5 Podpis elektroniczny i certyfikaty

Lista zadań nr 1. Zagadnienia stosowanie sieci Petriego (ang. Petri net) jako narzędzia do modelowania algorytmów sterowania procesami

WTYCZKA FARA-TCM Dane techniczne dla twórców zewnętrznych aplikacji do obsługi map cmentarza

Jak przesłać mapę do urządzenia lub na kartę pamięci?

EXCEL Prowadzący: dr hab. inż. Marek Jaszczur Poziom: początkujący

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

SUBIEKT GT IMPORT XLS Dokumenty

Aby uruchomić Multibooka, należy podłączyć nośnik USB do gniazda USB w komputerze, na którym program ma być używany.

Orientacja pojedynczego zdjęcia

KONSTRUKCJA TRÓJKĄTA 1 KONSTRUKCJA TRÓJKĄTA 2 KONSTRUKCJA CZWOROKĄTA KONSTRUKCJA OKRĘGU KONSTRUKCJA STYCZNYCH

Instrukcja logowania do Portalu Rachunkowość

Aplikacja do podpisu cyfrowego npodpis

cmt + CODESYS, oraz zdalne wejścia/ wyjścia

Instrukcja instalacji oraz obsługi czytników i kart procesorowych dla Klientów SBI Banku BPH S.A.

Podręcznik użytkownika

Instrukcja użytkownika aplikacji npodpis r.

Instrukcja aktualizacji oprogramowania. Wersja dokumentu: 01i00 Aktualizacja:

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 8 (3h) Implementacja pamięci ROM w FPGA

Instalacja i obsługa aplikacji MAC Diagnoza EP w celu wykonania Arkusza obserwacji

Laboratorium przedmiotu Technika Cyfrowa

Lista zadań nr 5. Ścieżka projektowa Realizacja każdego z zadań odbywać się będzie zgodnie z poniższą ścieżką projektową (rys.

Nowe narzędzia ICT. Do czego więc można wykorzystać ową kryptografię?

R-LINK Evolution Instrukcja instalacji oprogramowania

Zarys algorytmów kryptograficznych

Wprowadzenie do programowania

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

Politechnika Poznańska Wydział Budowy Maszyn i Zarządzania

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Laboratorium A: Zarządzanie drukowaniem/klucz do odpowiedzi

Ministerstwo Finansów

LABORATORIUM UKŁADÓW PROGRAMOWALNYCH Wydziałowy Zakład Metrologii Mikro- i Nanostruktur SEMESTR LETNI 2016

UONET+ - moduł Sekretariat

W dowolnej przeglądarce internetowej należy wpisać poniższy adres:

Płace Optivum. Konfiguracja skrzynki nadawczej, z której wysyłane będą paski do pracowników

Instrukcja wczytywania i przekazywania zbiorów centralnych w Centralnej Aplikacji Statystycznej (CAS) przez użytkowników podobszaru PS

Bezpieczeństwo informacji oparte o kryptografię kwantową

Wygląd okna aplikacji Project Navigator.

USB Adapter. Szybki Start. Zawartość zestawu. Karta sieciowa USB Wireless-G Przedłużacz USB CD-Rom instalacyjny Instrukcja użytkownika na CD-Rom

INSTALACJA LICENCJI SIECIOWEJ NET HASP Wersja 8.32

Instrukcja instalacji systemu. CardioScan 10, 11 i 12

Przewodnik instalacji i rejestracji ASN RadioOS

Rejestratory Sił, Naprężeń.

1. MOZILLA THUNDERBIRD (31.3.0) 2 2. WINDOWS LIVE MAIL THE BAT HOME EDITION ( BIT) 30

INSTRUKCJA UŻYTKOWNIKA PROGRAMU VAT2011 VER 1.0

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 1 (3h) Wprowadzenie do systemu Quartus II

PROTOTYPOWANIE UKŁADÓW ELEKTRONICZNYCH Programowalne układy logiczne FPGA Maciej Rosół, Katedra Automatyki AGH,

EGZAMIN MATURALNY Z INFORMATYKI MAJ 2010 POZIOM ROZSZERZONY CZĘŚĆ I WYBRANE: Czas pracy: 90 minut. Liczba punktów do uzyskania: 20 WPISUJE ZDAJĄCY

Szyfrowanie wiadomości

Uzyskanie dostępu oraz instalacja oprogramowania STATISTICA dla pracowników oraz studentów Uniwersytetu Ekonomicznego w Poznaniu

Przewodnik instalacji i rejestracji ASN RadioOS

I2: J2ME programowanie w NetBeans IDE Wydział Transportu PW semestr /11

Instrukcja wymiany certyfikatów przeznaczonych do komunikacji aplikacji Komornik SQL z systemem ZUS

Bramki logiczne Instrukcja do ćwiczeń laboratoryjnych

Próbny sprawdzian szóstoklasisty z Nową Erą

Podstawy programowania w środowisku Totally Integration Automation Portal

Algorytmy podstawieniowe

Zadanie Wstaw wykres i dokonaj jego edycji dla poniższych danych. 8a 3,54 8b 5,25 8c 4,21 8d 4,85

Instrukcja użytkowa programu INTERNET LAB-BIT

TwinCAT 3 konfiguracja i uruchomienie programu w języku ST lokalnie

Instrukcja użytkownika istorage datashur Instrukcja użytkownika

Instrukcja instalacji programu serwisowego NTSN krok po kroku

1.Instalacja. Przechodzimy przez kolejne okna instalatora klikacjąć Dalej. wolek.zallegro.pl

Zdalny podgląd wizualizacji z panelu XV100 przez przeglądarkę internetową (WebServer)

Przed skonfigurowaniem tego ustawienia należy skonfigurować adres IP urządzenia.

SPIS TREŚCI: 1. INSTALACJA SYSTEMU SIMPLE.ERP LOGOWANIE DO SYSTEMU ZMIANA HASŁA PLANOWANIE INFORMACJE DODATKOWE...

Jak podłączyć i skonfigurować Phantoma z routerem Dialog?

Instrukcja instalacji programu. neofon lite BETA

LabVIEW PLATFORMA EDUKACYJNA Lekcja 5 LabVIEW i Arduino konfiguracja środowiska i pierwszy program

PROGRAMOWALNE STEROWNIKI LOGICZNE

Korzystanie z Certyfikatów CC Signet w programie MS Outlook 98

PRÓBNY EGZAMIN MATURALNY Z INFORMATYKI

Instalacja pakietu Office 365 ProPlus wersja stand-alone/offline

Transkrypt:

Laboratorium Szyfrowanie algorytmami Vernam a oraz Vigenere a z wykorzystaniem systemu zaimplementowanego w układzie programowalnym FPGA. 1. Zasada działania algorytmów Algorytm Vernam a wykorzystuje funkcję logiczna XOR przedstawioną w poniższej tabeli. p q p XOR q 0 0 0 0 1 1 1 0 1 1 1 0 Przykład szyfrowania wersja binarna: Kod do zaszyfrowania : 00110101 Klucz : 11010001 Zaszyfrowany kod : 11100110 Przykład szyfrowania wersja heksadecymalna:

Kod do zaszyfrowania : 35 Klucz Zaszyfrowany kod : D1 : E6 Każdy znak kodu do zaszyfrowania jest szyfrowany odpowiadającym mu znakiem klucza. W wypadku gdyby klucz był za krótki, wykorzystywany zostaje ponowie począwszy od pierwszego znaku. Deszyfracja polega na ponownym użyciu algorytmu. Zasada działania algorytmu Vigenere a jest oparta na tablicy zawierającej alfabet. Każdy znak tekstu zostaje przesunięty o znak z klucza. Pierwszy znak tekstu jawnego oraz pierwszy znak z klucza należy znaleźć w wierszu oraz kolumnie oznaczonych kolorem żółtym w tabeli na następnej stronie, nie ma znaczenia które z nich będzie pionowo czy poziomo, zaszyfrowany znak będzie na przecięciu. Przykład szyfrowania: Tekst do zaszyfrowania : bardzotajnytekst Klucz Zaszyfrowany tekst : tajne : uaaqdhtjwrrtnxwm

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 A 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 W przykładowym szyfrowaniu, klucz jest zbyt krótki aby zaszyfrować tekst. W takim wypadku przepisywany jest ponownie, tak samo jak w algorytmie Vernam a. Zobrazowanie szyfrowania znajduje się w tabeli na następnej stronie. Przyjęto poziomo tekst, a pionowo klucz. W przykładzie pokazano kodowanie pierwszych sześciu znaków z przykładowego szyfrowania.

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 A 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 Deszyfrowanie polega na operacji odwrotnej. Dla uproszczenia implementacji można wykorzystać inne rozwiązanie. Odwrócić klucz tzn. dla każdej litery klucza wykonać operację: Klucz2=(26-Klucz)mod 26.

Odwrócenie klucza z przykładowego szyfrowania: Klucz Klucz2 : tajne : harnw Zaszyfrowaną informacje należy zaszyfrować ponownie kluczem odwrotnym. Deszyfracja przykładu: Zaszyfrowany tekst Klucz2 Odszyfrowany tekst : uaaqdhtjwrrtnxwm : harnw : bardzotajnytekst Wersja algorytmu z autokluczem, polega to na szyfrowaniu kluczem tylko pierwszego znaku tekstu, a następne litery są pobierane z tekstu jawnego. Przykład szyfrowania: Tekst do zaszyfrowania : bardzotajnytekst Klucz Zaszyfrowany tekst : n : obrucnhtjwlrxocl Deszyfracja działa podobnie jak w klasycznym algorytmie, pierwszy znak zaszyfrowanego tekstu szyfrujemy odwróconym kluczem, pozostałe dopiero co zdeszyfrowanymi znakami po uprzednim odwróceniu.

2. Uruchomienie systemu Do przeprowadzenia ćwiczeń wykorzystywany jest system szyfrujący, zaimplementowany w układzie FPGA. Jest on napisany z wykorzystaniem języka opisu sprzętu Verilog. Niewątpliwą zaletą języka Verilog jest możliwość zrównoleglenia operacji. Przykładowo przypisanie wartości trzem zmiennym w językach klasycznych następuje zawsze sekwencyjne jak widać na pierwszym rysunku poniżej. Dzięki implementacji na macierzach bramek, które pracują równocześnie, w języku Verilog przypisania dodatkowo można wykonać równolegle. Równoległe przypisanie wartości przedstawiono na drugim rysunku. A<=0; B<=1; C<=2; A<=0; B<=1; C<=2;

System jest zbudowany z trzech modułów oraz pliku ucf. Główny moduł sterujący który zawiera w sobie algorytmy to SZYFRATOR. Moduł PS2 obsługuje Przyciski na klawiaturze, a moduł VGA ekran monitora przedstawia to schemat działania programu poniżej. Przyciski na klawiaturze PS2 VGA Ekran monitora Przełączniki SW0 SW2 SZYFRATOR UCF Diody LD0 LD7 Do uruchomienia systemu potrzebny jest układ programowalny firmy Xilinx Spartan 3E XC3S500E-5FG320, klawiatura, monitor oraz komputer z zainstalowanym programem Xilinx impact. Jak podłączyć komponenty przedstawia fotografia oraz schemat zamieszszcony na następnej stronie.

Monitor Komputer programujący Spartan 3E Klawiatura Zasilacz

Do uruchomienia układu Spartan służy switch zaznaczony kolorem czerwonym na zdjęciu poniżej. Do zaprogramowania układu służy program Xilinx impact. Należy postępować jak pokazano na kolejnych zdjęciach. Należy wybrać create new project, następnie pierwszą opcję i Finish.

Program automatyczne wykryje podłączone urządzenie. Jeśli wszystko jest poprawnie podłączone, zobaczymy okno jakie widać na rysunku poniżej. Do pierwszego urządzenia xc3s500e należy wybrać plik szyfrator.bit, w dwóch następnych cancel, po czym potwierdzić wybór. Następnie należy kliknąć prawym przyciskiem myszy na urządzeniu xc3s500e i wybierać opcję Program.

Jeżeli programowanie zakończyło się sukcesem, wyświetli się napis Program Succeeded.

Po tym etapie można zacząć prace z systemem. Jeżeli kolor tekstu na monitorze jest inny niż biały, należy go zmienić, służą do tego switche SW0, SW1, SW2, oznaczone na zdjęciu układu FPGA kolorem zielonym. W pozycji 1, 1, 1, tekst będzie biały. Należy postępować zgodnie z instrukcją napisaną na monitorze. Długość tekstu jest ograniczona do 26 znaków. W razie błędu jest możliwość użycia przycisku Backspace. 3. Zadania do zrealizowania 1. Wykorzystując tylko długopis oraz kartkę papieru zaszyfruj algorytmem Vernam a liczby: 00110101, 10110111, ba, 6f, a88 Jako klucz przyjmij liczbę 11100011. Liczby heksadecymalne zamień na binarne, każda liczba heksadecymalna odpowiada czterem bitom (0 0000, 1 0001 f - 1111). 2. Uruchom system i zaszyfruj wyniki z zad 1. Ponowne kodowanie odszyfruje tekst, weryfikując wykonanie zad 1. 3. Wykorzystując tylko długopis oraz kartkę papieru zaszyfruj algorytmem Vigenere a swoje nazwisko, jako klucz przyjmij swoje imię. 4. Wykonaj to samo działanie co w zad 2, tym razem użyj wersji algorytmu z autokluczem. Kluczem niech będzie pierwsza litera imienia. 5. Za pomocą systemu sprawdź wyniki z zadań 2, 3. 6. Odszyfruj tekst: dowvivljoseacbvbuv wykorzystując system. Został zaszyfrowany algorytmem Vigenere a, pierwotny klucz to: kryptografia. Pamiętaj że do odszyfrowania należy odwrócić klucz.