Fig.5-13Attaqueboomerangetattaqueboomerangampliéepourless hémasde hirement parblo .Le sensdesè hes indiquelesens hirement/dé hirement.
Appli ation aux fon tions de ha hage L'appli ation de l'attaque boomerang ampliée aux fon tions de ha hage onsiste à ombiner à ladiérentielle prin ipale plusieurs diérentielles partielles, dites diérentielles auxiliaires. Ces diérentielles auxiliaires onstituentdesdiérentiellesqui possèdentun bon omportementsurun nombre limitéde pasde lafon tion demise àjour desregistres.
Nous allons à présent dé rire le prin ipe d'appli ation de l'attaque boomerang ampliéepourlesfon tionsSHA-0etSHA-1.Dansleurarti le,JouxetPeyrin[JP07℄ indiquent que ette te hnique onstitue une généralisation des te hniques de bits neutres etde modi ations de message. Nous hoisissons i i de nous pla er dans le ontexte d'une utilisation des boomerangs en tant que bits neutres, ar 'est elle que nous avons utilisée ave su ès lors de la ryptanalyse que nous avons menée ontrelafon tion SHA-0 [MP08 ℄.
Considérons une re her he de ollision, les premières étapes de l'attaque nous ontpermisde onstruireun hemindiérentiel,quenousqualieronsdeprin ipal,et d'obtenirunediérentielle
∇P
,àpartirdelaquellenouspouvonsdéduireladiéren e∆P w
appliquée en entrée au ouple de messages (par simpli ité, et sans perte de généralité, nous onsidérerons que toutes les diéren es utilisent le ou ex lusif bit à bit). Dans les notations que nous emploierons, l'indi ew
indique une diéren e on ernant les mots de message, l'indi ea
indique une diéren e on ernant l'état des registres. Nous possédons aussi pour les états des registres, une diéren e en entrée∆Ea
etunediéren eensortie∆P a
.Cesdiéren espourront êtrenullesdans le asd'unere her hede ollisionsurunseulblo ,ouégaleàdesvaleursparti ulières dansle asoùlate hnique desblo smultiples estemployée.Nousre her honsalors lespairesde messages(M, M
′)
ave
M
′= M ⊕ ∆
sortie
∆P a
est atteinte, e quiseproduit ave laprobabilitép∇P
pour haque paire andidate.An d'illustrer le prin ipe de l'attaque boomerang, nous supposons que nous avons à notre disposition une diérentielle auxiliaire
∇A
pour laquelle la diéren e appliquée aux messages vaut∆Aw
et la diéren e observée sur l'état interne vaut∆Aa
.Unediérentielleauxiliaire se ara térise depluspar saportées
, 'estàdire lepasauquelladiéren e∆Aa
estdestinéeàêtreobtenue.Pourunepairedemessage(M, M′)
aveM
′
= M ⊕ ∆
Aw
, ladiéren e∆Aa
est atteinte à la portées
ave la probabilitép∇A
pour haquepaire andidate.Onpeutremarquerqueladiérentielle prin ipale∇P
onstitue une diérentielle auxiliaire deportée 80.Nousdivisonsl'ensembledes80pasdelafon tiondemiseàjourdesregistresen deuxparties, ladivision étant positionnée sur lepas
s
orrespondant à laportée de ladiérentielle auxiliaire. Nous notons∆Sa
ladiéren e attendue sur l'état interne au pass
. La probabilité qu'une paire de messages(M, M
′
= M ⊕ ∆
P w)
onduise à un état interne vériant la diéren e∆Sa
au pass
est notéepS
. La probabilité qu'à partir d'une diéren e∆Sa
sur l'état interne au pass
, une paire de message(M, M′
= M ⊕ ∆P w)
onduise à une diéren e∆P a
surl'état interneau pas80 est notéepF
.Ensupposant les étapesindépendantes, nousavonsp∇P
= pS× pF
.Uneappli ation de late hnique desboomerangsampliées sedéroulealors dela façonsuivante :
1. On hoisit une paire de messages
(M1, M
′
1
= M1
⊕ ∆P w)
se onformant au hemindiérentielprin ipaljusqu'aupass
, e iestvraiave laprobabilitépS
. 2. On onstruitalors lespaires(M1, M2= M1⊕ ∆Aw)
et(M
′
1, M2′
= M1′⊕ ∆Aw)
, es paires se onforment au hemin diérentiel auxiliaire ave la probabilitép∇A
.Si es pairessont valides, lapaire
(M2, M
′
2)
se onforme aussiau hemin diérentiel prin ipaljusqu'aupass
.Laprobabilitéque ettepairese onformeàl'intégralitédu hemin diérentielprin ipalest égaleàp
2
∇A× pF
.Cettete hnique permet don ,dès lorsqu'unepremièrepairedemessage(M1, M
′
1)
se onformantau hemindiérentiel prin ipal jusqu'au pass
est obtenue, de onstruire une se onde paire(M2, M
′
2)
se onformant elle aussijusqu'aupass
ave une probabilité égaleàp
2
∇A
.En pratique, onpeut onstruire relativementfa ilement,plusieurs heminsdiérentielsauxiliaires∇Ai
dont les probabilitésp∇A
i
sont très pro hes de 1. Il en résulte qu'à partir dei
hemins diérentiels auxiliaires, il est possible d'amplier une paire de messages onforme au pass
en2
i
paires onformes jusqu'à e même pas. L'utilisation de ette te hnique permet don une a élération de la re her he d'une paire de mes- sagesvalide.Uneillustrationduprin ipedel'attaqueboomerangampliéesetrouve gure5-14.
Notre obje tif i i étant de donner seulement une des ription on ise de la te h- niquedesboomerangsampliéeappliquéeauxfon tionsdeha hage,nousinvitonsle le teurintéressé parune des riptionplus omplèteetdétailléeàseréféreràlathèse deThomas Peyrin [Pey08 ℄.
Con lusion Lesdiérentiellesauxiliairesemployéesdanslesattaquesboomerangs onstituent une généralisation des deux te hniques d'a élération de re her he pré- édentes. Ellespeuventêtre utiliséesdefaçon similaireauxbitsneutres ande mul- tiplier les instan es de paires de message onformes, ou bien de façon similaire au
M1
H1
∆P w
∆Sa
H
M′
1
H′
H′
1
∆P a
∆Ea
M2
H2
∆P w
∆Sa
H
M′
2
H′
H′
2
∆P a
∆Ea
∆Aw
∆Aw
Fig. 5-14 Attaqueboomerang ampliée appliquéeauxfon tionsSHA-0etSHA-1.
modi ations de message an de modier des paires de message pour amener des onditions portant sur des bits de registres à être vériées. Elles onstituent à e jour, la te hnique d'a élération de re her he la plus e a e pour la ryptanalyse desfon tionsSHA-0 etSHA-1.
A élération de la ryptanalyse de
SHA-0
Sommaire
6-1 Introdu tion . . . 89 6-2 Nouveau ve teur de perturbations. . . 90 6-3 Utilisation des boomerangs . . . 90 6-4 Cara téristique non-linéaire. . . 96 6-5 Con lusion . . . 97
6-1 Introdu tion
La première attaque par ollision ontre la fon tion SHA-0 fut proposée par Chabaud etJoux en 1998 [CJ98 ℄.Cet arti le se on entreessentiellement surla a- ra téristique linéaire,et 3 ontraintes surleve teur deperturbationssont imposées an d'obtenir une ollision sur un seul blo . Le ve teur proposé onduisait à une probabilité de su èsde l'ordre de
2
−68
. Cependant, un implémentation astu ieuse de l'attaque permettait de réduire la omplexité de l'attaque à
2
61
évaluations de la fon tion de ompression. La ontribution de l'arti le de Biham et Chen de 2004 [BC04 ℄apporta lapremière te hnique d'a élération de re her he sous la forme des bits neutres. Puis l'ajout de l'appli ation de la te hnique des blo s multiples dans [BCJ05 ℄permitd'obtenirlapremière ollisionpourlafon tion SHA-0ave une om- plexitéde
2
51
appelsàlafon tionde ompression.L'attaque de2005 deWang etal. [WYY05d℄, se fondit sur une nouvelle façon d'appréhender ladiérentielle et d'en- visager sa façon de se propager au sein des registres. Forts de ette appro he, les auteurs relâ hèrent 2 des trois ontraintes imposées au ve teur de perturbations et mirent àjour un nouveau ve teurplus e a e.Cependant, 'estl'introdu tion d'un nouvel outildénommé ara téristique non-linéairequi autorisalamiseen oeuvre de e ve teur et permit d'abaisser la omplexité de l'attaque à
2
39
appels de la fon - tionde ompression. Naitoetal. [NSS06℄apportèrentleur ontribution àl'édi een proposant de nouvelles pistespour la phased'a élération de re her he, onduisant à uneattaque théoriquemunie d'une omplexité de l'ordrede
2
36
appels.
Finalement,lameilleureattaquepubliée à ejour estissued'untravail ommun ave Thomas Peyrin [MP08 ℄, et possède une omplexité de l'ordre de
2
33
tionsdelafon tionde ompression. C'est etteattaquequenousprésentonsdans e hapitre.
6-2 Nouveau ve teur de perturbations
La ara téristique linéaire utiliséedans l'attaquede Wang et al. a pour obje tif l'obtention de ollisions sur un seul blo : d'où la ontrainte sur les inq dernières oordonnées de leur ve teur de perturbations. On peut d'ailleurs remarquer que même sila ollision exhibée dansl'arti le [WYY05d℄ utilise deux blo sde message, ellene onstituepasausensstri tuneutilisationdelate hniquedesblo smultiples. En eet, les variables de haînage issues de la première itération de la fon tion de ompressionsontidentiquesetobtenuesave unmêmeblo demessage.L'utilisation de e premier blo ne s'avère né essaire que pour obtenir une variable de haînage dont les bits vérient un ertain nombre
2
d'équationshéritées de la ara téristique non-linéaire.
Nous avons hoisi de onstruire notre attaque en tirant pleinement partie de la te hnique des blo s multiples, e qui permet de relâ her la dernière ontrainte pesant sur le ve teur de perturbations. Une fois toutes les ontraintes relâ hées, nousavonsdéni omme ritèrepour évaluerles ve teurs andidatsde minimiser le nombrede onditionsàsatisfaireentrelesétapes17et80.Nousavonsdon énuméré exhaustivementl'ensembledesve teursdeperturbationsselon e ritèredeséle tion. Nous avons trouvé de nombreux ve teurs présentant un nombre de onditions aux alentours de 40. Cependant, nousavons remarqué que es ve teurs présentaient un omportementinégalrelativementàl'outildegénérationde ara téristiquelinéaireet àlate hniqued'a élérationdere her hefondéesurlesboomerangs.En onséquen e, nousavons onstruitla ara téristiquenon-linéairepour ha undesve teurslesplus prometteurspour nalement retenir leve teur présentédansletableau 6-1.
Lenombre total de onditions entreles pas17 et80pour e ve teurs'élève à42. Cependant, onpeutfa ilement s'aran hirdes onditions présentes au pas17 de la même façon quedans [CJ98 ℄. De plus en pratique, lors de notre re her he ee tive de ollision, une mauvaise paire de message est déte tée très rapidement (après environ 20 pas en moyenne). Il en résulte que la omplexité théorique, en nombre d'évaluationdelafon tionde ompression deSHA-0etavant utilisationd'unete h- niqued'a élération dere her he,estégaleà
2
40/22
= 238
, equi aété onrmépar l'implémentation pratique (
2
37,9
et
2
37,8
évaluations de SHA-0 en moyenne pour le premieretlese ond blo respe tivement).
6-3 Utilisation des boomerangs
Nousavonsappliquéàlafon tionSHA-0late hniqued'a élérationdere her he des boomerangs pour les fon tions de ha hage introduite dans [JP07 ℄. Pour notre attaque, nous avons utilisé deux types diérents de diérentielles auxiliaires mises enoeuvre dansle ontextedesbits neutres.
Nousavonsdénilaportéed'une diérentielle auxiliaire ommeétant ledernier pasoùles diéren esin ontrlées issues de ettediérentielle n'interfèrent pas ave
2
L'arti ledeWangetal.faitmentionde14 onditions ependantlenombreexa tde onditions est16[NSS06,Man06 ℄.
Pas1to20 ve teur 1 1 1 1 0 1 0 1 1 0 1 1 1 0 0 0 1 0 0 0
♯
onditions - - - 2 0 2 1 Pas21to40 ve teur 1 0 1 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0♯
onditions 1 0 2 0 2 0 1 0 0 0 0 0 0 0 1 0 1 1 0 1 Pas41to60 ve teur 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 1 0 1 1♯
onditions 1 1 1 0 1 1 1 0 1 0 1 1 1 1 0 1 2 1 2 2 Pas61to80 ve teur 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0♯
onditions 1 1 0 0 0 0 1 0 1 0 1 0 1 0 0 1 0 1 0 0Tab.6-1Nouveau ve teurdeperturbationspour SHA-0,ave lenombrede ondi- tions pour haque pas(les onditionsdes16premiers nesontpasprisesen ompte).
le hemin diérentiel prin ipal. Les deux diérentielles auxiliaires que nous avons utilisées sont notées
AP1
etAP2
:ladiérentielleauxiliaire
AP1
présentepeude ontraintesetpossèdeuneportée faible,la se onde diérentielle
AP2
né essite de plus nombreuses ontraintes, mais possède une portée supérieure.Un ompromis a été fait entre es deux types de diérentielles an d'obtenir le meilleur ensemble possible de hemins auxiliaires sans toutefois trop ontraindre le hemin diérentiel prin ipal, e qui pourrait avoir omme eet de faire é houer le pro essusde générationde la ara téristique non-linéaire.
Collisions lo ales non-linéaires. La diérentielle asso iée àune ollision lo ale seprésente sousla formesuivante:
∆ =< 2j, 2j+5, 2j, 2j+30, 2j+30, 2j+30
> .
La perturbation insérée à l'étape 1 sur une position de bit
j
est su essivement orrigée dans les étapes suivantes par l'inje tion de perturbations sur les positions de bitj + 5
à l'étape 2,j
à l'étape 3,j + 30
auxétapes4,5 et6. Lesétapes3,4 et 5 orrespondent aux asoù la perturbation initiale se propageà travers lafon tion de ronde. Cette séquen e de orre tions est onstruite pour onduire à l'obtention d'une ollision sur6 pas dansle modèle linéaire. Il s'agit de laséquen e présentant les meilleures probabilités de su ès pour l'ensemble des 80 pas de la fon tion de miseàjourdesregistres,dontlamoitiéutilise lafon tionXOR
.Cependant,sinous hoisissonsde nousrestreindreau as delafon tionIF
,ilexiste d'autresséquen es de orre tionssus eptibles demener àl'obtentiond'une ollisionsur6pas.En eet, la fon tionIF
possède la propriété de pouvoir absorber les diéren es ave une probabilité1/2
. Nous pouvons don hoisir, lors des 3 étapes où la perturbation initialeestsus eptible desepropager àtravers lafon tion deronde, d'introduire oupas
∇A
i
∇Wi
. . .
. . .
i − 1
---b--- ---i
---b--- ---a-i + 1
---a- ---a---i + 2
0--- ---i + 3
1--- ---i + 4
--- ---i + 5
--- a---i + 6
--- ---. . .
. . .
Fig.6-1Cara téristique orrespondantàune ollisionlo alenon-linéaireinitiéeau pas
i
et de diérentielle∆ =< 2
1, 26, 0, 0, 0, 231
>
. La olonne de droite représente les diérents états des mots de message expansés. La olonne de gau he représente les diérents états du registre
A
et pré ise les ontraintes né essaires pour que la ollisionlo ale non-linéairesoitvériée.Un- indiquequ'iln'yapasde ontrainte, unelettre indiqueune valeurbinaireetune lettre surlignéeson omplément.nonune orre tion.Il en dé oule quepar exemple ladiérentielle
∆ =< 2j, 2j+5, 0, 0, 0, 2j+30
>
peutêtreutiliséepourobtenir une ollisionsur6paslorsquelafon tionderondeest la fon tion
IF
. Pour la position de bitj = 1
, ette diérentielle possède d'ailleurs une meilleure probabilité de su ès (2
−4
) que la diérentielle lassique (
2
−5
). Nous asso ions le nom de ollisions lo ales non-linéaires à e type de diérentielle. Nous pouvons hoisir d'ee tuer ou de ne pasee tuer de orre tion pour les étapes4, 5 et6;nouspouvonsdon onstruire
2
3
= 8
ollisions lo alesnon-linéaires diérentes. Ces ollisions non-linéaire ont pourvo ation d'intervenir lors despremiers pasde la fon tiondemiseà jourdesregistreslàoul'attaquant possèdeun ontrle dire t sur les mots de message et don sur les registres. Il est don possible de ontrler pré- isément les onditions susantespour qu'une ollision lo ale non-linéairesevérie ave une probabilité égale à 1. La gure 6-1 donne un exemple de représentation d'une ollisionlo ale non-linéaire ave les onditions susantesasso iées.
Constru tiondes diérentiellesauxiliaire
AP1
etAP2
. Leprin iped'unedif- férentielleauxiliaire onsisteà onstruire,aumoyende ollisionslo alesnon-linéaires, un hemin diérentiel partiel onduisant à une ollision à un pasdéterminé. Étant donnéquepour etteattaquenousavons hoisidenouspla erdansle ontexted'une utilisationdesdiérentiellesauxiliairesentantquebitsneutres,noussouhaitonsque esdiérentiellespossèdentlaplusgrandeportéepossible.Cependant e hemindoit obéir àun ertainnombre de ontraintes :An debéné ierdupro essusde ompensationhéritédel'expansion demes- sage de SHA-0, nous avons hoisi de positionner les ollisions lo ales non- linéaires d'unemême diérentielle auxiliaire surlamême position debit. Pourune ollisionlo alenon-linéairedébutantaupas
i
,des onditionsdoiventdon l'apparition de ollisionlo alenon-linéairequesurlesmots
W0, . . . , W14
, arau delà il n'est théoriquement plus possible de s'assurer d'une probabilité égale à1 pour ladiérentielle auxiliaire.Finalement,lenombrede andidatpossibleestégalà
8
15= 245
.Enpratique,nousim- posonsune onditionsupplémentaire sur lenombrede ollisions lo ales non-linéaire quenousavonslimitéà 5pournotre re her he.En eetsi e nombreesttropélevé, tropdedegrésdelibertésontdépensés.Pour haque andidat,onappliquelaformule de ré urren e de l'expansion de message et on mesure laportée orrespondant à e andidat en identiant le pas où la première diéren e in ontrlée apparaît. Parmi les andidatsobtenus, nousavons retenus deuxdiérentielles.
La diérentielle
AP1
utilise une unique ollision lo ale non-linéaire de la forme∆ =< 2j, 2j+5, 0, 0, 0, 2j+30
>
. Cette ollision est initiée au pas 7, et la première diéren ein ontrléeapparaîtaupas20.Lagure6-2donneles32premièresétapes orrespondantes à l'expansion de messageasso iée à ladiérentielle auxiliaireAP1
. Les onditionsdevantêtrevériées and'obteniruneprobabilitédesu èségaleà1 pourla diérentielleAP1
sont données danslagure6-3.Ladiérentielle
AP2
utiliseunen hevêtrementde3 ollisionslo alesnon-linéaires initiées au pas 1 (forme∆ =< 2
j, 2j+5, 0, 2j+30, 2j+30, 2j+30
>
), ainsiqu'aux pas 3 et11(forme
∆ =< 2
j, 2j+5, 0, 0, 2j+30, 2j+30
>
).Cette ongurationpermetdefaire apparaître la première diéren e in ontrlée au pas 25. La gure 6-4 donne les 32 premièresétapes orrespondantesàl'expansiondemessageasso iéeàladiérentielle auxiliaire
AP2
.Les onditions devantêtre vériées and'obtenir une probabilitéde su èségale à1 pour ladiérentielleAP2
sont donnéesdansla gure6-5.Conformément à la remarque présente dans l'arti le de Joux et Peyrin, nous notons qu'une diéren e auxiliaire possédant une portée
s
, onstitue un bit neutre validepour lepass + 3
ave unetrès forteprobabilité(ladiéren e in ontrléedoit sepropageravantd'interférerave le hemindiérentielprin ipal).Ilrésultede ette remarque que les diérentiellesAP1
etAP2
peuvent être utilisées en tant que bits neutres pourles pas23 et28 respe tivement.Pla ement desdiérentiellesauxiliaires. Une foislesdiérentiellesauxiliaires établies,nousdisposonsde plusieurs stratégiespourleur pla ement. Lapremière de esstratégies onsisteàutiliserlesdiérentiellesauxiliairesensuivantlaméthodede Bihamet Chenpour lesbits neutres. Dèsqu'une paire de message se onforme à la diérentielleprin ipalejusqu'àlaportée orrespondantàunediérentielleauxiliaire, ontentedemultiplierlesinstan esenessayantdepla er ettediérentielleauxiliaire. Cependant, ette stratégie est peu produ tive arelle né essitede trouverdesposi- tions debit pour lesquellesles onditionsde ladiérentielle auxiliaire sont vériées.