Design and development of a reconfigurable cryptographic co-processor

Slides:



Advertisements
Présentations similaires
Mais vous comprenez qu’il s’agit d’une « tromperie ».
Advertisements

Le Nom L’adjectif Le verbe Objectif: Orthogram
ORTHOGRAM PM 3 ou 4 Ecrire: « a » ou « à » Référentiel page 6
LES NOMBRES PREMIERS ET COMPOSÉS
Reporting de la Cellule Nationale Droit dOption Situation au 31 décembre 2011.
Licence pro MPCQ : Cours
Additions soustractions
Distance inter-locuteur
1 Plus loin dans lutilisation de Windows Vista ©Yves Roger Cornil - 2 août
Le château Clique le plus rapidement possible sur le numéro de la chambre du trésor : 6 ?
11 Bienvenue Entrez le nom du groupe ou projet ici mardi, 17 novembre 2009.
Réseau ATB du CClin Paris-Nord – résultats 2011 LL, 22/11/ Réseau antibiotiques du CClin Paris-Nord : Résultats 2011 Coordination: Dr François LHÉRITEAU.
Les numéros 70 –
Les numéros
Sud Ouest Est Nord Individuel 36 joueurs
Les identités remarquables
Le, la, les words Possessive Adjectives MINE!!. 2 My in french is mon, ma,mes... Le word/ begins with a vowel: Mon La word: Ma Les word: Mes.
Sirop de Liège « industriel »
Introduction à la logique
LES TRIANGLES 1. Définitions 2. Constructions 3. Propriétés.
Données statistiques sur le droit doption au 31/01 8 février 2012.
Correspondances en Onco-Urologie - Vol. III - n° 3 – juillet-août-septembre VESSIE Daprès James ND et al., N Engl J Med 2012;366:16:
Révision (p. 130, texte) Nombres (1-100).
La législation formation, les aides des pouvoirs publics
1 7 Langues niveaux débutant à avancé. 2 Allemand.
Mr: Lamloum Med LES NOMBRES PREMIERS ET COMPOSÉS Mr: Lamloum Med.
SERABEC Simulation sauvetage aérien avec un Hercule C130. Départ de St-Honoré le 4 octobre Durée de vol 3 heures. Premier vol en Hercule pour les.
La méthodologie………………………………………………………….. p3 Les résultats
Jack Jedwab Association détudes canadiennes Le 27 septembre 2008 Sondage post-Olympique.
Le soccer & les turbans Sondage mené par lAssociation détudes canadiennes 14 juin 2013.
Présentation générale
1 Guide de lenseignant-concepteur Vincent Riff 27 mai 2003.
Le drapeau canadien comme symbole de fierté nationale : une question de valeurs partagées Jack Jedwab Association détudes canadiennes 28 novembre 2012.
PM18 MONTAGE DU BLINDAGE AUTOUR DE LA QRL F. DELSAUX - 25 JAN 2005
Le Concours de Conaissance Francais I novembre 2012.
Si le Diaporama ne s'ouvre pas en plein écran Faites F5 sur votre clavier.
Titre : Implémentation des éléments finis sous Matlab
Les nombres.
Projet poker 1/56. Introduction Présentation de léquipe Cadre du projet Enjeux Choix du sujet 2.
LES NOMBRES PREMIERS ET COMPOSÉS
CLL11 : chlorambucil (CLB) versus CLB + rituximab (R)
S ervice A cadémique de l I nspection de l A pprentissage dOrléans-Tours Nombre de CFA par académie 1 CFA académique avec 25 UFA 1 CFA académique avec.
Logiciel gratuit à télécharger à cette adresse :
Les chiffres & les nombres
1.Un rang de données multicolores 2. Deux permutations des n premiers entiers 3. b permutations des k premiers entiers 4. Choix de n points dans [0,1]
RACINES CARREES Définition Développer avec la distributivité Produit 1
DUMP GAUCHE INTERFERENCES AVEC BOITIERS IFS D.G. – Le – 1/56.
Tournoi de Flyball Bouin-Plumoison 2008 Tournoi de Flyball
Année universitaire Réalisé par: Dr. Aymen Ayari Cours Réseaux étendus LATRI 3 1.
Titre : Implémentation des éléments finis en Matlab
Jean-Marc Léger Président Léger Marketing Léger Marketing Les élections présidentielles américaines.
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
1 INETOP
Influenza: le modèle épidémiologique belge 29 Mai 2009
Aire d’une figure par encadrement
Copyright 2011 – Les Chiffres Copyright 2011 –
P.A. MARQUES S.A.S Z.I. de la Moussière F DROUE Tél.: + 33 (0) Fax + 33 (0)
Les fondements constitutionnels
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
Traitement de différentes préoccupations Le 28 octobre et 4 novembre 2010.
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
Leçons To attend Assister à 2. To fish.
Formation des commissaires sportifs
Certains droits réservés pour plus d’infos, cliquer sur l’icône.
Nom:____________ Prénom: ___________
Annexe Résultats provinciaux comparés à la moyenne canadienne
Commission paritaire de suivi des opérations de reclassement repositionnement dans le cadre du droit d’option Statistiques novembre 2010.
Les Chiffres Prêts?
La formation des maîtres et la manifestation de la compétence professionnelle à intégrer les technologies de l'information et des communications (TIC)
Transcription de la présentation:

Design and development of a reconfigurable cryptographic co-processor Daniele Fronte Directeur de thèse : Annie Pérez Superviseur industriel : Eric Payrat Soutenance de thèse Marseille, 8 Juillet 2008

Sommaire Introduction Coprocesseur Résultats Conclusions Cahier des charges et objectifs Choix des algorithmes Coprocesseur Architecture Exécution de micro-instructions Résultats Validation FPGA Synthèse ASIC Conclusions

Cahier des charges du Coprocesseur Cryptographie Multi-algorithmes Systèmes embarqués Sécurité Cellules standards d’Atmel Puces - Lecteurs de cartes à puce Notre objectif est la réalisation d’un coprocesseur pour des produits sécurisés. Le cahier des charges de ce coprocesseur reflet les besoins du labo de recherche IM2NP et de la société Atmel en terme de produits sécurisés. Les produits sécurisés permettent la confidentialité de certaines transactions de données sensibles, et assurent l’authenticité et l’intégrité d’un message. Par conséquent ils doivent exécuter des fonctions cryptographiques. Il est aussi demandé que ces produits sécurisés, et donc notre coprocesseur aussi, soient reconfigurables, car ils doivent fournir des services et des fonctions flexibles. Le coprocesseur doit être intégré dans un système embarqué. Il doit être protégé contre les attaques. Il doit être réalisé par des cellules standards d’Atmel. Les marchés cible sont les puces et les lecteurs de cartes à puce.

Choix Cryptographie Multi-algorithmes Systèmes embarqués Sécurité Clé secrète? Clé publique? Multi-algorithmes Algorithmes standards/propriétaires Quel degré de reconfigurabilité? FPGA ou pas de FPGA? Systèmes embarqués Taille Performances Sécurité Attaques latérales de canal: SPA, DPA… Que l’utilisateur puisse modifier les standards *** Clés différentes Parler des autres circuits : HW / SW qui seront développés dans la discussion des résultats

DES, AES Alice Bob DES DES-1 Cryptographie à clé secrète Alice Bob DES DES-1

DES Taille du bloc données : 64 bits Message en clair L 32 32 R IP L0 R0 Taille du bloc données : 64 bits Taille initiale de la clé : 56 bits Permutation Initiale 16 boucles : Fonction F Ou exclusif Permutation finale F F 16 boucles F Le mot est divisé entre la partie gauche L (left) et la partie droite R (right) L est laissé telle quelle R est transformé par la fonction F (détaillée plus tard) Ces 2 résultats sont combinés par un ou exclusif F L16 32 32 R16 FP Message encrypté

Détails de DES Fonction F : Expansion E Ou exclusif Sbox Permutation P 32 48 E 48 S1 S2 S3 S4 S5 S6 S7 S8 32 P 32

AES Taille du blocs données : 128 bits Taille initiale de la clé : 128, 192, 256 bits 10 boucles, dont 8 avec : Sbox ShiftRows MixColumns AddRoundKeys La 1ère et la 2ème boucle sont différentes

Détails de AES Transformations : Sbox ShiftRows MixColumns AddRoundKeys Les données sous format matricielle. Chaque élément de la matrice contient 1 octet du mot d’état S

Détails de AES Transformations : Sbox ShiftRows MixColumns AddRoundKeys

Détails de AES Transformations : Sbox ShiftRows MixColumns AddRoundKeys

Détails de AES Transformations : Sbox ShiftRows MixColumns AddRoundKeys

SHA SHA SHA SHA Fonction de Hachage input 000 001 010 Hash sum J’ai pris un exemple très simple de 3 message qui ne varient que d’un bit 000, 001, 010 En appliquant SHA on obtient les 3 condensés sur fond rouge complètement différents les uns des autres. Il se trouve que dans ces cas particuliers le condensé est plus long que le message initial. A quoi sert un fonction de hachage? 8AEFB06C 426E07A0 A671A1E2 588B4858 D694A730 E193A01E CF8D30AD 0AFFEFD3 32CE934E 32FFCE72 47AB9979 443FB7ED 1C193D06 773333BA 7876094F Hash sum

