Implementacja algorytmu DES

Wielkość: px
Rozpocząć pokaz od strony:

Download "Implementacja algorytmu DES"

Transkrypt

1 mplementacja algorytmu DES Mariusz Rawski Z Mariusz Rawski 1

2 Algorytm DES DES (Data Encryption Standard) - jest szyfrem blokowym, o algorytmie ogólnie znanym. Dane są szyfrowane blokami o długości 64 bitów (odpowiada to 8 literom ASC, każda zaopatrzona w bit parzystości). Blok 64 bitów tekstu jawnego podawany jest jako dane wejściowe algorytmu, wynikiem działania algorytmu jest blok 64 bitów szyfrogramu. Zarówno podczas szyfrowania, jak i deszyfrowania wykorzystuje się ten sam algorytm (za wyjątkiem różnic w operowaniu kluczem). Klucz ma długość 56 bitów. Zwykle klucz jest liczbą zapisaną za pomocą 64 bitów, przy czym każdy co ósmy bit jest bitem parzystości, który jest pomijany (tak jest, gdy klucz jest ciągiem ośmiu znaków alfabetu ASC). Kluczem może być dowolna liczba o długości 56 bitów, która może być zmieniona w dowolnej chwili. Z Mariusz Rawski 2

3 Algorytm DES Działanie algorytmu opiera się na kombinacji dwóch podstawowych technik szyfrowania: mieszania i rozpraszania. odstawowy blok, z którego jest zbudowany DES stanowi pojedynczą kombinację tych technik (podstawienie, za którym następuje permutacja) działającą z udziałem klucza. Ciąg tych działań nazywany jest rundą. Szyfrowanie i deszyfrowanie za wykorzystaniem algorytmu DES składa się z 16 rund. trakcie każdej rundy dokonywane są te same obliczenia na wynikach z poprzedniej rundy i specjalnym podkluczu K i generowanym z 64-bitowego klucza. Dodatkowo przed pierwszą i po ostatniej rundzie bity są permutowane w ustalony sposób. Algorytm wykorzystuje tylko standardową arytmetykę i operacje logiczne na liczbach o długości co najwyżej 64 bitów. Z Mariusz Rawski 3

4 Algorytm DES o permutacji początkowej blok wejściowy (64-bitowy blok tekstu jawnego) jest dzielony na lewą i prawą połowę, o długości 32 bitów każda. Następnie wykonywanych jest 16 rund jednakowych operacji, nazywanych funkcjami f, w czasie których dane są łączone z kluczem. o szesnastym cyklu lewa i prawa połowa są łączone i końcowa permutacja -1 będąca odwrotnością permutacji początkowej kończy przebieg algorytmu. Z Mariusz Rawski 4

5 każdym cyklu bity klucza są przesuwane, a następnie jest wybieranych 48 bitów z 56 bitów klucza. Algorytm DES rawa połowa bloku danych jest rozszerzana do 48 bitów za pomocą permutacji z rozszerzeniem, łączona za pomocą bitowej sumy modulo 2 z 48 bitami przesuniętego i poddanego permutacji klucza. Z Mariusz Rawski 5

6 Algorytm DES Następnie jest dokonywane podstawienie bloku 32 nowych bitów za pomocą algorytmu podstawiania, a potem jeszcze raz jest dokonywana permutacja. e cztery operacje tworzą funkcję f. Ciąg wyjściowy funkcji f jest dalej łączony z lewą połową za pomocą bitowej sumy modulo 2. ynikiem tych operacji jest nowa prawa połowa bloku; stara prawa połowa staje się nową lewą połową. Operacje te są powtarzane 16 razy, tworząc 16 rund algorytmu DES. Z Mariusz Rawski 6

7 Funkcja f ermutacja z rozszerzeniem Suma modulo 2 z podkluczem Skrzynki podstawieniowe z 48 bitów na 32 bity ermutacja wyjść skrzynek podstwieniowych Z Mariusz Rawski 7

8 Schemat blokowy algorytmu Sterowanie Runda R -1 Generacja podkluczy Z Mariusz Rawski 8

9 Schemat blokowy rundy algorytmu Runda R E S 1 S 2 S 3 K S 4 S 5 S 6 S 7 L S 8 Z Mariusz Rawski 9

10 Schemat blokowy algorytmu Sterowanie Runda R -1 Generacja podkluczy Z Mariusz Rawski 10

11 ermutacja początkowa Dokonuje permutacji początkowej danych wejściowych składających się z 64 bitów wg podanej tabeli: Oznacza to przestawienie kolejnych bitów danych wejściowych np. na pozycji pierwszej umieszczamy bit 58, na drugiej bit 50, a na ostatniej bit 7. Odczytanie tabeli wierszami utworzy 64 bitowy ciąg poddany operacji transpozycji. Z Mariusz Rawski 11

12 ermutacja początkowa Zmiana domyślnej kolejności bitów ykorzystanie struktur języka AHDL do warunkowej generacji kodu ułatwia opis modułu Z Mariusz Rawski 12

13 ermutacja początkowa ermutacja inicjujaca ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized iniperm EF10K10QC % % User ins: Sporo, ale to tylko zamiana bitów. końcowym układzie zostanie zrealizowana przez odpowiednie przestawianie połączeń między wejściem a następnym blokiem bez angażowania komórek Z Mariusz Rawski 13

14 Schemat blokowy algorytmu Sterowanie Runda R -1 Generacja podkluczy Z Mariusz Rawski 14

15 Multiplekser wejściowy ybiera czy do dalszego przetwarzania pobierane są dane wejściowe, czy dane z poprzedniej rundy Z Mariusz Rawski 15

16 Multiplekser wejściowy Multiplekser wejsciowy rundy ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized inmux EF10K30BC % 64 3 % User ins: akiego multipleksera nie da się zrobić lepiej, być może ta logika zostanie zintegrowana z inna nie wiążąc dodatkowych komórek. Z Mariusz Rawski 16

17 Schemat blokowy algorytmu Sterowanie Runda R -1 Generacja podkluczy Z Mariusz Rawski 17

18 Rejestr Zatrzaskuje dane obliczone w kolejnej rundzie Z Mariusz Rawski 18

19 Rejestr Rejestr 64-bitowy ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized register64 EF10K10QC % % User ins: akiego rejestru także nie da się zrobić lepiej, ale z tego względu, że są to jedynie przerzutniki jest nadzieja, że zostaną one połączone z pozostałą logika bez angażowania dodatkowych zasobów Z Mariusz Rawski 19

20 Schemat blokowy algorytmu Sterowanie Runda R -1 Generacja podkluczy Z Mariusz Rawski 20

21 ermutacja odwrotna -1 Na wejście tego bloku podane są dane otrzymane po zakończeniu 16 rundy kodowania Otrzymane w ten dane stanowią zaszyfrowany ciągiem danych wejściowych. Z Mariusz Rawski 21

