Szyfry strumieniowe w układach programowalnych FPGA. Marcin Rogawski

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

Szyfry strumieniowe w strukturach FPGA

Architektury akceleratorów kryptograficznych opartych na układach logicznych FPGA.

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

Szyfry Strumieniowe. Zastosowanie wybranych rozwiąza. zań ECRYPT do zabezpieczenia komunikacji w sieci Ethernet. Opiekun: prof.

Systemy na Chipie. Robert Czerwiński

Metody optymalizacji soft-procesorów NIOS

Projektowanie. Projektowanie mikroprocesorów

Budowa i zasada działania komputera. dr Artur Bartoszewski

ZASTOSOWANIA UKŁADÓW FPGA W ALGORYTMACH WYLICZENIOWYCH APPLICATIONS OF FPGAS IN ENUMERATION ALGORITHMS

Budowa komputera Komputer computer computare

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

Sprzętowo-zorientowane konstrukcje szyfrów strumieniowych

Programowalne Układy Logiczne. Wykład I dr inż. Paweł Russek

Piotr Majkowski. Politechnika Warszawska Wydział Elektroniki i Technik Informacyjnych Instytut Telekomunikacji

MIKROKONTROLERY I MIKROPROCESORY

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa Wstęp... 11

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

Bezpieczeństwo danych i elementy kryptografii - opis przedmiotu

Wykorzystanie układów FPGA w implementacji systemów bezpieczeństwa sieciowego typu Firewall

Wydajność obliczeń a architektura procesorów. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Specyfika projektowania Mariusz Rawski

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych

Budowa Mikrokomputera

Organizacja typowego mikroprocesora

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

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

Architektura potokowa RISC

Od Wydawcy Krzywe eliptyczne w kryptografii Wykorzystanie pakietu SAGE... 9

Spis treści. Od Wydawcy

Podstawy techniki cyfrowej i mikroprocesorowej - opis przedmiotu

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

Elektronika cyfrowa i mikroprocesory. Dr inż. Aleksander Cianciara

Szybkie układy mnożące

Architektura komputerów

Procesory firmy ARM i MIPS

Szczegółowy opis przedmiotu zamówienia

Kierunek Inżynieria Akustyczna, V rok Programowalne Układy Cyfrowe. Platforma sprzętowa. Rajda & Kasperek 2014 Katedra Elektroniki AGH 1

PROJEKTOWANIE UKŁADÓW VLSI

Bezpieczeństwo kart elektronicznych

Marcin Szeliga Dane

Architektura komputerów

Badanie właściwości wysokorozdzielczych przetworników analogowo-cyfrowych w systemie programowalnym FPGA. Autor: Daniel Słowik

Architektura systemów komputerowych

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]

Stronicowanie w systemie pamięci wirtualnej

Cyfrowy rejestrator parametrów lotu dla bezzałogowych statków powietrznych. Autor: Tomasz Gluziński

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

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

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

Wstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)

Współczesne techniki informacyjne

Architektura komputerów

Szybkie układy mnożące

Kryptografia na procesorach wielordzeniowych

Język opisu sprzętu VHDL

Architektura systemów komputerowych. dr Artur Bartoszewski

Implementacja algorytmu szyfrującego

Automatyzacja procesu tworzenia sprzętowego narzędzia służącego do rozwiązywania zagadnienia logarytmu dyskretnego na krzywych eliptycznych

ARCHITEKTURA PROCESORA,

LEKCJA TEMAT: Zasada działania komputera.

Zał nr 4 do ZW. Dla grupy kursów zaznaczyć kurs końcowy. Liczba punktów ECTS charakterze praktycznym (P)

Układy FPGA. Programowalne Układy Cyfrowe dr inż. Paweł Russek

Podstawy Informatyki Systemy sterowane przepływem argumentów

Architektura Systemów Komputerowych

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Zastosowanie procesorów AVR firmy ATMEL w cyfrowych pomiarach częstotliwości

Szyfrowanie danych w SZBD

Architektura systemów komputerowych. Przetwarzanie potokowe I

Układy cyfrowe projekt.

Wykład 2. Mikrokontrolery z rdzeniami ARM

Układy programowalne. Wykład z ptc część 5

