• Aucun résultat trouvé

Vers des générateurs de nombres aléatoires uniformes et gaussiens à très haut débit

N/A
N/A
Protected

Academic year: 2021

Partager "Vers des générateurs de nombres aléatoires uniformes et gaussiens à très haut débit"

Copied!
198
0
0

Texte intégral

(1)

HAL Id: tel-00438600

https://tel.archives-ouvertes.fr/tel-00438600v3

Submitted on 11 Jan 2010

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-entific research documents, whether they are

pub-lished or not. The documents may come from

teaching and research institutions in France or

abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est

destinée au dépôt et à la diffusion de documents

scientifiques de niveau recherche, publiés ou non,

émanant des établissements d’enseignement et de

recherche français ou étrangers, des laboratoires

publics ou privés.

Vers des générateurs de nombres aléatoires uniformes et

gaussiens à très haut débit

Renaud Santoro

To cite this version:

Renaud Santoro. Vers des générateurs de nombres aléatoires uniformes et gaussiens à très haut débit.

Traitement du signal et de l’image [eess.SP]. Université Rennes 1, 2009. Français. �tel-00438600v3�

(2)

THÈSE / UNIVERSITÉ DE RENNES 1

sous le s eau de l'Université Européenne de Bretagne

pour le grade de

DOCTEUR DE L'UNIVERSITÉ DE RENNES 1

Mention : Traitement du Signal et Télé ommuni ations

É ole do torale Matisse

présentée par

Renaud SANTORO

préparée à l'unitéde re her he UMR6074 IRISA

Institut de re her he en informatiqueet systèmesaléatoires -CAIRN

É ole Nationale Supérieure des S ien es Appliquées etde Te hnologie

Vers des générateurs

de nombres aléatoires

uniformes et gaussiens

à très haut débit

Thèse soutenue à Lannion

le Jeudi 17 Dé embre 2009

devant lejury omposé de :

Viktor FISCHER

ProfesseurdesUniversités

UniversitéJeanMonnet/président

Bruno ROUZEYRE

ProfesseurdesUniversités

UniversitédeMontpellier/rapporteur

Russell TESSIER

Professeur

UniversityofMassa husetts/rapporteur

Paul FORTIER

Professeur

UniversitéLaval/examinateur

Olivier SENTIEYS

ProfesseurdesUniversités

UniversitédeRennes1/dire teurdethèse

Sébastien ROY

Professeur

(3)
(4)

Je remer ietoutparti ulièrement MonsieurOlivierSentieys,ProfesseurdesUniversités

à l'ENSSAT et responsable de l'équipe CAIRN, pour m'avoir a ueilli dans son équipe

de re her he et pour avoir a epter de diriger ette thèse. Je tiens à remer ier également

Monsieur Sébastien Roy, Professeur adjoint à l'Université Laval de Québe pour avoir

a epté le o-en adrement de ette thèseet m'avoira ueilli danssonéquipe de re her he

pendant un an.Qu'ilssoientassurés de magratitude.

Je tiens également à remer ierMonsieurViktor Fis her pour avoir a epté de présider

lejury desoutenan e, MessieursBruno Rouzeyreet RussellTessierpour avoir a epté de

rapporter sur e manus rit et enn MonsieurPaul Fortier pour avoir a epté d'examiner

estravaux.

Jetienségalementàremer ierArnaudTisserandpourses onseils,sarigueuretson

ou-vertures ientique.Mer ien oreàThomasAnger, ArnaudCarer,RémiPallasetPhilippe

Quémérépour leur ontribution dansledéveloppement des ir uits ASICOCHRE.

Que tous lesmembres de l'équipe CAIRN et lepersonnel de l'ENSSATa eptent mes

remer iements pour avoir ontribué à rendre ette expérien eenri hissante aussibien sur

leplanprofessionnel quepersonnel.

Enn, mondernier remer iement, maisnondesmoindres,àCaroline,pouravoirsu me

(5)
(6)

Introdu tion 1

Plandu mémoire . . . 5

I État de l'art 7 1 Introdu tion . . . 7

2 Rleet prin ipe defon tionnement . . . 7

2.1 Dénitions préliminaires . . . 7

2.2 Appli ations. . . 8

2.2-1 Cryptographie . . . 9

2.2-2 Méthodes deMonte-Carlo . . . 14

2.2-3 Communi ations numériques . . . 15

3 Générateursde nombres vraiment aléatoires . . . 16

3.1 TRNGbaséssur l'ampli ationd'un bruit physique . . . 17

3.1-1 TRNG proposépar Baginiet al. . . 17

3.1-2 TRNG proposépar Jun etal. . . 17

3.2 TRNGbaséssur l'é hantillonnage d'os illateurs . . . 18

3.2-1 TRNG proposépar Tsoi etal. . . 18

3.2-2 TRNG proposépar Fis her et al. . . 19

3.2-3 TRNG proposépar Bu i et al.. . . 23

(7)

3.2-6 TRNGproposépar Sunar et al. . . 28

3.2-7 Améliorationsproposées par S hellekens et al. . . 29

3.2-8 Améliorationsproposées par Yooet al.. . . 29

3.2-9 TRNGproposépar Bu i et al. . . 30

3.2-10 TRNGproposépar Goli¢. . . 30

3.2-11 TRNGproposépar Di htl et al. . . 32

3.3 TRNGbasés surlamétastabilité d'un signal. . . 33

3.3-1 TRNGproposépar Epstein et al.. . . 33

3.3-2 TRNGproposépar Danger et al. . . 34

3.3-3 TRNGproposépar Vasyltsovet al. . . 35

3.4 Extra teur d'aléas et dé orrélateur . . . 36

4 Evaluationde laqualité d'un générateurvraiment aléatoire . . . 39

4.1 Méthode d'évaluation d'un générateurpseudo-aléatoire . . . 39

4.2 Evaluationd'un générateur vraiment aléatoire . . . 40

5 Con lusions . . . 41

II Evaluation de la qualité de générateurs vraiment aléatoires 43 1 Générateurs vraiment aléatoires séle tionnés . . . 43

2 Evaluationdesgénérateurs au seind'un FPGA AlteraStratix II . . . 47

2.1 Obje tifde l'évaluation . . . 47

2.2 Des ription et implantation de labatterie FIPS140-2 . . . 49

2.2-1 Frequen y test . . . 49

2.2-2 Poker test . . . 49

2.2-3 Run test . . . 50

2.2-4 Long run test . . . 50

2.2-5 Résultats d'implantation pour te hnologies ASICet FPGA 51 2.2-6 Résultats de l'évaluation des TRNG par la batterie FIPS 140-2 . . . 51

2.2-7 Con lusions del'évaluationpar les testsFIPS140-2 . . . . 52

(8)

3.1-1 AnalysedelagigueduROutilisédansdes onditionsidéales

de fon tionnement . . . 56

3.1-2 AnalysedelagigueduROsoumisàunefortea tivitéparasite 57 3.1-3 Dis ussion . . . 58

4 Re her he dudébit optimaldes TRNGenfon tion du FPGA iblé . . . 59

4.1 Obje tif . . . 59

4.2 Méthodologie proposée . . . 59

4.3 Implantation matérielle de l'AIS 31 . . . 60

4.3-1 TestT0 :test de diéren e . . . 61

4.3-2 TestT1 :frequen y test . . . 63

4.3-3 TestT2 :poker test . . . 63

4.3-4 TestT3 :run test . . . 63

4.3-5 TestT4 :long run test . . . 63

4.3-6 TestT5 :test d'auto orrélation. . . 64

4.3-7 TestT6 :test d'uniformité . . . 64

4.3-8 Test T7 : Evaluation de la distribution des sous-séquen e binaire . . . 65

4.3-9 TestT8 :test d'entropie . . . 66

4.3-10 Performan e et oûtmatérieldestestsde l'AIS 31 . . . 75

4.4 Evaluationdesgénérateurs séle tionnés . . . 75

4.5 Con lusionsde l'évaluation . . . 77

5 Evaluation du oûtmatériel et delapuissan e onsommée desTRNGtestés 80 5.1 Coûtmatériel . . . 80

5.2 Puissan e onsommée . . . 80

6 Con lusions . . . 81

IIIVers des RNG uniformes et gaussiens à très haut débit 83 1 Implantation d'un RNG hybrideau sein d'un ir uitre ongurable . . . 84

1.1 Des riptiondu générateurhybride . . . 84

2 Laquête d'un RNG hybrideoptimal au seind'un ir uit VLSI. . . 85

(9)

2.1-2 Surfa eet onsommation du ir uit . . . 86

2.1-3 Routagedu ir uit sousl'outil Virtuoso . . . 87

2.1-4 Validation du ir uit ASIC . . . 87

2.1-5 Analysede lasour e de bruitdu générateur . . . 88

2.1-6 Véri ation du bon fon tionnement du TRNG . . . 90

2.1-7 Analysede laqualité duTRNG . . . 91

2.1-8 Con lusions et perspe tives . . . 92

2.2 On-CHip Randomness Evaluation version2 . . . 92

2.2-1 Ar hite ture du ir uit . . . 92

2.2-2 Performan es . . . 93

2.2-3 Dis ussionset perspe tives . . . 94

3 Versun RNGgaussien et deRayleighà très haut débit . . . 95