22 ermutacja odwrotna ykorzystanie struktur języka AHDL do warunkowej generacji kodu ułatwia opis modułu Z Mariusz Rawski 22

23 ermutacja odwrotna ermutacja odwrotna ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized invperm EF10K10QC % % User ins: Sporo, ale podobnie jak w przypadku permutacji początkowej to tylko zamiana bitów. końcowym układzie zostanie zrealizowana przez odpowiednie przestawianie połączeń między poprzednim blokiem a wyjściem bez angażowania komórek Z Mariusz Rawski 23

24 Schemat blokowy rundy algorytmu Runda R E S 1 S 2 S 3 K S 4 S 5 S 6 S 7 L S 8 Z Mariusz Rawski 24

25 ermutacja rozszerzająca Dokonuje permutacji rozszerzonej 32 bitowej prawej połowy, aby można było wykonać operację xor z 48 bitowym podkluczem. olega to na powieleniu niektórych bitów wejściowych na dwa wyjścia wg następującej zasady: bitowe wyjście jest dzielone na 8 ciągów o długości 6 bitów, które posłużą do adresowania 8 S-boksów. Z Mariusz Rawski 25

26 ermutacja rozszerzająca ermutacja rozszerzająca Operacja XOR z podkluczem Z Mariusz Rawski 26

27 ermutacja rozszerzająca Dane wejściowe do S-boksów ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized sboxin_m EF10K10QC % 48 8 % User ins: u najprawdopodobniej zostanie zużyte 48 komórek, gdyż permutacja to zwykłe przestawienie bitów, ale operacja xor będzie musiała być zrealizowana z wykorzystaniem komórek logicznych Z Mariusz Rawski 27

28 Schemat blokowy rundy algorytmu Runda R E S 1 S 2 S 3 K S 4 S 5 S 6 S 7 L S 8 Z Mariusz Rawski 28

29 Skrzynki podstawieniowe Każda ze skrzynek S-boks przypisuje jednej z 64 6 bitowych wartości wejściowych liczbę z zakresu 0..15, a więc 4 bitową. Dla każdego S-boksu 6 bitów wejściowych określa jednoznacznie 4 bitową wartość. Z ośmiu takich wartości kolejno jest tworzony 32 bitowy ciąg, który jest przesyłany do bloku p gdzie odbywa się jego permutacja. Z 6 bitowego ciągu, bity 1 i 6 określają numer wiersza, natomiast bity od 2 do 5 wyznaczają numer kolumny. Binarna reprezentacja liczby pod wskazanym miejscem jest przekazywana na wyjście danego S-boksu. S Z Mariusz Rawski 29

30 Skrzynki podstawieniowe Bit 1 i 6 określają wiersz pozostałe kolumny S Z Mariusz Rawski 30

31 Skrzynki podstawieniowe S-box S1 ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized s1 EF10K10LC % 55 9 % User ins: Jeden S-box zajmuje aż tyle komórek wprowadza też duże opóźnienie. Z Mariusz Rawski 31

32 Skrzynki podstawieniowe S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 8 Liczba komórek Max. opóźnienie 28,1 31,6 33,5 34,0 28,4 30,4 34,3 31,4 Razem 585 komórek z maksymalnym opóźnieniem 34,3 ns. Z o wszystko w jednej rundzie algorytmu a rund jest 16. ybór dotyczący budowy sekwencyjnego algorytmu DES był słuszny. rzy realizacji kombinacyjnej same skrzynki zajęły by 16 x 585 = 9360 komórek logicznych Mariusz Rawski 32

33 ermutacja R E Runda S 1 S 2 S 3 K S 4 S 5 S 6 S 7 L S 8 Z Mariusz Rawski 33

34 ermutacja Z Dokonuje permutacji na kolejno zestawionych wyjściach z S-boksów wg następującego schematu: ynik permutacji jest sumowany bitowo modulo 2 z lewą połową początkowego bloku 64-bitowego. Następnie lewa i prawa połowa są zamieniane miejscami i zaczyna się kolejny cykl. o ostatniej iteracji prawa i lewa połowa słowa wynikowego nie są zamieniane miejscami, lecz zamiast tego na bloku bitów powstałych z połączenia R16L16 jest wykonywana permutacja końcowa -1 (stąd do deszyfrowania stosuje się też ten algorytm). Mariusz Rawski 34

35 ermutacja Z Mariusz Rawski 35

36 ermutacja ermutacja ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilezed pperm EF10K10C % 32 5 % User ins: odobna sytuacja jak z innymi blokami permutującymi Z Mariusz Rawski 36

37 Funkcja f ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized ffunction EF10K20RC % % User ins: Z Mariusz Rawski 37

38 Runda ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized desround EF10K20RC % % User ins: Z Mariusz Rawski 38

39 Ścieżka przepływu danych Z Mariusz Rawski 39

40 Ścieżka przepływu danych ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized datapath EF10K20RC % % User ins: Runda wymagała 710 komórek dodanie permutacji wejściowej, wyjściowej, multipleksera i rejestru nie zwiększyło tej liczby. Jest to zgodne z naszymi przypuszczeniami. Oszacowanie szybkości działania jednej rundy jest obiecujące. Z Mariusz Rawski 40

41 Algorytm DES Z Mariusz Rawski 41

42 Algorytm DES ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized des EF10K20RC % % User ins: Runda wymagała 710 komórek. raz z generacją klucza i sterowaniem dało to w sumie 1050 komórek jest to 91 % zasobów układu FLEX10K20 nie ma co nawet myśleć o realizacji kombinacyjnej bez zmiany układu programowalnego na znacznie większy Oszacowanie maksymalnej szybkości taktowania układu dało w rezultacie 15 MHz. Jeden blok 64 bitowy przetwarzany jest w 17 taktach zegara, wiec przepustowość układu wynosi: 15 * 10 6 /17 * Mbitów/s i jest dość imponująca. Z Mariusz Rawski 42

43 Sterowanie Z Mariusz Rawski 43

44 Algorytm DES jak przyspieszyć Co zrobić by układ działał szybciej ykorzystać opcje syntezy logicznej systemu CAD do optymalizacji szybkości działania Z Mariusz Rawski 44

45 Algorytm DES trochę szybszy ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized des EF10K30RC % % User ins: ymaga to wykorzystania 1456 komórek co stanowi 84 % zasobów układu FLEX10K30 oznacza to zmianę struktury programowalnej na większą ykorzystanie opcji syntezy logicznej pozwoliło zwiększyć maksymalną szybkości taktowania układu do 16,5 MHz. iec przepustowość układu wynosi: 16,5 * 10 6 /17 * Mbitów/s Z Mariusz Rawski 45

46 Algorytm DES jak przyspieszyć Czy to jedyny sposób? Można wykorzystać inne narzędzia do syntezy logicznej, albo mechanizmy potokowości Z Mariusz Rawski 46

47 Dekompozycja S-boxów Każda ze skrzynek S-boks jest funkcją kombinacyjną Można ją więc zdekomponować i wykorzystać sieć bloków po dekompozycji do realizacji tych funkcji Z Mariusz Rawski 47

