Wykorzystanie bramek prądowych i napięciowych CMOS do realizacji funkcji bloku S-box algorytmu Whirlpool

Podobne dokumenty
Minimalizacja funkcji logicznych w algebrze bramek prądowych

PL B1. POLITECHNIKA WARSZAWSKA, Warszawa, PL BUP 04/11. KRZYSZTOF GOŁOFIT, Lublin, PL WUP 06/14

ZESZYTY NAUKOWE WYDZIAŁU ETI POLITECHNIKI GDAŃSKIEJ Nr 5 Seria: Technologie Informacyjne 2007

Ewolucyjne projektowanie i optymalizacja kombinacyjnych układów cyfrowych ze względu na liczbę tranzystorów

Projekt i weryfikacja praktyczna podstawowych bloków układów FPGA zbudowanych w oparciu o bramki prądowe

Komputerowa symulacja bramek w technice TTL i CMOS

Komputerowa symulacja bramek w technice TTL i CMOS

A gdyby tak posterować prądem...

Lekcja na Pracowni Podstaw Techniki Komputerowej z wykorzystaniem komputera

Przerzutniki prądowe dla logiki wielowartościowej i arytmetyki resztowej

Automatyzacja procesu implementacji układów cyfrowych w technologii prądowych układów FPGA

Koszt literału (literal cost) jest określony liczbą wystąpień literału w wyrażeniu boolowskim realizowanym przez układ.

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

Podstawy elektroniki cz. 2 Wykład 2

Architektura komputerów Wykład 2

Gdynia, dr hab. inż. Krzysztof Górecki, prof. nadzw. AMG Katedra Elektroniki Morskiej Akademia Morska w Gdyni

Elektronika cyfrowa i mikroprocesory. Dr inż. Aleksander Cianciara

SYNTEZA AUTOMATÓW SKOŃCZONYCH Z WYKORZYSTANIEM METOD KODOWANIA WIELOKROTNEGO

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

Tranzystor JFET i MOSFET zas. działania

Podstawy Automatyki. Wykład 13 - Układy bramkowe. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Układy cyfrowe. Najczęściej układy cyfrowe służą do przetwarzania sygnałów o dwóch poziomach napięć:

Ćw. 8 Bramki logiczne

MODEL KOMÓRKI UKŁADU FPGA ZBUDOWANEGO W OPARCIU O BRAMKI PRĄDOWE

Ćwiczenie 25 Temat: Interfejs między bramkami logicznymi i kombinacyjne układy logiczne. Układ z bramkami NOR. Cel ćwiczenia

Sterowniki Programowalne (SP)

Model reprogramowalnego prądowego układu działającego w logice wielowartościowej

Ćwiczenie 1 Program Electronics Workbench

Weryfikacja logiczna projektów VHDL realizowanych w reprogramowalnych układach FPGA pracujących w trybie prądowym

Laboratorium podstaw elektroniki

Ćwiczenie ZINTEGROWANE SYSTEMY CYFROWE. Pakiet edukacyjny DefSim Personal. Analiza prądowa IDDQ

Elementy cyfrowe i układy logiczne

Ćwiczenie 23. Temat: Własności podstawowych bramek logicznych. Cel ćwiczenia

ID1UAL1 Układy arytmetyczno-logiczne Arithmetic logic systems. Informatyka I stopień ogólnoakademicki stacjonarne

Cyfrowe układy scalone

Synteza układów kombinacyjnych

Zadania badawcze prowadzone przez Zakład Technik Programowania:

dr inż. Andrzej Skorupski Wydział Elektroniki i Technik Informacyjnych Politechnika Warszawska

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

LABORATORIUM PODSTAW ELEKTRONIKI. Komputerowa symulacja układów różniczkujących

Laboratorium podstaw elektroniki

Podstawy Automatyki. Wykład 13 - Układy bramkowe. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

