La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Sécurité dans lUMTS* MOUGEL Sébastien *Universal Mobile Telecommunication System CNAM : UV C.

Présentations similaires


Présentation au sujet: "Sécurité dans lUMTS* MOUGEL Sébastien *Universal Mobile Telecommunication System CNAM : UV C."— Transcription de la présentation:

1 Sécurité dans lUMTS* MOUGEL Sébastien *Universal Mobile Telecommunication System CNAM : UV C

2 Plan Architecture du réseau Carte USIM Explication de lalgorithme KASUMI

3 Réseau UMTS

4

5 Différences GSM/UMTS Les fonctions de sécurité de lUMTS sont basée sur ce qui a été implémenté dans le GSM. Quelques fonctions de sécurité ont été ajoutées et dautres améliorées. Les algorithmes de cryptage sont plus forts et inclus dans le NODE-B jusquau contrôleur dinterface radio (RNC : radio network controller ). L application des algorithmes dauthentification est plus stricte et la confidentialité de labonné plus forte. Les principaux éléments de sécurité du GSM sont : Authentification des abonnés Identité de labonné confidentielle La carte SIM doit pouvoir être détachée du terminal. Cryptage de linterface radio Caractéristiques supplémentaires de sécurité dans lUMTS: Plus de sécurité contre les « fausses » stations de base (base stations) avec authentification mutuelle Cryptage étendu de :lair seulement -> Base station-> RNC Système pour les mises à jour de sécurité.

6 USIM Authentification & chiffrement JavaCard Virtual Machine HLR : Home Location Registrer AuC:Authentification Center IMSI:International Mobile Suscriber Identity (Stocké dans la SIM) IMEI:N°série du mobile ISDN:N°téléphone

7 KASUMI

8 Algorithme de chiffrement par blocs (128 bits) construit à partir de lalgorithme MISTY de Mr MATSUI Cest le noyau des algorithmes f8 (confidentialité) et f9 (intégrité) Entrée sur 64 bits Sortie sur 64 bits Clé à 128 bits KASUMI se décompose en 3 fonctions (FL,FO,FI) et 3 sous clés (KL,KO,KI)

9 KASUMI (Fonctions) fi() : La fonction pour le ième « round » de KASUMI FI() : Transforme une entrée sur 16 bits en une sortie de 16 bits en utilisant une sous clé sur 16 bits FL() : idem sur 32 bits FO() : Entrée (32 bits) Sortie (32 bits) 2 sous-clés de 48 bits chacunes

10 KASUMI (Variables) K : Une clé de 128 bits KLi,KOi,KIi : Sous clés pour le i ème round S7[] : S-Box (Entrée de 7 bits /Sortie de 7 bits) S9[] : S-Box (Entrée de 9 bits /Sortie de 9 bits)

11 Le fonctionnement Chiffrement de FEISTEL avec 8 « round » I : Entrée sur 64 bits I est divisée en 2 chaînes de 32 bits I= L 0 || R 0 (|| représente la concaténation) Pour 1<= i <=8 R i =L i-1, L i =R i-1 fi(L i-1,RK i ) SORTIE = KASUMI[I] k ( OUTPUT=L8 || R8 )

12 FEISTEL Dans ce système de chiffrement, un bloc de texte en clair est découpé en deux ; la transformation de ronde est appliquée à une des deux moitiés, et le résultat est combiné avec l'autre moitié par ou exclusif. Les deux moitiés sont alors inversées pour l'application de la ronde suivante. Un avantage de ce type d'algorithmes est que chiffrement et déchiffrement sont structurellement identiques. Nous considérerons que pour une certaine clef entrée, ces fonctions sont les suivantes:

13 La fonction fi() Entrée : 32 bits Sortie : 32 bits Clé du round : RK i triplet(KL i, KO i,KI i ) Fonction qui comprend FL() et FO() FL utilise : KL i FO utilise KO i et KI i Round pair : fi(I,RKi) = FO( FL( I, KLi), KOi, KIi ) Round impair : fi(I,Ki) = FL( FO( I, KOi, KIi ), KLi )

14 Fonction FL La clé est divisée en 2 :KLi = KLi,1 || KLi,2 Lentrée I = L || R R = R ROL( L KLi,1 ) L = L ROL( R KLi,2 ) La sortie vaut : S=L||R

15 Fonction FO I=L0||R0 KOi = KOi,1 || KOi,2 || KOi,3 et KIi = KIi,1 || KIi,2 || KIi,3 Les clés de 48 bits sont divisées en 3 clés de 16 bits Pour chaque entier j tel que : 1<=j<=3 Rj = FI(Lj-1 KOi,j, KIi,j ) Rj-1 Lj = Rj-1 A la fin : S=L 3 ||R 3

16 Fonction FI I=L 0 ||R 0 La clé KI ij (16 bits) =KI ij,1(7 bits) ||KI ij,2 (9 bits) Utilise 2 S-box S7 et S9 ZE(x) 0x > 0x TR(x) 0x > 0x L1 = R0 R1 = S9[L0] ZE(R0) L2 = R1 KIi,j,2R2 = S7[L1] TR(R1) KIi,j,1 L3 = R2R3 = S9[L2] ZE(R2) L4 = S7[L3] TR(R3)R4 = R3 S=L4 || R4

17 S-Box Chacune d'elles rend difficile la table inversible. Une S-Box possible est la transformation d'identité, qui n'a en fait aucun effet. Toute autre transformation a au moins un effet sur les données. – La S-Box Si permet de subtituer les 6 bits (b1b2b3b4b5b6) par les bits Si[b1b6][b2b3b4b5]. – Exemple : S1 substitue (011010) en S1[00][1101] = 9 (1001).

18 S-Box Entrée x Sortie y x = x8 || x7 || x6 || x5 || x4 || x3 || x2 || x1 || x0 y = y8 || y7 || y6 || y5 || y4 || y3 || y2 || y1 || y0

19 S-Box Au niveau hardware : Les s-box ont été conçues pour être implementées avec peu de composants de logique combinatoire Les opérations S7 et S9 Peuvent être effectuées en parallèle FI i,1 et FI i,2 également

20 Planification des clés KASUMI a une clé K de 128bits. A chaque tour KASUMI utilise une clé dérivée de K. Deux tableaux de 16-bits Kj et Kj (j=1 à 8) : K = K1 || K2 || K3 ||…|| K8. Pour chaque entier j tel que 1 j 8 Kj = Kj Cj Cj est la valeur definie dans la table 2. Les sous clés sont derivée de Kj et Kj comme défini dans table 1.

21 KASUMI

22 Références (3rd generation partnership project)


Télécharger ppt "Sécurité dans lUMTS* MOUGEL Sébastien *Universal Mobile Telecommunication System CNAM : UV C."

Présentations similaires


Annonces Google