48 Skrzynki podstawieniowe Decomposed project: S1 ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized s1dek EF10K10LC % 25 4 % User ins: ierwszy S-box zajmuje teraz 25 zamiast 55 ( dwukrotnie mniej!!!) wprowadza też mniejsze opóźnienie Zapowiada się ciekawie Z Mariusz Rawski 48

49 Skrzynki podstawieniowe S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 8 Liczba komórek Max. opóźnienie 28,1 31,6 33,5 34,0 28,4 30,4 34,3 31,4 Liczba komórek 25 o dekompozycji Max. opóźnienie 19,5 17,2 16,7 19,0 19,0 19,4 17,7 17,6 Z Razem 184 komórki w porównaniu do 585 komórek w realizacji wcześniejszej (ponad trzykrotnie mniej) z maksymalnym opóźnieniem 19,5 ns w porównaniu do 34,3 ns. rzy realizacji kombinacyjnej skrzynki zajęłyby teraz 16 x 184 = 2944 komórki logiczne teraz można o tym pomyśleć Mariusz Rawski 49

50 Funkcja f ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized ffunction EF10K10QC % % User ins: Z Mariusz Rawski 50

51 Algorytm DES na nowo ** DEVCE SUMMARY ** Chip/ nput Output Bidir Memory Memory LCs OF Device ins ins ins Bits % Utilized LCs % Utilized des EF10K20RC % % User ins: Układ prawie dwukrotnie mniejszy w sumie 579 komórek jest to zaledwie 50 % zasobów układu FLEX10K20 można więc myśleć o stosowaniu dodatkowych metod przyspieszających działanie układu np.. potokowość Oszacowanie maksymalnej szybkości taktowania układu dało w rezultacie 25,6 MHz. iec przepustowość układu wynosi: 25,6 * 10 6 /17 * Mbitów/s i jest o wiele większa niż wcześniej Z Mariusz Rawski 51

52 Koniec projektu Z Mariusz Rawski 52

Projektowanie złożonych układów cyfrowych

Projektowanie złożonych układów cyfrowych rojektowanie złożonych układów cyfrowych Mariusz Rawski rawski@tele.pw.edu.pl www.zpt.tele.pw.edu.pl/~rawski/ Mariusz Rawski 1 Zamek elektroniczny: Elektroniczny zamek kod 4 cyfrowy kod wprowadzony z klawiatury

Bardziej szczegółowo

2 Kryptografia: algorytmy symetryczne

2 Kryptografia: algorytmy symetryczne 1 Kryptografia: wstęp Wyróżniamy algorytmy: Kodowanie i kompresja Streszczenie Wieczorowe Studia Licencjackie Wykład 14, 12.06.2007 symetryczne: ten sam klucz jest stosowany do szyfrowania i deszyfrowania;

Bardziej szczegółowo

System cyfrowy. Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące.

System cyfrowy. Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące. System cyfrowy Sygnały sterujące Dane wejściowe Układ sterujący (kontroler) Układ operacyjny (Datapath) Mikrooperacje wywoływane przez sygnały sterujące Stan części operacyjnej Dane wyjściowe Z System

Bardziej szczegółowo

1.1. Standard szyfrowania DES

