Google n'a aucune idée de la clé de chiffrement de votre appareil. L'ensemble du processus se déroule sur votre appareil et la clé n'est jamais transmise. La clé elle-même est également n'est pas stocké en clair sur votre appareil :
Stockage de la clé cryptée
La clé cryptée est stockée dans le fichier crypto . La garantie matérielle est mise en œuvre en utilisant les cœurs de signature de l'environnement d'exécution de confiance (Trusted Execution Environment - TEE). de Trusted Execution Environment (TEE). Auparavant, nous avons chiffré la avec une clé générée par l'application de scrypt au mot de passe de l'utilisateur et au mot de passe de l'utilisateur. de l'utilisateur et le sel stocké. Afin de rendre la clé résistante contre les attaques hors boîte, nous étendons cet algorithme en signant le la clé résultante avec une clé TEE stockée. La signature résultante est ensuite transformée en une clé de longueur appropriée par une autre application de scrypt. Cette clé est ensuite utilisée pour chiffrer et déchiffrer la clé principale.
Ainsi, même si quelqu'un disposait d'une copie de votre clé principale cryptée, il ne pourrait pas la décrypter sans la clé TEE du SoC de votre appareil.
Par conséquent, en dehors d'une faille dans la mise en œuvre, le chiffrement intégral de l'appareil empêchera quiconque d'accéder à vos données à moins qu'il ne connaisse/obtienne votre mot de passe OU qu'il puisse deviner votre mot de passe (par exemple, en le forçant brutalement ou en utilisant des techniques d'ingénierie sociale). Sur les appareils qui ne disposent pas du support matériel nécessaire, FDE tentera de crypter la clé à l'aide d'une méthode uniquement logicielle.