How they are protected
In transit, everything goes over HTTPS (TLS, Let's Encrypt certificates, HSTS). At rest, the application itself encrypts more than 170 fields with AES-256-GCM before they reach the database: messaging ID, first name, profile name, condition, sex, country, messages, answers and scores, pain, emergency card, treatments, rescue painkiller, crises, watch measurements, location, contacts, notes, access tokens, attachments, IP addresses in the access log. The key lives outside the database; without it, the server refuses to start.
Stay in clear, because the server needs them to look up, date or count: the internal numbers of your rows, dates and times, yes/no answers (consent, reminders on), catalogue keys (which questionnaire, which training module, which study), your language, your role (patient, relative or clinician) and your care centre, the state of pending requests, the link between you and a clinician (who is linked to whom, with nothing from your record), the usage log (which feature is opened, without the text you write) and random codes unrelated to you (study pseudonym, household code, emergency code on your card). Clinician accounts (name, work address) are also in clear: they are used to sign in. Your messaging ID is encrypted; the server recognises you through a keyed fingerprint (HMAC), like a locker whose number is known without your name written on it. Backups are encrypted every night (AES-256) and destroyed after thirty days; they sit on the same server, an off-site copy is being prepared.
Technical logs contain neither the text of your messages, nor personal links, nor any key: they are filtered before being written. Personal links (seven days) and pairing codes (ten minutes) are kept only as fingerprints. On your phone, the Coach Drépano app encrypts your token and the data received with an Android Keystore key, blocks screenshots outside the emergency card and can lock with fingerprint or face.