Utilisation de SHA =? Alice Bob 517F3AB6 Alice Condensé Message SHA Si oui, le message est authentique et intègre =? Message, condensé 517F3AB6 Bob Message SHA Condensé

Détails de SHA-256 Taille du blocs données : (multiple de) 512 bits Taille du condensé : 256 bits 64 boucles : 8 variables: A, B, … , H 4 Fonctions: Ch, Maj, Σ0, Σ1 64 valeurs temporaires Wt Ou exclusif Wt Ch Kt Σ1 Maj Σ0

Opérations requises AES DES SHA Sbox Look up table 8 bits Shift Rows Rotation à droite Mix Columns xtime, Ou exclusif Add Round Key Ou exclusif AES Ou exclusif 32 bits Rotation 1 bit IP, IP-1, PC1, PC2, E Permutations Bit à bit SBox Look up table DES Dans la 3eme colonne, le format des opérandes de l’algo Rajouter un transparent pour montrer l’implémentation dans Celator Ce trasparent va apres l’introduction, dans la description des algo au debut. D’ou on pose la problematique. Riprendere questa slide dopo aver presentato l’architettura In questa slide, parlare degli algoritmi, dimensione della chiave etc. Ou exclusif 32 bits Addition Décalage Rotation SHA

Coprocesseur Cryptographique Reconfigurable = Celator krypton, encrypt, crypto etc.  déjà utilisés ! Cryptographie en grecque : Kriptós = cacher Gràfo = écrire Cryptographie en latin Celare = cacher Le rôle de Celator est d’encrypter, de cacher l’information contenue dans un message

Architecture de Celator

Réseaux systoliques de processeurs Input data streams Processing Elements : Grain fin Grain gros 1D, 2D, 3D PE PE PE PE PE PE PE PE Input data streams Input data streams PE PE PE PE Les réseaux de PE peuvent à 1D, 2D, 3D… Plan superposés PE PE PE PE Input data streams

Construisons un Processing Element array Data matrix Systolic Processor Network

PE Array, Controller PE PE PE PE Data Bus Control Bus PE PE PE PE PE Processing Element Voici l’architecture que nous avons choisi: un réseau 2D à maille carrée, de 4x4 PE, travaillant chacun sur des données de 8 bits, commandé par un contrôleur que nous allons détailler par la suite et qui est connecté aussi à une RAM appelée CRAM (pour Celator RAM) où sont stockées les micro-instructions… PE PE PE PE Controller

PE Array, Controller, CRAM Reconfigurabilité donnée par : Réseau systolique de Processing Elements CRAM PE Array CRAM

Vue générale du système Celator ARM 7 TDMI AHB CRAM PE Array Programs and Data IF Controller Contient CPU+Celator, qui a besoin d’un CPU, c’est pour cette raison que c’est un coprocesseur Main Memory Other Peripherals

Interface Advanced High-performance Bus (AHB) HSEL_RAM HWRITE HWDATA [31:0] HRDATA [31:0] HSEL_REG HADDR [ 11: 0] Split Address reg Data/controls From/to CRAM From/to Controller Control reg Status reg interrupt L’interface IF contient Qui peuvent fonctionner à des fréquences f différentes CPU_clock Celator_clock

PE array PE array northern data I/O MUX_N PE array western data I/O 32-bits MUX_N PE00 PE01 PE02 PE03 PE10 PE11 PE12 PE13 PE array western data I/O 32-bits 32-bits PE array eastern data I/O PE20 PE21 PE22 PE23 Granularité 8-bits: Directement utilisable pour des data 8-bits Facile pour les data 32-bits (PE concaténées), et 1-bit PE30 PE31 PE32 PE33 MUX_E MUX_W MUX_S 32-bits PE array southern data I/O

Exemple d’exécution Remplissage de la CRAM Lecture des micro-instructions AES Shift Rows

Système interface CPU CRAM PE Array Controller Di Controller Di CPU 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

Remplissage de la CRAM interface CPU CRAM PE Array Controller Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

Remplissage de la CRAM interface CPU CRAM PE Array Controller Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA AES-1 Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

Remplissage de la CRAM interface CPU CRAM PE Array Controller Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA AES-2 AES-1 Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

Remplissage de la CRAM interface CPU CRAM PE Array Controller Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller AES-3 32 HRDATA AES-2 AES-1 Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

Remplissage de la CRAM interface CPU CRAM PE Array Controller Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller AES-4 AES-3 32 HRDATA AES-2 AES-1 Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

Remplissage de la CRAM interface CPU CRAM CRAM PE Array Controller Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM DATA-3 HADDR DATA-2 12 Address CPU 12 DATA-1 AES-7 AES-6 Address Controller CRAM AES-5 AES-4 AES-3 32 HRDATA AES-2 AES-1 Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