3.1 Te hniques de génération . . . 97

3.1-1 Variablesaléatoires gaussiennes. . . 97

3.1-2 Méthode par transformation . . . 98

3.1-3 Séle tiond'unalgorithmepermettantdegénérerdesnombres aléatoiresgaussiens à trèshaut débit . . . 104

3.1-4 Présentation duGRNGproposé parAlimohammad et al. . 105

3.2 Implantation de l'algorithme Box-Muller à partir d'une approxima-tion polynomiale minimax . . . 107

3.2-1 Implantation de lafon tion

f (u

0

)

. . . 107

3.2-2 Implantation de lafon tion

g

0

(u

1

)

. . . 115

3.2-3 Résultats d'implantation desfon tions

f (u

0

)

et

g

0

(u

1

)

. . . 117

3.2-4 Résultats d'implantation del'algorithme Box-Muller . . . . 117

3.2-5 Validation delaqualité de l'algorithmeBox-Muller implanté118 3.3 Con lusions . . . 120

4 Con lusion. . . 120

IVRe her hed'ungénérateurpseudo-aléatoireoptimiséselonun ompromis qualité/ oût matériel 123 1 Intérêtdes AutomatesCellulaires dansles ar hite tures FPGA . . . 123

(10)

2.2 Méthodologie . . . 128

2.2-1 Génération desrèglespossibles . . . 128

2.2-2 Cal ul de l'entropie del'automate ellulaire . . . 129

2.3 Ar hite ture dela re her he exhaustive. . . 131

2.4 Comparaison de la règle de l'automate ellulaire trouvée ave des générateurs souvent utilisésen VLSI . . . 131

2.4-1 Entropie . . . 132

2.4-2 Distribution desbitsaléatoires . . . 133

2.4-3 Con lusion . . . 136

3 Evaluationdu oûtmatérielengendréparl'implantationdetestsstatistiques trèsperformants . . . 137 3.1 Birthday test . . . 138 3.1-1 Présentation . . . 138 3.1-2 Implantation matérielle . . . 139 3.1-3 Cal ul du testdu

χ

2

. . . 140 3.2 Gorilla test . . . 141 3.2-1 Présentation . . . 141

3.2-2 Overlapping 20-tuples bitstream test . . . 142

3.2-3 Implantation matérielle . . . 142 3.3 GCDtest . . . 142 3.3-1 Présentation . . . 142 3.3-2 Implantation matérielle . . . 143 4 Con lusions . . . 144 Con lusions et perspe tives 147 Bibliographie 153 Glossaire 181

(11)
(12)

Contexte

L'obje tif d'un générateur de nombres aléatoires (RNG, Random Number Generator)

est de produire une séquen e binaire aléatoire indépendante, imprédi tible et

uniformé-mentrépartie.LesRNGsontné essairesdanstoutessortesd'appli ations,parexemple,en

ryptographie, télé ommuni ations, simulations numériques, test de ir uits VLSI

(Very-Large-S ale Integration) ou en oredansdes algorithmesprobabilistes. Le nombre

d'appli- ationsembarquées né essitant des RNG matériels augmente onstamment, spé ialement

au sein des ir uits re ongurables, Field Programmable Gate Array (FPGA), systèmes

sur pu e (System On-Chip (SoC)) . L'augmentation de la fréquen e de es ir uits et la

baisse régulière de leur oûtouvrent de nouvelles voies dansle domaine de la on eption

degénérateurs de nombres aléatoiresau seindes ir uits VLSI.

En vue de la on eption matérielle d'un RNG, la solution est d'utiliser un

généra-teur hybride omposé d'un générateur vraiment aléatoire (TRNG,True Random Number

Generator)etd'ungénérateurpseudo-aléatoire(PRNG,PseudoRandomNumberGenerator).

Les PRNG étant basés sur des algorithmes déterministes. Ils sont périodiques et doivent

être initialisés par un TRNG. Le ve teur d'initialisation est appelé un germe ou semen e

(seed). Malgré leur périodi ité, les PRNG permettent d'atteindre des débits élevés. De

plus, en fon tion de laqualité du germe, un PRNG est apable de générer une séquen e

fortement aléatoire. Les TRNG sont quant à eux basés surune sour e de bruit physique

