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

Podobne dokumenty
Szyfry strumieniowe w układach programowalnych FPGA. Marcin Rogawski

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

Implementacja algorytmu DES

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

OCHRONA INFORMACJI W SYSTEMACH I SIECIACH KOMPUTEROWYCH SYMETRYCZNE SZYFRY BLOKOWE

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

Szyfry strumieniowe w strukturach FPGA

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

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

Projektowanie. Projektowanie mikroprocesorów

Implementacja algorytmu szyfrującego

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

Specyfika projektowania Mariusz Rawski

2 Kryptografia: algorytmy symetryczne

Wykład 2. Przegląd mikrokontrolerów 8-bit: -AVR -PIC

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

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

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

Sprawdzian test egzaminacyjny 2 GRUPA I

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

Ochrona własności intelektualnej projektów w układach FPGA poprzez szyfrowanie danych konfiguracyjnych

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

Bezpieczeństwo kart elektronicznych

MIKROKONTROLERY I MIKROPROCESORY

Szyfrowanie informacji

Metody optymalizacji soft-procesorów NIOS

Projektowanie układów kryptograficznych Mariusz Rawski

Układy cyfrowe - Algorytm Twofish

Szyfry kaskadowe. Szyfry kaskadowe

Systemy wbudowane Mikrokontrolery

Szyfry kaskadowe. permutacyjnej (SPP).

Architektura komputerów

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

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

Kryptografia na procesorach wielordzeniowych

Architektura komputerów

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

Architektura potokowa RISC

Szczegółowy opis przedmiotu zamówienia

Bezpieczeństwo systemów i sieci komputerowych

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

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

Generowanie ciągów bitów losowych z wykorzystaniem sygnałów pochodzących z komputera

Marcin Szeliga Dane

ARCHITEKTURA PROCESORA,

Systemy na Chipie. Robert Czerwiński

Spis treści. Od Wydawcy

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

MAGISTRALE ZEWNĘTRZNE, gniazda kart rozszerzeń, w istotnym stopniu wpływają na

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Praktyczne aspekty wykorzystania nowoczesnej kryptografii. Wojciech A. Koszek

Współczesne techniki informacyjne

Tarnowska Karta Miejska dokumentacja techniczna

1.1. Standard szyfrowania DES

Procesory firmy ARM i MIPS

Spis treści. Przedmowa... 9

Nowości w kryptografii

Pamięci. Pamięci DDR DIMM SDR SDRAM

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

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

METODY ZINTEGROWANEGO PROJEKTOWANIA SPRZĘTU I OPROGRAMOWANIA Z WYKORZYSTANIEM NOWOCZESNYCH UKŁADÓW PROGRAMOWALNYCH

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

Programowanie z wykorzystaniem technologii CUDA i OpenCL Wykład 1

WPROWADZENIE Mikrosterownik mikrokontrolery

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

Architektura mikroprocesorów TEO 2009/2010

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

Budowa i zasada działania komputera. dr Artur Bartoszewski

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

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

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

Bezpieczeństwo informacji w systemach komputerowych

Architektura systemów komputerowych. Przetwarzanie potokowe I

Systemy uruchomieniowe

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

Architektura Bezpieczeństwa dla Systemu ROVERS. Artur Skrajnowski Opiekun: dr inż. Jarosław Domaszewicz Współpraca: prof. dr hab.

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

Ataki na RSA. Andrzej Chmielowiec. Centrum Modelowania Matematycznego Sigma. Ataki na RSA p. 1

Katedra Mikroelektroniki i Technik Informatycznych

Przegląd algorytmów kryptograficznych pod kątem możliwości sprzętowej ochrony urządzeń mobilnych MGR INŻ. TOMASZ MAZURKIEWICZ

ZiMSK. Konsola, TELNET, SSH 1

Szyfrowanie danych w SZBD

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

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

Bezpieczeństwo informacji oparte o kryptografię kwantową

Research & Development Ultrasonic Technology / Fingerprint recognition

Układy cyfrowe projekt.

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

Laboratorium nr 1 Szyfrowanie i kontrola integralności

Temat: Pamięci. Programowalne struktury logiczne.

Wykład Mikroprocesory i kontrolery

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego.

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