PROJEKTOWANIE UKŁADÓW MIKROPROGRAMOWANYCH Z WYKORZYSTANIEM WBUDOWANYCH BLOKÓW PAMIĘCI W MATRYCACH PROGRAMOWALNYCH

Wstęp do Techniki Cyfrowej... Układy kombinacyjne

Technika Cyfrowa 2 wykład 4: FPGA odsłona druga technologie i rodziny układów logicznych

WSTĘP. Budowa bramki NAND TTL, ch-ka przełączania, schemat wewnętrzny, działanie 2

Układy kombinacyjne Y X 4 X 5. Rys. 1 Kombinacyjna funkcja logiczna.

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

b) bc a Rys. 1. Tablice Karnaugha dla funkcji o: a) n=2, b) n=3 i c) n=4 zmiennych.

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

Elementy logiki. Algebra Boole a. Analiza i synteza układów logicznych

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

IZ1UAL1 Układy arytmetyczno-logiczne Arithmetic logic systems. Informatyka I stopień ogólnoakademicki niestacjonarne

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

Katedra Przyrządów Półprzewodnikowych i Optoelektronicznych Laboratorium Przyrządów Półprzewodnikowych. Ćwiczenie 4

Zadania do wykładu 1, Zapisz liczby binarne w kodzie dziesiętnym: ( ) 2 =( ) 10, ( ) 2 =( ) 10, (101001, 10110) 2 =( ) 10

KARTA PRZEDMIOTU. Podstawy elektroniki cyfrowej B6. Fundamentals of digital electronic

dr inż. Małgorzata Langer Architektura komputerów

Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014

Podstawy układów mikroelektronicznych

Minimalizacja form boolowskich

Elementy cyfrowe i układy logiczne

Język opisu sprzętu VHDL

Część 2. Funkcje logiczne układy kombinacyjne

Metody optymalizacji soft-procesorów NIOS

mgr inż. Stefana Korolczuka

Podstawy techniki cyfrowej i mikroprocesorowej - opis przedmiotu

Modelowanie reprogramowalnych układów prądowych pracujących w logice. wielowartościowej.

Cyfrowe układy scalone

Układy logiki rozmytej. Co to jest?

Układy cyfrowe w technologii CMOS

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Inwerter logiczny. Ilustracja 1: Układ do symulacji inwertera (Inverter.sch)

2 Kryptografia: algorytmy symetryczne

Automatyka Treść wykładów: Literatura. Wstęp. Sygnał analogowy a cyfrowy. Bieżące wiadomości:

Projektowanie. Projektowanie mikroprocesorów

Badanie działania bramki NAND wykonanej w technologii TTL oraz układów zbudowanych w oparciu o tę bramkę.

Podstawowe układy cyfrowe

Projektowanie układów na schemacie

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

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

Przetwarzanie energii elektrycznej w fotowoltaice lato 2015/16. dr inż. Łukasz Starzak

Programowane połączenia w układach FPMA

Bramki logiczne V MAX V MIN

Projektowanie systemów za pomocą języków wysokiego poziomu ESL

Ćw. 7: Układy sekwencyjne

Architektura komputerów ćwiczenia Bramki logiczne. Układy kombinacyjne. Kanoniczna postać dysjunkcyjna i koniunkcyjna.

1.1. Standard szyfrowania DES

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

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

dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL

LABORATORIUM PODSTAW ELEKTRONIKI. Komputerowe pomiary parametrów bramki NAND TTL

Ćwiczenie 24 Temat: Układy bramek logicznych pomiar napięcia i prądu. Cel ćwiczenia

Bramki logiczne Instrukcja do ćwiczeń laboratoryjnych

Rys. 2. Symbole dodatkowych bramek logicznych i ich tablice stanów.

LABORATORIUM PROJEKTOWANIA UKŁADÓW VLSI

Architektura komputerów, Informatyka, sem.iii. Sumatory

Elektronika i techniki mikroprocesorowe