Démarrage de Celator interface CPU CRAM PE Array Controller Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array A partir de là Celator fonctionne de façon autonome status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

Lecture des micro-instructions interface Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA AES-1 Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

Chargement des données dans le PE array interface Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Data 1 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

Chargement des données dans le PE array interface Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Data 2 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

Chargement des données dans le PE array interface Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR Data 3 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

Chargement des données dans le PE array interface Di Controller Di CPU CPU 32 32 Split Address reg 32 Data 4 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows

AES Shift Rows interface CPU CRAM Controller Di Controller Di CPU 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows interface CPU CRAM PE Array Controller Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows interface CPU CRAM Controller Di Controller Di CPU 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows interface CPU CRAM Controller Di Controller Di CPU 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows interface CPU CRAM Controller Di Controller Di CPU 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows interface CPU CRAM PE Array Controller Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows interface CPU CRAM Controller Di Controller Di CPU 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows interface CPU CRAM Controller Di Controller Di CPU 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows interface CPU CRAM Controller Di Controller Di CPU 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows interface CPU CRAM PE Array Controller Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 PE Array status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows interface CPU CRAM Controller Di Controller Di CPU 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows interface CPU CRAM Controller Di Controller Di CPU 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

AES Shift Rows interface CPU CRAM Controller Di Controller Di CPU CPU 32 32 Split Address reg 32 CRAM HADDR 12 Address CPU 12 Address Controller 32 HRDATA Do CPU 32 32 Control reg Do Controller HWDATA 32 PE in 32 Status reg 32 6 6 6 6 S’il faut une LUT, la table est dans la CRAM status out Status in Control out Control in PE out 32 Controller Reg Y Reg X

FPGA Validation

FPGA Validation Celator a été : Ecrit en RTL Verilog HDL Simulé par Mentor Modelsim Synthétisé (FPGA) par Mentor Precision RTL Placé et routé par Xilinx ISE Téléchargé dans une carte FPGA Xilinx Virtex II Les tests sur FPGA ont été faits à l’aide de la suite ARM developper

FPGA Validation 0x45D5BA3 jpg file ppm file dcd file Celator (FPGA) 0123 4567 8901 DCD 0x0123 DCD 0x4567 DCD 0x8901 0x9267 0x2301 0x4805 AES DES SHA jpg file ppm file 9267 2301 4805 0x45D5BA3 jpg file ppm file dcd file Celator (FPGA) 0123 4567 8901 DCD 0x0123 DCD 0x4567 DCD 0x8901 AES-1 DES-1

AES (ECB et CBC modes) : Lena 128 128 ECB mode AES-1 128 128 AES 128 128 CBC mode AES-1 128 128

DES (ECB et CBC modes) : Lena 64 64 ECB mode DES-1 64 64 DES 64 64 CBC mode DES-1 64 64

SHA Lena originale Condensé : D0E309A7 88BE2E1B 255BEE42 B18B0675 174E1E05 69063F30 D748EEF4 F236D21D Lena: un pixel a été modifié Condensé : 38F26C9A B2DC15A3 845E6AAD 6B94495C 9747FE14 86E513D1 D2FD2CE7 BDA331C3

Résultats ASIC

Résultats de synthèse ASIC Celator a été : Ecrit en RTL Verilog HDL Simulé par Mentor Modelsim Synthétisé (ASIC) par Synopsys Design Compiler Placé et routé par Cadence Encounter

Algorithmes exécutés par Celator

100% reconfigurable (HW sbox) DES 0% reconf. x% reconf. FPGA 100% reconfigurable (HW sbox)

SHA Celator est 0% reconf. 0% reconf. 0% reconf. x% reconf.

Tailles et performances (pour AES) L’exécution de Celator demande 0% reconf. x% reconf. 100% reconf. 100% reconf. Technologie 130nm (*) Les mémoires ne sont pas comptées

Conclusions sur Celator Coprocesseur multi-algorithmes Algorithmes Standards exécutés : AES, DES, SHA Possibilité d’implémenter des algorithmes propriétaires Performances : AES 47 Mbps DES 24 Mbps SHA 5 Mbps Améliorations récentes : AES + 20% DES + 20% SHA + 40% Taille totale estimée : + 5%

Prévision à court terme Intégration dans la nouvelle génération de lecteurs de cartes à puces Marché cible : télé à la demande Certification de sécurité (EAL5+) Exécution d’autres algorithmes

Celator Team Eric PAYRAT Annie PEREZ Daniele FRONTE Atmel Annie PEREZ IM2NP Daniele FRONTE Atmel & IM2NP Celine HUYNH VAN THIENG Polytech’Marseille Vincent MOLLET Polytech’Marseille

Merci pour votre attention