1.1. Standard szyfrowania DES 1.1. Standard szyrowania DES Powstał w latach siedemdziesiątych i został przyjęty jako standard szyrowania przez Amerykański Narodowy Instytut Standaryzacji (ang. American National Standards Institute

Bardziej szczegółowo

1. Maszyny rotorowe Enigma

1. Maszyny rotorowe Enigma Połączenie podstawowych metod szyfrowania, czyli pojedynczych podstawień lub przestawień, daje szyfr złoŝony nazywany szyfrem kaskadowym lub produktowym (ang. product cipher). Szyfry takie są połączeniem

Bardziej szczegółowo

Szyfry kaskadowe. permutacyjnej (SPP).

Szyfry kaskadowe. permutacyjnej (SPP). Szyfry kaskadowe Szyfrem kaskadowym nazywamy szyfr, który jest złożeniem funkcji szyfrujących. W stosowanych w praktyce szyfrach kaskadowych jako funkcje składowe najczęściej stosowane są podstawienia

Bardziej szczegółowo

OCHRONA INFORMACJI W SYSTEMACH I SIECIACH KOMPUTEROWYCH SYMETRYCZNE SZYFRY BLOKOWE

OCHRONA INFORMACJI W SYSTEMACH I SIECIACH KOMPUTEROWYCH SYMETRYCZNE SZYFRY BLOKOWE OCHRONA INFORMACJI W SYSTEMACH I SIECIACH KOMPUTEROWYCH SYMETRYCZNE SZYFRY BLOKOWE 1 Tryby pracy szyfrów blokowych Rzadko zdarza się, by tekst jawny zawierał tylko 64 bity, czyli 8 znaków kodu ASCII. Zwykle

Bardziej szczegółowo

Architektury akceleratorów kryptograficznych opartych o układy programowalne. Marcin Rogawski

Architektury akceleratorów kryptograficznych opartych o układy programowalne. Marcin Rogawski Architektury akceleratorów kryptograficznych opartych o układy programowalne. Marcin Rogawski rogawskim@prokom.pl Plan referatu: Budowa akceleratora kryptograficznego; Struktura programowalna element fizyczny;

Bardziej szczegółowo

Szyfry kaskadowe. Szyfry kaskadowe

Szyfry kaskadowe. Szyfry kaskadowe Szyfry kaskadowe Szyfrem kaskadowym nazywamy szyfr, który jest złożeniem funkcji szyfrujących. W stosowanych w praktyce szyfrach kaskadowych jako funkcje składowe najczęściej stosowane są podstawienia

Bardziej szczegółowo

Implementacja algorytmu szyfrującego

Implementacja algorytmu szyfrującego Warszawa 25.01.2008 Piotr Bratkowski 4T2 Przemysław Tytro 4T2 Dokumentacja projektu Układy Cyfrowe Implementacja algorytmu szyfrującego serpent w układzie FPGA 1. Cele projektu Celem projektu jest implementacja

Bardziej szczegółowo

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.

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. 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. Schemat Hornera. Wyjaśnienie: Zadanie 1. Pozycyjne reprezentacje

Bardziej szczegółowo

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

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś  Wykład 8 Kryptografia z elementami kryptografii kwantowej Ryszard Tanaś http://zon8.physd.amu.edu.pl/~tanas Wykład 8 Spis treści 13 Szyfrowanie strumieniowe i generatory ciągów pseudolosowych 3 13.1 Synchroniczne

Bardziej szczegółowo

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

Bezpieczeństwo systemów komputerowych. Metody łamania szyfrów. Kryptoanaliza. Badane własności. Cel. Kryptoanaliza - szyfry przestawieniowe. Bezpieczeństwo systemów komputerowych Metody łamania szyfrów Łamanie z szyfrogramem Łamanie ze znanym tekstem jawnym Łamanie z wybranym tekstem jawnym Łamanie z adaptacyjnie wybranym tekstem jawnym Łamanie

Bardziej szczegółowo

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

Bezpieczeństwo systemów komputerowych. Kryptoanaliza. Metody łamania szyfrów. Cel BSK_2003. Copyright by K.Trybicka-Francik 1 Bezpieczeństwo systemów komputerowych mgr Katarzyna Trybicka-Francik kasiat@zeus.polsl.gliwice.pl pok. 503 Metody łamania szyfrów Łamanie z szyfrogramem Łamanie ze znanym tekstem jawnym Łamanie z wybranym

Bardziej szczegółowo

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

Bezpieczeństwo systemów komputerowych. Algorytmy kryptograficzne (1) Algorytmy kryptograficzne. Algorytmy kryptograficzne BSK_2003 Bezpieczeństwo systemów komputerowych Algorytmy kryptograficzne (1) mgr Katarzyna Trybicka-Francik kasiat@zeus.polsl.gliwice.pl pok. 503 Algorytmy kryptograficzne Przestawieniowe zmieniają porządek znaków

Bardziej szczegółowo

Projektowanie układów kryptograficznych Mariusz Rawski rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/

Projektowanie układów kryptograficznych Mariusz Rawski rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/ CAD Projektowanie układów kryptograficznych rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/ Kryptografia Kryptografia to dziedzina nauki, zajmująca się przekształcaniem informacji zwanej tekstem

Bardziej szczegółowo

PAMIĘĆ RAM. Rysunek 1. Blokowy schemat pamięci

PAMIĘĆ RAM. Rysunek 1. Blokowy schemat pamięci PAMIĘĆ RAM Pamięć służy do przechowania bitów. Do pamięci musi istnieć możliwość wpisania i odczytania danych. Bity, które są przechowywane pamięci pogrupowane są na komórki, z których każda przechowuje

Bardziej szczegółowo

KRYPTOANALIZA. Opracowanie wewnętrzne Instytutu Informatyki Gliwice, 1999

KRYPTOANALIZA. Opracowanie wewnętrzne Instytutu Informatyki Gliwice, 1999 K. TRYBICKA-FRANCIK KRYPTOANALIZA Opracowanie wewnętrzne Instytutu Informatyki Gliwice, 1999 Kryptoanaliza Kryptoanaliza jest dziedziną wiedzy i badań zajmującą się metodami przełamywania szyfrów. Szyfr

Bardziej szczegółowo

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika: PRZYPOMNIJ SOBIE! Matematyka: Dodawanie i odejmowanie "pod kreską". Elektronika: Sygnały cyfrowe. Zasadę pracy tranzystorów bipolarnych i unipolarnych. 12. Wprowadzenie 12.1. Sygnały techniki cyfrowej

Bardziej szczegółowo

1.1. Pozycyjne systemy liczbowe

1.1. Pozycyjne systemy liczbowe 1.1. Pozycyjne systemy liczbowe Systemami liczenia nazywa się sposób tworzenia liczb ze znaków cyfrowych oraz zbiór reguł umożliwiających wykonywanie operacji arytmetycznych na liczbach. Dla dowolnego

Bardziej szczegółowo

Bramki logiczne Podstawowe składniki wszystkich układów logicznych

Bramki logiczne Podstawowe składniki wszystkich układów logicznych Układy logiczne Bramki logiczne A B A B AND NAND A B A B OR NOR A NOT A B A B XOR NXOR A NOT A B AND NAND A B OR NOR A B XOR NXOR Podstawowe składniki wszystkich układów logicznych 2 Podstawowe tożsamości

Bardziej szczegółowo

PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES. Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES. Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Wprowadzenie Problemy bezpieczeństwa transmisji Rozwiązania stosowane dla

Bardziej szczegółowo

Tranzystor JFET i MOSFET zas. działania

Tranzystor JFET i MOSFET zas. działania Tranzystor JFET i MOSFET zas. działania brak kanału v GS =v t (cutoff ) kanał otwarty brak kanału kanał otwarty kanał zamknięty w.2, p. kanał zamknięty Co było na ostatnim wykładzie? Układy cyfrowe Najczęściej

Bardziej szczegółowo

xx + x = 1, to y = Jeśli x = 0, to y = 0 Przykładowy układ Funkcja przykładowego układu Metody poszukiwania testów Porównanie tabel prawdy

xx + x = 1, to y = Jeśli x = 0, to y = 0 Przykładowy układ Funkcja przykładowego układu Metody poszukiwania testów Porównanie tabel prawdy Testowanie układów kombinacyjnych Przykładowy układ Wykrywanie błędów: 1. Sklejenie z 0 2. Sklejenie z 1 Testem danego uszkodzenia nazywa się takie wzbudzenie funkcji (wektor wejściowy), które daje błędną

Bardziej szczegółowo

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI Arytmetyka komputera Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka Opracował: Kamil Kowalski klasa III TI Spis treści 1. Jednostki informacyjne 2. Systemy liczbowe 2.1. System

Bardziej szczegółowo

Temat 7. Dekodery, enkodery

Temat 7. Dekodery, enkodery Temat 7. Dekodery, enkodery 1. Pojęcia: koder, dekoder, enkoder, konwerter kodu, transkoder, enkoder priorytetowy... Koderami (lub enkoderami) nazywamy układy realizujące proces zamiany informacji kodowanej

Bardziej szczegółowo

PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES. Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES. Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Wprowadzenie Problemy bezpieczeństwa transmisji Rozwiązania stosowane dla

Bardziej szczegółowo

Arytmetyka. Arytmetyka. Magdalena Lemańska. Magdalena Lemańska,

Arytmetyka. Arytmetyka. Magdalena Lemańska. Magdalena Lemańska, Arytmetyka Magdalena Lemańska System dziesiętny System dziesiętny Weźmy liczbę 178. Składa się ona z jednej setki, siedmiu dziesiątek i ośmiu jedności. System dziesiętny System dziesiętny Weźmy liczbę

Bardziej szczegółowo

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

Laboratorium. Szyfrowanie algorytmami Vernam a oraz Vigenere a z wykorzystaniem systemu zaimplementowanego w układzie 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ę

Bardziej szczegółowo

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

Zamiana porcji informacji w taki sposób, iż jest ona niemożliwa do odczytania dla osoby postronnej. Tak zmienione dane nazywamy zaszyfrowanymi. Spis treści: Czym jest szyfrowanie Po co nam szyfrowanie Szyfrowanie symetryczne Szyfrowanie asymetryczne Szyfrowanie DES Szyfrowanie 3DES Szyfrowanie IDEA Szyfrowanie RSA Podpis cyfrowy Szyfrowanie MD5

Bardziej szczegółowo

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

INŻYNIERIA BEZPIECZEŃSTWA LABORATORIUM NR 2 ALGORYTM XOR ŁAMANIE ALGORYTMU XOR INŻYNIERIA BEZPIECZEŃSTWA LABORATORIUM NR 2 ALGORYTM XOR ŁAMANIE ALGORYTMU XOR 1. Algorytm XOR Operacja XOR to inaczej alternatywa wykluczająca, oznaczona symbolem ^ w języku C i symbolem w matematyce.

Bardziej szczegółowo

Przykładowe pytania DSP 1

Przykładowe pytania DSP 1 Przykładowe pytania SP Przykładowe pytania Systemy liczbowe. Przedstawić liczby; -, - w kodzie binarnym i hexadecymalnym uzupełnionym do dwóch (liczba 6 bitowa).. odać dwie liczby binarne w kodzie U +..

Bardziej szczegółowo

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 = Systemy liczbowe Dla każdej liczby naturalnej x Î N oraz liczby naturalnej p >= 2 istnieją jednoznacznie wyznaczone: liczba n Î N oraz ciąg cyfr c 0, c 1,..., c n-1 (gdzie ck Î {0, 1,..., p - 1}) taki,

Bardziej szczegółowo

Struktura i działanie jednostki centralnej

Struktura i działanie jednostki centralnej Struktura i działanie jednostki centralnej ALU Jednostka sterująca Rejestry Zadania procesora: Pobieranie rozkazów; Interpretowanie rozkazów; Pobieranie danych Przetwarzanie danych Zapisywanie danych magistrala

Bardziej szczegółowo

Układy sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania).