ELEMENTY UKŁADÓW ENERGOELEKTRONICZNYCH

Transkrypt:

Magdalena Rajewska Robert Berezowski Oleg Maslennikow Adam Słowik Wydział Elektroniki i Informatyki Politechnika Koszalińska ul. JJ Śniadeckich 2, 75-453 Koszalin Wykorzystanie bramek prądowych i napięciowych CMOS do realizacji funkcji bloku S-box algorytmu Whirlpool Słowa kluczowe: Ataki SCA i PAA, algorytmy kryptograficzne, funkcje mieszające, blok S-box, bramki prądowe, minimalizacja opisów funkcji logicznych, metoda Quine a-mccluskey a STRESZCZENIE Niniejsza praca uzasadnia stosowanie bramek prądowych w jednostkach przetwarzających systemów kryptograficznych odpornych na ataki PAA. W pracy przedstawiono porównanie trzech projektów układów zbudowanych z bramek prądowych i realizujących funkcje bloku S-box w algorytmie kryptograficznym Whirlpool z analogicznymi trzema projektami zbudowanymi z klasycznych, napięciowych bramek CMOS. Projekty układów opracowano w oparciu o metodę minimalizacji funkcji logicznych Quine a-mccluskey a (w przypadku układów prądowych w oparciu o zmodyfikowaną przez autorów metodę Quine a-mccluskey a), a następnie dokonano optymalizacji dwóch najlepszych projektów (tak prądowego, jak i napięciowego) w oparciu o opracowany przez autorów algorytm ewolucyjny. Porównanie zaprojektowanych układów prądowych z ich odpowiednikami napięciowymi wykonano pod kątem liczby wykorzystanych w układzie bramek, połączeń, tranzystorów oraz czasów opóźnienia. 1. WPROWADZENIE Od połowy lat 90-tych na Politechnice Koszalińskiej prowadzono badania nad cyfrowymi bramkami prądowymi, w których poziomy logiczne na wejściu i wyjściu określane są poprzez odpowiednie wartości natężenia prądu [1]. Równolegle prowadzono badania nad algebrą logiki bramek prądowych, która wprowadza matematyczny aparat do opisu i minimalizacji opisów funkcji logicznych przeznaczonych do realizacji w układach prądowych. W ramach wykonanych badań ustalono, że układy prądowe mogą być wykorzystane m.in. jako podukłady jednostek przetwarzających w systemach kryptograficznych i innych systemach komputerowych wymagających ochrony

