> La révision linguistique de cette traduction est en cours. En cas d’ambiguïté, consultez l’[original anglais](https://www.sm.ch-j.eu/docs/i18n/en/biometric-unlock.md). # Authentification optionnelle du système et verrouillage par défaut Créer ou déverrouiller la Vault avec son mot de passe maître d'abord. Ouvrir **Paramètres → Security**, vérifier l'état du fournisseur et activer le déverrouillage biométrique. L'inscription demande une nouvelle authentification du système. Ensuite, la superposition de connexion offre Touch ID, Windows Bonjour ou déverrouillage d'empreintes digitales à côté du formulaire maître-mot de passe. **Désactiver et supprimer l'inscription** supprime la clé cache de cette application, jamais les empreintes digitales enregistrées du système d'exploitation. Conservez le mot de passe maître : annulation, timeout, matériel/clé non disponible et inscription invalidée nécessitent un retour du mot de passe. L'inscription biométrique est locale à cet utilisateur, appareil et Vault. Ce n'est pas un mécanisme de récupération ou de sauvegarde. Réinitialiser la Vault annule l'inscription et supprime les profils cryptés existants et les empreintes digitales de l'hôte seulement après la confirmation `SMAZAT` existante. | Plateforme | Authentification et stockage | Exigences et limites | | --- | --- | --- | | macOS Apple Silicon | Native LocalAuthentification / Touch ID; Security.framework Élément porte-clés avec `biometryCurrentSet` et `WhenUnlockedThisDeviceOnly` | Enrolled Touch ID, capteur disponible et une connexion utilisable Porte-clés. Les changements d'empreinte digitale invalident l'élément. Utiliser la signature stable de l'ID du développeur pour les mises à jour de production; la signature alpha ad hoc peut perturber la confiance Keychain et le suivi des autorisations de réseau local. | | Windows x64 | Interopérabilité de bureau native WinRT de Windows Hello liée au HWND principal ; clé chiffrée par DPAPI pour l’utilisateur actuel dans Windows Credential Manager | Empreinte, visage **ou PIN** configuré dans Hello. Déverrouillage de confort : l’application impose l’approbation Hello, mais DPAPI lui-même n’est pas conditionné à la biométrie. Un autre programme exécuté sous le même compte utilisateur peut déchiffrer l’identifiant. | | Ubuntu x64 | Empreinte enregistrée de l’utilisateur actuel via fprintd D-Bus ; stockage explicite des identifiants avec libsecret / Secret Service | Lecteur compatible, empreinte enregistrée, Secret Service de bureau actif et trousseau par défaut. Déverrouillage de confort : l’identifiant du trousseau n’est pas lié cryptographiquement à la vérification de l’empreinte. Aucun repli vers `basic_text` ou un fichier en clair. | À Ubuntu les paquets optionnels d'exécution sont `python3-gi`, `gir1.2-secret-1`, `gnome-keyring` (ou un autre service secret compatible) et `fprintd`. Installez les paquets manquants à l'aide du gestionnaire de paquets OS normal, puis inscrivez une empreinte digitale dans les paramètres OS. L'authentification utilise l'utilisateur actuel et ne nécessite pas de racine ou de changement PAM. Une session SSH sans tête sans rapport de clé de bureau non disponible; elle ne stocke pas silencieusement une clé ailleurs. ## Règles de verrouillage Le verrouillage automatique est désactivé pour les installations existantes. L'activer sélectionne **15 minutes** par défaut ; les valeurs supportées ne sont jamais, 1, 5, 10, 15, 30 et 60 minutes. Les entrées clavier et souris dans les fenêtres d'application comptent comme activité; la sortie SSH entrante ne le fait pas. En option, le verrouillage de focus traite les fenêtres du plugin de l'application comme faisant partie de l'appli et permet à un système d'authentification en cours d'avancement d'obtenir une prompte à terminer. Modifier ces règles nécessite le mot de passe maître. **Chaque verrouillage Vault, y compris le verrouillage par inactivité et focalisation, déconnecte les sessions actives de SSH, ferme les plugins et arrête les diagnostics.** Enregistrer les modifications à distance avant de verrouiller. Cela préserve le comportement de verrouillage manuel existant ; aucune identification SSH ne reste disponible pour les plugins d'arrière-plan après un verrou. La politique optionnelle d'exploitation sensible demande une nouvelle authentification du système pour la suppression du profil, l'installation/suppression du plugin, le lancement et la remise à zéro d'une faille déverrouillée. Les commandes de terminaux distants et les modifications de fichiers plugin sont en dehors de cette politique. La politique ne remplace pas l'autorisation du serveur SSH. Si le fournisseur cesse de fonctionner, déverrouiller avec le mot de passe maître et modifier la politique en utilisant ce mot de passe. La réinitialisation reste disponible depuis l'écran de récupération verrouillé après sa confirmation destructrice. ## Conception de la faille et de la CIB La v1 Vault existante reste AES-256-GCM avec scrypt ; l'inscription ne réécrit pas ses fichiers ou ne modifie pas son schéma. Seule une copie de son **derived 32-octet key** va au stockage des titres de compétence OS. Le mot de passe maître n'est jamais stocké. Les métadonnées locales d'inscription contiennent un identifiant aléatoire, un fournisseur et une liaison SHA-256 aux métadonnées immuables de la Vault. Une clé récupérée doit passer le déchiffrement authentifié avant qu'une session ne soit ouverte. Les tampons du processus principal sont effacés après utilisation; les chaînes de protocole natives sont une mémoire de processus transitoire, et non une revendication d'effacement complet de la mémoire dans les runtimes gérés. L’assistant communique par des canaux privés stdin/stdout de taille limitée, n’accepte aucune commande shell, impose des délais d’authentification et renvoie des codes d’erreur assainis. Les assistants sont installés hors de l’archive ASAR dans `resources/biometrics` ; ce sont des exécutables natifs autonomes qui ne nécessitent aucun module natif lié à l’ABI Electron. L’assistant Linux utilise Python et GI du système. Les objets natifs et les clés dérivées ne traversent jamais le pont vers le moteur de rendu ou les extensions. Les appels IPC biométriques vérifient la fenêtre principale active et son cadre principal ; les extensions ne peuvent pas les invoquer. Le verrouillage explicite annule les opérations biométriques et les déverrouillages par mot de passe en attente, afin qu’une approbation tardive ne puisse pas rouvrir le coffre-fort. La suppression de l’inscription révoque son association locale même si le stockage du système est hors ligne ; un stockage inaccessible peut conserver un identifiant orphelin inutilisable. ## Construction et vérification `npm run biometrics:build` prépare l'aide host-platform ; la préparation de démarrage et de libération du développement l'invoque automatiquement. macOS nécessite Swift/Apple SDK avec la sécurité et l'authentification locale; Windows nécessite Visual Studio C++ Outils de construction, Windows SDK et C++/WinRT; Linux copie l'aide Python. Aucune nouvelle dépendance npm n'est ajoutée. Construisez nativement sur chaque OS cible. L'aide macOS est incluse dans la signature de paquet récursif; il n'a pas besoin d'application Sandbox droit parce que cette application de bureau n'est pas sandboxed. Production La distribution macOS nécessite toujours la signature et la notariation du Developer ID, indépendamment des signatures de sortie OpenPGP. Exécuter `npm test`, `npm run test:biometrics:ui` et `npm run test:diagnostics:ui`. Les tests biométriques des nœuds et le test de fumée de l'interface utilisateur isolé utilisent un adaptateur **mock OS** pour couvrir le succès, rejet/annulation, mauvaises clés, matériel manquant / inscription, réinitialisation, délai d'exécution et résultats tardifs, keyrings Linux non disponibles, erreurs de certification OS, réponses approuvées par Windows PIN, changements d'inscription macOS, compatibilité Vault existante, isolement IPC et nettoyage SSH. Cela n'établit pas l'authentification matérielle réussie. La compilation autochtone a été vérifiée sur macOS arm64 et Windows x64. macOS rapporte Touch ID disponible; les rapports Windows VM Bonjour non disponible. L'inscription à Fingerprint/face/PIN, la récupération de clés protégées, l'annulation de dialogue OS et l'invalidation de changement d'inscription nécessitent toujours des tests matériels interactifs sur chaque système pris en charge. L'aide de Linux doit en outre être testée sur un bureau avec un lecteur fprintd supporté; un VM sans tête ne peut pas établir cette vérification. Références de la plate-forme: [Contrôle d'accès biométrique Apple](https://developer.apple.com/documentation/security/secaccesscontrolcreateflags/biometrycurrentset), [Windows bureau Bonjour interop](https://learn.microsoft.com/en-us/windows/win32/api/userconsentverifierinterop/nf-userconsentverifierinterop-iuserconsentverifierinterop-requestverificationforwindowasync), [cycle de vie du dispositif fprintd](https://fprint.freedesktop.org/fprintd-dev/Device.html), [Spécification des services secrets](https://specifications.freedesktop.org/secret-service/latest/). ## Accès au réseau local macOS SSH Si chaque local SSH le profil échoue avec `connect EHOSTUNREACH` mais la même connexion fonctionne dans Terminal, vérifier **Paramètres du système → Confidentialité et sécurité → Réseau local → CH-J Server Manager**, permettre l'accès, quitter complètement l'application et la rouvrir. Si c'est déjà activé, basculez sa permission et redémarrez. Vérifiez également le routage, Wi-Fi/Ethernet et VPN : l'erreur seule n'est pas la preuve d'un déni de confidentialité. Ne pas réinitialiser la Vault ou jeter les empreintes SSH de confiance pour cette erreur. L'application déclare `NSLocalNetworkUsageDescription` et fournit des conseils localisés pour les erreurs de permission/route réseau macOS. Elle ne peut pas se donner la permission. Apple recommande une identité de signature d'Apple pour que macOS puisse suivre la confidentialité du réseau de manière fiable sur les builds; les build alpha ad hoc actuels conservent cette limitation. Voir le guide de confidentialité du réseau local [Apple](https://developer.apple.com/documentation/technotes/tn3179-understanding-local-network-privacy). ## icône de l'application Ubuntu Les paquets Debian installent l'icône CH-J existante aux tailles hicolor standard (16–512 px), avec une entrée de bureau correspondante et une classe de fenêtre Electron. La fenêtre principale reçoit également l'icône lorsqu'elle est recréée. Après la mise à jour d'un ancien lanceur déjà épinglé, débranchez-le et épinglez l'application nouvellement installée ; un déconnexion/login de bureau peut rafraîchir un cache de lanceur GNOME.