Układy sekwencyjne. Podstawowe informacje o układach cyfrowych i przerzutnikach (rodzaje, sposoby wyzwalania). Ćw. 10 Układy sekwencyjne 1. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z sekwencyjnymi, cyfrowymi blokami funkcjonalnymi. W ćwiczeniu w oparciu o poznane przerzutniki zbudowane zostaną układy rejestrów

Bardziej szczegółowo

Szyfrowanie informacji

Szyfrowanie informacji Szyfrowanie informacji Szyfrowanie jest sposobem ochrony informacji przed zinterpretowaniem ich przez osoby niepowołane, lecz nie chroni przed ich odczytaniem lub skasowaniem. Informacje niezaszyfrowane

Bardziej szczegółowo

Zapis liczb binarnych ze znakiem

Zapis liczb binarnych ze znakiem Zapis liczb binarnych ze znakiem W tej prezentacji: Zapis Znak-Moduł (ZM) Zapis uzupełnień do 1 (U1) Zapis uzupełnień do 2 (U2) Zapis Znak-Moduł (ZM) Koncepcyjnie zapis znak - moduł (w skrócie ZM - ang.

Bardziej szczegółowo

Architektura systemów komputerowych. Poziom układów logicznych. Układy mnoŝące i dzielące

Architektura systemów komputerowych. Poziom układów logicznych. Układy mnoŝące i dzielące Architektura systemów komputerowych Poziom układów logicznych. Układy mnoŝące i dzielące Cezary Bolek Katedra Informatyki Plan wykładu Układy mnoŝące liczby całkowite MnoŜenie liczb bez znaku MnoŜarka

Bardziej szczegółowo

II klasa informatyka rozszerzona SZYFROWANIE INFORMACJI

II klasa informatyka rozszerzona SZYFROWANIE INFORMACJI II klasa informatyka rozszerzona SZYFROWANIE INFORMACJI STEGANOGRAFIA Steganografia jest nauką o komunikacji w taki sposób by obecność komunikatu nie mogła zostać wykryta. W odróżnieniu od kryptografii

Bardziej szczegółowo

Tab. 1 Tab. 2 t t+1 Q 2 Q 1 Q 0 Q 2 Q 1 Q 0

Tab. 1 Tab. 2 t t+1 Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 Synteza liczników synchronicznych Załóżmy, że chcemy zaprojektować licznik synchroniczny o następującej sekwencji: 0 1 2 3 6 5 4 [0 sekwencja jest powtarzana] Ponieważ licznik ma 7 stanów, więc do ich

Bardziej szczegółowo

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q LABORAORIUM PROCESORY SYGAŁOWE W AUOMAYCE PRZEMYSŁOWEJ Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q 1. Zasady arytmetyki stałoprzecinkowej. Kody stałopozycyjne mają ustalone

Bardziej szczegółowo

Wstęp do informatyki- wykład 1

Wstęp do informatyki- wykład 1 MATEMATYKA 1 Wstęp do informatyki- wykład 1 Systemy liczbowe Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy

Bardziej szczegółowo

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

Bezpieczeństwo danych i systemów informatycznych. Wykład 5 Bezpieczeństwo danych i systemów informatycznych Wykład 5 Kryptoanaliza Atak na tekst zaszyfrowany dostępny tylko szyfrogram Atak poprzez tekst częściowo znany istnieją słowa, których prawdopodobnie użyto

Bardziej szczegółowo

DOKUMENTACJA KOŃCOWA. Szyfr blokowy Blowfish. Prowadzący: mgr inż. T. Wojciechowski. Warszawa, 5 czerwca 2008

DOKUMENTACJA KOŃCOWA. Szyfr blokowy Blowfish. Prowadzący: mgr inż. T. Wojciechowski. Warszawa, 5 czerwca 2008 Warszawa, 5 czerwca 2008 Monika Rojek Michał Krotewicz Piotr Duda Jan Bystroń gr. 4T1 DOKUMENTACJA KOŃCOWA Szyfr blokowy Blowfish. Prowadzący: mgr inż. T. Wojciechowski 1. Opis algorytmu Blowfish to szyfr

Bardziej szczegółowo

Specyfika projektowania Mariusz Rawski

Specyfika projektowania Mariusz Rawski CAD Specyfika projektowania Mariusz Rawski rawski@tele.pw.edu.pl http://rawski.zpt.tele.pw.edu.pl/ System cyfrowy pierwsze skojarzenie Urządzenia wprowadzania danych: klawiatury czytniki urządzenia przetwarzania

Bardziej szczegółowo

Wykład 4 Temat: Algorytm symetryczny Twofish: cele projektowane, budowa bloków, opis algorytmu, wydajność algorytmu.

Wykład 4 Temat: Algorytm symetryczny Twofish: cele projektowane, budowa bloków, opis algorytmu, wydajność algorytmu. Wykład 4 Temat: Algorytm symetryczny Twofish: cele projektowane, budowa bloków, opis algorytmu, wydajność algorytmu. W roku 1972 Narodowe Biuro Standardów (obecnie Narodowy Instytut Standardów i Technologii

Bardziej szczegółowo

Plan wykładu. Architektura systemów komputerowych. MnoŜenie realizacja sprzętowa (wersja 1) Układy mnoŝące liczby całkowite.

Plan wykładu. Architektura systemów komputerowych. MnoŜenie realizacja sprzętowa (wersja 1) Układy mnoŝące liczby całkowite. Plan wykładu rchitektura systemów komputerowych Poziom układów logicznych. Układy mnoŝące i dzielące Cezary Bolek Katedra Informatyki Układy mnoŝące liczby całkowite MnoŜenie liczb bez znaku MnoŜarka sekwencyjna

Bardziej szczegółowo

Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki.

Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki. Literatura 1. D. Gajski, Principles of Digital Design, Prentice- Hall, 1997 2. C. Zieliński, Podstawy projektowania układów cyfrowych, PWN, Warszawa 2003 3. G. de Micheli, Synteza i optymalizacja układów

Bardziej szczegółowo

Podział sumatorów. Równoległe: Szeregowe (układy sekwencyjne) Z przeniesieniem szeregowym Z przeniesieniem równoległym. Zwykłe Akumulujące

Podział sumatorów. Równoległe: Szeregowe (układy sekwencyjne) Z przeniesieniem szeregowym Z przeniesieniem równoległym. Zwykłe Akumulujące Podział sumatorów Równoległe: Z przeniesieniem szeregowym Z przeniesieniem równoległym Szeregowe (układy sekwencyjne) Zwykłe Akumulujące 1 Sumator z przeniesieniami równoległymi G i - Warunek generacji

Bardziej szczegółowo

Automatyka. Treść wykładów: Multiplekser. Układ kombinacyjny. Demultiplekser. Koder

Automatyka. Treść wykładów: Multiplekser. Układ kombinacyjny. Demultiplekser. Koder Treść wykładów: utomatyka dr inż. Szymon Surma szymon.surma@polsl.pl http://zawt.polsl.pl/studia pok., tel. +48 6 46. Podstawy automatyki. Układy kombinacyjne,. Charakterystyka,. Multiplekser, demultiplekser,.

Bardziej szczegółowo

Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych.

Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych. Kod uzupełnień do dwóch jest najczęściej stosowanym systemem zapisu liczb ujemnych wśród systemów binarnych. Jeśli bit znaku przyjmie wartość 0 to liczba jest dodatnia lub posiada wartość 0. Jeśli bit

Bardziej szczegółowo

Systemy zapisu liczb.

Systemy zapisu liczb. Systemy zapisu liczb. Cele kształcenia: Zapoznanie z systemami zapisu liczb: dziesiętny, dwójkowy, ósemkowy, szesnastkowy. Zdobycie umiejętności wykonywania działań na liczbach w różnych systemach. Zagadnienia:

Bardziej szczegółowo

Architektura komputerów Wykład 2

Architektura komputerów Wykład 2 Architektura komputerów Wykład 2 Jan Kazimirski 1 Elementy techniki cyfrowej 2 Plan wykładu Algebra Boole'a Podstawowe układy cyfrowe bramki Układy kombinacyjne Układy sekwencyjne 3 Algebra Boole'a Stosowana

Bardziej szczegółowo

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych 1 Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych 1. Podstawowe operacje logiczne dla cyfr binarnych Jeśli cyfry 0 i 1 potraktujemy tak, jak wartości logiczne fałsz i prawda, to działanie

Bardziej szczegółowo

Podstawy Informatyki

Podstawy Informatyki Podstawy Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 3 Bożena Woźna-Szcześniak (AJD) Podstawy Informatyki Wykład 3 1 / 42 Reprezentacja liczb całkowitych

Bardziej szczegółowo

LEKCJA. TEMAT: Funktory logiczne.

LEKCJA. TEMAT: Funktory logiczne. TEMAT: Funktory logiczne. LEKCJA 1. Bramką logiczną (funktorem) nazywa się układ elektroniczny realizujący funkcje logiczne jednej lub wielu zmiennych. Sygnały wejściowe i wyjściowe bramki przyjmują wartość

Bardziej szczegółowo

Wstęp do Informatyki

Wstęp do Informatyki Wstęp do Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bożena Woźna-Szcześniak (AJD) Wstęp do Informatyki Wykład 4 1 / 1 DZIELENIE LICZB BINARNYCH Dzielenie

Bardziej szczegółowo

Algorytmy podstawieniowe

Algorytmy podstawieniowe 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

Bardziej szczegółowo

Authenticated Encryption

Authenticated Encryption Authenticated Inż. Kamil Zarychta Opiekun: dr Ryszard Kossowski 1 Plan prezentacji Wprowadzenie Wymagania Opis wybranych algorytmów Porównanie mechanizmów Implementacja systemu Plany na przyszłość 2 Plan

Bardziej szczegółowo

Kody splotowe. Zastosowanie

Kody splotowe. Zastosowanie Kody splotowe Zastosowanie Niekiedy potrzeba buforowania fragmentu wiadomości przed zakodowaniem, tak jak to ma miejsce w koderze blokowym, jest przeszkodą, gdyż dane do zakodowania napływają strumieniem.

Bardziej szczegółowo

Sterowniki Programowalne (SP)

Sterowniki Programowalne (SP) Sterowniki Programowalne (SP) Wybrane aspekty procesu tworzenia oprogramowania dla sterownika PLC Podstawy języka funkcjonalnych schematów blokowych (FBD) Politechnika Gdańska Wydział Elektrotechniki i

Bardziej szczegółowo

Sławomir Kulesza. Projektowanie automatów synchronicznych

Sławomir Kulesza. Projektowanie automatów synchronicznych Sławomir Kulesza Technika cyfrowa Projektowanie automatów synchronicznych Wykład dla studentów III roku Informatyki Wersja 2.0, 20/12/2012 Automaty skończone Automat Mealy'ego Funkcja wyjść: Yt = f(st,

Bardziej szczegółowo

Zarys algorytmów kryptograficznych

Zarys algorytmów kryptograficznych Zarys algorytmów kryptograficznych Laboratorium: Algorytmy i struktury danych Spis treści 1 Wstęp 1 2 Szyfry 2 2.1 Algorytmy i szyfry........................ 2 2.2 Prosty algorytm XOR......................

Bardziej szczegółowo

Układy arytmetyczne. Joanna Ledzińska III rok EiT AGH 2011

Układy arytmetyczne. Joanna Ledzińska III rok EiT AGH 2011 Układy arytmetyczne Joanna Ledzińska III rok EiT AGH 2011 Plan prezentacji Metody zapisu liczb ze znakiem Układy arytmetyczne: Układy dodające Półsumator Pełny sumator Półsubtraktor Pełny subtraktor Układy

Bardziej szczegółowo

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

0 --> 5, 1 --> 7, 2 --> 9, 3 -->1, 4 --> 3, 5 --> 5, 6 --> 7, 7 --> 9, 8 --> 1, 9 --> 3. (Aktualizacja z dnia 3 kwietnia 2013) MATEMATYKA DYSKRETNA - informatyka semestr 2 (lato 2012/2013) Zadania do omówienia na zajęciach w dniach 21 i 28 kwietnia 2013 ZESTAW NR 3/7 (przykłady zadań z rozwiązaniami)

Bardziej szczegółowo

CAST, 3DES, GOST, IDEA, RC2, RC4,

CAST, 3DES, GOST, IDEA, RC2, RC4, Wykład 5 Temat: Inne symetryczne algorytmy kryptograficzne: Blowfish, CAST, 3DES, GOST, IDEA, RC2, RC4, Rijndael (AES). 5.1. Blowfish Algorytm Blowfish (pol. rozdymka) został zaprojektowany by spełnić

Bardziej szczegółowo

Metody optymalizacji soft-procesorów NIOS

Metody optymalizacji soft-procesorów NIOS POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych Instytut Telekomunikacji Zakład Podstaw Telekomunikacji Kamil Krawczyk Metody optymalizacji soft-procesorów NIOS Warszawa, 27.01.2011

Bardziej szczegółowo

1. Operacje logiczne A B A OR B

1. Operacje logiczne A B A OR B 1. Operacje logiczne OR Operacje logiczne są operacjami działającymi na poszczególnych bitach, dzięki czemu można je całkowicie opisać przedstawiając jak oddziałują ze sobą dwa bity. Takie operacje logiczne

Bardziej szczegółowo

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0,

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0, 2 Arytmetyka Niech b = d r d r 1 d 1 d 0 będzie zapisem liczby w systemie dwójkowym Zamiana zapisu liczby b na system dziesiętny odbywa się poprzez wykonanie dodawania d r 2 r + d r 1 2 r 1 d 1 2 1 + d

Bardziej szczegółowo

LABORATORIUM ELEKTRONIKI I TEORII OBWODÓW

LABORATORIUM ELEKTRONIKI I TEORII OBWODÓW POLITECHNIKA POZNAŃSKA FILIA W PILE LABORATORIUM ELEKTRONIKI I TEORII OBWODÓW numer ćwiczenia: data wykonania ćwiczenia: data oddania sprawozdania: OCENA: 6 21.11.2002 28.11.2002 tytuł ćwiczenia: wykonawcy:

Bardziej szczegółowo

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia. ARYTMETYKA BINARNA ROZWINIĘCIE DWÓJKOWE Jednym z najlepiej znanych sposobów kodowania informacji zawartej w liczbach jest kodowanie w dziesiątkowym systemie pozycyjnym, w którym dla przedstawienia liczb

Bardziej szczegółowo

Architektura typu Single-Cycle

Architektura typu Single-Cycle Architektura typu Single-Cycle...czyli budujemy pierwszą maszynę parową Przepływ danych W układach sekwencyjnych przepływ danych synchronizowany jest sygnałem zegara Elementy procesora - założenia Pamięć

Bardziej szczegółowo

POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych. Instytut Telekomunikacji Zakład Podstaw Telekomunikacji

POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych. Instytut Telekomunikacji Zakład Podstaw Telekomunikacji POLITECHNIKA WARSZAWSKA Wydział Elektroniki i Technik Informacyjnych Instytut Telekomunikacji Zakład Podstaw Telekomunikacji Kamil Krawczyk Metody optymalizacji soft-procesorów NIOS Opiekun naukowy: dr

Bardziej szczegółowo

PROGRAMOWALNE STEROWNIKI LOGICZNE

PROGRAMOWALNE STEROWNIKI LOGICZNE PROGRAMOWALNE STEROWNIKI LOGICZNE I. Wprowadzenie Klasyczna synteza kombinacyjnych i sekwencyjnych układów sterowania stosowana do automatyzacji dyskretnych procesów produkcyjnych polega na zaprojektowaniu

Bardziej szczegółowo

Modelowanie układów sekwencyjnych w LabView - ćwiczenie 8

Modelowanie układów sekwencyjnych w LabView - ćwiczenie 8 Modelowanie układów sekwencyjnych w LabView - ćwiczenie 8 1. Cel ćwiczenia: Celem ćwiczenia jest zapoznanie się z zasadą działania i strukturami sumatorów binarnych oraz praktyczna realizacja układów sekwencyjnych

Bardziej szczegółowo

Układy kombinacyjne. cz.2

Układy kombinacyjne. cz.2 Układy kombinacyjne cz.2 Układy kombinacyjne 2/26 Kombinacyjne bloki funkcjonalne Kombinacyjne bloki funkcjonalne - dekodery 3/26 Dekodery Są to układy zamieniające wybrany kod binarny (najczęściej NB)

Bardziej szczegółowo

Ćw. 7: Układy sekwencyjne

Ćw. 7: Układy sekwencyjne Ćw. 7: Układy sekwencyjne Wstęp Celem ćwiczenia jest zapoznanie się z sekwencyjnymi, cyfrowymi blokami funkcjonalnymi. W ćwiczeniu w oparciu o poznane przerzutniki zbudowane zostaną następujące układy

Bardziej szczegółowo

Logiczny model komputera i działanie procesora. Część 1.

Logiczny model komputera i działanie procesora. Część 1. Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.

Bardziej szczegółowo

Schematy blokowe I. 1. Dostępne bloki: 2. Prosty program drukujący tekst.

Schematy blokowe I. 1. Dostępne bloki: 2. Prosty program drukujący tekst. Schematy blokowe I Jeżeli po schematach blokowych będzie używany język C, to należy używać operatorów: '&&', ' ', '!=', '%' natomiast jeśli Ruby to 'and', 'or', '%', '!='. 1. Dostępne bloki: a) początek:

Bardziej szczegółowo

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy ALGORYTMY 1. Podstawowe definicje Algorytm (definicja nieformalna) to sposób postępowania (przepis) umożliwiający rozwiązanie określonego zadania (klasy zadań), podany w postaci skończonego zestawu czynności

Bardziej szczegółowo

Wprowadzenie do informatyki - ć wiczenia

Wprowadzenie do informatyki - ć wiczenia Kod uzupełnień do 2 (U2) dr inż. Izabela Szczęch WSNHiD Ćwiczenia z wprowadzenia do informatyki Reprezentacja liczb całkowitych Jak kodowany jest znak liczby? Omó wimy dwa sposoby kodowania liczb ze znakiem:

Bardziej szczegółowo

PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka

PAMIĘCI. Część 1. Przygotował: Ryszard Kijanka PAMIĘCI Część 1 Przygotował: Ryszard Kijanka WSTĘP Pamięci półprzewodnikowe są jednym z kluczowych elementów systemów cyfrowych. Służą do przechowywania informacji w postaci cyfrowej. Liczba informacji,

Bardziej szczegółowo

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

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś  Wykład 7 Kryptografia z elementami kryptografii kwantowej Ryszard Tanaś http://zon8.physd.amu.edu.pl/~tanas Wykład 7 Spis treści 11 Algorytm ElGamala 3 11.1 Wybór klucza.................... 3 11.2 Szyfrowanie.....................

Bardziej szczegółowo

Rijndael szyfr blokowy

Rijndael szyfr blokowy Rijndael szyfr blokowy Andrzej Chmielowiec 24 lipca 2002 1 Podstawy matematyczne Kilka operacji w standardzie Rijndael jest zdefiniowanych na poziomie bajta, przy czym bajty reprezentują elementy ciała

Bardziej szczegółowo

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

Rozdział 4. Macierze szyfrujące. 4.1 Algebra liniowa modulo 26 Rozdział 4 Macierze szyfrujące Opiszemy system kryptograficzny oparty o rachunek macierzowy. W dalszym ciągu przypuszczamy, że dany jest 26 literowy alfabet, w którym utożsamiamy litery i liczby tak, jak

Bardziej szczegółowo

Projekt zespołowy. Część1: Projekt potokowej jednostki przetwarzającej przeznaczonej do realizacji algorytmu FFT. Rok akademicki 2008/2009

Projekt zespołowy. Część1: Projekt potokowej jednostki przetwarzającej przeznaczonej do realizacji algorytmu FFT. Rok akademicki 2008/2009 Projekt zespołowy Rok akademicki 2008/2009 Część1: Projekt potokowej jednostki przetwarzającej przeznaczonej do realizacji algorytmu FFT Kierunek studiów: Semestr: Grupa: Informatyka VII PKiSI 2 Wykonawca:

Bardziej szczegółowo

Algorytmy i struktury danych. Wykład 4 Tablice nieporządkowane i uporządkowane

Algorytmy i struktury danych. Wykład 4 Tablice nieporządkowane i uporządkowane Algorytmy i struktury danych Wykład 4 Tablice nieporządkowane i uporządkowane Tablice uporządkowane Szukanie binarne Szukanie interpolacyjne Tablice uporządkowane Szukanie binarne O(log N) Szukanie interpolacyjne

Bardziej szczegółowo

Polcode Code Contest PHP-10.09

Polcode Code Contest PHP-10.09 Polcode Code Contest PHP-10.09 Przedmiotem konkursu jest napisanie w języku PHP programu, którego wykonanie spowoduje rozwiązanie zadanego problemu i wyświetlenie rezultatu. Zadanie konkursowe Celem zadania

Bardziej szczegółowo

Luty 2001 Algorytmy (7) 2000/2001 s-rg@siwy.il.pw.edu.pl

Luty 2001 Algorytmy (7) 2000/2001 s-rg@siwy.il.pw.edu.pl System dziesiętny 7 * 10 4 + 3 * 10 3 + 0 * 10 2 + 5 *10 1 + 1 * 10 0 = 73051 Liczba 10 w tym zapisie nazywa się podstawą systemu liczenia. Jeśli liczba 73051 byłaby zapisana w systemie ósemkowym, co powinniśmy

Bardziej szczegółowo

Technologie Informacyjne

Technologie Informacyjne System binarny Szkoła Główna Służby Pożarniczej Zakład Informatyki i Łączności October 7, 26 Pojęcie bitu 2 Systemy liczbowe 3 Potęgi dwójki 4 System szesnastkowy 5 Kodowanie informacji 6 Liczby ujemne

Bardziej szczegółowo

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.)

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.) Kryptografia-0 -zachowanie informacji dla osób wtajemniczonych -mimo że włamujący się ma dostęp do informacji zaszyfrowanej -mimo że włamujący się zna (?) stosowaną metodę szyfrowania -mimo że włamujący

