Informativa sulla privacy
Ai sensi del Regolamento (UE) 2016/679 (GDPR) e del D.Lgs. 196/2003 come modificato dal D.Lgs. 101/2018
- Titolare del trattamento
- Architettura zero-knowledge
- Dati trattati localmente
- Dati trattati sul server (sincronizzazione opzionale)
- Base giuridica del trattamento
- Misure di sicurezza e crittografia
- Terze parti e trasferimenti internazionali
- Trattamento di dati di minori
- Diritti dell'interessata
- Periodo di conservazione
- Decisioni automatizzate e profilazione (art. 22)
- Notifica di violazioni dei dati (artt. 33-34)
- Modifiche alla presente informativa
- Contatti
01Titolare del trattamento
Il titolare del trattamento ai sensi dell'art. 4, par. 1, n. 7 del GDPR è:
Intima
Contatto: intima@sappadev.it
Nota fondamentale. Intima è progettata secondo il principio privacy by design and by default (art. 25 GDPR). Per la grande maggioranza degli utilizzi — quando la funzione di sincronizzazione è disattivata — il titolare non riceve, elabora né ha accesso ad alcun dato personale dell'utente. I dati sanitari rimangono esclusivamente sul dispositivo dell'utente finale e sono inaccessibili a chiunque al di fuori di quest'ultimo.
02Architettura zero-knowledge
Intima è costruita su un'architettura zero-knowledge: ogni eventuale dato trasmesso ai server è crittografato end-to-end sul dispositivo dell'utente prima della trasmissione. Il server riceve e conserva esclusivamente testo cifrato opaco, rispetto al quale il titolare non possiede alcuna chiave di decrittazione e non è pertanto in grado — nemmeno su richiesta di autorità giudiziarie — di accedere ai contenuti in chiaro.
La chiave di crittografia viene generata casualmente sul dispositivo al momento dell'attivazione della sincronizzazione e non viene mai trasmessa a server terzi. Il server di sincronizzazione non è tecnicamente in grado di risalire ai dati in chiaro anche in caso di compromissione totale dell'infrastruttura.
Protocollo verificabile pubblicamente.Il codice del server, lo schema del database e le politiche di accesso (RLS) sono pubblicati come open source (AGPL-3.0) e liberamente verificabili da chiunque all'indirizzo: github.com/sappafrancesco/intima-server
03Dati trattati localmente sul dispositivo
Quando la sincronizzazione è disattivata (modalità predefinita), tutti i dati sono trattati esclusivamente sul dispositivo dell'utente, all'interno di un database SQLite protetto dal sistema operativo. Il titolare non ha alcun accesso a tali dati.
Tipologie di dati trattati in locale
- Dati sul ciclo mestruale: date di inizio e fine periodo, durata, andamento storico.
- Dati fisiologici: temperatura basale del corpo (BBT), muco cervicale, intensità del flusso.
- Dati sull'umore e sui sintomi: stati emotivi selezionati dall'utente, sintomi fisici.
- Dati farmacologici: assunzione di contraccettivi orali o altri farmaci tracciati.
- Dati anagrafici parziali: nome (soprannome) e età, forniti volontariamente in fase di onboarding per personalizzare l'interfaccia; non associati a identità reale.
- Preferenze applicative: impostazioni di tracciamento, obiettivi selezionati, configurazione delle notifiche.
Finalità del trattamento locale
- Tracciamento e visualizzazione del ciclo mestruale e dei sintomi correlati.
- Calcolo statistico e previsionale del ciclo tramite algoritmi probabilistici on-device (nessun dato inviato a modelli cloud).
- Erogazione di notifiche locali contestuali (promemoria temperatura, avvisi di fase).
Base giuridica (trattamento locale):consenso esplicito ai sensi dell'art. 9, par. 2, lett. a) GDPR per i dati relativi alla salute, espresso dall'utente all'atto dell'installazione e configurazione dell'applicazione. In assenza di tale consenso, l'applicazione non raccoglie alcun dato.
04Dati trattati sul server (sincronizzazione opzionale)
La funzionalità di sincronizzazione è opzionale e disattivata per impostazione predefinita. Il suo utilizzo è soggetto a consenso esplicito separato. Quando attivata, il server tratta esclusivamente i seguenti elementi:
Dati tecnici ricevuti dal server
- Identificatore anonimo (UUID):generato casualmente dal sistema operativo al momento dell'attivazione della sincronizzazione, privo di qualsiasi collegamento a dati anagrafici reali. Non è un account. Non richiede email, numero di telefono o documento d'identità.
- Testo cifrato opaco: i dati sanitari, crittografati con AES-256-GCM sul dispositivo prima della trasmissione. Il server non è in grado di decrittare tali dati.
- Metadati tecnici minimi: timestamp di ultima sincronizzazione, versione del protocollo, dimensione del payload cifrato. Nessun metadato sanitario viene trasmesso in chiaro.
Funzione Bridge (condivisione medica)
Quando l'utente crea un link cifrato per condividere dati con il ginecologo, il server conserva temporaneamente il testo cifrato associato a un ID casuale. La chiave di decrittazione viaggia esclusivamente nel frammento # dell'URL e non viene mai inviata al server. Il link scade automaticamente.
Dati non trattati dal server
- Indirizzo email, numero di telefono, nome, cognome, data di nascita.
- Indirizzi IP o dati di geolocalizzazione a livello applicativo.
- Dati sanitari in chiaro.
- Cookie di tracciamento, pixel di conversione, identificatori pubblicitari.
- Qualsiasi dato trasmesso a terze parti per finalità di marketing o profilazione.
05Base giuridica del trattamento
Art. 9, par. 2, lett. a) GDPR — consenso esplicito per dati sulla salute. Revocabile eliminando i dati dall'app.
Art. 6, par. 1, lett. b) GDPR — necessità contrattuale per l'erogazione del servizio richiesto. Art. 9, par. 2, lett. a) per la componente sanitaria.
Art. 6, par. 1, lett. a) GDPR — consenso, acquisito tramite il sistema di autorizzazione nativo del dispositivo (iOS / Android).
Art. 6, par. 1, lett. a) GDPR — consenso esplicito dell'utente titolare, revocabile in qualsiasi momento dalle impostazioni.
Art. 6, par. 1, lett. b) GDPR — necessità contrattuale. Il dato trattato è esclusivamente la conferma d'acquisto (UUID + product_id).
Revoca del consenso (art. 7, par. 3 GDPR)
L'interessata ha il diritto di revocare il proprio consenso in qualsiasi momento, senza pregiudicare la liceità del trattamento precedente. La revoca può essere esercitata:
- Dati locali: tramite Impostazioni → Zona pericolosa → Elimina tutti i dati, oppure disinstallando l'Applicazione.
- Sincronizzazione: tramite Impostazioni → Sincronizzazione → Disattiva e cancella dati dal server.
- Funzione Partner / Account genitore: tramite Impostazioni → Partner / Genitore → Revoca accesso, con effetto immediato.
- Notifiche: tramite le impostazioni di sistema del dispositivo.
06Misure di sicurezza e crittografia
Il titolare ha adottato misure tecniche e organizzative adeguate ai sensi dell'art. 32 GDPR, proporzionate alla natura estremamente sensibile dei dati trattati (art. 9 GDPR — dati sulla salute):
Misure tecniche
- Cifratura end-to-end con AES-256-GCM per i nuovi backup, con integrità garantita dal tag di autenticazione GCM.
- Archiviazione delle chiavi nell'enclave hardware del dispositivo (iOS Secure Enclave / Keychain, Android Keystore), inaccessibile a qualsiasi altra applicazione.
- Autenticazione locale tramite biometria (Face ID, Touch ID, impronta digitale) o PIN, non trasmesso al server.
- Nessun backup cloud non cifrato:
android:allowBackup="false"su Android; dati sensibili esclusi dai backup automatici iOS tramite configurazione esplicita. - Transport Layer Security: tutte le comunicazioni usano TLS 1.2+ con validazione certificato. Cleartext traffic esplicitamente disabilitato.
- Blocco schermata: l'applicazione richiede autenticazione a ogni avvio.
Misure organizzative
- Nessun membro del team ha accesso ai dati sanitari in chiaro — architetturalmente impossibile.
- Il codice sorgente del server è open source (AGPL-3.0) e verificabile su GitHub.
- Nessun sistema di analytics o error tracking con trasmissione di dati personali è integrato nell'applicazione.
07Terze parti e trasferimenti internazionali
Supabase (fornitore infrastruttura — solo per sync opzionale)
L'infrastruttura di sincronizzazione è basata su Supabase(Supabase Inc., USA), con datacenter configurato in Svizzera (regione Europa Centrale, Zurigo). La Svizzera beneficia di una decisione di adeguatezza della Commissione Europea e della propria normativa nazionale (nLPD/nFADP, in vigore dal 1° settembre 2023), equivalente al GDPR. Il contratto con Supabase include clausole contrattuali tipo (SCC) ai sensi della Decisione di Esecuzione (UE) 2021/914.
Garanzia zero-knowledge: Supabase riceve esclusivamente testo cifrato opaco (AES-256-GCM) prodotto interamente sul dispositivo prima della trasmissione. Il suo ruolo è limitato alla memorizzazione sicura di blob binari anonimi associati a UUID casuali.
Apple Inc. e Google LLC (pagamenti in-app)
La funzione Partner è disponibile come acquisto una tantum tramite App Store o Google Play. Intima non riceve né conserva dati di pagamento. Il titolare riceve esclusivamente la conferma dell'avvenuto acquisto, associata all'identificatore anonimo (UUID) dell'utente.
Dati non condivisi con terze parti
Il titolare non vende, cede, affitta né condivide con soggetti terzi a fini commerciali alcun dato relativo agli utenti. Non sono integrati sistemi di advertising, tracciamento comportamentale, analytics di terze parti o SDK pubblicitari.
08Trattamento di dati di minori e account genitore
Soglia di età e consenso genitoriale (art. 8 GDPR)
Per i soggetti di età inferiore a 14 anni, ai sensi dell'art. 8 GDPR e dell'art. 2-quinquies del Codice Privacy, il consenso deve essere prestato o autorizzato da un titolare della responsabilità genitoriale. L'applicazione implementa tale requisito tramite una procedura di collegamento account genitore durante la configurazione iniziale.
Account genitore: architettura zero-knowledge
- L'utente minore genera un codice QR contenente un shared_secret a 256 bit. Il codice QR non transita mai attraverso server — viene mostrato fisicamente al genitore.
- Il dispositivo del genitore acquisisce il shared_secret esclusivamente dal codice QR e lo conserva nella memoria sicura locale.
- Il dispositivo minore cifra localmente solo i campi esplicitamente autorizzati e trasmette il testo cifrato al server. Il server non possiede alcuna chiave e non può accedere al contenuto.
- L'utente minore controlla in ogni momento quali categorie di dati sono condivise e può revocare l'accesso dalle impostazioni.
Compimento del quattordicesimo anno d'età
Al compimento dei 14 anni, l'applicazione notifica l'utente tramite comunicazione in-app e offre la possibilità di mantenere o revocare l'accesso del genitore. Da tale data, l'utente è considerata pienamente capace di prestare autonomamente il proprio consenso.
09Diritti dell'interessata
In qualità di interessata ai sensi del Capo III GDPR (artt. 15-22), hai diritto di:
Tutti i dati sono visibili direttamente nell'app sul tuo dispositivo.
Modificabile direttamente dall'app in qualsiasi momento.
Tramite Impostazioni → Zona pericolosa → Elimina tutti i dati o disinstallando l'app.
Esporta i dati in formato JSON tramite Impostazioni → Dati → Esporta backup.
Disattiva la sincronizzazione opzionale dalle impostazioni in qualsiasi momento.
Disattiva funzionalità specifiche (sync, notifiche, partner) dalle impostazioni.
Per esercitare i diritti relativamente ai dati eventualmente trattati dal titolare (solo in caso di sync attiva), scrivi a intima@sappadev.it. Il titolare risponde entro 30 giorni ai sensi dell'art. 12 GDPR.
Hai altresì diritto di proporre reclamo al Garante per la protezione dei dati personali, Piazza Venezia 11, Roma — www.garanteprivacy.it
10Periodo di conservazione
Dati locali:conservati sul dispositivo fino all'eliminazione esplicita o alla disinstallazione. Il titolare non ha controllo su tali dati.
Dati server (sync opzionale): i blob cifrati sono conservati fino alla richiesta di cancellazione tramite Impostazioni → Elimina dati dal server, oppure mediante richiesta scritta a intima@sappadev.it. La cancellazione avviene entro 30 giorni dalla richiesta.
Identificatori anonimi:gli UUID vengono eliminati contestualmente alla cancellazione dell'account anonimo, senza possibilità di ricondurli a persona fisica.
11Decisioni automatizzate e profilazione (art. 22 GDPR)
L'applicazione utilizza algoritmi probabilistici eseguiti interamente sul dispositivo dell'utente per stimare la durata del ciclo, la finestra fertile e la data prevista della mestruazione successiva. Tali elaborazioni:
- non costituiscono decisioni automatizzate ai sensi dell'art. 22 GDPR, in quanto non producono effetti giuridici né effetti significativi analoghi;
- sono esclusivamente strumentali alla visualizzazione di informazioni personali già inserite dall'utente stessa;
- non vengono mai trasmesse a server terzi né utilizzate per profilazione commerciale.
Garanzia strutturale. Poiché i dati sanitari sono cifrati localmente e il server non dispone di alcuna chiave di decrittazione, qualsiasi profilazione da parte del titolare è tecnicamente impossibile, indipendentemente da qualsiasi dichiarazione di intenti.
12Notifica di violazioni dei dati personali (artt. 33-34 GDPR)
In caso di violazione dei dati personali che comporti un rischio per i diritti e le libertà delle interessate, il titolare notificherà la violazione al Garante per la protezione dei dati personali entro 72 oredal momento in cui ne è venuto a conoscenza, ai sensi dell'art. 33 GDPR.
Impatto dell'architettura zero-knowledge sul rischio di violazione
- Compromissione del server Supabase:un malintenzionato accede esclusivamente a blob cifrati con AES-256-GCM associati a UUID anonimi, senza possibilità di risalire ai contenuti sanitari o all'identità delle utenti. Il rischio per i diritti e le libertà risulta basso in questo scenario.
- Compromissione del dispositivo dell'utente:costituisce il principale vettore di rischio residuo, in quanto la chiave di crittografia risiede sull'enclave hardware del dispositivo.
13Modifiche alla presente informativa
Il titolare si riserva il diritto di modificare la presente informativa in qualsiasi momento. Le modifiche sostanziali saranno notificate tramite avviso in-app. In caso di modifiche che amplino le finalità del trattamento o introducano nuove categorie di dati sensibili, sarà richiesto un nuovo consenso esplicito ai sensi dell'art. 7 GDPR.
14Contatti
Per qualsiasi richiesta relativa al trattamento dei dati personali:
- Email privacy: security.intima@sappadev.it
- Email generale: intima@sappadev.it
Il titolare non ha nominato un Responsabile della Protezione dei Dati (DPO) in quanto non ricorrono le condizioni di obbligatorietà di cui all'art. 37 GDPR.
Termini e condizioni · intima@sappadev.it