Teorija kodiranja in kriptografija 2013/ AES

Podobni dokumenti
Slide 1

FGG14

Urejevalna razdalja Avtorji: Nino Cajnkar, Gregor Kikelj Mentorica: Anja Petković 1 Motivacija Tajnica v posadki MARS - a je pridna delavka, ampak se

Ime in priimek: Vpisna št: FAKULTETA ZA MATEMATIKO IN FIZIKO Oddelek za matematiko Statistika Pisni izpit 6. julij 2018 Navodila Pazljivo preberite be

Optimizacija z roji delcev - Seminarska naloga pri predmetu Izbrana poglavja iz optimizacije

FGG13

Vaje: Matrike 1. Ugani rezultat, nato pa dokaži z indukcijo: (a) (b) [ ] n 1 1 ; n N 0 1 n ; n N Pokaži, da je množica x 0 y 0 x

Microsoft PowerPoint _12_15-11_predavanje(1_00)-IR-pdf

Vrste

3. Metode, ki temeljijo na minimalnem ostanku Denimo, da smo z Arnoldijevim algoritmom zgenerirali ON bazo podprostora Krilova K k (A, r 0 ) in velja

RAM stroj Nataša Naglič 4. junij RAM RAM - random access machine Bralno pisalni, eno akumulatorski računalnik. Sestavljajo ga bralni in pisalni

SESTAVA VSEBINE MATEMATIKE V 6

REED-SOLOMONOVE KODE Aleksandar Jurišić Arjana Žitnik 6. junij 2004 Math. Subj. Class. (2000): 51E22, 94B05?, 11T71 Reed-Solomonove kode so izjemno us

4.Racionalna števila Ulomek je zapis oblike. Sestavljen je iz števila a (a ), ki ga imenujemo števec, in iz števila b (b, b 0), ki ga imenujemo imenov

Microsoft Word - M docx

Microsoft Word - Seštevamo stotice.doc

PREDMETNI KURIKULUM ZA RAZVOJ METEMATIČNIH KOMPETENC

C:/Users/Matevž Èrepnjak/Dropbox/FKKT/TESTI-IZPITI-REZULTATI/ /Izpiti/FKKT-avgust-17.dvi

Poročilo za 1. del seminarske naloge- igrica Kača Opis igrice Kača (Snake) je klasična igrica, pogosto prednaložena na malce starejših mobilnih telefo

Ime in priimek: Vpisna št: FAKULTETA ZA MATEMATIKO IN FIZIKO Oddelek za matematiko Verjetnost Pisni izpit 5. februar 2018 Navodila Pazljivo preberite

Prekinitveni način delovanja PLK Glavni program (OB1; MAIN) se izvaja ciklično Prekinitev začasno ustavi izvajanje glavnega programa in zažene izvajan

Ime in priimek: Vpisna št: FAKULTETA ZA MATEMATIKO IN FIZIKO Oddelek za matematiko Statistika Pisni izpit 31. avgust 2018 Navodila Pazljivo preberite

Kazalo 1 DVOMESTNE RELACIJE Operacije z dvomestnimi relacijami Predstavitev relacij

Turingov stroj in programiranje Barbara Strniša Opis in definicija Definirajmo nekaj oznak: Σ abeceda... končna neprazna množica simbolo

Microsoft Word - Analiza rezultatov NPZ matematika 2018.docx

C:/Users/Matevž Èrepnjak/Dropbox/FKKT/testi in izpiti/ /IZPITI/FKKT-februar-14.dvi

Microsoft Word - vaje2_ora.doc

Microsoft Word - avd_vaje_ars1_1.doc

NAJRAJE SE DRUŽIM S SVIČNIKOM, SAJ LAHKO VADIM ČRTE IN KRIVULJE, PA VELIKE TISKANE ČRKE IN ŠTEVILKE DO 20. Preizkusite znanje vaših otrok in natisnite

eAsistent izpis

resitve.dvi

DKMPT

Univerza v Mariboru Fakulteta za naravoslovje in matematiko Oddelek za matematiko in računalništvo Enopredmetna matematika IZPIT IZ VERJETNOSTI IN STA

CpE & ME 519

Delavnica Načrtovanje digitalnih vezij

predstavitev fakultete za matematiko 2017 A

Microsoft Word - N _moderacija.docx