Zagadnienia egzaminacyjne INFORMATYKA. stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Tworzenie programów równoległych cd. Krzysztof Banaś Obliczenia równoległe 1

Architektura mikroprocesorów z rdzeniem ColdFire

Szkoła programisty PLC : sterowniki przemysłowe / Gilewski Tomasz. Gliwice, cop Spis treści

Rijndael szyfr blokowy

Wykład 5. Podwójny algorytm DES. Podwójny algorytm DES. Podwójny algorytm DES. Podwójny algorytm DES. Podwójny algorytm DES

1.1. Standard szyfrowania DES

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430

Sprawozdanie do zadania numer 2

Systemy operacyjne. wykład dr Marcin Czarnota laboratorium mgr Radosław Maj

Szyfrowanie informacji

Elektrotechnika I stopień Ogólno akademicki. kierunkowy (podstawowy / kierunkowy / inny HES)

Adam Korzeniewski - p. 732 dr inż. Grzegorz Szwoch - p. 732 dr inż.

Zagadnienia egzaminacyjne TELEKOMUNIKACJA studia rozpoczynające się po r.

Zastosowania informatyki w gospodarce Wykład 5

Tarnowska Karta Miejska dokumentacja techniczna

Układy programowalne. Wykład z ptc część 5

Bezpieczeństwo informacji oparte o kryptografię kwantową

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (

Zarys algorytmów kryptograficznych

Programowalne układy przetwarzania sygnałów i informacji technika cyfrowa w multimediach i kryptografii

Implementacja algorytmu DES

Programowanie Niskopoziomowe

PRZEWODNIK PO PRZEDMIOCIE

Transkrypt:

Szyfry strumieniowe w układach programowalnych FPGA Marcin Rogawski rogawskim@prokom.pl

Plan referatu Szyfry strumieniowe, Wybór tematu, Struktury programowalne element fizyczny, Architektury akceleratorów kryptograficznych element logiczny, Szyfry strumieniowe implementacje w FPGA, Podsumowanie.

Szyfry strumieniowe

Szyfry strumieniowe

Wybór tematu Konkurs AES, Konkurs NESSIE, Szyfry strumieniowe art of state, Zastosowanie szyfrów strumieniowych, Układy FPGA.

Akceleratory kryptograficzne w FPGA Założenia funkcjonalne, Założenia wydajnościowe, Cena układu, Współpraca z innymi układami scalonymi.

Układy programowalne warstwa fizyczna Zasoby: liczba wyprowadzeń; bloki logiczne; bloki pamięci wbudowanej; bloki DSP;

Cykl rozkazowy Pobranie instrukcji, Dekodowanie instrukcji, Pobranie argumentów, Wykonanie operacji, Zapis wyniku.

Architektury modułów kryptograficznych warstwa logiczna Architektura ITERACYJNA (L); Architektura KOMBINACYJNA (U); Architektura POTOKOWA (P); Architektura HYBRYDOWA ( );

Architektura ITERACYJNA

Architektura ITERACYJNA Naturalna dla algorytmów kryptograficznych; Duża efektywność; Możliwość realizacji pełnej funkcjonalności algorytmu (różne tryby pracy); Najmniejsza przepustowość;

Architektura KOMBINACYJNA

Architektura KOMBINACYJNA realizacja podstawowej operacji algorytmu w ciągu jednego taktu zegarowego; niska efektywność; układ sterujący nieskomplikowany; ograniczona możliwość realizacji większości algorytmów kryptograficznych

Architektura POTOKOWA

Architektura POTOKOWA Natura procesorów o potokowej architekturze; Duża efektywność; Największa szybkość przetwarzania; Możliwość realizacji każdego algorytmu blokowego; WADA: architektura tylko dla ECB; WADA: brak wsparcia dla funkcji skrótu, szyfrów strumieniowych

Algorytmy kryptograficzne i Architektury Algorytmy blokowe Algorytmy strumieniowe Funkcje skrótu architektura interacyjna Każdy algorytm Każdy algorytm Każdy algorytm architektura kombinacyjna Każdy algorytm, ale czasami niezbędny jest Key Setup Większość algorytmów, z którymi się zetknął autor można zrealizować używając tej architektury Większość algorytmów, z którymi się zetknął autor można zrealizować używając tej architektury architektura potokowa Praca w trybie ECB, lub prostym licznikowym architektura hybrydowa Dowolne kombinacje Kombinacyjnoiteracyjne Kombinacyjnoiteracyjne

Wybrane szyfry strumieniowe A5, BGML (Hastad J., Naslund M. Szwecja ), E0, Helix (Schneier B. USA), Leviathan (Cisco Systems USA), Lili128 (Queensland University of Technology, Golic J. Australia/Serbia), Mir1 (Alexander Maximov Rosja), Mugi (Hitachi), Rabbit (Cryptico A/S Dania), RC4 (Rivest R. USA), Sobert16 (Qualcomm Australia), VMPC (Żółtak B. Polska), W7 (Wave7 Optics, Anagram Laboratories, University of Waterloo Belgia), F8 (Matsui M. Japonia), Rijnadael OFB (J.Deamen, V.Rijmen Belgia ).

HC256, Henkos, ISAAC, Panama, Seal, Scream, Snow, Turing, Wake. Dalsze badania

Wyniki implementacji programowych Efektywnośćimplementacji programowaywych cykleprocesora 10 80 60 40 20 0 A5 BMGL HC256 Helix ISAC Leviathan Lili128 Mir1 Mugi Panama Rabit RijndaelCFB RC4 Seal Sober Scream Snow Turing VMPC Wake

Założenia implementacyjne Układ Flex 10KE, AHDL, Wybrane szyfry wersja podstawowa, Biblioteka funkcji, Największa szybkość,

Przepustowość (długość słowa) (ilość cykli) * (czas trwania cyklu)

Długość słowa / stan wewnętrzny algorytm strumieniowy A5 BMGL E0 Helix Leviathan Lili128 Mir1 Mugi Rabbit RC4 Sober16 VMPC W7 F8 Rijndael OFB długość strumienia klucza 1 16 1 32 32 1 64 64 128 8 8 8 8 64 128 wielkość stanu wewnętrzngo 64 17*128 (2176) 128+2 (130) 128 128 128 2*64 + 4*64 (384) 3*64 + 16*64 (1216) 8*32+8*32+1 (513) (8*256) 2048 128 (8*256) 2048 8*128 128 128

Operacje składowe operacje arytmetyczn e operacje logiczn e Przesunięcia LFSR Podstawienia sbox tablice Mnożenie przez macierz * / + and / or shift / rot reg./niereg. A5 / / / / t BMGL t / / t / / t t E0 / t / t / t / Helix / t / t / / Leviathan / t / / / t Lili128 / / / / t t Mir1 t / t t / t t / / t Mugi / / / t / t t Rabbit t / t / t / t / Rc4 / t / / / t Sobert16 / t t / / / t VMPC / t / / / t W7 / t / t / / t F8 / t / t / / t Rijndael OFB / / t / t / t t

Wyniki implementacji FPGA Częstotliwość max. Zajętość struktury Przepustowość / zajętość Przepustowość [Mhz] [LC/mem. bits] [kb/lc] [Mb/s] A5 158,7 299 132,7 39,7 BMGL 166,7 1620 / 40960 26,6 43,1 E0 250 280 178,8 50,0 F8 50 2031 54,3 110,3 Helix 65 2003 126,9 254,2 Leviathan 35 1978 37,9 75,0 Lili128 204,8 339 114,7 38,9 Mir1 37,3 4521 / 49152 8,1 36,73 Mir1 (S) 32 2,294 / 49152 / 96 449,8 1032 Mugi 33,3 2075 / 32768 513,7 1066 Rabbit 16,7 4809 7,4 35,6 Rijndael OFB 90 1610 / 40960 254,7 410,0 RC4 70,4 459 / 4096 122,7 56,3 Sober16 25,18 525 85,3 44,8 VMPC 71,9 514 / 12228 86,3 44,4 VMPC (S) 100,0 498/ 12228 124,0 61,75 W7 161,3 674 478,6 322,6

Podsumowanie Implementacje sprzętowe a algorytmy kryptograficzne, Elastyczność rozwiązań, Rozwój szyfrów strumieniowych, Rozwój technologii, Wyniki prac ECRYPT.

Dziekuję za uwagę. rogawskim@prokom.pl