przetwarzanych danych od ataków polegających na łamaniu sprzętu (ang. Side Channel Attacks), a w szczególności od ataków polegających na podsłuchiwaniu systemu, tj. na analizie zmian poboru mocy i pola magnetycznego podczas działania systemu (ang. Power Analysis Attacks) [2, 3]. Obecnie rozwijanych jest kilka metod zabezpieczających przed atakami PAA, które działają na poziomie oprogramowania systemu (np. poprzez ujednolicenie czasu trwania operacji, wprowadzenie operacji nadmiarowych, itd.) lub na poziomie sprzętu (np. wprowadzenie dodatkowych, nadmiarowych ścieżek w układzie, wprowadzenie generatorów szumu, układów uśredniających pobór mocy, itd.). Ponieważ bramki prądowe pobierają prawie stały prąd ze źródła zasilania zarówno w stanach stabilnych, jak i podczas przełączania się, atak polegający na analizie zmian poboru mocy i pola magnetycznego układu prądowego podczas jego działania jest skazany na niepowodzenie w znacznie większym stopniu, niż w przypadku klasycznych systemów cyfrowych. Tematyka zabezpieczenia od ataków PAA jest rozwijana od niedawna, poza tym, nie jest szeroko omawiana w literaturze naukowej. Wśród dostępnych prac, np. w pracy [4] proponuje się wykorzystanie znanej od ok. 10 lat technologii krzemowej Dynamic Current Mode Logic, która wywodzi się z technologii CML (ang. current-mode logic) i ECL (ang. emitter coupled logic). Udowadnia się, że jest ona bardziej odporna na ataki PAA niż inne znane technologie krzemowe, ponieważ cechuje się niskim poziomem zakłóceń podłożowych. Należy jednak zaznaczyć, że bramki DCML są bardziej złożone, niż bramki prądowe, mimo że są znacznie szybsze od nich. W Polsce tematyka odporności systemów na ataki PAA jest od niedawna rozwijana w Instytucie Systemów Elektronicznych Politechniki Warszawskiej, gdzie na razie opublikowano tylko koncepcję nowych, tzw. różnicowych bramek prądowych [5]. Ze względu na potencjalne zalety wykorzystania układów prądowych w systemach odpornych na ataki PAA wzrasta potrzeba opracowania sposobów i metod projektowania cyfrowych układów prądowych nadających się do realizacji komputerowej i uwzględniających właściwości funkcjonalne bramek. Autorom udało się dostosować znaną metodę minimalizacji funkcji binarnych Quine a-mccluskey a do minimalizacji funkcji w algebrze bramek prądowych [6]. W celu weryfikacji efektywności nowej metody autorzy opracowali (w oparciu o nią) dwa projekty układów prądowych realizujących funkcje bloku S-box w algorytmie kryptograficznym Whirlpool, a następnie wykonali porównanie otrzymanych wyników z projektami dwóch analogicznych układów zbudowanych z klasycznych bramek napięciowych CMOS. Kolejna optymalizacja dwóch lepszych projektów (prądowego i napięciowego) w oparciu o opracowany przez autorów algorytm ewolucyjny pozwoliła nieznacznie zmniejszyć złożoność sprzętową obu układów i potwierdziła wniosek autorów, że powierzchnie zajmowane w układzie ASIC przez układ napięciowy i jego odpowiednik prądowy są porównywalne. Otrzymane wyniki badań świadczą również o zasadności wykorzystania układów prądowych w jednostkach przetwarzających systemów kryptograficznych odpornych na ataki PAA. 2. ALGORYTM WHIRLPOOL Algorytm Whirlpool jest jednokierunkową funkcją mieszająca (ang. hashing function) [8] dedykowaną dla algorytmów szyfrujących używających 512-bitowe klucze i operujących na 512-bitowych blokach danych przetwarzanych w 10 rundach. Struktura algorytmu Whirlpool (każda runda oraz klucze) została zaprojektowana zgodnie ze strategią Wide Trail [7] i jest dostosowana do realizacji programowej w procesorach 8- lub 64-bitowych. Jednak najbardziej wydajną realizacją algorytmu Whirlpool jest jego bezpośrednia realizacja sprzętowa, np. w układach ASIC lub FPGA [8]. Jednym z głównych elementów algorytmu Whirlpool jest pseudo-losowy generator S-box, który przedstawia sobą

zbiór ośmiu 8-argumentowych funkcji binarnych F1, F2,..., F8. Rys. 1a reprezentuje tabele prawdy wszystkich w/w funkcji bloku S-box, natomiast rys. 1b reprezentuje diagram Veitcha- Karnaugha funkcji F1. Istnieją dwa różne sposoby realizacji sprzętowej bloku S-box [8]. a) b) Rys. 1. Tablica prawdy bloku S-box (a) oraz diagram Veitcha-Karnaugha (b) funkcji F1 algorytmu Whirlpool Pierwszy sposób - to bezpośrednia minimalizacja opisów funkcji F1, F2,..., F8 i następnie ich implementacja w postaci odpowiedniego układu kombinacyjnego. Drugi sposób jest oparty o możliwość dekompozycji funkcjonalnej bloku (generatora) S-box na trzy mniejsze podbloki a) c) b) E,E -1,R 00 01 02 03 00 1,F,7 B,0,C 9,D,B C,7,D 10 D,B,E 6,E,4 F,5,9 3,A,F 20 E,9,6 8,2,3 7,C,8 4,1,A 30 A,3,2 2,4,5 5,8,1 0,6,0 Rys. 3. Struktura bloku S-box (a) oraz tabele prawdy podbloków E, E -1 i R (b), realizacja bloku R na bramkach prądowych (c)