INDIVIDUALNI PROGRAM PREDMET: MATEMATIKA ŠOL. LETO 2015/2016 UČITELJ: ANDREJ PRAH Učenec: Razred: 7. Leto šolanja: Ugotovitev stanja: Učenec je lani n

FGG02

LaTeX slides

Osnove matematicne analize 2018/19

Mladi za napredek Maribora srečanje DOLŽINA»SPIRALE«Matematika Raziskovalna naloga Februar 2015

Univerza v Ljubljani Fakulteta za računalništvo in informatiko Fakulteta za matematiko in fiziko Janko Purgaj Implementacija kriptosistema NTRUEncrypt

PKP projekt SMART WaterNet_Opis

UNIVERZA V LJUBLJANI FAKULTETA ZA MATEMATIKO IN FIZIKO Katja Ciglar Analiza občutljivosti v Excel-u Seminarska naloga pri predmetu Optimizacija v fina

EKVITABILNE PARTICIJE IN TOEPLITZOVE MATRIKE Aleksandar Jurišić Politehnika Nova Gorica in IMFM Vipavska 13, p.p. 301, Nova Gorica Slovenija Štefko Mi

Matematika 2

N

resitve.dvi

C:/Users/Matevz/Dropbox/FKKT/TESTI-IZPITI-REZULTATI/ /Izpiti/FKKT-januar-februar-15.dvi

1. izbirni test za MMO 2018 Ljubljana, 16. december Naj bo n naravno število. Na mizi imamo n 2 okraskov n različnih barv in ni nujno, da imam

APS1

Namesto (x,y)R uporabljamo xRy

H-Razcvet

Procesorski sistemi v telekomunikacijah

MATLAB programiranje MATLAB... programski jezik in programersko okolje Zakaj Matlab? tipičen proceduralni jezik enostaven za uporabo hitro učenje prir

Vektorji - naloge za test Naloga 1 Ali so točke A(1, 2, 3), B(0, 3, 7), C(3, 5, 11) b) A(0, 3, 5), B(1, 2, 2), C(3, 0, 4) kolinearne? Naloga 2 Ali toč

ŠTEVCI PROMETA IN NJIHOVA UPORABA ZA NAMENE STATISTIK ČRT GRAHONJA

3. Preizkušanje domnev

Uvodno predavanje

NAVODILA AVTORJEM PRISPEVKOV

MATEMATIKA 2. LETNIK GIMNAZIJE G2A,G2B Sestavil: Matej Mlakar, prof. Ravnatelj: Ernest Simončič, prof. Šolsko leto 2011/2012 Število ur: 140

Diapozitiv 1

Microsoft Word - M docx

N

Lehmerjev algoritem za racunanje najvecjega skupnega delitelja

MAGIČNI KVADRATI DIMENZIJE 4n+2

5 SIMPLICIALNI KOMPLEKSI Definicija 5.1 Vektorji r 0,..., r k v R n so afino neodvisni, če so vektorji r 1 r 0, r 2 r 0,..., r k r 0 linearno neodvisn

COM(2007)634/F1 - SL

Funkcije in grafi

(Microsoft PowerPoint - vorsic ET 9.2 OES matri\350ne metode 2011.ppt [Compatibility Mode])

Slide 1

Analiza dosežkov poskusnega preverjanja znanja v 3. razredu iz matematike

Uradni list RS - 12(71)/2005, Mednarodne pogodbe

Mere kompleksnih mrež (angl. Network Statistics) - Seminarska naloga pri predmetu Izbrana poglavja iz diskretne matematike

PowerPoint Presentation

UNIVERZA V LJUBLJANI PEDAGOŠKA FAKULTETA NEŽKA RUGELJ SHOROV ALGORITEM DIPLOMSKO DELO LJUBLJANA, 2017

Linearna algebra - povzetek vsebine Peter Šemrl Jadranska 21, kabinet 4.10 Izpitni režim: Kolokviji in pisni izpiti so vsi s

EVROPSKA KOMISIJA Bruselj, C(2018) 6665 final IZVEDBENI SKLEP KOMISIJE (EU).../ z dne o določitvi ukrepov za pripravo seznama os

LaTeX slides

Diapozitiv 1

rm.dvi

00main.dvi

