Raw exports stay on your device
A Web Worker reads the WhatsApp _chat.txt or Instagram messages/inbox JSON files in your browser. The portal has no endpoint for uploading the raw ZIP, TXT, JSON, attachments, or file paths.
Technical privacy notice
The portal is designed around a simple boundary: your raw chat export stays in your browser. Only the messages you select as your own are sent for privacy processing.
01 · Collection
A Web Worker reads the WhatsApp _chat.txt or Instagram messages/inbox JSON files in your browser. The portal has no endpoint for uploading the raw ZIP, TXT, JSON, attachments, or file paths.
You identify exactly one author label as your own. Only text from that label—and only included Instagram conversations—is prepared for submission. Other authors' messages are excluded.
Your birth month and year stay in browser memory. They are combined with each local timestamp to derive an approximate integer ageAtMessage. Birth values and exact message timestamps are not sent. The estimate can differ by one year in your birth month.
02 · Processing
The submitted message payload contains a source label, schema version, selected text, and each message's ageAtMessage. It also contains a one-way conversation fingerprint derived locally from a fixed message anchor. The backend keys that fingerprint before storage so a later full export can replace the same conversation without storing its title, participant names, thread path, or exact timestamps. Your current age, sex, email, and a consent-version marker are also used for the study workflow.
Selected text is staged as AES-256-GCM envelope-encrypted ciphertext in a separate database schema while privacy processing runs. Staging rows have a configurable 24-hour default expiry. Source, schema version, current age, sex, consent version, counts, dates, a keyed conversation fingerprint, and an internal contact ID remain relational metadata during staging.
The backend replaces email addresses, URLs, and phone-like values, then runs Romanian and English spaCy named-entity recognition to redact detected people, locations, organizations, and other named entities. This reduces identification risk, but automated redaction can miss context and does not guarantee that free text is anonymous.
03 · Storage
Your email is encrypted with authenticated Fernet encryption in a ReceiptContact record. A separate keyed digest supports exact account lookup without storing a searchable plaintext email. Verification and retraction tokens are stored as hashes.
Cleaned examples, demographic labels, and the random sender pseudonym are stored inside an AES-256-GCM envelope-encrypted DatasetContribution. Each contribution gets a new Data Encryption Key (DEK), which is wrapped under the dataset Key Encryption Key (KEK).
Separate tables reduce accidental disclosure, but active records are connected by an internal contact ID. The research data is therefore pseudonymized—not claimed to be irreversibly anonymous—and must remain access-controlled.
04 · Retraction
After all batches are accepted, the portal emails a receipt containing a private retraction link and the study's exact UTC deadline. Through that date, the link starts deletion of your encrypted contributions and staged data, and destroys the stored email ciphertext, lookup digest, and active tokens.
Minimal message-free accountability records remain: random internal IDs, consent/withdrawal evidence, status/count fields, and request/completion timestamps. Each primary deletion receives a backup-evidence deadline; provider expiry or purge evidence and downstream research-data handling remain operational responsibilities under the approved schedule shown below.
05 · Browser storage
This application includes no advertising or third-party analytics. Participant upload authorization stays in the upload page's memory. A strictly necessary, short-lived security cookie is set only when an authorized administrator completes password and emailed-code verification. Dismissing the privacy banner writes only privacy_notice_acknowledged to sessionStorage, which is scoped to the tab and removed when the tab closes.
The retraction link is one technical rights mechanism. It does not replace any access, correction, erasure, restriction, portability, objection, consent-withdrawal, or complaint rights that apply to the study. The controller must explain how to exercise those rights in the approved participant materials.
Loading the authoritative study notice…
Legal reference: GDPR Article 13.