Quelles sont les différences entre la 4G et la 5G en ce qui concerne le chiffrement, le contrôle de l'intégrité et la hiérarchie des clés? C'est ce que nous allons voir dans cette vidéo. Comme pour l'authentification, les principes généraux sont les mêmes. Pour le chiffrement, on a une clé de chiffrement qui est calculée à partir du nombre aléatoire RAND, qu'on a par ailleurs utilisé pour l'authentification, et on va calculer une séquence de chiffrement spécifique à chaque transmission à partir de cette clé de chiffrement. Intégrité, même chose : on calcule une clé d'intégrité à partir de RAND, et pour chaque paquet, en utilisant en entrée un compteur, on a un mécanisme qui permet de calculer un code d'authentification de message ou MAC, qui est ajouté à chaque paquet. La portée du chiffrement, le chiffrement se fait pour les échanges NAS entre l'UE et l'AMF ainsi que pour toutes les transmissions radio, que ça soit dans le plan utilisateur, les données utilisateurs, ou dans le plan contrôle pour les messages RRC. La clé de chiffrement qui est utilisée peut être sur 128 bits avec possibilité de passer à 256. Nous avons 4 algorithmes de chiffrement, le premier étant une absence de chiffrement utilisée pour des tests, et le dernier étant l'algorithme Zu Chongzhi, qui a été spécifié dans la release 11 pour la 4G. Intégrité, même chose : le calcul du MAC qui est codé sur 32 bits se fait pour les messages de signalisation NAS entre l'UE et l'AMF ainsi que pour les messages de signalisation RRC entre l'UE et le gNodeB. Point nouveau sur la 5G : on peut aussi faire un contrôle d'intégrité sur les données utilisateurs. Les algorithmes sont les mêmes que pour le chiffrement. Comme en 4G, on utilise un système de calcul de clés filles à partir des clés mères. La clé de base, qui est la clé long terme qui ne change pas, n'est jamais transmise hors de l'entité qui la stocke, c'est-à -dire, elle reste dans la carte SIM et dans l'ARPF. Une clé mère va être engendrée par l'ARPF, et à partir d'une clé mère, on va déduire une clé fille et une clé petite-fille, et ainsi de suite. Supposons que nous avons une fonction réseau qui a une clé que nous allons appeler la clé mère. La fonction B doit fournir une clé fille à la fonction A. La fonction A fournit un élément d'information qui lui est spécifique ou un élément de contexte que j'ai appelé ici E. À partir de la clé mère et de E, on va calculer une clé fille qui va être envoyée à A. Il faut que l'UE puisse faire le même calcul, c'est-à -dire qu'il faut que l'élément d'information soit connu de l'UE. Les clés intermédiaires ne doivent pas être stockées. C'est-à -dire qu'ici, B doit vider de sa mémoire la clé mère, sauf s'il y a absolue nécessité de la garder. La hiérarchie des clés ressemble à celle de la 4G. Nous avons ici la clé long terme K, qui est stockée dans l'ARPF. À partir d'un nombre aléatoire, et de cette clé K, l'ARPF calcule une clé CK pour le chiffrement, IK pour l'intégrité. Le réseau visité indique son identité, et l'ARPF va calculer une clé KAUSF fournie à l'AUSF, qui prend un numéro de compteur ou SeQuence Number, de façon à éviter d'avoir deux clés identiques si le même RAND par hasard était tiré aléatoirement. Cette clé KAUSF est utilisée par l'AUSF en reprenant également l'identité du réseau visité, et on en déduit une clé KSEAF qui est envoyée au SEAF. C'est une clé déjà petite-fille. À partir de cette clé petite-fille, on calcule une clé arrière-petite-fille en utilisant le SUPI, l'identité de l'UE, et en insérant un compteur ABBA, Anti-Bidding down Between Architectures. Il est à 0 pour la 5G actuellement. S'il y a une 6G, une 7G, ou s'il y a des évolutions dans les mécanismes de sécurité, on mettra ce compteur à 1 et ainsi de suite, de façon à éviter les attaques de repli par changement d'architecture. La clé arrière-petite-fille est la clé KAMF qui est calculée par le SEAF fourni à l'AMF. Comme c'est la même entité, ça reste interne. Et à nouveau, on va encore créer une clé fille en utilisant un compteur de message NAS, une valeur si on utilise la clé dans une architecture 3GPP. Ça sera une autre valeur si c'est pour un point d'accès WiFi. Et on va calculer, ou plus exactement l'AMF va calculer une clé KgNB fournie au gNB. Si jamais un utilisateur passe d'une station de base source à une station de base cible ou target, c'est-à -dire s'il fait un transfert intercellulaire, il est plus judicieux de recalculer les clés à partir de la clé mère. On va encore dériver une clé arrière-arrière-arrière-petite-fille. Pour cela, le gNB cible du transfert intercellulaire indique son identité physique, le numéro de fréquence qu'il utilise, et cela va permettre au gNB de transférer, après avoir calculé, la clé KgNB*. De son côté, l'UE (carte SIM et terminal) effectue le même calcul de clé fille, petite-fille et ainsi de suite. Nous ne re-détaillons pas. Il peut arriver à calculer la clé KgNB. Et s'il y a handover, il est capable d'en déduire aussi la clé KgNB*. Les clés de chiffrement et d'intégrité sont plus précisément les suivantes. À partir de KAMF, on va calculer une clé appelée KNASEnc pour le chiffrement des messages NAS, une clé KNAS intégrité pour assurer l'intégrité, Le gNB et l'UE vont aussi calculer une clé KRRCEnc pour le chiffrement pour l'intégrité, et le gNB et l'UE vont également calculer une clé pour le chiffrement des données utilisateurs, c'est-à -dire dans le User Plane ou UP et, nouveauté de la 5G, une clé pour l'intégrité dans le plan utilisateur. En conclusion, en 5G, nous avons les mêmes principes généraux qu'en 4G, chiffrement, protection de l'intégrité avec une hiérarchie des clés, mais il n'y a pas de réserve de clés qui soit autorisée, et il y a en plus une possibilité de contrôle de l'intégrité dans le plan utilisateur. [MUSIQUE] [MUSIQUE]