Quando abbiamo iniziato a costruire KinArchive, avevamo una scelta fondamentale: utilizzare framework multipiattaforma per raggiungere il pubblico più ampio nel minor tempo possibile, oppure costruire nativo per un singolo ecosistema allineato ai nostri valori. Abbiamo scelto Apple—e questo articolo spiega perché.
KinArchive è costruito al 100% su tecnologie Apple. Nessun React Native. Nessun Flutter. Nessuna visualizzazione web Electron. Solo Swift puro, SwiftUI, CloudKit e i framework iOS nativi che Apple fornisce. Ecco il ragionamento tecnico e filosofico dietro questa decisione.
L'Architettura della Privacy
I documenti familiari sono alcuni dei dati più sensibili che le persone possiedono. Passaporti, cartelle cliniche, polizze assicurative, testamenti—questi non sono foto o note. La gestione impropria di questi dati non è solo una violazione della privacy; potrebbe abilitare il furto di identità, frodi assicurative o peggio.
Avevamo bisogno di un'architettura dove:
- I dati dell'utente non toccano mai i nostri server
- Non possiamo accedere ai documenti dell'utente anche se volessimo
- Gli utenti non devono fidarsi di noi—devono solo fidarsi di Apple
CloudKit Private Database
Come Funziona CloudKit
CloudKit fornisce tre tipi di database:
- Public Database: Dati visibili a tutti gli utenti (non lo usiamo)
- Shared Database: Dati condivisi tra utenti specifici
- Private Database: Dati visibili solo al proprietario—criptati con il loro Apple ID
KinArchive archivia tutti i documenti nel Private Database dell'utente. Ciò significa che i tuoi documenti sono criptati con le credenziali del tuo Apple ID. Nemmeno Apple può leggerli. E certamente non noi.
Quando usi KinArchive, i tuoi documenti sono archiviati nel TUO account iCloud, utilizzando la TUA quota di archiviazione iCloud, criptati con il TUO Apple ID. Non abbiamo un server con i tuoi documenti. Non abbiamo backup del database dei tuoi file sensibili. Letteralmente non possiamo accedere ai tuoi dati.
Questa non è una scelta politica—è un vincolo architetturale. Il Private Database è criptato end-to-end, e solo i dispositivi autenticati dell'utente possono decriptarlo.
Nessuna Analytics di Terze Parti
Molte app includono SDK di analytics di terze parti che tracciano il comportamento dell'utente e inviano dati a servizi esterni. Questi SDK spesso raccolgono più di quanto gli sviluppatori si rendano conto—identificatori di dispositivo, dati di posizione, pattern di utilizzo.
KinArchive include zero analytics di terze parti. Non usiamo Firebase Analytics, Mixpanel, Amplitude o nessun altro servizio di tracciamento. Le uniche analytics che riceviamo sono le metriche aggregate e anonime dell'App Store di Apple.
Cosa Non Sappiamo di Te
- Non sappiamo quanti documenti hai
- Non sappiamo che tipi di documenti archivi
- Non sappiamo chi sono i membri della tua famiglia
- Non sappiamo quando usi l'app
- Non sappiamo la tua posizione, ID del dispositivo o cronologia di navigazione
Sicurezza Biometrica: Face ID e il Secure Enclave
KinArchive usa Face ID (o Touch ID su dispositivi più vecchi) per l'autenticazione. Ma cosa significa tecnicamente?
Il Secure Enclave
I dispositivi Apple contengono un processore di sicurezza dedicato chiamato Secure Enclave. Questo è un chip separato con la propria memoria criptata, isolato dal processore principale. I tuoi dati biometrici—la rappresentazione matematica del tuo volto o impronta digitale—non lasciano mai il Secure Enclave.
Come Funziona l'Autenticazione Face ID
- KinArchive richiede l'autenticazione tramite il framework LocalAuthentication
- iOS richiede all'utente Face ID
- Il Secure Enclave confronta la scansione con i dati biometrici archiviati
- Se corrisponde, il Secure Enclave restituisce un segnale di successo a iOS
- iOS dice a KinArchive che l'autenticazione è riuscita
Punto chiave: KinArchive non vede mai i tuoi dati biometrici. Riceviamo solo una risposta sì/no da iOS. La scansione del tuo volto rimane nel Secure Enclave, protetta dalla criptazione hardware.
Questo è fondamentalmente diverso dalle app che implementano la propria scansione biometrica. Non processiamo, archiviamo o trasmettiamo alcuna informazione biometrica. Semplicemente chiediamo a iOS: "È questo l'utente autorizzato?" e iOS ci dice sì o no.
Elaborazione dei Pagamenti: StoreKit 2
KinArchive offre piani di abbonamento tramite l'App Store. Usiamo StoreKit 2, il framework di acquisti in-app più recente di Apple.
Cosa Significa Questo per i Tuoi Dati di Pagamento
Flusso di Pagamento
- L'utente tocca "Abbonati" in KinArchive
- StoreKit presenta il foglio di pagamento di Apple
- L'utente si autentica con Face ID o password Apple ID
- Apple elabora il pagamento
- Apple invia a KinArchive una ricevuta che conferma l'abbonamento
Nota cosa manca: non vediamo mai il numero della tua carta di credito, l'indirizzo di fatturazione o i dettagli di pagamento. Apple gestisce l'intera transazione. Riceviamo una ricevuta firmata criptograficamente che prova che hai un abbonamento valido—nient'altro.
Questo è il modello standard dell'App Store di Apple, ma vale la pena enfatizzare: per un'app che gestisce documenti familiari sensibili, non toccare mai i dati di pagamento è una proprietà di sicurezza importante.
Perché il Nativo è Importante
Framework multipiattaforma come React Native e Flutter permettono agli sviluppatori di scrivere codice una volta e distribuirlo su più piattaforme. Sono popolari per buone ragioni—sviluppo più veloce, codebase condivise, costi inferiori.
Ma per un'app focalizzata sulla sicurezza che gestisce documenti sensibili, lo sviluppo nativo offre vantaggi critici:
Accesso Diretto alle API di Sicurezza
I framework multipiattaforma avvolgono le API native in strati di astrazione. Questi strati possono introdurre bug, rimanere indietro rispetto agli aggiornamenti del sistema operativo e talvolta esporre vulnerabilità di sicurezza che non esisterebbero nel codice nativo.
Costruendo nativo, abbiamo accesso diretto a:
- LocalAuthentication: Face ID/Touch ID con integrazione completa del Secure Enclave
- Security.framework: Keychain Services per l'archiviazione delle credenziali
- CloudKit: Integrazione diretta con la criptazione di iCloud
- CryptoKit: Libreria di crittografia nativa di Apple
Nessuna Vulnerabilità del Bridge JavaScript
Le app React Native comunicano tra JavaScript e codice nativo attraverso un "bridge". Questo bridge è storicamente stato una fonte di vulnerabilità di sicurezza—iniezione JavaScript, dirottamento del bridge, perdita di dati attraverso lo strato del bridge.
KinArchive non ha JavaScript, nessun bridge, nessuna visualizzazione web. È codice Swift compilato che gira direttamente sul dispositivo.
Ottimizzazioni a Livello di Sistema Operativo
Le app native beneficiano di ottimizzazioni a livello di sistema operativo che le app multipiattaforma non possono sfruttare appieno:
- Background App Refresh: Integrazione corretta con la gestione dell'alimentazione di iOS
- Gestione della memoria: L'ARC di Swift funziona perfettamente con la gestione della memoria di iOS
- Prestazioni di avvio: Nessun overhead di inizializzazione del framework
- Integrazione widget: WidgetKit nativo per gli avvisi di scadenza nella schermata iniziale
L'Interfaccia SwiftUI
L'UI di KinArchive è costruita interamente in SwiftUI, il framework dichiarativo moderno di Apple. Questo significa:
- Accessibilità automatica: Supporto VoiceOver, Dynamic Type e altre funzionalità di accessibilità funzionano immediatamente
- Aspetto e sensazione nativi: Pulsanti, navigazione e interazioni corrispondono alle convenzioni iOS
- Modalità scura automatica: Le impostazioni di aspetto del sistema sono rispettate automaticamente
- Prestazioni: SwiftUI è ottimizzato per le pipeline di rendering iOS
Cosa Abbiamo Sacrificato
Costruire nativo per Apple non è stato senza costi:
- Nessuna versione Android: Non possiamo servire utenti Android (ancora)
- Nessuna app web: Gli utenti desktop non possono accedere ai documenti da un browser
- Costi di sviluppo più alti: Lo sviluppo nativo richiede più tempo rispetto al multipiattaforma
- Mercato indirizzabile più piccolo: iOS è ~27% del mercato mobile globale
Abbiamo fatto questi compromessi consapevolmente. Per un'app che gestisce documenti familiari sensibili, crediamo che le proprietà di sicurezza e privacy dell'ecosistema Apple superino la portata degli approcci multipiattaforma.
L'Allineamento con l'Ecosistema Apple
Costruire per Apple non è solo questione di tecnologia—è questione di allineamento dei valori.
Apple ha puntato il suo brand sulla privacy. "La privacy è un diritto umano fondamentale" non è solo marketing; è riflesso nelle decisioni architetturali in tutto iOS: App Tracking Transparency, Privacy Nutrition Labels, elaborazione on-device per Siri e Foto, e il Secure Enclave.
Quando usi KinArchive, stai estendendo la fiducia a due entità: noi (per la logica dell'app) e Apple (per la piattaforma). Costruendo interamente su tecnologie Apple, minimizziamo la superficie di fiducia. I tuoi dati rimangono nell'ecosistema Apple, protetti dal modello di sicurezza di Apple, criptati con la crittografia di Apple.
Non ti stiamo chiedendo di fidarti di un provider cloud di terze parti, di un'azienda di analytics di terze parti o di un processore di pagamenti di terze parti. Ti stiamo chiedendo di fidarti di Apple—cosa che già fai usando un iPhone—e di noi per la logica dell'applicazione che gira sopra.
Lo Stack di Fiducia
Hardware: Secure Enclave di Apple
Sistema Operativo: iOS con app sandboxed
Archiviazione Cloud: CloudKit Private Database (iCloud dell'utente)
Autenticazione: Face ID / Apple ID
Pagamenti: App Store / StoreKit 2
Applicazione: KinArchive (Swift/SwiftUI nativo)
Protezione Futura
La piattaforma Apple continua a evolversi. Costruendo nativo, possiamo adottare nuove tecnologie man mano che vengono rilasciate:
- Nuove funzionalità di sicurezza: Man mano che la sicurezza iOS migliora, KinArchive eredita quei miglioramenti
- Nuove API: Accesso diretto a nuovi framework senza aspettare il supporto multipiattaforma
- Miglioramenti delle prestazioni: Le ottimizzazioni di Swift e iOS ci beneficiano automaticamente
- Nuovi dispositivi: iPad, Mac (tramite Catalyst o nativo), integrazione Apple Watch
Conclusione
Costruire KinArchive per Apple non è stato il percorso più veloce o il più facile. Ma è stato il percorso giusto per un'app affidata ai documenti più sensibili delle famiglie.
Quando archivi il tuo passaporto in KinArchive, non stai affidando i tuoi dati a un provider cloud sconosciuto. Lo stai archiviando nel tuo account iCloud, criptato con il tuo Apple ID, protetto dal tuo Face ID. Abbiamo costruito lo strato di governance—il tracciamento delle scadenze, i permessi, i registri di audit—sopra la base di sicurezza di Apple.
Ecco perché abbiamo costruito per Apple. Ecco perché i tuoi dati sono al sicuro.
Prova la Sicurezza dei Documenti Nativa Apple
Scarica KinArchive e scopri cosa significa lo sviluppo iOS nativo per la sicurezza dei documenti della tua famiglia.
Scarica KinArchive