NAVODILA ZA IZPOLNJEVANJE OBRAZCA

Identifikacija Mednarodna raziskava trendov znanja matematike in naravoslovja Vprašalnik za učitelje Matematika International Association for the Eval

EVROPSKA KOMISIJA Bruselj, C(2018) 7597 final IZVEDBENA UREDBA KOMISIJE (EU) / z dne o vzpostavitvi začasnega neposrednega stati

Avtomatizirano modeliranje pri celostnem upravljanju z vodnimi viri

Diapozitiv 1

Microsoft Word - M doc

Numeri na analiza - podiplomski ²tudij FGG doma e naloge - 1. skupina V prvem delu morate re²iti toliko nalog, da bo njihova skupna vsota vsaj 10 to k

3.indd

DN5(Kor).dvi

Microsoft PowerPoint - MK 3 tehnicni sistemi.ppt

Microsoft PowerPoint - MK 3 tehnicni sistemi.ppt

FAKULTETA ZA STROJNIŠTVO Matematika 2 Pisni izpit 9. junij 2005 Ime in priimek: Vpisna št: Zaporedna številka izpita: Navodila Pazljivo preberite bese

GeomInterp.dvi

6.1 Uvod 6 Igra Chomp Marko Repše, Chomp je nepristranska igra dveh igralcev s popolno informacijo na dvo (ali vec) dimenzionalnem prostoru

scratch

Microsoft PowerPoint - RKO6.ppt

Transkripcija:

Teorija kodiranja in kriptografija 23/24 AES Arjana Žitnik Univerza v Ljubljani, Fakulteta za matematiko in fiziko Ljubljana, 8. 3. 24

AES - zgodovina Septembra 997 je NIST objavil natečaj za izbor nove simetrične bločne šifre AES. Specifikacije: bločna dolžina 28 dolžina ključev 28, 92, 256 prosta uporaba Prispelo je 5 ustreznih predlogov iz 2 držav. Kriterij izbire: varnost učinkovitost (časovna in prostorska) značilnosti algoritma in implementacije (fleksibilnost, preprostost,...)

avgust 999: izbranih je 5 finalistov MARS RC6 Rijndael Serpent Twofish oktober 2: končni izbor je Rijndael (Rijmen, Daemen, Belgija) maj 22: AES sprejet kot US Federal Information Processing Standard (FIPS 97). junij 23: ameriška vlada odobrila AES za zaščito zaupnih podatkov.

Opis kriptosistema AES abeceda Σ = {, }, zlog = 8 znakov (bitov), beseda = 4 zlogi = 32 bitov. AES je SPN omrežje + dodatna linearna transformacija. Parametri: bločna dolžina: 28 bitov = 6 zlogov = 4 besede, dolžina ključa N k (v besedah) je lahko 4, 6 ali 8, število krogov N r je enaka N k + 6, tj., 2 ali 4. razpored podključev: tabela besed velikosti 4N r + 4, rk = rk, rk,..., rk 4Nr +3, kjer je rk i beseda. Opomba: AES podpira tudi bločne dolžine 6 ali 8 besed; omejili se bomo na opis s 4 besedami.

SPN-omrežje

Podatkovne strukture AES besedilo shranimo v tabelo zlogov velikosti 4 4: b = b, b,... b 3,3 = b, b, b,2 b,3 b, b, b,2 b,3 b 2, b 2, b 2,2 b 2,3 b 3, b 3, b 3,2 b 3,3. Tudi kriptogram c = c, c,... c 3,3 shranimo v tabelo zlogov velikosti 4 4.

Stanje je delni rezultat v posameznih krogih: s = s, s,... s 3,3 = s, s, s,2 s,3 s, s, s,2 s,3 s 2, s 2, s 2,2 s 2,3 s 3, s 3, s 3,2 s 3,3.

Kodiranje pri AES Podatki: byte b[..3,..3] besedilo word k[..4n r + 3] razpored podključev Rezultat: byte c[..3,..3] kriptogram Lokalne spremenljivke: byte s[..3,..3] stanje int r števec krogov Pomožne funkcije: AddRoundKey, SubBytes, ShiftRows, MixColumns