Język opisu sprzętu VHDL

2.1. System kryptograficzny symetryczny (z kluczem tajnym) 2.2. System kryptograficzny asymetryczny (z kluczem publicznym)

Wykład 2. Mikrokontrolery z rdzeniami ARM

Opis efektów kształcenia dla modułu zajęć

Transkrypt:

Architektury akceleratorów kryptograficznych opartych o układy programowalne. Marcin Rogawski rogawskim@prokom.pl

Plan referatu: Budowa akceleratora kryptograficznego; Struktura programowalna element fizyczny; Projekt akceleratora element logiczny; Architektury akceleratorów kryptograficznych; Projekt Hierocrypt-3; Szyfry blokowe, strumieniowe, funkcje skrótu możliwosci i ograniczenia implementacyjne; Podsumowanie. KUL,KNI, 14-15.05.2004r. 2

Budowa Akceleratora Kryptograficznego Blok wspomagający operacje I/O; Wewnętrzna pamięć RAM; Moduly kryptograficzne; Kontroler; KUL,KNI, 14-15.05.2004r. 3

Tryby pracy modułu sprzętowego Tryb Slave: - inteligentna pamięć ; Tryb Master: - fetch-load-do-store ; - 99% czasu pracy; KUL,KNI, 14-15.05.2004r. 4

Układy programowalne warstwa fizyczna Producenci: - ALTERA; - XILINX; Zasoby: - liczba wyprowadzeń; - bloki logiczne; - bloki pamięci wbudowanej; -blokidsp; KUL,KNI, 14-15.05.2004r. 5

ALTERA Uklady programowalne KUL,KNI, 14-15.05.2004r. 6

FLEX 10KE KUL,KNI, 14-15.05.2004r. 7

Stratix KUL,KNI, 14-15.05.2004r. 8

Warstwa logiczna akceleratora Systemy projektowe: - Max Plus II (Altera); - Quartus II 4.0 (Altera); - Leonardo Spectrum (Altera); - Foundation (Xilinx); Języki opisu sprzętu: -VHDL; -AHDL; - Aldec; - Verilog; KUL,KNI, 14-15.05.2004r. 9

Warstwa logiczna akceleratora Analiza założeń funkcjonalnych dla akceleratora: szyfry blokowe, strumieniowe, funkcje skrótu; Kryterium optymalizacji projektu: szybkość, efektywność, cena ; KUL,KNI, 14-15.05.2004r. 10

Analiza budowy algorytmu Runda szyfru; Generacja podkluczy: -wcześniejsze wyznaczenie podkluczy; - równoczesne wyznaczanie podkluczy; -częsciowe wyznaczenie podkluczy; Funkcje nieliniowe: - funkcja kombinacyjna; - ROM sync., async.; KUL,KNI, 14-15.05.2004r. 11

Architektury modułów kryptograficznych Architektura ITERACYJNA (L); Architektura KOMBINACYJNA (U); Architektura POTOKOWA (P); Architektura HYBRYDOWA ( ); KUL,KNI, 14-15.05.2004r. 12

Architektura ITERACYJNA KUL,KNI, 14-15.05.2004r. 13

Architektura ITERACYJNA Naturalna dla algorytmów kryptograficznych; Najlepsza efektywność; Możliwość realizacji pełnej funkcjonalności algorytmu (różne tryby pracy); Najmniejsza przepustowość; KUL,KNI, 14-15.05.2004r. 14

Architektura KOMBINACYJNA KUL,KNI, 14-15.05.2004r. 15

Architektura KOMBINACYJNA niska efektywność; układ sterujący nieskomplikowany; ograniczona możliwość realizacji większości algorytmów blokowych, KUL,KNI, 14-15.05.2004r. 16

Architektura POTOKOWA KUL,KNI, 14-15.05.2004r. 17

Architektura POTOKOWA Natura procesorów typu RISC; Mał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; KUL,KNI, 14-15.05.2004r. 18