E, E -1 i R, połączonych między sobą za pomocą funkcji logicznej XOR zgodnie z rys. 3a. Każdy z bloków E, E -1 oraz R przedstawia sobą zbiór czterech 4-argumentowych funkcji binarnych, a ich tabele prawdy przedstawiono na rys. 3b. Należy zaznaczyć, że w przypadku realizacji bloku S-box w postaci układu kombinacyjnego, zastosowanie pierwszego sposobu powoduje powstanie układu bardziej złożonego, niż w przypadku zastosowania sposobu drugiego (pod względem liczby wykorzystanych bramek CMOS). Jednak niewątpliwą zaletą stosowania pierwszego sposobu jest małe opóźnienie układu S-box (minimum 3 bramki), podczas gdy dla układu złożonego z bloków E, E -1 oraz R opóźnienie to będzie kilka razy większe. W związku z tym, w następnym rozdziale autorzy najpierw przedstawiają porównanie dwóch projektów układów kombinacyjnych (prądowego i napięciowego) realizujących funkcję F1 bloku S-box i zaprojektowanych w oparciu o bezpośrednią minimalizację opisu funkcji F1. Następnie autorzy przedstawiają porównanie dwóch projektów układów kombinacyjnych (znowu prądowego i napięciowego) realizujących wszystkie funkcje F1, F2,..., F8 bloku S-box zbudowanego z podbloków E, E -1 i R. 3. PROJEKTY UKŁADÓW S-BOX OPRACOWANE W OPARCIU O METODĘ QUINE A-McCLUSKEY A Metoda Quine a-mccluskey a, podobnie jak metoda diagramów Veitcha-Karnaugha, służy do minimalizacji funkcji binarnych, ale w przeciwieństwie do niej nadaje się do realizacji komputerowej (w przypadku minimalizacji funkcji o niedużej liczbie argumentów n, np. n < 25). W pracy [9] autorzy referatu zaproponowali modyfikację metody Quine a- McCluskey a, mającą na celu możliwość jej wykorzystania do minimalizacji funkcji binarnych przeznaczonych do realizacji na bramkach prądowych. Modyfikacja ta głównie polega na uzupełnieniu oryginalnej metody procedurą wyszukiwania (wśród listy implikantów pierwotnych lub prostych funkcji wejściowej) m-argumentowych funkcji binarnych trzech różnych typów, które nazwano funkcjami wzorcowymi SBlok(m), XBlok(m) i TBlok(m), m n. Wyżej wymienione funkcje wzorcowe zostały wybrane ze względu na to, że ich realizacja na bramkach prądowych jest prostsza od realizacji w układach klasycznych CMOS pod względem liczby wykorzystanych bramek, liczby połączeń, a w przypadku funkcji TBlok(m) nawet pod względem liczby tranzystorów wykorzystanych do budowy bramek. Druga część metody Quine a-mccluskey a (wybór minimalnego pokrycia) pozostaje bez zmian. Należy zaznaczyć, że złożoność obliczeniowa zmodyfikowanej metody wzrasta o O(L 2 ) operacji porównania, gdzie L liczba (n-1) argumentowych implikantów funkcji wejściowej. Ze względu na małą liczbę argumentów funkcji bloku S-box, do opracowania obu przedstawionych w tym rozdziale projektów układów prądowych zastosowana została właśnie zmodyfikowana metoda Quine a-mccluskey a. F1 = a1 + a2 + a3 + a4 + K = y2 + y2 + y2 + y2 + K Na rys. 1b, w celu klarowności przedstawienia wyników minimalizacji, przedstawiono diagram Veitcha-Karnaugha funkcji F1 układu S-box, z zaznaczonymi, różnymi odcieniami szarości, kratkami formującymi odpowiednio funkcje wzorcowe: TBlok(5) a1, TBlok(4) a2 i TBlok(3) a3 i a4. Odpowiadające odnalezionym funkcjom wyrażenia przedstawiono we wzorze (1), który reprezentuje fragment opisu funkcji F1 w algebrze bramek prądowych. Tab. 1 przedstawia podstawowe parametry układu prądowego realizującego funkcję F1 i jego odpowiednika napięciowego. Porównanie parametrów świadczy o około dwukrotnie większej liczbie tranzystorów w układzie prądowym oraz o około dwukrotnie mniejszej liczbie (1)

