# ks-wallet-demo-scenarios `ks-wallet-demo-scenarios` regroupe les scénarios d’intégration réutilisables qui valident `ks-wallet` comme le ferait un consommateur externe. ## Responsabilité La crate n’implémente ni stockage de secret, ni chiffrement, ni codec `.kswallet`. Elle dépend uniquement de l’API publique de `ks-wallet` et orchestre des séquences vérifiables autour des invariants wallet. La surface validée en `0.5.2` couvre le cycle de mot de passe natif : 1. changement du mot de passe A vers B avec conservation de l’identité publique ; 2. vérification explicite que A est rejeté ; 3. ouverture et signature avec B ; 4. restauration du mot de passe B vers A ; 5. contrôle final d’ouverture et de signature avec A restauré. Les étapes publiques restent séparées afin d’être réutilisables dans d’autres scénarios. Le test d’intégration les exécute dans un seul test ordonné : il ne dépend jamais de l’ordre d’exécution de plusieurs `#[test]`. ## Frontières de sécurité - les fonctions reçoivent des `ks_wallet::WalletPassword` déjà construits ; - aucun mot de passe n’est sérialisé, journalisé ou inclus dans les summaries ; - les summaries contiennent uniquement l’identité publique, un code de rejet, une signature publique et la longueur du challenge lorsque ces informations sont nécessaires ; - la création du wallet de fixture appartient au test externe et utilise un répertoire temporaire privé ; - les fonctions de scénario ne lisent jamais directement les bytes du `.kswallet`. ## Relations - `ks-wallet` possède le format, le secret, l’authentification et la capacité `Signer` ; - `ks-wallet-demo-scenarios` possède uniquement l’orchestration de validation ; - `kb-app-demo-desktop` n’est pas requis pour valider le cycle de mot de passe ; - les futurs scénarios d’import/export ou de migration pourront être ajoutés ici sans alourdir l’API Tauri. ## Documentation - [USAGE.md](USAGE.md) - [TODO.md](TODO.md) - [CHANGELOG.md](CHANGELOG.md) - [`ks-wallet`](../ks-wallet/README.md) - [ROADMAP général](../ROADMAP.md)