Bardziej szczegółowo

Układy cyfrowe - Algorytm Twofish

Układy cyfrowe - Algorytm Twofish Jakub Lutyński 4T2 Paweł Podkalicki 4T2 Andrzej Zaleski 4T2 Michał Wilkowski Warszawa, 27.01.2008 r Układy cyfrowe - Algorytm Twofish 1. Opis projektu Celem naszego projektu będzie zrealizowanie układu

Bardziej szczegółowo

Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego

Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego Arytmetyka cyfrowa Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego (binarnego). Zapis binarny - to system liczenia

Bardziej szczegółowo

Rys Schemat montażowy (moduł KL blok e) Tablica C B A F

Rys Schemat montażowy (moduł KL blok e) Tablica C B A F Ćwiczenie 30 Temat: Układy multiplekserów i demultiplekserów. Cel ćwiczenia Poznanie zasad działania multiplekserów. Budowanie multiplekserów z podstawowych bramek logicznych i układu scalonego TTL. Czytanie

Bardziej szczegółowo

Układy kryptograficzne z uŝyciem rejestrów LFSR

Układy kryptograficzne z uŝyciem rejestrów LFSR Układy kryptograficzne z uŝyciem rejestrów FSR Algorytmy kryptograficzne uŝywane w systemach telekomunikacyjnych własność modulo 2 funkcji XOR P K K = P = P 2 Rejestr z liniowym sprzęŝeniem zwrotnym FSR