(e.g.bruitthermique,giguedephased'unos illateur) etdépendent fortementdelaqualité

de leur implantation. La séquen e produite par un TRNG estgénéralement biaisée, 'est

àdire que ertainesséquen es de nombresaléatoiressont plusfréquemment observées que

d'autres.Par onséquent,unpro essusdepost-traitementestsouventajoutéande

(13)

TRNGimplantésauseindes ir uits VLSIutilisentlagigueproduitepar unos illateurou

lamétastabilité d'un signal.

Prouver mathématiquement qu'un PRNG est aléatoire est généralement di ile voire

impossible. Les générateurs pseudo-aléatoires sont en pratique souvent évalués via

l'uti-lisation de tests statistiques. Plusieurs batteries de tests existent dans la littérature. Les

plus onnuessont Diehard[MZ93℄,NIST[RSNMS01℄ainsiquelestestsstatistiquesdé rits

par D. Knuth dans [Knu97℄. L'évaluation d'un TRNG est beau oup plus omplexe que

elle d'un PRNG. La qualité d'un TRNG est fon tion de la sour e de bruit utilisée, de

l'environnementextérieurau ir uitet delaqualitéd'implantation auseindu ir uit iblé.

La méthode la plus élégante lors de la validation d'un TRNG est de fournir un modèle

sto hastique de la sour e de bruit utiliséepar le générateur[S h03℄ [KS08 ℄. L'obje tif des

modèlessto hastiquesest de déterminer l'entropie de lasour e aléatoire ou aumoins une

borneminimalede elle- i.Cependant,la omplexitémathématique desmodèlesrend leur

utilisation souvent déli ate. Par onséquent, deux batteries de tests statistiques sont très

généralement utilisées,le FIPS140-2[Nat99b ℄et l'AIS31 [KS01 ℄.

Problématique et ontribution

L'obje tif de ette thèse est de proposer unRNG possédant un débit élevé, fa ilement

implantableauseind'un ir uitre ongurableettrèsrobuste.Larobustessedugénérateur

orrespond àlaqualité onstante duTRNGmalgrédesvariations del'environnement,des

attaques externes potentielles et duvieillissement des omposants.

Choisirun TRNGparmitous euxexistantsdanslalittérature peuts'avérerune tâ he

déli ate. Lors de la validation, il est très rare qu'un on epteur d'un TRNG ne ompare

les performan es du générateur proposé ave elles obtenues par des solutions déjà

exis-tantes. La dépendan e d'un générateur ave le ir uit iblé, l'implantation ee tuée par

les on epteurs et l'environnement extérieurdans lequel le ir uit a étévalidé rendent les

omparaisons di iles. A notre onnaissan e, au une étude parue dans la littérature ne

porte sur la omparaison de la qualité des générateurs existants. Il est par onséquent

di ile de séle tionner un TRNG. Deplus, dans un ontexte matériel (e.g. implantation

FPGA), lasurfa e et la onsommationdu ir uit sont des ritères importants né essitant

d'être évalués.

Une des problématiques de l'étude est onsa rée à l'évaluation de TRNG ré emment

parus danslalittérature. Les générateurs testéssont séle tionnés pour lapossibilité

d'im-planter eux- i au sein d'un maximums de ibles re ongurables. Une méthode

d'évalua-tion rapide et e a e basée sur l'utilisation de tests statistiques matériels est proposée.

LesTRNG,implantésauseindumême ir uitre ongurable(i.e.FPGA)sontanalysésen

temps réel dansles mêmes onditions réelles d'utilisation (environnement extérieur, bruit

(14)

plus, la méthode présentée permet d'optimiser les performan es des TRNG. À partir des

tests statistiques, les débits maximum des TRNGimplantés au sein du ir uit iblé sont

re her hés. Les débits trouvés, supérieurs à eux présentés par les on epteurs, montrent

l'intérêt d'utiliser les tests statistiques matériels pour pré- ara tériser le fon tionnement

d'un TRNGet optimiserleur débit.

À partir de l'étude pré édente, un TRNG est séle tionné pour ses propriétés

statis-tiques.Une ar hite ture de générateurhybridepermettant de produire desnombres

aléa-toires uniformes à très haut débit est ensuite proposée. Cependant, omme le montre le

hapitre II, malgré la qualité du générateur séle tionné, l'aléa en sortie du TRNG peut

varierau oursdutempsà aused'attaquesexternespossiblessurle ir uit,delavariation

des onditionsextérieures ouen oreduvieillissementdes omposants.La qualitéaléatoire

de laséquen ede germes produitepar un TRNGest primordiale pour assurer

l'imprédi -tibilité d'un PRNG.An d'améliorer la robustessed'un TRNG, des mé anismes de tests

statistiques en ligne doivent être mis en ÷uvre. Ainsi, une évaluation en temps réel du

omportement du générateurestréalisée et les séquen es défaillan esgénéréespar elui- i

sontévitées.Cetteétudeproposed'utiliseruneimplantatione a edelabatterieduFIPS

140-2. Lasurfa e négligeable du ir uit ausein desFPGAa tuels et lesperforman es

ob-tenuespar le omposant permettentde ontrlerlaqualitéduTRNGséle tionnéentemps

réel.

Après séle tion d'un TRNG pour desperforman es et de mé anismes de test en ligne,un

PRNGdetrèsbonnequalitéestséle tionné.Leprin ipe dugénérateurhybrideproduisant

des nombres aléatoires uniformes à très haut débit est présenté dans la gure 0-1. Une

implantationdugénérateurauseind'un ir uitre ongurableetauseind'un ir uitASIC

estréalisée.

Source de

bruit physique

Bruit

Post-traitement

Séquence

aléatoire

interne

FPGA

Filtrage

Mécanisme

de test en

ligne

Séquence

aléatoire

validée

PRNG

Séquence

pseudo-aléatoire

uniforme

DAS

Alarme externe

Loi normale

Loi Rayleigh

Variables

aléatoires normales

Variables aléatoires

de Rayleigh

Variables aléatoires

uniformes

TRNG

Figure0-1 Présentation dugénérateurproposé.Le ir uit, implantéau seind'unFPGA,

est omposéd'un TRNGet d'un PRNG.La séquen ealéatoire produitepar le TRNGest

analysée en temps réel, par des mé anismes de test en ligne. En as de défaillan es

im-portantesdugénérateur, unealarmeestlevéeet lesséquen es dé ientes sontsupprimées.

(15)

ave une entreprise spé ialiséeen ryptographieà travers leprojetple imageset réseaux

SPRING (Shelf Proof Random Integrated Number Generator). L'entreprise propose une

solution permettant d'assurer la ondentialité, l'intégrité et/ou la non inter eption des

données transmises à travers un anal de transmission. La solution est basée sur

l'algo-rithme des masques jetables. Le prin ipe de fon tionnement est de hirer haque texte

lairàpartird'une léaléatoiredontlalongueurestsupérieureouégaleà elledumessage.

Chaque lé n'est utiliséequ'une seule fois.Lenombre de lés requis,lalongueur de

elles- i et la transmission des lés à travers le anal de transmission engendrent une mise en

÷uvre très oûteuse. L'utilisation d'une lé unique par hirement impose un débit élevé

au générateurde nombres aléatoireset une qualité irrépro hable.

Dansle adreduprojetSPRING,notreobje tifaétédeproposer àl'entreprise de

rypto-graphieunRNGfa ilementimplantableauseind'unemultitudede ir uitsre ongurables

et des mé anismesde ontrle de qualité peu oûteux en termes desurfa e. Le ir uit

dé-veloppé est a tuellement utilisé au sein de la solution proposée par l'entreprise. De plus,

une lé usb générant des nombres aléatoires uniformes sera ommer ialisée sous peu par

l'entreprise à partir destravauxréalisés.

Le ir uitprésentédanslagure0-1permetdegénérerdesnombresaléatoiresuniformes

à haut débit. Dans ertaines appli ations, il est parfoisné essairede générer des nombres

aléatoires suivant une distribution de probabilité diérente. Par exemple, omme le

pré-sentelagure0-2,en ommuni ationsnumériques, ilestsouventné essairede onnaîtrele

taux d'erreur binaired'une haînede transmission. Le tauxd'erreur binaire orrespond à

unemesurerelative dunombre d'erreurbinairemesuréensortied'unetransmission

numé-rique.Leserreurssont généralement engendréespar le analdetransmission[Pro00 ℄etdes

modèlesde anauxde transmissionsont souvent utiliséspour simulerle omportement de

telsystème. Cependant,lestauxd'erreurs binairesa tuels(i.e.

10

−9

)entraînent la

réalisa-tion d'un grand nombre de simulations (i.e. supérieur à

10

14

).La omplexité desmodèles

de anaux de transmission engendre destemps de al ul très importants. Une alternative

pour améliorerlarapiditédes simulations estd'implanter lemodèlede analde

transmis-sion en matériel, au sein de ir uits re ongurables. En ommuni ations numériques, un

modèle de anal de transmission souvent utilisé est un anal ave bruit gaussien additif.

Celui- i né essite l'utilisation d'un générateur de bruit gaussien (GRNG). L'implantation

matérielle d'un GRNG est déli ate ardes fon tions omplexessont souvent utilisées par

les algorithmes. Deplus, lapré ision élevée requise peut engendrer une surfa e non

négli-geable. À partir del'utilisation du ir uit présenté dans lagure 0-1, l'implantation d'un

générateur de nombres aléatoires gaussiens à très haut débit est présenté. Par ailleurs, le

ir uit implanté permet de générer e a ement des nombres aléatoiressuivant une loi de

(16)

Source

Codeur

de

source

Codeur

de

canal

Décodeur

de canal

Décodeur

de source

Destinataire

Modèle de canal

Figure 0-2  Système de ommuni ations numériques ave pro essus de ompression des

donnéeset de prote tion ontreles erreursde transmission.

Plan du mémoire

Cetravail dere her he estprésenté autravers dequatre hapitres. Le premier hapitre

introduit le on ept de générateurs de nombres aléatoires. Le prin ipe de fon tionnement

etlesappli ationsdesgénérateurssontprésentés.Ce ipermetde omprendrel'importan e

degénéreruneséquen efortementaléatoire.Unétatdel'artdesgénérateursvraiment

aléa-toiresest réalisé. Cettepartie présente les limites desTRNG a tuels. Enn, les méthodes

d'évaluation desTRNGsont expli itées.

Le deuxième hapitre est onsa réàl'évaluationsur ible FPGAdeTRNGré emment

parusdanslalittérature. Ce hapitre étudielavariationde laqualitéaléatoire desTRNG

analysésenfon tiondela iblevisée,del'a tivitédu ir uitetdel'environnementextérieur.

De plus, la surfa e et la onsommation des TRNG sont évaluées. Ce hapitre permet la

séle tion d'un TRNGd'ex ellente qualité.

Le troisième hapitre présente l'implantation du générateur hybride proposé. Le RNG

est omposéd'unTRNGséle tionnépoursespropriétésstatistiques,demé anismesdetest

en ligne et d'un PRNG réputé. Après analyse des performan es obtenues par lesystème,

un simulateur matériel d'un anal à bruit gaussien additif et d'un anal de Rayleigh est

réalisé sur ible FPGAet ASIC.

Lequatrième hapitredé rit uneétudeannexeréalisée au oursdelathèse onsistantà

re her her un générateur pseudo-aléatoire optimisé selon un ompromis qualité/ oût

ma-tériel. L'obje tif est de trouver un générateur pseudo-aléatoire protant de la stru ture

systolique d'un FPGA. Les automates ellulaires possèdent une stru ture intéressante

pour atteindredesdébitsmaximum.Cependant,malgréleursimpli ité,prédire le

ompor-tement d'un CA en fon tion de larègle utilisée est très di ile. Ce hapitre propose une

solution permettant la re her he exhaustive de la règle optimale d'un automate ellulaire

à5 voisins.

Enn, le dernier hapitre on lut e do ument en résumant les apports des travaux

(17)
(18)

1

État de l'art

1 Introdu tion

Cettepartie introduitle on eptdegénérateurdenombresaléatoires.Dansunpremier

temps,aprèsavoirdénilanotionde séquen ealéatoire,quelquesappli ationsné essitant

l'utilisation d'un RNG sont présentées. Dans la se tion 3, un état de l'art des TRNG

implantés au sein des ir uits re ongurables (FPGA) est ee tué. Cette partie permet

de omprendre les limites desTRNG a tuels. Enn, la se tion 4 réalise une synthèse des

méthodes devalidation d'un TRNG.

2 Rle et prin ipe de fon tionnement

2.1 Définitions préliminaires

Séquen e binaire aléatoire

Une séquen e binaire

x

onstituée de

l

bits est dite aléatoire lorsque les

l

bits sont

indépendants, imprédi tibles et équiprobables [Knu97℄.

Différen e entre une séquen e de nombres aléatoires et une séquen e de

bits aléatoires

Par abus de langage, un générateur de nombres aléatoires et un générateur de bits

aléatoiresdésignent souvent lamême notion. Leur obje tifest degénérer une séquen ede

motsaléatoires. Lesmotsappartiennentà unalphabet ni

A

.Dansle asd'un générateur

debits aléatoires, l'alphabet estde dimension2 et

A = {0, 1}

. An d'obtenirdesnombres

aléatoires, il est possible de regrouper les bits su essifs en sortie du générateur de bits

aléatoires.

(19)

Un générateurde nombresaléatoires est un algorithmedéterministe ou indéterministe

permettant de générer une séquen e binaire

x

uniforme, imprédi tible et indépendante.

Prouver mathématiquement qu'un générateurestaléatoire estsouvent di ile.Par

onsé-quent,desbatteriesdetestsstatistiquessont utiliséesandevérier silaséquen egénérée

est réellement aléatoire.

Deux grandes familles de générateurs existent : les générateurs vraiment aléatoires

(TRNG) et les générateurs pseudo-aléatoires (PRNG). Les TRNG sont basés sur des

sour esdebruitphysique nondéterministes.Lessour esdebruit généralement utiliséesen

éle troniquesontlebruitthermique,lagigueproduiteparunos illateuroulamétastabilité

d'une bas ule. La gigue orrespond à ladéviation d'un signalpar rapport à son

ompor-tement idéal. La séquen e générée par un TRNG est généralement biaisée. Un étage de

post-traitement estsouvent ajoutéan de réduire la orrélation. L'ajout de e omposant

engendre une diminution du débit du TRNG ainsi qu'une augmentation de la puissan e

onsommée.

LesPRNGsontdesalgorithmesdéterministesbaséssuruneéquation.Ungrandnombre

de PRNGexistent danslalittérature. Onnoteen parti ulierles générateurs ongruentiels

linéaires, le générateur Mersenne Twister, Fibona i, Blum Blum Shub et bien d'autres.

Un état de l'art desPRNG existantsest réalisé dans [Knu97℄.Les PRNG produisent une

séquen e périodique. Malgré leurpériodi ité, les PRNGsont souvent utilisésen VLSI ar

ils permettent d'atteindre desdébits trèsélevés. Cependant, lesPRNGsont initialisés par

lesTRNG.Le ve teurd'initialisationestappeléune semen eougerme (seed).Enfon tion

delaqualitéde elle- i,unPRNGest apabledeproduireuneséquen eayantuneentropie

élevée.

Lagure 1-1présente unRNGhybride omposéd'un TRNGet d'un PRNG.

seed

PRNG

True random

numbers

Pseudo-random

numbers

TRNG

Figure1-1 Générateur aléatoire hybride omposé d'un TRNGet d'un PRNG.

Par onvention, au sein de e do ument, les variables aléatoires sont notées en lettres

apitales et les réalisationsde elles- i,en lettresminus ules.

2.2 Appli ations

Dans ette se tion, trois domaines né essitant l'utilisation de générateurs de nombres

(20)

ommu-ni ationsnumériques.L'obje tifn'estpasd'expliquerlessubtilitésde esappli ationsmais

plutt deprésenterl'importan e desgénérateurs de nombresaléatoires.

2.2-1 Cryptographie

Généralités

La ryptographieestunedis iplinedela ryptologie.L'obje tifestdesé uriserla

trans-missiond'informations,sonsto kageouen oresonauthenti ation.La ondentialité,

l'in-tégrité des données, l'authenti ation d'une entité ou en ore la onnaissan e de l'origine

d'une donnée sont des tâ hes qu'un système ryptographique doit réaliser ave su ès.

Utiliséedepuis l'antiquité,la ryptographie onnaît un engouement trèsimportant depuis

les années 70. Ce i a été favorisé par les travaux de Shannon en 1949 [Sha49 ℄, qui ont

permis de poser lesbases théoriquesde la ryptographiemoderne.

Pour présenter les algorithmes de ryptographie, ette partie repose sur une

ommu-ni ation entre deux interlo uteurs Ali e et Bob. Le système ryptographique est dit sûr,

siau un ennemi (Os ar dansl'exemple)n'est apable d'a éderaux informationsse rètes

é hangées entre Ali e et Bob. Ali e souhaite émettre un message

x

à Bob.

x

doit être

hiréà partird'une lénotée

e

. Le hirementestrendu possiblegrâ eàune fon tionde

hirement notée

E

e

. Le message hiré

y

estobtenu par

y = E

e

(x).

(1-1)

A la ré eption du message

y

, Bob doit le dé hirer. Le dé hirement est réalisé par une

fon tion dedé hirement,

D

d

. Le message

x

estobtenu par

x = D

d

(y).

(1-2)

Unsystème ryptographique estdénipar :

 unensembleni

M

de blo sde textes lairs;

 unensembleni

C

de blo sde textes hirés;

 unensembleni

K

de lés;

 unensemblede fon tionsde hirement

E

e

:

M → C

telque

E

e

soit inje tive

1 ;

 unensemblede fon tionsdedé hirement

D

d

:

C → M

tel que

E

e

◦ Dd = ID

, où

ID

représente lafon tion identité.

Apartir del'expression del'entropie d'une variable aléatoire

X

H(X) =

n

X

i=1

p

i

log p

i

,

(1-3)

Shannon dénitlanotionde sé urité in onditionnelle.La variablealéatoire

X

estdis rète

et peut prendre

n

valeurspossibles:

x

1

, ..., x

n

ave une probabilité non nulle donnée par

p

i

= P (X = x

i

).

(1-4)

1. Uneappli ation

f

: E → F

estinje tivesi

∀(x, y) ∈ E

2

(21)

L'entropie

H(X)

est une mesure de l'in ertitude. L'entropie est maximale lorsque la variablealéatoire

X

estéquidistribuéesur

{x

1

, ..., x

n

}

.Par opposition,

H(X)

estminimale

si

X

estpresque sûrement onstante.

Shannon onsidèreles messagesde textes lairspossibles

x

∈ M

omme étant les

réali-sations d'unevariablealéatoire

X

et lestextes hirés

y

∈ C

omme les réalisationsd'une

variablealéatoire

Y

. Os ar estsus eptible de onnaître lesensembles

M, C, K

ainsiquele

texte hiré

y

. Par onséquent, lasé urité du systèmene peut pasreposer seulement sur

les fon tions de hirement et de dé hirement. Shannon démontre qu'un systèmeest dit

in onditionnellement sûr lorsque

H(X

|Y ) = H(X)

. La onnaissan e d'un message hiré

n'apporte au une information sur le message lair. De plus, si

K

représente la variable

aléatoire pouvant prendre les diérentes valeursde la lé

k

∈ K

, il estpossible de

démon-ter que

H(X

|Y ) ≤ H(K|Y )

. Cetteexpression signieque l'in ertitude sur

X

onnaissant

Y

est inférieure ou égale à l'in ertitude sur

K

onnaissant

Y

. De plus, dans un système

in onditionnellement sûr,

H(X

|Y ) = H(X)

don

H(K)

≥ H(X)

. Ce résultat implique

que lasé urité d'un système in onditionnellement sûrrepose surlaqualité aléatoire de la

lé. D'après[KIKS04 ℄,larésistan ed'un algorithme ryptographique fa eàunennemi est

fon tiondu hoixetdelapolitiquedegestiondes lésaléatoires.Ladénitiond'unsystème

in onditionnellement sûr peut aussi être vue de la manière suivante. Soit deux messages

quel onques appartenant à

M

:

x

1

et

x

2

,laprobabilité que

y

∈ C

soit le hirement de

x

1

doitêtreégaleàlaprobabilitéque

y

soitle hirementde

x

2

.D'après[Cor06 ℄, ettesé urité

n'est possible quesi lalongueur en nombre de bits du message

x

est inférieure ou égale à

elledela léaléatoire.Ce iestdémontréàpartir del'inéquation

H(K)

≥ H(X)

. D'après

[Cor06 ℄, etin onvénient onstitueune limitation importante. Ee tivement,l'idéal serait

de hirer un message à l'aide d'une lé de longueur faible.D'après [Cor06 ℄, ladénition

d'un système in onditionnellement sûrexpriméepar Shannon ne peut êtreutilisée. La

sé- urité d'un système doit être en relation ave les moyens informatiques dont dispose un

ennemi.

Deuxgrandesfamillesd'algorithmes ryptographiquesexistent:la ryptographie

symé-trique et la ryptographieasymétrique [KIKS04 ℄.

Cryptographie symétrique

Lesalgorithmesde ryptographiesymétriqueutilisentdes lésprivées.Soitunensemble

ni de fon tions de hirement

{E

e

: e

∈ K}

et un ensemble ni de fon tionsde

dé hire-ment

{D

d

: d

∈ K}

.L'algorithme de hirementestditsymétriquesiàpartirde la lé

e

, il

est possible de déterminer fa ilement la lé

d

. Généralement, les algorithmes symétriques

utilisent les mêmes lés lors du hirement et du dé hirement, soit

e = d

. Dans un

algo-rithme à lé privée (ou symétrique),la sé urité repose sur la lé. Ali e et Bob possèdent

touslesdeuxlamême lépour hireretdé hirerunmessage.La lédoitresterin onnue

desennemis. Par onséquent,la lé

e

utiliséepar Ali edoitêtreenvoyée àBobgrâ e àun

(22)

desession ou régulièrement durant une longue session.

Le hirage de l'information est généralement réalisé par des hirement par blo .Un

hirement par blo

E

est une fon tion prenant en paramètre une lé

e

et un texte lair

x

d'une longueur nie.

E

génère un texte hiré de longueur nie [Cor06 ℄ à partir d'un

message en lair et d'une lé (ou hirement en blo ). Deux types de hirement par

blo existent, les hirements par substitution et les hirements par transposition. Un

hirement par substitution est un hirement par blo dans lequel les symboles sont

rempla és pard'autressymboles.Un hirementspar transposition estun hirement par

blo dans lequel est réalisée une permutation sur les symboles de haque blo à hirer.

[MVO96 ℄ explique en détail le fon tionnement des hirement par blo . Un autre moyen

de hirer une information dansun algorithme à lé privée est d'utiliser des hirements

par ot. Les hirements par ot sont des hirements par blo de longueur égale à un.

Si la probabilité d'erreur de transmission sur un anal est élevée, les hirements par

ot permettent de ne pas propager d'erreur de transmission. Lors de l'utilisation d'un

algorithmeà léprivée,il aétévuquele problèmeestde réaliserl'é hange de la léentre

Ali e et Bob. La né essité d'avoir un anal sé urisé est une ontrainte forte. Pour éviter

ela, ilest possible d'utiliser unproto olede Die-Hellman [MVO96 ℄.

LesalgorithmesDES(DataEn ryptionStandard)[Nat99a ℄,3DES(TripleDES)[Nat08℄

et AES (Advan ed En ryption Standard) [Nat01 ℄sontdesexemples desystèmes à

rypto-graphie symétrique.

Cryptographie asymétrique

Les algorithmesde ryptographie asymétriquedièrent entre autres danslagestionde

la lé. Soit un ensemble ni de fon tions de hirement

{E

e

: e

∈ K}

et de dé hirement

{D

d

: d

∈ K}

. Late hnique reposesurl'hypothèse suivante.Quel quesoit lemessageémis

par Ali e

y

∈ C

, pour toutes les paires de transformation

(E

e

, D

d

)

, il est impossible (ou

très di ile) de trouver le message lair

x

∈ M

tel que

E

e

(x) = y

. Par onséquent, pour

tout

e

, ilestimpossibledetrouver

d

.Si Ali eet Bobdésirent ommuniquerensemble, Bob

séle tionne une paire de lés

(e, d)

et envoie

e

à Ali e par un anal non sé urisé. Ali e,

aprèsavoirreçu

e

,envoieunmessage

x

àBob.Ali e al ule

y = E

e

(x)

puislefaitparvenir

àBob.Alaré eption,Bob al ulelatransformationinverse

x = D

d

(y)

.Lasé urité repose

surlefait que,même onnaissant

e

, un attaquant n'est pas apable de al uler

d

.

La ryptographie asymétrique (ou lé publique) né essite d'authentier les émetteurs

des messages. An de montrer la né essité d'introduire un proto ole d'authenti ation,

un exemple est donné. Un é hange d'information est réalisé entre Ali e et Bob. Os ar

va rempla er Ali e aux yeux de Bob. Os ar envoie à Ali e une lé notée

e

1

. Ali e envoie

un message à Bob. Os ar inter epte le message émis puis le dé hire ave sa propre lé

d

1

.Étant donnéqu'Os ar ainter eptéla léde Bob

e

, ilest apablede hirer lemessage

venantd'Ali e.Par onséquent,Os arenvoielemessageàBob.Ces énariomontrel'intérêt

(23)

messageàBob,elledoitêtresûrede hirersoninformationparla lédeBob.Lapro édure

d'authenti ation estdétaillée dans[MVO96 ℄.

Lesalgorithmes RSA(issudunomdesinventeurs Rivest,Shamir etAdleman)[RSA78℄

et ECC (Ellipti Curve Cryptosystems) [HMV03℄ sont des exemples de système à

ryp-tographie asymétrique. Un exemple d'implémentation d'un algorithmeà lef asymétrique

danslasé urisation desréseaux GSM,GPRS et UMTSestdonné dans[GMV03℄.

Attaques d'un système ryptographique

Lorsdel'implantationd'algorithmes ryptographiquesenmatérielouenlogi iellorsque

eux- isontexé utéssurunpro esseur,parexemple, eux- iprésententparfoisdesaléasde

fon tionnement[MCL06 ℄.Lessystèmessontpar onséquentvulnérablesauxattaques

d'en-nemis. Les deux grandes familles d'attaquessont les attaques invasives(invasive atta ks)

(IA)et les attaques noninvasives(non-invasive atta ks) (NIA).

LesIAréalisentdu reverse engineering et né essitentdu matérieldelaboratoire

onsé-quent. Les NIA protent des faiblesses de l'implantation matérielle, omme par exemple

les variations du temps d'exé ution, de la puissan e onsommée ou en ore des émissions

éle tromagnétiques[MCL06 ℄.Apartir du/desrelevésde esdiérentesinformationsissues

del'exé utiondel'algorithme,l'extra tiondeparamètresstatistiquespeutrévéler ertaines

in onnues du système. Deux méthodes sont re onnues dans la littérature : la dierential

power analysis (DPA)[KJJ99℄ et ladierential fault analysis (DFA). La DPA exploite la

puissan e onsommée et la DFA tente d'inje ter des fautes dans le systèmepour trouver

ses ara téristiques [BECH

+

06℄. Par exemple, les glit h atta ks tentent d'inuen er

l'ali-mentation, la masse ou l'horloge an de déstabiliser le système. Une autre inje tion de

fautes est réalisée par des attaques à lumières plus ou moins visibles qui entraînent des

perturbations au niveau des semi- ondu teurs. D'après [MCL06 ℄, ertaines solutions

per-mettent de lutter ontre les attaques par DPA en diminuant la puissan e onsommée ou

en modiant l'algorithme du ryptosystème an de dé orréler les états des entrées et la

puissan e onsommée.Par ontre,d'après[SPRQ06℄,lutter ontre esattaquesestdi ile.

Diminuer la puissan e n'ex lut pas totalement le risque d'une attaque par DPA ou bien

sûrpard'autres méthodes:lestiming atta ks, lesDFAouen oreles attaquesparlumière.

De plus, l'implantation des algorithmes ryptographiques, omme l'AES, le DES ou

en ore leRSAau seindes artesàpu es (smart- ards) représente une ible fa ilepour les

DFA.Ces ir uits sont optimisésan de rendreleur intégration élevée touten minimisant

leur onsommation. D'après[MCL06℄, es ir uits présentent par onséquent une faiblesse

à l'inje tion de fautes.Après avoir montré le prin ipe de fon tionnement d'une re her he

de lé dans le DES, [MCL06 ℄ présente une ar hite ture tentant de protéger l'algorithme

ontre les DFA. Un o-pro esseur est rajouté an de déte ter et de orriger les fautes de

transitions. Le o-pro esseur réplique lesparties vulnérables dusystème auxattaques par

fautes.[BECH

+

06℄présentelesméthodesutiliséespour réaliseruneinje tiondefautesan

(24)

en ore le proto ole d'é hange de lé dans le DES. Des solutions matérielles et logi ielles

permettant delutter ontrel'inje tion defautes sont présentées.

[SPRQ06℄ présente une autreappro he que laDPA permettant d'attaquer un système

à partir de sa puissan e onsommée. Le prin ipe de fon tionnement est d'ee tuer une

analyse statistique baséesur la réalisation de mesures de orrélation. La te hnique,

nom-mée orrelationpower analysis(CPA)permetunemeilleureutilisationdu ourantdefuite.

[SPRQ06 ℄ présente une analysedelaCPA d'unemanièrethéorique.Lapuissan e

onsom-méeenCMOSétant proportionnelleàlafréquen edestransitions,l'obje tifestdeprédire

lenombre de transitionsqu'engendre une lé. La orrélationentrelaprédi tionet la

puis-san e mesurée est al ulée. Si la orrélationest maximale, la lé est trouvée. Laméthode

possèdel'in onvénientderéaliserbeau oupde al ulsd'auto orrélation.[SPRQ06 ℄présente

quatreméthodes permettant de lutter ontrer les attaques utilisant la puissan e

onsom-mée.Deuxde elles- i né essitentungénérateurdenombresaléatoires. Par ontre, au une

méthodenepermetdeprouverlasé uritéthéoriquedusystème[SPRQ06 ℄.Laseulesolution

permettantd'atteindre unniveaudesé uritéa eptableestderéaliserune ombinaisonde

plusieurs te hniques.

Beau oup de méthodesd'attaque de systèmes ryptographiques existent dans la

litté-rature.L'obje tif i i estde prendre ons ien ede lavulnérabilité dessystèmes

ryptogra-phique fa eauxattaques.

Cettese tionaprésenté deste hniquesutiliséesen ryptographie.L'obje tifn'étaitpas

d'expliquerlesméthodesexistantesmaisplutt deprésenterlaproblématique de ette

dis- ipline.Ilaétévuqu'enpratique,lasé uritéin onditionnelled'unsystèmeestdi ilement

démontrable.Par onséquent,desméthodesd'attaquespermettent de asserles

ryptosys-tèmes.D'après[BMV06℄, haquemodule ryptographique auneduréedevielimitéeallant

de inq à dix ans. Deplus, ette partie a montré l'importan e des lés aléatoires dansles

algorithmes ryptographiques. Dans esappli ations, la faiblesse d'uneséquen e aléatoire

peut provoquer la défaillan e totale de la sé urité du système. Ce i impose d'utiliser des

générateurs denombres aléatoires dequalité.

L'implantation au sein des ir uits embarqués de modules ryptographiques est une

réelledemande.Malheureusement, l'implantationdeproto olesdesignaturenumériqueou

d'algorithmes de ryptographie est inadaptée à es ir uits ( onsommation d'énergie et

faible densitéd'intégration). Par onséquent, travailler surl'implantation desalgorithmes

de ryptographieestné essaireand'adapterlebesoinensé uritéde es ir uitsave leurs

possibilités [BMV06℄.

Un grand nombre d'appli ations ryptographiques reposent sur les propriétés

statis-tiques d'une lé (imprédi tibilité). En as de défaillan e de elle- i, le système peut être

totalementvulnérable.Ce imontrel'importan edelagénérationdes lésaléatoiresausein

(25)

2.2-2 Méthodes de Monte-Carlo

Il est parfois di ile d'analyser un pro essus physique ou un modèle mathématique.

Dans ertains as, l'utilisation de nombres aléatoires est né essairepour résoudreun

pro-blèmedi ile [Jam80℄.Laméthode deMonte-Carloestunete hniquedesimulation

numé-rique très utile et utilisée pour appro her l'intégrale d'une fon tion multi-dimensionnelle.

La méthodeest baséesurla théoriedesgrandsnombres. Pour appro her

1

b

− a

Z

b

a

f (u)du,

(1-5)

ilestpossibledetirerauhasard

n

nombresaléatoires

x

i

∈ [a, b]

ensuivantuneloiuniforme.

Pour

n

tendant vers l'inni, lerésultat de

1

n

n

X

i=1

f (x

i

)

(1-6)

onverge vers le résultat désiré et résoud l'intégrale (1-5). Les méthodes de Monte-Carlo

peuvent être vues omme un problème d'estimation. L'estimateur de Monte-Carlo de

(1-5) est don (1-6). L'obje tif est d'avoir un estimateur non biaisé minimisant la varian e.

La lenteur de la onvergen e de laméthode est l'in onvénient majeur. Par ontre, elle- i

est insensible à la dimension du problème (de lafon tion à intégrer) et à la régularité de

la fon tion. Pour réduire le temps de onvergen e, il est possible d'utiliser des te hniques

de diminution de la varian e (varian e-redu ing te hniques) [Jam80 ℄. L'in onvénient de

es te hniques est qu'elles né essitent des onnaissan es a priori sur les statistiques du

problème. Par onséquent une autrete hnique estutilisée : larédu tion de lavarian e de

manière adaptative (adaptative varian e-redu ing te hniques) [Jam80 ℄.

Les méthodes de Monte-Carlo né essitent don un générateur de nombres aléatoires

performantetdequalité.Danslepassé,lafaible onnaissan edelathéoriedesgénérateurs

denombres aléatoiresaétéunfreinauxsimulationsdeMonte-Carlo.Laqualité de eux- i

était relativement faible,leurs périodesétaient petites et la sortie desRNG était souvent

orrélée. Par onséquent, une extension de la méthode de Monte-Carlo a été onçue : les

méthodes de quasi Monte-Carlo (QMC). Ces méthodes relâ hent des ontraintes sur la

générationdesvariables aléatoires.L'obje tifdesgénérateurs estderemplirdes onditions

propresauxsimulationsdeQMC.Parexemple,la orrélationprésenteensortiedeRNGest

admise. Deplus, la variation de l'uniformité des variables aléatoires (v.a.) pour ertaines

distributions doit être inférieure à elle d'une v.a. générée par un générateur vraiment

aléatoire.

Dans ertainessimulations, lav.a.générée doitsuivreune autreloiquelaloiuniforme.

Parexemple,ilestsouventné essairequeladistributiondelav.a.suiveuneloi:gaussienne,

exponentielle,binomiale ou en ore dePoisson. [Jam80℄ et [ST91 ℄expliquent omment

(26)

2.2-3 Communi ations numériques

Utilisés lors de la simulation d'un anal de transmission (radio, laire, satellite), les

générateursdenombresaléatoirespermettentd'appro herlaréponsefréquentielledu anal

de transmission. Par ailleurs, les RNG sont né essaires lors de l'estimation d'un anal de

transmission. Pour obtenir la réponse impulsionnelle d'un anal, une méthode simple est

d'attaquer elui- i par un é helon. En pratique, une séquen e aléatoire est préférée à un

é helon ar elle- ipossèdeunepuissan emoyennesupérieureetpar onséquentunmeilleur

rapportsignalàbruit (SNR)pour lamême puissan etransmise[Skl01 ℄. [CLLL06℄montre

l'importan e d'utiliser une séquen e pseudo-aléatoire an de traquer la variation de la

réponseimpulsionnelle du anal de transmission.

LesRNGsont requis lorsd'un étalement despe tre (spread-spe trum te hniques)

utili-sant late hnique dire te [Skl01 ℄.La te hnique est requise par exemple dansles

ommuni- ationsmilitaires.Andedissimulerl'information transmise, elle- iest odéegrâ eàune

séquen epseudo-aléatoire (pseudonoise sequen e) [Skl01℄.

Lesgénérateursdenombresaléatoiressontaussiutiliséspourréaliserlasimulationd'un

analde ommuni ation(e.g. anauxMIMO[VY03℄). Généralement, laloi utiliséeestune

loi normale.Une loi normaleest obtenue àpartir d'une loiuniforme. Plusieurs te hniques

permettent de réaliser ette transformation. Celles- i reposent généralement sur

l'utilisa-tiond'une fon tionnon-linéaire. Le prin ipe de basede ette transformationrepose surle

théorème entrallimite.Lasommede

n

variablesaléatoiresuniformessuitune loinormale

lorsque

n

estgrand.Lalenteurdelaméthodeestunfreinàsonutilisation.And'améliorer

larapidité, d'autres te hniques ont été étudiées. La méthode de Walla e[Wal96 ℄ possède

l'avantage de ne pas né essiter de fon tions non-linéaires. La méthode exprime la sortie

du générateurà l'étape

i

en fon tion dessorties pré édentes. Par onséquent, la séquen e

générée est orrélée [Lee06 ℄. La orrélation peut être diminuée à un niveau a eptable en

hoisissant les paramètres optimaux à ette méthode [Lee06 ℄. [LLV

+

05 ℄ et [LLVC04℄

pré-sentent une implantation matérielle de la méthode de Walla e. Une autre méthode est

l'a eptation-refus (reje tion-a eptan e method).L'in onvénient delaméthodeestqu'elle

utilise des bou les onditionnelles. Par onséquent, le débit en sortie n'est pas régulier.

La méthode de Box-Muller, ave ou sans utilisation du théorème entral limite, est une

alternative auxdeuxsolutionspré édentes.La méthode onsisteàréaliserdes

transforma-tions non-linéaires sur la séquen e uniforme de départ. Les fon tions né essaires sont le

logarithme, la ra ine arrée, le osinus et le sinus. [BDG03 ℄ et [LLVC04℄ ont implanté la

méthode de Box-Muller au seind'un FPGA.An de orriger les erreursde al uls lorsde

l'implantation en virgule xe, [BDG03℄ et [LLVC04℄ utilisent le théorème entral limite.

[ABS05℄ propose aussi une implantation matérielle de la méthode. Une extension de la

te hnique de Box-Muller existe,il s'agit de laméthode de Box-Muller modiée(aussi

ap-pelée polar method)[ST91 ℄. L'in onvénient de laméthode deBox-Muller modiéeest que

elle- ireposesuruneméthoded'a eptation-refus.Par onséquent,ledébitensortien'est

(27)

d'utiliser lafon tion derépartitioninversede laloinormale. Une table de orrespondan e

permetderéaliserdire tementlatransformation.Lasolutionestdi ilement réalisableen

raison du oût mémoire [LLV

+

05℄. Il est parfois né essaire de générer des variables

aléa-toires orrélées.[MC94 ℄présente uneméthodegénérantdeuxvariablesaléatoiresuniformes

dontla orrélationest ontrlée.Andetesterlaqualitédeladistributiondesloisnormales

obtenues, laséquen ebinaireestanalysée pardestestsd'adéquation (goodness-of-t test).

D'après [LLV

+

05℄ et [LLVC04℄, les tests du Chi-deux (ou Chi- arré

χ

2

) et

d'Anderson-Darling sont performants pour testerladistribution obtenue.

3 Générateurs de nombres vraiment aléatoires

Commeprésenté dans lagure1-2, unTRNG peut être dé omposéen troisparties, le

bruit physique, un é hantillonneur et un module de post-traitement [KS01 ℄. Les signaux

en sortie de l'é hantillonneur et du post-traitement sont souvent appelés bruit analogique

é hantillonné(noté DASpourDigitizedAnalog Signal) etnombres aléatoiresinternes.Les

réalisations des v.a. DAS et des nombres aléatoires internes sont notées respe tivement

r

1

, r

2

, . . .

et

y

1

, y

2

, . . .

.

Une unitéde post-traitement est souvent requise dansla onstru tion desTRNG. Son

rle est de orriger les imperfe tions présentes sur le signal DAS. Un grand nombre de

te hniquesexistentdanslalitérature,telquelesextra teursdeVonNeumann,lesfon tions

de ha hage ou lesextra teurs d'aléa.

Physical noise

source

Digitization

Noise

signal

Te

DAS

Post-processing

Internal

Random

numbers

Figure 1-2  Dé omposition d'un générateur vraiment aléatoire. Un TRNG peut être

dé- omposé en trois parties, le bruit physique, un é hantillonneur et un module de

post-traitement

La plupart desTRNG basés surdes te hniques éle troniqueset implantés sur ible VLSI

utiliselagiguedephase(oujitter)d'unouplusieursos illateurs.Lagiguedésignela

dévia-tion d'un signalpar rapportàson omportement idéal.La gigueest auséepar desbruits

déterministes (bruit d'alimentation, bruit de ouplages) et aléatoires (bruit de substrat,

variationdelatempérature). Par ailleurs,lagiguedépendfortement del'os illateur utilisé

au sein du TRNG (souvent une bou le à verrouillage de phase (PLL) ou un os illateur

à anneau) [Fah05 ℄. En pratique, la gigue peut être inuen ée par des bruits externes au

ir uit et par sona tivité. Cettefaiblesse rend ertaines attaques réalisables, par exemple

(28)

Par rapport aux nombreux PRNG existants, un nombre limité de TRNG implantés

sur ible matérielle FPGA et ASIC existent dans la littérature. Au sein des ir uits, la

te hniquelaplusutiliséeestbaséesurl'é hantillonnaged'os illateurs(Os illatorSampling)

(OS).Cependant,unTRNGbasésuruneampli ationdire ted'un bruitphysique ousur

l'utilisation d'un signalmétastableest parfoisren ontré.

3.1 TRNG basés sur l'amplifi ation d'un bruit physique

3.1-1 TRNG proposé par Bagini et al.

Bagini et al. [BB99℄ présentent un TRNG utilisant une sour e de bruit analogique

externeetuné hantillonneur numérique.Les hémadeprin ipedugénérateurestprésenté

danslagure1-3.[BB99℄fournitunmodèleanalytiquedugénérateurexprimantlarelation

entreledébitde elui- i et la orrélationdelasortie aléatoire.IlestmontréqueleTRNG

est résistant aux variations des onditions externes et des omposants. De plus, d'après

[BB99℄,iln'estpasné essairede ontrlerlegénérateurvial'utilisationdetestsstatistiques.

Cependant, au unrésultat d'implantation du TRNGn'est fourni.

Filtre

passe bas

Comparateur

à hystérésis

Clk

Source

de bruit

D Q

/N

/2

Bits

aléatoires

Figure 1-3  S héma de prin ipe du TRNG [BB99℄. Les prin ipaux blo s omposant le

TRNGsont une sour e de bruit physique externe, unétage de ltrage et un omparateur

àhystérésis.

3.1-2 TRNG proposé par Jun et al.

Un autre exempled'ampli ation dire ted'une sour e debruit physique aété proposé

parInteldans[JK99 ℄.Les hémadeprin ipedugénérateurestprésentédanslagure1-4.

Lebruitthermiquedugénérateurestobtenuensoustrayantlessignauxrelevésensortiede

deuxrésistan es. Ce iaméliore larobustessedu système ontre lesvariations de

l'alimen-tation et de l'environement extérieur. La diéren e des deuxsignaux impliquant un bruit

thermique est ensuite ampliée. Le signal obtenu est appliqué en entrée d'un os illateur

ontrlé en tension (VCO). La sortie du VCO est é hantillonnée par l'horloge

Clk

. Un

dé orrélateur de typeVon-Neumann est appliquésur lesignal DAS.Avant d'être utilisée,

lasortieduTRNGesttransforméeparunefon tiondeha hage,leSHA-1.D'après[JK99 ℄,

(29)

Ampli.

Source de

Bruit thermique

VCO

Clk

D Q

Bits

aléatoires

Extracteur de

Von-Neumann

Figure 1-4  S héma de prin ipe du TRNG [JK99 ℄. Le bruit thermique du générateur

est obtenu en soustrayant les signaux relevés en sortie de deux résistan es. La diéren e

des deux signaux impliquant un bruit thermique est ensuite ampliée. Le signal obtenu

est appliqué en entrée d'un os illateur ontlé en tension (VCO) puis é hantillonnée par

l'horloge

Clk

.

Ces ir uits utilisant des sour esde bruits analogiques sont di ilement implantables

auseindes ir uitsre ongurables.Deplus,lefaibledébitde esTRNGlimite l'utilisation

d'une te hnique de type ampli ation dire te.

3.2 TRNG basés sur l'é hantillonnage d'os illateurs

Uné hantillonnaged'os illateurs(OS)estbasésurl'utilisationdubruitdegiguegénéré

par unos illateur.Commeleprésente lagure1-5,leprin ipe estderéaliser

l'é hantillon-nage d'une horloge haute fréquen e (

F

h

) par une horloge basse fréquen e (

F

l

). La gigue

dépend de la te hnique d'os illateur utilisée. Plusieurs solutions sont possibles. L'horloge

tou hée par lagigue peut être produite àpartir d'une horloge externeou d'un os illateur

interne au ir uit (FPGA ou ASIC). Cette partie présente les OS implantés au sein des

ir uits VLSI et FPGA.

D

Q

l

F

h

F

F

r

h

F

l

F

r

F

Figure 1-5 Fon tionnement d'un OS selon [TLL03℄. Le prin ipe est de réaliser

l'é han-tillonnage d'une horloge hautefréquen e(

F

h

) par unehorloge basse fréquen e(

F

l

).

3.2-1 TRNG proposé par Tsoi et al.

Tsoi et al. [TLL03℄ présentent l'implantation d'un OS au sein d'un FPGA. Le signal

(30)

la gigue présente sur

F

l

. L'é hantillonnage est réalisé au sein du FPGA. Le s héma de

prin ipedugénérateurestdonnédanslagure1-5.Comme lemontrelagure1-6,ande

diminuer lebiaisprésent surlasortie générée,une porte XORestutilisée (xorextra tor).

Le ir uit de dé orrélation engendre une forte diminution du débit du TRNG. D'après

[TLL03℄, ertainsparamètres peuvent dégrader grandement laqualité delaséquen eissue

duTRNG.Un hoixjudi ieux delafréquen edusignal(

F

l

)doitêtreréalisé.Deplus,une

tropfortediminutionde lagigueprésentesur

F

l

engendreune forte orrélation. Ce ipeut

entraînerlaprédi tibilitédugénérateur.Enn,lerapportentrelespériodesdessignaux

F

l

(

T

F

l

)et

F

h

(

T

F

l

)doitêtre hoisi orre tement (

T

F

l

≥ 0.75T

F

h

).LeTRNGfon tionne àune

fréquen e maximale de 266 MHz (les fréquen es respe tives de

F

l

et

F

h

sont égalesà 266

MHzetà400 MHz).LeTRNGpossède undébit de29kb/s.L'in onvénient dugénérateur

estlané essitéd'utiliserun ir uitexterneauFPGA,diminuantpar onséquentlasé urité

dusystème.

D

Q

D

Q

D

Q

D

Q

XOR

h

F

l

F

r

F

Figure1-6 Implantation de l'OSselon [TLL03℄.Dé orrélateur utilisé par legénérateur.

Au sein des ir uits ryptographiques, l'utilisation d'une horloge externe est à éviter.

L'obje tif est de minimiser les possibilités d'attaques sur le TRNG. Une des solutions

proposée an de orriger ette faiblesse est d'utiliser un os illateur interne au ir uit

re- ongurable.

3.2-2 TRNG proposé par Fis her et al.

Fis her et al. [FDvB04℄ présentent un OS utilisant la gigue réée par une bou le à

verrouillage de phase (PLL). Ce générateur, introduit dans [FD03 ℄ est un des premiers

TRNGà avoir étéimplanté dansune ible FPGA. Plusieurs implantationsde e typeont

ensuiteétérapportéesdanslalittérature (FPGA Altera,FPGAA tel).

Leprin ipedefon tionnement dugénérateurestdetraquerlagiguerelativeentredeux

signauxd'horloges. Aladiéren e de [TLL03℄, [FDvB04℄ n'utilisepasné essairement une

horloge bassefréquen e. Dans[FDvB04℄,lesdeuxsignauxd'horloges sont générésà partir

(31)

une variationdelafréquen edu signalgénéré. Un ir uit de ontrle asservitlafréquen e

du signal généré à lafréquen e désirée. Cette variation représente lagigue. Le s héma de

prin ipe du générateurestdonné danslagure 1-7.

Décimateur

( )

PLL

D

Q

q

(

nT

CLK

)

x

(

nT

CLK

)

CLJ

CLI

D

K

PLL

CLK

Figure 1-7  Implantation de l'OS à partir de deux PLL, selon [FDvB04℄. Le prin ipe de

fon tionnementdugénérateurestdetraquerlagiguerelativeentredeuxsignauxd'horloges.

Lesdeuxsignauxd'horloges sontgénérésàpartir deblo sPLL.Lavariationdebruitdans

unePLLengendreunevariationdelafréquen edusignalgénéré.Cettevariationreprésente

lagigue.

Lagiguesesitueautourdesfrontsmontantset des endantsdusignal

CLJ

.Lesfréquen es

dessignaux

CLK

et

CLJ

sont obtenues àpartir desrelations

F

CLK

=

M

CLK

D

CLK

F

CLI

(1-7)

F

CLJ

=

M

CLJ

D

CLJ

F

CLI

=

M

CLJ

D

CLK

D

CLJ

M

CLK

F

CLK

=

K

M

K

D

F

CLK

.

(1-8)

M

CLK

,

D

CLK

,

M

CLJ

et

D

CLJ

désignent lesparamètres desPLL.

Pendant une période du générateur

T

,

K

D

fronts montants de

CLK

et

2K

M

fronts

montantset des endantsde

CLJ

surviennent.Ainsi,

K

D

valeursde

CLJ

sont

é hantillon-néeset aumoinsune de elles- idoitêtreae téeparlagigue. Si

T

CLK

désigne lapériode

del'horloge

CLK

et

T

CLJ

elledel'horloge

CLJ

, lapériodedugénérateurestdonnée par

T = K

D

T

CLK

= K

M

T

CLJ

.

(1-9)

Deux onditionsdoiventêtrerempliespourassurerle ara tèrealéatoiredelaséquen e

générée. Les paramètres

K

M

et

K

D

doivent être premiers entre eux pour assurer une

répartitionuniformedesbitsen sortiedugénérateur.Par onséquent,

pgcd(K

M

, K

D

) = 1

,

pgcd

désigne le plus grand diviseur ommun. De plus, pendant

T

, au moins un front

montant de

CLK

doité hantillonner lesignal

CLJ

pendant undeses fronts montantsou

des endants(moment présentant l'eet de gigue).D'après [FDvB04℄,danslepire des as,

ladurée minimaleentrele front montant de

CLK

et undesfrontsde

CLJ

estégale à

max(

△T

min

) =

T

CLK

4K

M

pgcd(2K

M

, K

D

) =

T

CLJ

4K

D

pgcd(2K

M

, K

D

).

(1-10)

(32)

En hoisissant les paramètres

K

M

,

K

D

et

F

CLJ

à partir de (1-10), il est possible de

borner lavaleurde

max(

△T

min

)

par l'é arttype de lagiguede l'os illateur

σ

jit

σ

jit

> max(

△T

min

).

(1-11)

Le rle de

max(

△T

min

)

est présenté à lagure1-8.

jitter

0

min

=

T

Critical samples

5

=

D

K

min

T

4

=

M

K

CLK

CLJ

)

(

nT

CLK

q

Q

T

Figure1-8 Observation d'un é hantillonnage ritique dans[FDvB04℄.

Le bit de sortie du générateur

x(nT )

est déduit des

K

D

valeursé hantillonnées de

CLJ

.

Anderéduirela orrélationprésenteensortieduTRNG,[FDvB04℄utiliseundé imateur

basésurl'utilisation d'une porte XOR

x(nT ) = q(nT )

⊕ q(nT − T

CLK

)

⊕ ... ⊕ q(nT − (K

D

− 1)T

CLK

),

(1-12)

désigne l'opérateur XOR et

q(nT )

désigne l'é hantillonnage du signal

CLJ

par le

signal

CLK

.

[FDvB04 ℄ étudie la variation des performan es de l'OS lorsque les deux horloges sont

générées à partir de diérentes PLL (Enhan ed PLL (EPLL) et Fast PLL (FPLL)). La

meilleure onguration estobtenue lorsque deuxEPLL sont utilisées.

De plus, [FDvB04℄ montre que si (1-11) n'est pas satisfaite, la qualité du TRNGpeut

être améliorée en ajoutant une ligne de retard. Ce i est présenté dans la gure 1-9. Le

orre teur basé sur l'opérateur XOR permet d'augmenter laprobabilité de re ouvrement

entrelefront montant de

CLK

et les frontsde

CLJ

.

L'utilisation d'une ligne de propagation permet de rendre équivalente toutes les

ongu-rations. Par ailleurs,[FDvB04℄ montrequ'une pluslongue lignede propagationpermet de

(33)

Décimateur

( )

PLL

D

Q

)

(

CLK

XOR

nT

q

x

(

nT

Q

)

CLJ

CLK

D

K

D

Q

1

2

D

Q

n

XOR

Figure1-9 Miseenpla e delaligne deretard dans[FDvB04 ℄. E hantillonnage dusignal

CLJ

retardé par plusieurs délais puis ombinaison dessorties par uneporteXOR.

Àpartirde(1-11),[FDvB04℄montreladépendan eentreledébitduTRNGetlagigue

présente

F

CLI

max(

△T

min

) =

1

4M

CLK

M

CLJ

,

(1-13)

F

CLI

désigne lafréquen edusignald'entrée.Pour lafréquen ede

F

CLI

xée,minimiser

max(

△T

min

)

revient à maximiser

M

CLK

et

M

CLJ

. Le débit del'OS estdénipar

R =

F

CLI

D

CLK

D

CLJ

.

(1-14)

Par onséquent, augmenter ledébit revient à minimiser

D

CLK

et

D

CLJ

. [FDvB04℄ a

im-planté legénérateurauseind'une artededéveloppement AlteraNIOSAPEX20K200.Les

paramètres du système sont

K

M

= 785

,

K

D

= 1272

et

max(

△T

min

) =

T

CLK

4K

M

= 7.2

ps

< σ

jit

. [FDvB04℄ a aussiimplanté legénérateur sur une arte AlteraStratix EP1S25. Un

débit maximalde 1 Mb/sestobtenu.

[SFDF06 ℄proposeunmodèleprobabilistepermettantdeprédirelebiaisproduitensortie

du TRNG[FDvB04℄.Le modèleest basésurla onnaissan e dunombre debits aléatoires

dans les

K

D

bits ré oltés avant l'étage de post-traitement. Il repose sur l'indépendan e

entreles

K

D

bits.Malheureusement, en fon tionde la onguration deshorloges

CLK

et

CLJ

, lemodèle n'est pastoujoursvalide.

Une alternative à l'utilisation de bou les à verrouillage de phase est d'utiliser un ou

plusieurs os illateursà anneaux.

L'avantage desOS utilisant une te hnologie à based'os illateurs à anneau (RO) estla

portabilitéde l'implantation dansles ir uits VLSIou FPGA.Unos illateur àanneau est

(34)

rebou le sur l'entrée du premier. Un signal d'horloge dont la période est proportionnelle

aunombre d'inverseurs ainsiqu'àleur temps detraversée estainsiobtenu. L'in onvénient

desROestleursensibilitéauxbruitsextérieurs(température,perturbations

éle tromagné-tiques,bruitsd'alimentation), à l'a tivitéavoisinante et autaux d'o upation du ir uit.

3.2-3 TRNG proposé par Bu i et al.

A partir de la on eption d'un os illateur full- ustom in luant une sour e de bruit, le

TRNG présenté par Bu i et al. [BGL

+

03 ℄ possède un débit de 10 Mb/s et satisfait les

testsstatistiques duFIPS 140-2.La gure 1-10présente lefon tionnement du TRNG.La

fréquen edel'os illateurrapide(

CLK

F AST

)estégaleà1GHz.L'horloge

CLK

J IT

possède

unefréquen emoyenne de10 MHz.Lagigueprésente surlesignal

CLK

J IT

estégaleàun

dixièmedesapérioded'horloge.Lavarian edelagiguede

CLK

J IT

estsupposéeêtre

supé-rieureà elledusignalhautefréquen e.L'hypothèsepermetdesupposerlanon orrélation

desé hantillonsgénéréspar leTRNG.Danslagure1-10,lefa teur

N

P RE

estutiliseran

de tester plusieurs débits. Par ailleurs, d'après [BGL

+

03℄, le fa teur pourraitêtre adapté

àpartir de l'évaluationde laqualité du générateurpar l'étagede post-traitement.

D Q

BIT

[i

]

Post traitement

RNG

CLK

Diviseur

( )

N

PRE

JIT

CLK

Oscillateur

basse fréquence

touché par la gigue

Oscillateur

haute fréquence

]

31

...

0

[

'

BIT

FAST

CLK

Figure 1-10  Prin ipe de fon tionnement de l'OS selon [BGL

+

03℄. L'os illateur rapide

(

CLK

F AST

)estimplantépar unRO omportant10inverseurs,safréquen eestde1GHz.

L'horloge

CLK

J IT

possède unefréquen emoyennede10MHz.Lepost-traitementpermet

de ontrler lefa teur

N

P RE

an d'adapter lafréquen e dusignal

CLK

RN G

.

An d'analyser le omportement statistique de la sour e de bruit, [BGL

+

03℄ pose quatre

hypothèses.Commeprésentédanslagure1-11,lapériodedusignal

CLK

RN G

(

T

CLK

RN G

)

estsupposéesuivreuneloinormale.Deplus,lagigueprésentesurl'horlogehautefréquen e

estnégligée. La relation

N =

E[T

CLK

RN G

]

T

CLK

F AST

∈ N,

(1-15)

estsupposéevériée.Dans(1-15),

T

CLK

F AST

et

E

désignentrespe tivement lapériodedu

Références

Documents relatifs

• In 2005, in [BH05] Barak and Halevi proposed a security model in which a pseudo-random number generator with input is clearly defined as a couple of deterministic polynomial-

This paper presents the new self-timed ring based true random number gener- ator (STRNG). It significantly extends the principle presented in [10] by propos- ing a stochastic model

On the other hand, the oscillation period in a self-timed ring does not depend directly on the number of stages as it does in inverter ring oscillators, but it is a function of the

Results of FIPS 140-2 statistical tests of PLL-TRNG output and number of random samples influenced by the jitter at different chip temperatures for configurations A

Wold and Tan show in [18] that by adding a flip-flop to the output of each oscillator (before the XOR gate), the generated raw bit-stream will have better statistical properties:

Ce générateur peut être utilisé dans toutes les études faisant appel à la.. méthode

Especially, that will not be necessary because we have to avoid this problem by using sequences which are really samples of random variables and by study- ing the properties that

Mais il est tout de mˆeme mieux de supprimer ces d´ependances : c’est pourquoi on peut choisir N premier ou ne prendre ` a chaque bloc que les ⌊ N/2 ⌋ premiers termes.. Maintenant,