1 · Ce que fait l'app (v1)
- Pseudonymisation in-app : votre message est tokenisé
dans l'app (WASM, clé locataire aléatoire générée côté client)
avant d'être envoyé au fournisseur LLM — le fournisseur ne reçoit que des
jetons
⟦…⟧, jamais la PII en clair.
- Restauration in-app : la réponse du LLM est restaurée dans l'app
(jetons émis par la requête en cours uniquement — registre + MAC).
- Coffre in-memory : rien n'est persisté (choix pilote) ; la
session WASM (clé locataire + registre) vit dans la mémoire de l'app et meurt à la
fermeture.
- Configuration : endpoint LLM (Base URL + clé) + modèle — stockés
dans les préférences de l'app (votre clé amont, jamais transmise ailleurs).
2 · Compiler l'APK
Prérequis : JDK 17, Android SDK (Android Studio
recommandé), Rust cible wasm32 pour l'artefact WASM (une seule fois) :
# 1. Artefact WASM (à la racine du dépôt CLOISON) :
cd crates/cloison-wasm
wasm-pack build --target web --out-dir ../../mobile/android/app/src/main/assets/cloison/pkg
# (ou copier un pkg construit : cp -r deploy/wasm-demo/pkg …/assets/cloison/pkg)
# Vérification de compilation WASM :
# cargo check -p cloison-wasm --target wasm32-unknown-unknown
# 2. APK (ouvrir mobile/android dans Android Studio → Run, ou CLI) :
cd mobile/android
gradle assembleDebug # → app/build/outputs/apk/debug/app-debug.apk
L'APK de release signé nécessite un keystore ; l'APK debug est
installable directement (adb install).
3 · Sécurité (invariants)
- Zéro PII persistée : clé locataire aléatoire en mémoire, coffre
in-memory, rien sur disque (hors votre clé LLM dans les préférences — nécessaire
pour appeler votre fournisseur).
- Zéro secret embarqué : aucun secret dans le code/l'APK.
- Restauration bornée : registre d'émission de la requête + MAC
(invariant I3) — une sentinelle forgée n'est jamais restaurée.
- Honnêteté : ne protège pas contre un poste compromis (même limite
que N0) ; quasi-identifiants signalés, jamais résolus.
4 · Limites v1
- Mode N0-local uniquement : l'app tokenise in-app vers un
fournisseur LLM direct (OpenRouter, DeepSeek…). Le mode « clé composite N3 »
(pseudonymisation par l'edge CLOISON) est une piste v1.1.
- iOS : plus tard (date pilote à venir) — même moteur WASM.
- La session est perdue à la fermeture de l'app (in-memory assumé) —
chaque lancement crée une nouvelle clé locataire (non-liabilité).
5 · Récupérer la source
Le monorepo coucagog/cloison est privé ; la source mobile est livrée
dans le dépôt de la passerelle publique (open-core) : mobile/android/
dans github.com/coucagog/cloison-proxy (AGPL-3.0).