Bardziej szczegółowo

Elementy oprogramowania sterowników. Instrukcje podstawowe, funkcje logiczne, układy czasowe i liczenia, znaczniki

Elementy oprogramowania sterowników. Instrukcje podstawowe, funkcje logiczne, układy czasowe i liczenia, znaczniki Elementy oprogramowania sterowników. Instrukcje podstawowe, funkcje logiczne, układy czasowe i liczenia, znaczniki Norma IEC-61131-3 definiuje typy języków: graficzne: schematów drabinkowych LD, schematów

Bardziej szczegółowo

Załóżmy, że musimy zapakować plecak na wycieczkę. Plecak ma pojemność S. Przedmioty mają objętości,,...,, których suma jest większa od S.

Załóżmy, że musimy zapakować plecak na wycieczkę. Plecak ma pojemność S. Przedmioty mają objętości,,...,, których suma jest większa od S. Załóżmy, że musimy zapakować plecak na wycieczkę. Plecak ma pojemność S. Przedmioty mają objętości,,...,, których suma jest większa od S. Plecak ma być zapakowany optymalnie, tzn. bierzemy tylko te przedmioty,

Bardziej szczegółowo

Kod znak-moduł. Wartość liczby wynosi. Reprezentacja liczb w kodzie ZM w 8-bitowym formacie:

Kod znak-moduł. Wartość liczby wynosi. Reprezentacja liczb w kodzie ZM w 8-bitowym formacie: Wykład 3 3-1 Reprezentacja liczb całkowitych ze znakiem Do przedstawienia liczb całkowitych ze znakiem stosowane są następujące kody: - ZM (znak-moduł) - U1 (uzupełnienie do 1) - U2 (uzupełnienie do 2)

Bardziej szczegółowo

Arytmetyka liczb binarnych

Arytmetyka liczb binarnych Wartość dwójkowej liczby stałoprzecinkowej Wartość dziesiętna stałoprzecinkowej liczby binarnej Arytmetyka liczb binarnych b n-1...b 1 b 0,b -1 b -2...b -m = b n-1 2 n-1 +... + b 1 2 1 + b 0 2 0 + b -1

Bardziej szczegółowo

Wstęp do informatyki- wykład 1 Systemy liczbowe

Wstęp do informatyki- wykład 1 Systemy liczbowe 1 Wstęp do informatyki- wykład 1 Systemy liczbowe Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy Grębosz,

Bardziej szczegółowo