Documentation officielle · v1.1 Official documentation · v1.1
Guide User Guide Last Will
Tout ce dont vous avez besoin pour créer, sécuriser et transmettre vos messages grâce à l'architecture zero-knowledge de Last Will.
Everything you need to create, secure and transmit your messages using Last Will's zero-knowledge architecture.
Concepts clésKey concepts
Messages sécurisésSecure messages
Créez des messages texte et ajoutez des pièces jointes (documents, photos, vidéos) chiffrés et stockés de manière sécurisée. Ces messages ne peuvent être déchiffrés que par vous (texte uniquement) et vos bénéficiaires — jamais par le serveur.
Create text messages and attach files (documents, photos, videos) that are encrypted and securely stored. Messages can only be decrypted by you (text only) and your designated recipients — never by the server.
BénéficiairesRecipients
Les bénéficiaires sont les personnes qui recevront vos messages lors du déclenchement. Vous pouvez en configurer plusieurs et leur attribuer des messages spécifiques. Chaque bénéficiaire dispose d'une clé de chiffrement unique et indépendante.
Recipients are the people who will receive your messages when the timer triggers. You can add multiple recipients and assign specific messages to each. Every recipient has their own independent encryption key.
Timer de vieLife timer
Le timer est le mécanisme central de Last Will. Il attend une confirmation régulière de votre présence. Si vous ne confirmez pas après plusieurs rappels, vos messages sont automatiquement transmis à vos bénéficiaires. Vous pouvez également configurer une fréquence de rappel personnalisée.
The life timer is the core mechanism of Last Will. It waits for a regular confirmation of your presence. If you don't confirm after several reminders, your messages are automatically delivered to your recipients. You can also configure a custom reminder frequency.
Architecture Zero-KnowledgeZero-Knowledge architecture
Vos données sont chiffrées sur votre appareil avant d'être envoyées au serveur. Le serveur ne stocke que des données chiffrées opaques et n'a jamais accès à vos clés de déchiffrement. Même les administrateurs ne peuvent pas lire vos messages.
Your data is encrypted on your device before being sent to the server. The server only stores opaque encrypted blobs and never has access to your decryption keys. Even administrators cannot read your messages.
Inscription & connexionSign up & sign in
Créer un compteCreate an account
Se connecterSign in
Last Will utilise le protocole SRP (Secure Remote Password) : votre mot de passe ne transite jamais sur le réseau — seule une preuve cryptographique est échangée avec le serveur.
Last Will uses the SRP (Secure Remote Password) protocol: your password never travels over the network — only a cryptographic proof is exchanged with the server.
BénéficiairesRecipients
Ajouter un bénéficiaireAdd a recipient
Modifier les informationsUpdate recipient info
Vous pouvez modifier le nom, l'adresse email ou le numéro de téléphone à tout moment. Ces modifications n'ont aucun impact sur les messages existants — les clés de chiffrement et les messages déjà créés ne sont pas affectés. Seule la nouvelle adresse email sera utilisée pour les futures notifications.
You can update the name, email address or phone number at any time. These changes have no impact on existing messages — encryption keys and already-created messages are not affected. Only the new email address will be used for future notifications.
Modifier ou supprimerEdit or delete
Gestion des tokens d'accèsAccess token management
Depuis l'onglet Bénéficiaires, visualisez les tokens d'accès actifs et révoquez l'accès d'un bénéficiaire à tout moment — à condition que ce dernier n'ait pas encore ouvert le lien d'accès.
From the Recipients tab, view active access tokens and revoke access at any time — as long as the recipient has not yet opened the access link.
Messages & fichiersMessages & files
Créer un messageCreate a message
Limites par planPlan limits
| LimiteLimit | GratuitFree | Premium | PRO |
|---|---|---|---|
| Nombre de messagesMessages | 1 | IllimitésUnlimited | IllimitésUnlimited |
| Bénéficiaires par messageRecipients per message | 1 | IllimitésUnlimited | IllimitésUnlimited |
| Taille par message (navigateur)Size per message (browser) | 50 MB | 100 MB | 500 MB |
| Taille par fichier (mobile natif)File size (mobile native) | 50 MB | 100 MB | 150 MB |
| Stockage total du compteTotal account storage | 50 MB | 1 GB | 10 GB |
| Pièces jointes (fichiers chiffrés)Attachments (encrypted files) | ✓ | ✓ | ✓ |
Fichiers volumineux — comptes PRO
Large files — PRO accounts
Les comptes PRO peuvent envoyer des fichiers jusqu'à 500 MB par message depuis le navigateur.
Depuis l'application mobile, la limite est de 150 MB par fichier (contrainte technique du chiffrement natif AES-GCM sur appareil).
Le chiffrement AES-256-GCM est entièrement réalisé côté navigateur.
Pour éviter les problèmes mémoire (Out of Memory), le contenu chiffré est envoyé
en binaire natif via multipart/form-data sans conversion base64 JavaScript.
PRO accounts can upload files up to 500 MB per message from the browser.
From the mobile app, the limit is 150 MB per file (technical constraint of native AES-GCM encryption on device).
AES-256-GCM encryption runs entirely in the browser.
To prevent browser Out of Memory errors, encrypted content is sent as
native binary via multipart/form-data with no JavaScript base64 conversion.
⚠️ Le chiffrement d'un fichier de 300+ MB peut prendre 1 à 3 minutes selon l'appareil. Ne pas fermer l'onglet pendant l'opération.
⚠️ Encrypting a 300+ MB file can take 1–3 minutes depending on the device. Do not close the tab during the operation.
Timer de vieLife timer
Le timer surveille votre activité et déclenche l'envoi de vos messages si vous cessez de confirmer votre présence.
The life timer monitors your activity and triggers message delivery if you stop confirming your presence.
Rappels automatiques systématiquesAutomatic systematic reminders
Indépendamment de la fréquence configurée, Last Will envoie automatiquement :
Regardless of the reminder frequency you configure, Last Will automatically sends:
- 24h avant l'expiration — email + WhatsApp (si numéro renseigné)
- 1h avant l'expiration — email + WhatsApp (si numéro renseigné)
- 24h before expiration — email + WhatsApp (if phone number provided)
- 1h before expiration — email + WhatsApp (if phone number provided)
Configurer la fréquenceConfigure frequency
7j 14j 30j 60j 90j. Par défaut : 30 jours.Select the frequency: 7d 14d 30d 60d 90d. Default: 30 days.Confirmer votre présenceConfirm your presence
- Par email — cliquez sur le lien dans l'email de rappel automatique.
- Manuellement — depuis le dashboard, cliquez sur Confirmer ma présence.
- By email — click the link in the automatic reminder email.
- Manually — from the dashboard, click Confirm my presence.
Séquence de déclenchementTrigger sequence
Historique & auditHistory & audit
Historique des confirmationsConfirmation history
Visualisez toutes vos confirmations passées avec les dates, heures précises et le statut actuel du timer. Accessible depuis l'onglet Historique.
View all past confirmations with precise dates, times and current timer status. Accessible from the History tab.
Logs d'auditAudit logs
Consultez l'ensemble des actions importantes sur votre compte. Chaque log contient la date, l'heure, le type d'action et l'adresse IP source. Filtres disponibles :
View all important actions on your account. Each log contains the date, time, action type and source IP address. Available filters:
NotificationsNotifications
- Timer — rappels de confirmation de vie selon votre fréquence configurée.
- WhatsAppWhatsApp — rappels automatiques 24h et 1h avant l'expiration du timer, si votre numéro est renseigné dans votre profil. — automatic reminders 24h and 1h before timer expiration, if your phone number is set in your profile.
- Sécurité — nouvelles connexions, changements de paramètres sensibles.
- Système — maintenance planifiée, nouvelles fonctionnalités.
- Facturation — renouvellement d'abonnement, échec de paiement.
- Timer — life confirmation reminders according to your configured frequency.
- Security — new logins, changes to sensitive settings.
- System — planned maintenance, new features.
- Billing — subscription renewal, payment failure.
Authentification 2FA2FA Authentication
Activer la 2FAEnable 2FA
Chiffrement zero-knowledgeZero-knowledge encryption
Technologies utiliséesTechnologies used
Ce que le serveur ne voit jamaisWhat the server never sees
- Le contenu déchiffré de vos messages
- Vos fichiers joints en clair
- Vos clés de déchiffrement
- Votre mot de passe (protocole SRP)
- The decrypted content of your messages
- Your attachments in plaintext
- Your decryption keys
- Your password (SRP protocol)
Bonnes pratiquesBest practices
Mot de passePassword
- Minimum 12 caractères — majuscules, minuscules, chiffres, symboles
- Unique à cette application
- Utilisez un gestionnaire de mots de passe
- Minimum 12 characters — upper, lower, digits, symbols
- Unique to this application
- Use a password manager
Confirmation de vieLife confirmation
- Choisissez une fréquence réaliste selon votre mode de vie
- Ajoutez une alerte récurrente dans votre calendrier
- En cas de voyage, confirmez à l'avance
- Choose a realistic frequency for your lifestyle
- Add a recurring reminder to your calendar
- Before travelling, confirm in advance
Plans & abonnementPlans & subscription
| FonctionnalitéFeature | GratuitFree | Premium | PRO |
|---|---|---|---|
| MessagesMessages | 1 | IllimitésUnlimited | IllimitésUnlimited |
| BénéficiairesRecipients | 1 | IllimitésUnlimited | IllimitésUnlimited |
| Stockage totalTotal storage | 50 MB | 1 GB | 10 GB |
| Taille par messageSize per message | 50 MB | 100 MB | 500 MB |
| Taille par fichier (mobile)File size (mobile) | 50 MB | 100 MB | 150 MB |
| Sous-comptesSub-accounts | — | — | Jusqu'à 2Up to 2 |
| Triggers webhookWebhook triggers | — | — | ✓ |
| Déclenchement manuelManual trigger | — | — | ✓ |
| Validation IA (Claude Haiku)AI validation (Claude Haiku) | — | — | OptionnelOptional |
| Logs événements PROPRO event logs | — | — | ✓ |
| SupportSupport | Email (48–72h)Email (48–72h) | Prioritaire (24h)Priority (24h) | DédiéDedicated |
| AES-256 / 2FA / LogsAudit logs | ✓ | ✓ | ✓ |
Gérer votre abonnementManage your subscription
Depuis Profil → Abonnement, le bouton 💳 Gérer mon abonnement (visible pour les abonnés Premium et PRO) ouvre le portail Stripe. Vous pouvez y consulter vos factures, modifier votre moyen de paiement ou annuler votre abonnement.
From Profile → Subscription, the 💳 Manage subscription button (visible for Premium and PRO subscribers) opens the Stripe portal. You can view invoices, update your payment method or cancel your subscription.
Premium : 30 €/6 mois ou 50 €/an — sans engagement, annulation à tout moment.
Premium: €30/6 month or €50/year — no commitment, cancel anytime.
PRO : 90 €/6 mois ou 150 €/an. Inclut 2 sous-comptes, triggers avancés et analyse IA optionnelle.
PRO: €90/6 month or €150/year. Includes 2 sub-accounts, advanced triggers and optional AI analysis.
L'abonnement Premium est sans engagement — annulation à tout moment depuis le portail de facturation. Pour toute question, contactez le support.
The Premium subscription is commitment-free — cancel at any time from the billing portal. For any question, contact support.
FacturationBilling
Paiement StripeStripe payment
Les paiements sont traités par Stripe (certifié PCI-DSS niveau 1). Vos informations bancaires ne transitent jamais par nos serveurs.
Payments are processed by Stripe (PCI-DSS Level 1 certified). Your banking details never transit through our servers.
Échec de paiementPayment failure
RemboursementsRefunds
Les abonnements ne sont généralement pas remboursables une fois la période entamée. Pour toute situation exceptionnelle, contactez le support dans les 7 jours suivant le prélèvement.
Subscriptions are generally non-refundable once the period has started. For exceptional situations, contact support within 7 days of the charge.
Accès bénéficiairesRecipient access
Cette section s'adresse aux personnes désignées comme bénéficiaires qui reçoivent un message Last Will.
This section is for people designated as recipients who receive a Last Will message.
Sécurité de l'accèsAccess security
- Chaque lien d'accès est unique et lié à votre identité
- Les codes OTP expirent après 10 minutes
- Les sessions expirent après 7 jours d'inactivité
- Le token est utilisable 3 fois maximum — au-delà, il devient inutilisable même si le lien est encore valide
- Le propriétaire peut révoquer votre accès avant que vous n'ayez ouvert le lien
- Each access link is unique and tied to your identity
- OTP codes expire after 10 minutes
- Sessions expire after 7 days of inactivity
- The token can be used a maximum of 3 times — after that it becomes unusable even if the link is still valid
- The owner can revoke your access before you have opened the link
Données & RGPDData & GDPR
| CatégorieCategory | DonnéesData | ObligatoireRequired |
|---|---|---|
| IdentitéIdentity | Email, mot de passe (haché BCrypt)Email, password (BCrypt hash) | OuiYes |
| ProfilProfile | Nom, téléphoneName, phone | NonNo |
| MessagesMessages | Métadonnées + contenu chiffré opaqueMetadata + opaque encrypted content | OuiYes |
| AuditAudit | IP, horodatagesIP, timestamps | OuiYes |
Export de vos données (portabilité)Data export (portability)
Conformément à l'article 20 du RGPD, téléchargez l'intégralité de vos données depuis Profil → Mes données. Deux formats :
In accordance with GDPR Article 20, download all your data from Profile → My data. Two formats:
- JSON — métadonnées, messages chiffrés, clés de chiffrement (enveloppe KMS retirée), logs d'audit.
- ZIP — tout le JSON + fichiers joints chiffrés (
.enc) + README. Prévu pour import futur.
- JSON — metadata, encrypted messages, encryption keys (KMS envelope removed), audit logs.
- ZIP — full JSON + encrypted attachments (
.enc) + README. Designed for future import.
Cas d'usageUse cases
Compte PROPRO Account
Vue d'ensemble
Overview
Le compte PRO est conçu pour les entreprises et les professionnels ayant besoin d'une gestion avancée des transmissions sécurisées : continuité d'activité, gestion de crise, transmission sécurisée de secrets opérationnels.
The PRO account is designed for businesses and professionals requiring advanced management of secure transmissions: business continuity, crisis management, secure transmission of operational secrets.
Sous-comptes (max 2)
Sub-accounts (max 2)
Un compte PRO peut inviter jusqu'à 2 membres. Chaque membre s'authentifie avec ses propres identifiants et opère sur les données du compte PRO principal selon son rôle :
A PRO account can invite up to 2 members. Each member authenticates with their own credentials and operates on the PRO account data according to their role:
- ADMIN — Tous les droits : configuration, invitations, déclenchements, validation des triggersAll rights: configuration, invitations, triggers, trigger validation
- OPERATOR — Créer/modifier messages et bénéficiaires, déclencher l'envoiCreate/edit messages and recipients, trigger delivery
- VIEWER — Lecture seule et consultation des logsRead-only and log consultation
Les sous-comptes utilisent les mêmes endpoints /users/me/** que les comptes personnels — transparence totale.
Sub-accounts use the same /users/me/** endpoints as personal accounts — fully transparent.
Triggers avancés
Advanced triggers
Trois types de déclencheurs sont disponibles :
Three trigger types are available:
- INACTIVITY — Basé sur l'inactivité (timer existant, étendu au compte PRO)
- INACTIVITY — Based on inactivity (existing timer, extended to PRO)
- WEBHOOK — Déclenchement via appel API externe
- WEBHOOK — Trigger via external API call
- MANUAL — Déclenchement manuel depuis le dashboard, avec confirmation obligatoire
- MANUAL — Manual trigger from dashboard, with mandatory confirmation
Webhook PRO — Format standard
PRO Webhook — Standard format
URL : POST https://api.lastwill.tech/webhooks/pro/events/{votre-clé-api}
URL: POST https://api.lastwill.tech/webhooks/pro/events/{your-api-key}
En mode NONE (sans IA), le payload doit respecter ce format et le comportement de déclenchement est le suivant :
In NONE mode (no AI), the payload must follow this format and the trigger behavior is as follows:
{
"type" : "CRISIS_ALERT", // Requis — texte libre (max 60 chars)
"severity": "HIGH", // Requis — LOW | MEDIUM | HIGH | CRITICAL
"source" : "monitoring-prod", // Requis — émetteur
"message" : "Ransomware detected", // Optionnel
"timestamp": "2026-03-11T10:00:00Z", // Optionnel (ISO-8601)
"tags" : ["SERVER_DOWN", "RANSOMWARE"], // Optionnel — ciblage des messages
"metadata": {} // Optionnel — données contextuelles
}
Si le format est invalide → réponse 200 IGNORED_INVALID_FORMAT (pas de déclenchement).
If the format is invalid → response 200 IGNORED_INVALID_FORMAT (no trigger).
Comportement selon les tags
Behavior based on tags
| Type de messageMessage type | Webhook sans tagsWebhook without tags | Webhook avec tags correspondantsWebhook with matching tags | Webhook avec tags non correspondantsWebhook with non-matching tags |
|---|---|---|---|
| Message avec tagsMessage with tags | IgnoréIgnored | ⚡ Déclenchement immédiatImmediate trigger | IgnoréIgnored |
| Message sans tags (défaut)Message without tags (default) | ⏳ Pending différéDeferred pending | ⏳ Pending différéDeferred pending | ⏳ Pending différéDeferred pending |
Le délai de pending différé utilise le même paramètre que le mode HYBRID (hybridDelayMinutes). L'administrateur peut valider ou annuler les déclenchements en attente depuis l'interface Triggers.
The deferred pending delay uses the same parameter as HYBRID mode (hybridDelayMinutes). The administrator can validate or cancel pending triggers from the Triggers interface.
Tags de déclenchement ciblé
Targeted trigger tags
Les tags permettent de cibler précisément quels messages sont déclenchés lors de la réception d'un webhook. Chaque message PRO peut avoir jusqu'à 10 tags configurés depuis le dashboard.
Tags allow you to precisely target which messages are triggered when a webhook is received. Each PRO message can have up to 10 tags configured from the dashboard.
Format des tags
Tag format
Chaque tag : [A-Z0-9_]{4,24} — MAJUSCULES obligatoires, chiffres et underscore autorisés, 4 à 24 caractères.
Each tag: [A-Z0-9_]{4,24} — UPPERCASE required, digits and underscores allowed, 4 to 24 characters.
Exemples valides : CRISIS, SERVER_DOWN, RANSOMWARE, INCENDIE, TAGSPERSO1
Valid examples: CRISIS, SERVER_DOWN, RANSOMWARE, INCENDIE, TAGSPERSO1
Logique de filtrage
Filtering logic
| Tags sur le messageMessage tags | Tags dans le webhookWebhook tags | Déclenché ?Triggered? |
|---|---|---|
| Aucun (null/vide)None (null/empty) | N'importe quoiAnything | ✅ ToujoursAlways |
CRISIS, SERVER_DOWN |
["CRISIS"] |
✅ Intersection non videNon-empty intersection |
CRISIS, SERVER_DOWN |
["INCENDIE"] |
❌ Pas d'intersection❌ No intersection |
CRISIS, SERVER_DOWN |
Absent du payloadAbsent from payload | ❌ Message filtré❌ Message filtered |
Tags et analyse IA (modes SAFE / AUTO / HYBRID)
Tags and AI analysis (SAFE / AUTO / HYBRID modes)
Quand le payload ne contient pas de champ tags (payload libre, texte, alerte monitoring, JSON non structuré),
l'IA reçoit automatiquement la liste des tags configurés sur les messages du compte comme contexte.
Elle analyse le payload et retourne les tags qu'elle estime correspondre (matched_tags).
Le filtrage des messages se base alors sur ces tags détectés par l'IA.
When the payload does not contain a tags field (free-form text, monitoring alert, unstructured JSON),
the AI automatically receives the list of tags configured on the account's messages as context.
It analyzes the payload and returns the tags it estimates match (matched_tags).
Message filtering then uses these AI-detected tags.
Exemple :
Example:
// Payload libre (texte non structuré)// Free-form payload (unstructured text)
"CRITICAL: datacenter DC2 offline since 20min. NOC unreachable. Ransomware suspected."
// Tags disponibles sur les messages du compte// Tags configured on account messages
[CRISIS, SERVER_DOWN, RANSOMWARE, INCENDIE]
// L'IA retourne// AI returns
matched_tags: ["SERVER_DOWN", "RANSOMWARE"]
// → Seuls les messages avec ces tags sont déclenchés/mis en attente
// → Only messages with these tags are triggered/put on hold
⚠️ L'IA ne peut retourner que des tags présents dans la liste des tags du compte. Elle n'invente pas de nouveaux tags.
⚠️ The AI can only return tags present in the account's tag list. It does not invent new tags.
Modes de validation IA
AI validation modes
| ModeMode | ComportementBehavior |
|---|---|
| NONE | Vérification format standard. Tags du payload utilisés pour le filtrage. Pas d'IA.Standard format check. Payload tags used for filtering. No AI. |
| SAFE | L'IA analyse + détecte les tags → attente validation humaine (dashboard).AI analyzes + detects tags → awaiting human validation (dashboard). |
| AUTO | L'IA analyse + détecte les tags → déclenche si confiance ≥ seuil configuré.AI analyzes + detects tags → triggers if confidence ≥ configured threshold. |
| HYBRID | L'IA analyse + détecte les tags → délai configurable → auto si pas annulé.AI analyzes + detects tags → configurable delay → auto if not cancelled. |
⚠️ L'IA (Claude Haiku) est un outil d'aide à la décision. Elle n'est jamais le seul décideur. Le déclenchement final reste sous votre contrôle.
⚠️ AI (Claude Haiku) is a decision-support tool. It is never the sole decision-maker. Final triggering remains under your control.
Clé API webhook — sécurité
Webhook API key — security
La clé API est utilisée pour authentifier les appels webhook entrants. L'URL complète à configurer dans vos systèmes est :
The API key authenticates incoming webhook calls. The full URL to configure in your systems is:
POST https://api.lastwill.tech/webhooks/pro/events/{votre-clé-api}
Régénération de la clé :
Key regeneration:
- ⛔ L'ancienne clé est immédiatement révoquée — tous les webhooks utilisant l'ancienne clé cesseront de fonctionner instantanément.
- ⛔ The old key is immediately revoked — all webhooks using the old key will stop working instantly.
- ⚠️ La nouvelle clé est affichée une seule et unique fois. Elle doit être copiée immédiatement et conservée en lieu sûr.
- ⚠️ The new key is displayed only once. It must be copied immediately and stored securely.
- ℹ️ Mettre à jour tous les systèmes utilisant la clé (SIEM, monitoring, scripts d'automatisation) avant de fermer la fenêtre.
- ℹ️ Update all systems using the key (SIEM, monitoring, automation scripts) before closing the window.
Déclenchement manuel
Manual trigger
Disponible sur chaque message dans le dashboard. Une confirmation obligatoire est toujours demandée avant l'envoi. Un OTP de confirmation optionnel peut être activé dans la configuration PRO.
Available on each message in the dashboard. A mandatory confirmation is always requested before sending. An optional OTP confirmation can be activated in the PRO configuration.
Cas d'usage professionnels
Professional use cases
- Continuité d'activité — CEO/DG inaccessible : transmission automatique des accès de reprise
- Business continuity — CEO/Director unreachable: automatic transfer of recovery access
- Gestion de crise — Cyberattaque/ransomware : déclenchement via webhook SIEM ou monitoring
- Crisis management — Cyberattack/ransomware: trigger via SIEM or monitoring webhook
- Transmission de secrets DevOps — Credentials, clés d'API, procédures d'urgence
- DevOps secrets transmission — Credentials, API keys, emergency procedures
- Succession et héritage numérique — Transmission planifiée à des collaborateurs ou héritiers
- Succession and digital inheritance — Planned transmission to collaborators or heirs
SupportSupport
Foire aux questionsFrequently asked questions
Consultez la FAQ complèteBrowse the full FAQ
Toutes les questions fréquentes sur le timer, la sécurité, les abonnements, le compte PRO et l'accès bénéficiaires sont disponibles sur la page FAQ dédiée — organisées par catégories, bilingues FR/EN.
All frequently asked questions about the timer, security, subscriptions, PRO account and beneficiary access are available on the dedicated FAQ page — organized by category, bilingual FR/EN.
Voir la FAQGo to FAQ