Sécurité et confidentialité
Z-Text est conçu dès le départ avec un modèle de sécurité à confiance zéro. Aucune analyse, aucun suivi, aucun stockage de données côté serveur.
Protection par code PIN
Votre portefeuille et vos messages sont protégés par un code PIN à 6 chiffres que vous définissez lors de la configuration initiale. Le code PIN est requis pour :
- Ouvrir l'application
- Envoyer des transactions (messages et transferts BTCZ)
- Exporter votre phrase de récupération
- Modifier les paramètres de sécurité
Le code PIN est stocké sous forme de hachage salé sur votre appareil. Après plusieurs tentatives infructueuses, l'application impose un délai d'attente pour empêcher les attaques par force brute.
Authentification biométrique
Sur les appareils compatibles, vous pouvez activer la reconnaissance d'empreinte digitale ou faciale comme alternative à la saisie du code PIN pour accéder à l'application. Les données biométriques sont entièrement gérées par l'enclave sécurisée de l'appareil -- Z-Text n'accède jamais aux données biométriques brutes.
Chiffrement à deux couches
Z-Text utilise une architecture de double chiffrement qui offre une défense en profondeur :
Couche 1 : Protection blockchain (zk-SNARKs)
Les transactions protégées de la blockchain BitcoinZ utilisent les zk-SNARKs pour chiffrer le champ mémo de la transaction. Cela signifie :
- Le contenu du message est chiffré sur la chaîne
- Les z-addresses de l'expéditeur et du destinataire sont masquées
- Le montant de la transaction est masqué
- Seul le détenteur de la clé de visualisation de la z-address peut déchiffrer le mémo
Couche 2 : Chiffrement par clé de contact
Avant de placer le message dans le mémo de la transaction, Z-Text le chiffre avec la clé partagée dérivée du handshake. Cela ajoute une seconde couche de protection :
- Même si quelqu'un obtient votre clé de visualisation de z-address, il ne peut pas lire les messages
- La clé partagée est unique par paire de contacts
- La clé est dérivée par ECDH et n'est jamais transmise directement
Pourquoi deux couches ?
La couche 1 protège contre les observateurs de la blockchain. La couche 2 protège contre la compromission de la clé de visualisation. Les deux couches doivent être percées pour lire un message -- une proposition extrêmement difficile.
zk-SNARKs expliqués
Les Zero-Knowledge Succinct Non-Interactive Arguments of Knowledge (zk-SNARKs) sont des preuves cryptographiques qui permettent à une partie de prouver qu'elle connaît une valeur sans révéler la valeur elle-même.
Dans le contexte de Z-Text, les zk-SNARKs prouvent qu'une transaction est valide (soldes corrects, expéditeur autorisé) sans révéler qui l'a envoyée, qui l'a reçue ou quel montant a été transféré. C'est ce qui rend les transactions protégées véritablement privées.
Zéro télémétrie
Z-Text ne collecte absolument aucune donnée utilisateur :
- Aucune analyse ni aucun suivi d'aucune sorte
- Aucun rapport de crash envoyant des données à l'extérieur
- Aucune connexion aux serveurs Z-Text
- Les seules connexions réseau sont vers les noeuds de la blockchain BitcoinZ
- Aucune journalisation d'adresse IP (l'application se connecte à des noeuds décentralisés)
Code source ouvert
Z-Text est open source. Vous pouvez auditer le code vous-même pour vérifier qu'il n'y a aucune télémétrie cachée ni collecte de données.
Modèle de menace
Z-Text est conçu pour protéger contre :
| Menace | Protection |
|---|---|
| Compromission de serveur | Aucun serveur -- les messages résident sur la blockchain |
| Surveillance réseau | Les transactions protégées par zk-SNARKs masquent toutes les métadonnées |
| Vol de l'appareil | Protection par code PIN/biométrie, stockage local chiffré |
| Fuite de clé de visualisation | Le chiffrement de couche 2 empêche la lecture des messages |
| Censure | La blockchain décentralisée ne peut pas être fermée |