Firmware - Luglio-Agosto 2014 / N°102/103 - (Page 14)

FOCUS on definiscono due numeri x, y con 0≤x≤3 e 0≤y≤15 utilizzati per accedere alla riga x e colonna y in una tabella che definisce la sotto-funzione Sj. L'operazione Si(Bi) trasforma il blocco Bi = bi;1bi;2...bi;6 in una stringa di 4 bit, letta da una tabella Si; i = 1...6, alla riga r e colonna c, dove r = 2b1 + b6 e c ≡ b2b3b4b5. Per esempio sia da calcolare S1(011011); con questo dato si ricava r = 1 e c = 1101 ≡ 5; con queste coordinate nella tabella S1 si legge il valore 5 che in binario è 0101. Vale la pena soffermarsi sulle proprietà delle S-box: - Ogni riga è una permutazione degli interi 0...15 - Nessuna S-box è una funzione lineare dei suoi ingressi - Cambiando un solo bit d'ingresso di una S-box variano almeno due bit delle sue uscite - Per ogni S-box S e per ogni input x a 6 bit: S(x) e S(x ø 001100) differiscono in almeno due bit - Per ogni S-box, per ogni input x e per ogni bit d, g, S(x) ≠ S(x ø 11dg00) - Per ogni S-box, il numero degli input per i quali il bit di output è 0 è circa uguale al numero degli input per i quali tale bit è 1 - Al termine della P-Box occorre scambiare le due componenti della coppia finale al fine di produrre la stringa b1b2... b64 ← (D16, S16) - Si applica, a questo punto, la permu- LA LIBRERIA DI CASA MICROCHIP Figura 5: DES doppio Figura 6: DES triplo tazione inversa alla stringa precedente producendo così il testo cifrato - La funzione che costituisce la funzione caratteristica dell'algoritmo assume questa forma: f(Ri-1,ki) = P ( S (E (Ri-1) ø ki )) e (Ri-1) è la permutazione espansa perché ha il compito di estendere i bit da 32 a 48 attraverso l'uso di sedici bit in ingresso una sola volta e sedici bit due volte. Al contrario, P è la permutazione P. di k2 cercando le corrispondenze nella tabella di lavoro. Il DES doppio può essere considerato equivalente a un cifrario con una chiave di cinquantasei bit e non 112 così come il Triple-DES è equivalente a una chiave di 112 bit e non ai 168 teorici (56 + 56 + 56): anche il Triple-DES, come i precedenti, opera su blocchi da 64 bit e agisce come riportato in figura 6. Microchip fornisce una libreria che supporta l'algoritmo Triple-DES attraverso tre funzioni: initTDES, TDES_encrypt e TDES_decrypt. La funzione initTDES si preoccupa di pre-calcolare la sotto-chiave al fine di incrementarne le prestazioni, cosa piuttosto utile per sistemi embedded. Al contrario, le altre due funzioni sono utilizzate per crittografare o de-crittografare il messaggio. Infatti, la TDES_encrypt, attraverso l'uso della chiave calcolata in precedenza, genera il testo crittografato, mentre TDES_ decrypt, sempre ricorrendo alla chiave, si occupa di decifrare il messaggio. I prototipi delle funzioni sono così definiti: void initTDES(unsigned int *KeyLocation); void TDES_encrypt(unsigned int *KeyLocation); void TDES_decrypt(unsigned int *KeyLocation); Con KeyLocation si deve intendere una re- ESTENSIONE DES: DOPPIO E TRIPLO La figura 5 mostra il diagramma utilizzato per descrivere il DES doppio. Possiamo riassumere ricordando che, data una coppia nota (x,y), si eseguono tutte le cifrature per i 256 valori possibili di k1 in una tabella e si compiono le decifrature per i 2 56 valori possibili Figura 7: S-box FOCUS ON SKILLS INSIDE TOOLS ANALOG TIPS'N TRICKS MARKET NEWS SPOTLIGHT EVENTS ZAPPING MEMBERSHIP

Tabella dei contenuti per la edizione digitale del Firmware - Luglio-Agosto 2014 / N°102/103

TIPS'n tricks
FOCUS on Triplo DES con Microchip
SKILLs Delay/Block Debouncer
INside
Una Soluzione ZigBee a Singolo Chip
La famiglia XMEGA e gli ADC di Atmel
ANALOG “Sensing” Virtuale a 2-Fili per Regolatori di Tensione
SPOTlight
Proteggere gli Investimenti in R&D con l’Autenticazione Sicura
Vivado High-Level Synthesis
Il CMRR negli Operazionali ad Ampia Gamma Dinamica
News
EVENTS zapping
Guida

Firmware - Luglio-Agosto 2014 / N°102/103

https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2015-02_109
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2015-01_108
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-12_107
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-11_106
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-10_105
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-09_104
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-07_102
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-06_101
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-05_100
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-04_99
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-03_98
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-02_97
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2014-01_96
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-12_95
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-11_94
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-10_93
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-09_92
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-07_90_91
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-06_89
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-05_88
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-04_87
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-03_86
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-02_85
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2013-01_84
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-12_83
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-11_82
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-10_81
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-09_80
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-07_78-79
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-06_77
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-05_76
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-04_75
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-03_74
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-02_73
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2012-01_72
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-12_71
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-11_70
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-10_69
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-09_68
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-07_66_67
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-06_65
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-05_64
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-04_63
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2011-02_62
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2011-02_61
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2011-01_60
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-12_59
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-11_58
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-10_57
https://www.nxtbook.com/newpress/inwaredizioni/Firmware/2010-09_56
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2010-07_54-55
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-2010-06_53
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Maggio-2010-52
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Aprile-2010-51
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Marzo-2010-50
https://www.nxtbook.com/newpress/inwaredizioni/Firmware-magazine/Febbraio-2010-49
https://www.nxtbookmedia.com