połączeń (liczbie wejść i wyjść wszystkich bramek w układzie). Wykorzystując zmodyfikowaną metodę Quine a-mccluskey a do minimalizacji wszystkich funkcji bloków E, E -1 i R, uzyskano 12 wyrażeń opisujących w/w funkcje w algebrze bramek prądowych. Cztery z tych 12 wyrażeń, mianowicie wyrażenia opisujące poszczególne funkcje (wyjścia) R0, R1, R2 i R3 bloku R reprezentują wzory (2) (5). W oparciu o otrzymane wyrażenia opracowano projekt całego układu prądowego realizującego blok S-box. Tabela 1. Podstawowe parametry układów realizujących funkcję F1 Układ CMOS bramek tranzystorów połączeń Opóźnienie bramek] Prądowy 60 1345 255 3 Napięciowy 54 714 438 3 Podstawowe parametry tego układu oraz wszystkich jego podukładów przedstawiono w tabeli 2. Tabela ta zawiera również podstawowe parametry układów E, E -1, R i S-box zbudowanych z bramek napięciowych i zaprojektowanych w oparciu o oryginalną metodę Quine a-mccluskey a. Porównanie danych z tabeli 2 potwierdza poprzedni wniosek autorów o około dwukrotnie większej liczbie tranzystorów w układach prądowych oraz o około dwukrotnie mniejszej liczbie połączeń w stosunku do odpowiednich układów napięciowych. R 3 = x1 R 2 = x4 R 1 = x1 (4) R 0 = x1 (5) Tabela 2. Podstawowe parametry układów realizujących bloki E, E -1, R oraz S-box Nazwa bloku Układy prądowe Układy napięciowe bloków w układzie S-box połączeń bramek tranzystorów połączeń bramek (2) (3) tranzystorów E 2 2*45 2*14 2*242 2*56 2*18 2*112 E -1 2 2*42 2*15 2*226 2*70 2*20 2*140 R 1 1*50 1*16 1*260 1*54 1*18 1*108 XOR 12 12*6 12*1 12*19 12*24 12*1 12*12 Cały układ S-box 296 86 1424 594 106 756 4. WYKORZYSTANIE ALGORYTMÓW GENETYCZNYCH DO OPTYMALIZACJI ZAPROJEKTOWANYCH UKŁADÓW S-BOX W artykule [8] stwierdzono, że cały układ S-box może być zrealizowany na 101 bramkach logicznych typu NOT, AND, OR i XOR. W związku z tym, że opracowany przez autorów projekt napięciowego układu S-box ma większą złożoność sprzętową, autorzy podjęli próbę zoptymalizowania zarówno tego układu, jak i jego odpowiednika prądowego w oparciu o opisane w pracach [10, 11] algorytmy ewolucyjne. W wyniku optymalizacji otrzymano projekt układu napięciowego, w którym liczba bramek oraz opóźnienie układu są takie same, jak w układzie znanym [8]. Natomiast pod względem liczby tranzystorów zoptymalizowany układ okazał się o około 25% prostszym od znanego (co reprezentuje tabela

6.) Optymalizacja projektu układu prądowego S-box również się powiodła, jednak tylko pod względem liczby wykorzystanych bramek. Porównanie danych z tabeli 6 po raz kolejny potwierdza wniosek autorów o około dwukrotnie większej liczbie tranzystorów w układach prądowych w stosunku do odpowiednich układów napięciowych. Tabela 6. Podstawowe parametry układów S-box zoptymalizowanych za pomocą algorytmu ewolucyjnego Układ S-box bramek tranzystorów Opóźnienie [bramek] Znany [8] 101 952 35 Napięciowy 101 726 35 Prądowy 83 1400 11 5. PODSUMOWANIE Głównym zamierzeniem autorów pracy było porównanie złożoności sprzętowej projektów układów prądowych i napięciowych (realizujących te same funkcje), otrzymanych w oparciu o różne metody minimalizacji funkcji logicznych: oryginalnej i zmodyfikowanej metody Quine a-mccluskey a oraz algorytmów genetycznych. Za przykład posłużył układ S- box algorytmu kryptograficznego Whirlpool oraz jego podbloki E, E -1 i R. Wyniki porównania wszystkich opracowanych projektów (napięciowych i prądowych) świadczą o około dwukrotnie większej liczbie tranzystorów w układach prądowych oraz o około dwukrotnie mniejszej liczbie połączeń w tych układach w stosunku do odpowiednich układów napięciowych (przy porównywalnym czasie opóźnienia). Ten wniosek pozwala wysunąć tezę o tym, że powierzchnie zajmowane w układach ASIC przez układ napięciowy i jego odpowiednik prądowy będą porównywalne. Otrzymane wyniki badań świadczą również o zasadności wykorzystania układów prądowych w jednostkach przetwarzających systemów kryptograficznych odpornych na ataki PAA. BIBLIOGRAFIA [1] O. Maslennikow Podstawy teorii zautomatyzowanego projektowania reprogramowalnych równoległych jednostek przetwarzających dla jednoukładowych systemów czasu rzeczywistego, Wydawnictwo Uczelniane Politechniki Koszalińskiej, Koszalin, 2004r., stron 273. [2] ECRYPT, Electromagnetic Analysis and Fault Attacks: State of the Art, 2005. [3] J.J. Quisduater, F. Koene, Side Channel Attacks: State of the Art, 2002. [4] Mace F., Standaert F.-X., Quisquater J.-J., Legat J.-D. A Design Methodology for Secured ICs Using Dynamic Current Mode Logic. Proc. Int. Workshop PATMOS 2005, pp.550-560 [5] Gołofit K. Różnicowa technologia prądowa dla zastosowań ochrony informacji oraz obliczeń w GF(3n). Prace V Konf. Krajowej KKE 2006, s.135-140. [6] R. Berezowski, Jednostki operacyjne zbudowane w oparciu o bramki prądowe dla jednoukładowych systemów VLSI, Rozprawa doktorska, Koszalin, 2007, stron 150 [7] J. Daemen, V. Rijmen, The Wide Trail Design Strategy [8] P. S. L. M. Barreto, V. Rijmen, The Whirlpool Hashing Function [9] M. Rajewska, R. Berezowski, O. Maslennikow, Wykorzystanie algorytmu Quine a McCluskey a do optymalizacji układów cyfrowych zbudowanych z bramek prądowych, XIV Krajowa Konferencja KOWBAN 2007, Szklarska Poręba 24-26.10.2007, s. 81-86. [10] A. Słowik, M. Białko, "Evolutionary Design and Optimization of Combinational Digital Circuits with Respect to Transistor Count", Bulletin of the Polish Academy of Sciences, Technical Sciences, Volume 54, Issue 4, pp. 437-442, 2006. [11] A. Słowik, Projektowanie i optymalizacja cyfrowych układów elektronicznych przy użyciu algorytmów ewolucyjnych, Rozprawa doktorska, Koszalin, 2007.