Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoFortunata Patti Modificato 11 anni fa
1
Realizzazione di un componente per un sistema dedicato: sviluppo dell’algoritmo di crittografia RC6 a 128 bit Relatore: Prof. Fabrizio Ferrandi Correlatore: Ing. Marco Domenico Santambrogio Diego Nichetti Matr. #651159 Stefano Orlandi Matr. #651709
2
Diego Nichetti – Stefano Orlandi
Sommario Introduzione FPGA e componenti delle Architetture Metodologia di progetto Presentazione dell’algoritmo: RC6 Implementazione dell’IP Core Test Effettuati Conclusioni e lavori futuri Diego Nichetti – Stefano Orlandi
3
Diego Nichetti – Stefano Orlandi
Introduzione - FPGA FPGA (Field Programmable Gate Array) Miglior compromesso per quanto riguarda flessibilità, costo ed efficienza. Impiegati per la prototipazione (rapida verifica funzionalità dispositivi HW) Composti da CLB Blocchi logici configurabili Reti configurabili Diego Nichetti – Stefano Orlandi
4
Introduzione – Componenti delle Architetture
Processori Periferiche e IP Core Bus Core Connect (IBM) PLB (Processor Local Bus) OPB (On-Chip Peripheral Bus) DCR (Device Control Register) Diego Nichetti – Stefano Orlandi
5
Metodologia di progetto
Passaggio dal Codice C alla descrizione VHDL Ottimizzazione dello spazio: Componenti per iterazioni: evitare il seguente problema Ottimizzazione della frequenza: Utilizzo di macchine a stati finiti: diminuzione del percorso critico Diego Nichetti – Stefano Orlandi
6
Metodologia di progetto
Fasi di progettazione Verifica del design Sorgenti VHDL Sintesi Implementazione del progetto VHDL Simulazione Comportamentale File NGC File NGD File NCD Traduzione (NGD build) PAR MAP Verifica del progetto Simulazione Funzionale Analisi Statica delle Temporizzazioni Timing Diego Nichetti – Stefano Orlandi
7
Presentazione dell’algoritmo
Caratteristiche dell’RC6 (Rivest Cipher 6) Algoritmo di crittografia simmetrica successore dell’RC5 Parametrico rispetto a w, r, b Introduce: Utilizza la rotazione fissa (indipendenza dall’RC5) Impiega la moltiplicazione intera come operazione primaria Composto da due sottoalgoritmi Algoritmo Key Schedule Algoritmo Crypt Diego Nichetti – Stefano Orlandi
8
Presentazione dell’algoritmo
Algoritmo Key schedule Rotazione fissa Diego Nichetti – Stefano Orlandi
9
Presentazione dell’algoritmo
Algortimo Crypt Moltiplicazione intera Diego Nichetti – Stefano Orlandi
10
Implementazione dell’IP Core
Struttura dell’IP Core Operazioni dell’algoritmo RC6 Interconnessioni tra PSelect e rc6_encoder_core interfaccia di collegamento con il bus Diego Nichetti – Stefano Orlandi
11
Implementazione dell’IP Core
Memoria dell’IP Core Chiave Utente Parola da crittare Registri-comando Diego Nichetti – Stefano Orlandi
12
Implementazione dell’IP Core
Algoritmo key schedule Contatore iterazioni Diego Nichetti – Stefano Orlandi
13
Implementazione dell’IP Core
Struttura della descrizione VHDL dell’algoritmo key schedule Inizializzazione Macchina a stati finiti Avvio crypt Diego Nichetti – Stefano Orlandi
14
Implementazione dell’IP Core
Macchina a stati finiti per l’algoritmo Key Schedule Indicatore di stato Stati Necessario per case-when Diego Nichetti – Stefano Orlandi
15
Implementazione dell’IP Core
Algoritmo Crypt Diego Nichetti – Stefano Orlandi
16
Implementazione dell’IP Core
Risultati ed analisi della sintesi Temporizzazioni Occupazione FPGA Diego Nichetti – Stefano Orlandi
17
Implementazione dell’IP Core
Risultati ed analisi della sintesi Riconoscimento macchina a stati finiti per crypt Diego Nichetti – Stefano Orlandi
18
Implementazione dell’IP Core
Funzioni del driver Scrittura sui registri Avvio dell’algoritmo Lettura dei risultati Diego Nichetti – Stefano Orlandi
19
Diego Nichetti – Stefano Orlandi
Test effettuati Test della specifica RC6 36 a5 c3 8f rA Diego Nichetti – Stefano Orlandi
20
Conclusioni e lavori futuri
La moltiplicazione intera costituisce il collo di bottiglia dell’implementazione Lavoro futuro: crittazioni di grandi moli di dati in sequenza con l’impiego di DMA (Direct Memory Access). Diego Nichetti – Stefano Orlandi
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.