Projekt Hierocrypt-3 NESSIE; autorzy: TOSHIBA Corp. (Kenji Ohkuma); szyfr blokowy; długość bloku danych 128 bitów; długość klucza 128, 192, 256 bitów; ilość rund 6, 7, 8; Strategia szerokiej ścieżki + SHARK; struktura szyfru: NSPN (ang. Nested Substitution Permutation Network) + Sieć Feistela; algorytm nieinwolucyjny; KUL,KNI, 14-15.05.2004r. 19

Kryteria projektowe bezpieczeństwo; szybkość działania; efektywność implementacji; KUL,KNI, 14-15.05.2004r. 20

Szyfrowanie/Deszyfrowanie Szyfrowanie: Deszyfrowanie: KUL,KNI, 14-15.05.2004r. 21

Runda szyfru K(1)(128) S S S S S S S S S S S S S S S S MDSL MDSL MDSL MDSL XS K(2)(128) S S S S S S S S S S S S S S S S MDSH KUL,KNI, 14-15.05.2004r. 22

Macierz MDS nizszego rzędu KUL,KNI, 14-15.05.2004r. 23

Macierz MDS wyższego rzędu KUL,KNI, 14-15.05.2004r. 24

Runda klucza dwa rodzaje podkluczy: przejściowe, rundy; trzy rodzaje operacji: uaktualnienia podklucza przejściowego; odwrotność uaktualnienia podklucza przejściowego; generacji podkluczy rundy; Komponenty rundy klucza: P (32); M 5E ; M B3 ; F σ ; KUL,KNI, 14-15.05.2004r. 25

KUL,KNI, 14-15.05.2004r. 26

Aktualizacja podklucza przejsciowego KUL,KNI, 14-15.05.2004r. 27

Odwrotność aktualizacji podklucza przejściowego KUL,KNI, 14-15.05.2004r. 28

Generacja podkluczy rund KUL,KNI, 14-15.05.2004r. 29

Projekt TOSHIBA Corp. KUL,KNI, 14-15.05.2004r. 30

Zalozenia projektowe wersja algorytmu: 128 bitowy klucz główny, 128 bitowy blok danych; układy programowalne Flex 10KE (9986 LC / 49152 bity); uzyskanie jak NAJWIĘKSZEJ szybkości działania; architektura ITERACYJNA; KUL,KNI, 14-15.05.2004r. 31

Realizacja skrzynek podstawieniowych KUL,KNI, 14-15.05.2004r. 32

Cechy charakterystyczne projektów ITERACYJNYCH operacja ustawienia podklucza; równoległość operacji rundy klucza i szyfru; funkcja szyfrowania i deszyfrowania w oddzielnych modułach; Skrzynki podstawieniowe: - 16+8 x ROM; - 16 x DEMAIN; KUL,KNI, 14-15.05.2004r. 33

Projekt krótki czas ustawienia układu jednoczesne wykonanie: runda szyfru, operacja uaktualnienia podklucza (jej odwrotność), operacja wyznaczenia podklucza rundy. 2 fazy działania: ustawienie układu, szyfrowanie (deszyfrowanie), wyniki implementacji: 8599 LC, 48kb EAB, max. częstoliwość zegara taktującego 8,05 MHz (124ns), ilość cykli 9, przepustowość 115Mb/s, najdłużej trwająca operacja runda klucza. KUL,KNI, 14-15.05.2004r. 34

Projekt długi czas ustawienia układu symetria algorytmu generacji podkluczy przejściowych, 2 fazy działania: ustawienie układu, szyfrowanie (deszyfrowanie). 1600 bitów niezbędnych do wyznaczenia wszystkich podkluczy rund, nie potrzebna odwrotność aktualizacji podkluczy przejściowych, wyniki implementacji: 9497 LC, 48kb EAB, max. częstoliwość zegara taktującego 11,95 MHz (84ns), ilość cykli 9, przepustowość 190 Mb/s, najdłużej trwająca operacja obliczenie funkcji Fσ w operacji KUL,KNI, 14-15.05.2004r. 35

