1 votes

Enchevêtrement du code d'accès avec l'UID

En lisant le document sur la sécurité de la plate-forme Apple, je suis tombé sur cette déclaration dans la section "Passcodes and Passwords".

The passcode is entangled with the device’s UID, so brute-force attempts must be
performed on the device under attack. 

J'ai quelques questions

  1. Que signifie le fait que le code d'accès soit lié à l'UID et pourquoi les tentatives de force brute doivent être effectuées sur l'appareil lui-même ?

  2. Quels types d'algorithmes cryptographiques sont utilisés pour cela ?

Tout lien en ligne sur ce sujet sera apprécié.

1voto

Jose Chavez Points 645

En général, le terme "enchevêtrement" signifie que vous "mélangez" en quelque sorte deux composants en un seul. Cela peut se faire de plusieurs façons.

Dans ce cas précis, l'UID et le code de passe sont mélangés à l'aide d'un algorithme de cryptage AES. L'UID sert de clé pour le cryptage AES, et le code d'accès est utilisé comme texte en clair. Le texte chiffré est alors les données enchevêtrées.

Afin de créer les données enchevêtrées, vous aurez besoin de l'UID et du code de passe.

La raison pour laquelle cela doit se produire sur le dispositif est que l'UID est un numéro unique qui est "fusionné" dans le CPU (c'est-à-dire que chaque CPU a un numéro différent, et il ne peut pas être changé après coup) - et ce numéro n'est pas accessible par le logiciel directement. Cependant, un logiciel peut demander à l'unité centrale de chiffrer des données avec l'algorithme AES en utilisant l'UID comme clé - le logiciel peut alors obtenir le texte chiffré sans jamais connaître l'UID.

Pour ajouter à la complexité, Apple utilise en fait une fonction de dérivation de clé connue sous le nom de PBKDF2, où un calcul supplémentaire est nécessaire pour passer des données de départ aux données réelles utilisées comme clé de cryptage. Apple utilise 80 tours (en fait, des "boucles" de processus de calcul). L'objectif est de ralentir (c'est-à-dire d'utiliser beaucoup de temps CPU) le passage d'un code de passe (que nous essayons de forcer) à la clé de cryptage, même si vous avez accès au CPU contenant l'UID. Le rendre lent signifie que le forçage brutal prend beaucoup plus de temps que d'habitude, ce qui devrait le rendre infaisable.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X