Postopek: s = b s = AddRoundKey(s, rk[..3]) (primešamo podključ) za r =, 2,... N r ponovi SubBytes(s) (substitucija) ShiftRows(s) (permutacija) MixColumns(s) (linearna transformacija) AddRoundKey(s, rk[4r..4r + 3]) (primešamo podključ) (Zadnji krog) SubBytes(s) ShiftRows(s) AddRoundKey(s, rk[4n r..4n r + 3]) c = s

Pomožne funkcije AddRoundKey(byte s[..3,..3], word rk[..3]) za j =,, 2, 3 ponovi s j = s j rk[j] vrni s Pri tem je s j stolpec stanja s: s j = s,j s,j s,j s,j.

ShiftRow Transformacija ShiftRow j-to vrstico s ciklično premakne za j mest v levo: s, s, s,2 s,3 s, s,2 s,3 s, s 2,2 s 2,3 s 2, s 2, s 3,3 s 3, s 3, s 3,2. Skupaj s transformacijo MixColumn poskrbi za razpršitev podatkov.

Operacije v obsegu GF(2 8 ) Funkcije SubBytes in MixColumns ter postopek za generiranje razporeda podključev uporabljajo operacije v končnem obsegu GF(2 8 ): Obseg generiramo z nerazcepnim polinomom f (x) = x 8 + x 4 + x 3 + x + Njegove elemente identificiramo z zlogi: polinomu b 7 x 7 + b 6 x 6 + b 5 x 5 + b 4 x 4 + b 3 x 3 + b 2 x 2 + b x + b priredimo zlog b 7 b 6 b 5 b 4 b 3 b 2 b b, kjer b i {, }; vsak zlog lahko zapišemo kot par šestnajstiških števk. Zdaj lahko zloge seštevamo, odštevamo, množimo in delimo (kot elemente GF(2 8 )).

SubBytes Na vsakem od elementov matrike s se neodvisno izvede naslednji operaciji: izračun inverza s i,j v GF(2 8 ) (element se preslika sam vase), 2 izračun afine transformacije nad Z 2, podane z izrazom kjer je A = s i,j = A s i,j c (v Z 2 ) in c =.

Zgled - SubBytes s i,j = 53 (6) s i,j = CA (6) = A c = = Novi s i,j = = ED (6).

SubBytes kot tabela

MixColumns Za vsak stolpec s j, j =,, 2, 3 ponovi s j = Množenje poteka v GF(2 8 ). 2 3 2 3 2 3 3 2 s j = = 2 = = x 3 = = x +

Razpored podključev: KeyExpansion Podatek: word K [..N k ] ključ Rezultat: word rk [..4N r + 3] razpored podključev Pomožne funkcije: SubWord: na vsakem zlogu uporabi SubBytes: (z, z, z 2, z 3 ) (Az + c, Az + c, Az 2 + c, Az 3 + c). RotWord: ciklični zamik zaporedja zlogov za v levo: (z, z, z 2, z 3 ) (z, z 2, z 3, z ). Rcon: M ( 2 n,,, ) (4 zlogi, računanje v GF(2 8 )).

Razpored podključev: postopek Postopek: za i =, 2,... N k ponovi rk[i] = K [i] (v prvi del prepišemo ključ) za i = N k, N k +,... 4N r + ponovi tmp = rk[i ] če i mod N k = potem tmp =SubWord(RotWord(tmp)) Rcon[i/N k ] sicer če N k > 6 in i mod N k = 4 potem tmp =SubWord(tmp) rk[i] = rk[i N k ] tmp

Analiza varnosti Pri konstrukciji novega simetričnega bločnega kriptosistema je potrebno upoštevati: kriptogram mora biti čim bolj naključen vsak znak kriptograma mora biti odvisen od vseh znakov sporočil (razpršitev - diffusion) zveza med kriptogramom in ključem mora biti čim bolj zapletena (zmeda - confusion) algoritem mora biti varen pred vsemi znanimi napadi znano matematično ozadje omogoča boljšo analizo

Nekaj znanih napadov na simetrične šifre izčrpen pregled vseh ključev (dovolj velik prostor ključev!), linearna kriptoanaliza, diferenčna kriptoanaliza, algebraični napadi (reševanje sistemov enačb)... Napadi na implementacijo: napadi s stranskim kanalom (merjenje časa, porabo energije,...) povzročanje napak pri računanju (prekinitev napajanja, laserski žarki...) Več o varnosti kasneje!