Projekt bardzo długi czas ustawienia układu ustawienie układu 3 cykle 1 operacja aktualizacji podkluczy: 1 cykl: W (t-1) 1(64) W(t-1) 2(64) = P(32) (Z (t-1) 1(64) Z(t-1) 2(64) ) Z (t) 1(64) = Z(t-1) 2(64), 2 cykl: Z (t) 3(64) = M 5E (W(t-1) 1(64) ) G(t) (64), Z (t) 4(64) = M 5E (W(t-1) 2(64) ). 3 cykl: Z (t) 2(64) = Z(t-1) 1(64) F σ (Z(t-1) 2(64) Z(t) 3(64) ), poprawienie sterowania oszczędność jednego cyklu, połączenie operacji XS (ostatnia runda) z AK (ostatnie dodanie podklucza) w jedną realizacja podczas 1 cyklu, wyniki implementacji: 9758 LC, 48kb EAB, max. częstoliwość zegara taktującego 15,64 MHz (60ns), ilość cykli 7, przepustowość 304 Mb/s, najdłużej trwająca operacja runda szyfru. KUL,KNI, 14-15.05.2004r. 36

Ekstensywny projekt bardzo długi czas ustawienia układu projekt bardzo długi czas ustawienia układu + przekształcenie matematyczne rundy, połączenie warstw: skrzynki podstawieniowe + macierz MDSL y 1(8) = C4*x 1(8) 65*x 2(8) C8*x 3(8) 8B*x 4(8) y 2(8) = 8B*x 1(8) C4*x 2(8) 65*x 3(8) C8*x 4(8) y 3(8) = C8*x 1(8) 8B*x 2(8) C4*x 3(8) 65*x 4(8) y 4(8) = 65*x 1(8) C8*x 2(8) 8B*x 3(8) C4*x 4(8) mnożenie elementów ciała GF(28) przez stały element z tego ciała powoduje permutację tego ciała, bijektywna skrzynka podstawieniowa jest permutacją elementów pewnego ciała, każda 8 bitowa wiązka jest mnożona przez 4 różne, stałe elementy z macierzy MDSL, każda permutacja (skrzynka podstawieniowa) składana jest z czterema różnymi permutacjami (4 różne wartości z macierzy MDSL), wyniki implementacji: 26000LC, max. częstoliwość zegara taktującego 21,73 MHz (46ns), ilość cykli 7, przepustowość 397 Mb/s, najdłużej trwająca operacja runda szyfru, KUL,KNI, 14-15.05.2004r. 37

Implementacja algorytmów blokowychrijndael i Camellia Zwycięzcy konkursu AES i NESSIE, Dwie fazy działania układu: ustawienie układu, szyfrowanie (deszyfrowanie), Camellia architektura HYBRYDOWA LU-3 Wyniki implementacji: 2973LC /48kb EAB, max. częstoliwość zegara taktującego 13,15 MHz (76ns), ilość cykli 7, przepustowość 240 Mb/s. Rijndael architektura ITERACYJNA Wyniki implementacji: 1030LC /40kb EAB, max. częstoliwość zegara taktującego 76,92 MHz (13ns), ilość cykli 24, przepustowość 410 Mb/s. KUL,KNI, 14-15.05.2004r. 38

Szyfr Strumieniowy - VMPC Układy FLEX10KE: -efektywność: 134 LC/12888mbit, -częstotliwość: 71,94 MHz, - przepustowość: 44,4 Mb/s, Układy STRATIX: -efektywność: 107 LC/ 12888mbit, -częstotliwość: 100,0 MHz, - przepustowość: 80,0 Mb/s. KUL,KNI, 14-15.05.2004r. 39

Funkcje skrótu: SHA-1: - efektywność: 3592 LC, -częstotliwość: 64 MHz, - przepustowość: 103 Mb/s, RIPEMD: - efektywność: 4097 LC, -częstotliwość: 64 MHz, - przepustowość: 101 Mb/s, MD5: - efektywność: 3222 LC, -częstotliwość: 64 MHz, - przepustowość: 110 Mb/s. KUL,KNI, 14-15.05.2004r. 40

Podsumowanie Przyszłość akceleratorów kryptograficznych: -rozwój układów programowalnych, - rozwój sieci VPN, - wzrost ilości informacji w internecie, - Quo Vadis Cryptology? AES under attack. (Camellia, Misty1,?) - Xilinx przyszlosc? (wsparcie kryptografii) KUL,KNI, 14-15.05.2004r. 41

Dziekuję za uwagę. Pytania??? rogawskim@prokom.pl