Sicurezza dei dati

Introduzione

Questo organizer è stato progettato per esaudire i più elevati standard di sicurezza dei dati. Memorizza in modo sicuro i dati personali anche altamente sensibili, in modo da soddisfare le richieste anche degli utenti più esigenti.

In organizer convenzionali i dati sono memorizzati in chiaro, come nei seguenti esempi:

Contatti

CognomeNomeProfessione/titolo
SchwarzeneggerArnoldAttore
EastwoodClintAttore
AndersonPamelaattrice

Calendario

InizioFineEvento
28/12/2014 14:0028/12/2014 16:00Incontro Uffici Roma
28/12/2014 19:3028/12/2014 22:00Cena di lavoro...
30/12/2014 08:0030/12/2014 09:30Volo AA234 FIU-MLP

Contabilità

DataImportoDescrizioneTipo
28/12/2014€ 4,200.00Provvigione vendita casaprivato
29/12/2014-€ 1,100.00Imopianto stereoufficiale
30/12/2014€ 7,000.00Stipendioufficiale


In Cryptobase® ogni record è crittografato, campo per campo, con una chiave univoca per ogni campo:

bf
QvvX2qwSHdI4jw2xZZoSZsOop+OhvGL//+SDsX6YKwuM5Xmw9eHzkGrem497c5xsQfNZ305n9dY9kOvkYoR7pc9FlS/vdy62UuhORdIETy0Xl3cX2oRutDN2sArEqnFhukURdZMg/3TIg81hIQna2OcMLi6W9wWHzjz31plSd24erS4b1iKzsrDoBFBolgiwbnESDba5ZI16Rbe+dC+TroitzW4c7B2iqzT+w2ZjjPTRkoA2haW8cOolyXWfRmga1zvyRrZzqGdljH05s9cyrFmm+WXNke6dnAVQlYSZvE5sDjYCOyrpD1uSCikmXw0RsXQ5RXl+xhznIPsb1JVP0uvuL/jJb9e1GIiiimE/ChZxww== IxZmmd9udWGtfvDfa7er0MSyz9S/WlpcleQsAR2hbBm1KESCO0xvlwcWO2r/JJN0w/qHvHgCjnCoWpSP9qCuXIv01+6aBsMSiTnLcDniwNY4iA==
CmxGkFpE8eocD0dkiyO4VezxMjbQFPgRa+hG+0Z3uNjukRMg4ZRbwqe3KPLk5sOOPPFeBaN/uzTx/tHqbygaBUkWQf+WqfNZTBNr94PE9Ye3ssIPYKiDE7cQbB4/mfUo/GM=f12uS48KwKbxN0ZkGSalCW4bgypUj+Hqcbnl6Gis+JxbwfFBYTTbPN80jj8pqz/szVA=
AzSolit1xAIAJucdt4hylrGhcISNhxaM4RGXwzPgMygzTGMHqwTZMYn3Yrx0sh95tAOICZd0yjvERZnEMzmo/r4z3aPk0CUEmO/BPJ8ET+66ztTSmQQSGcke+Jnh5zXjtUZly2Es06JmvROfYhsnoy0NVX58es9jNvB8R8t1cSFxvljdYoUHCDWihFVbOljhpUVEXzVmJfwXZtWxtMjhESkB+3ly9mEaBGxOOdHLkNkMtA==/aH7I/Ij6JTDdyV6bvZ/bMDvfXFqw3sO+Ln3LYvQ8UtSbzGEiIJyBwtLgU7/hdkR2Cs=
c0/tukcIxh4ZkzusyqrRM/X+ciZqL/Mnw5N1ar2DeKZ5UVRFwWehP6LEE1GDayza3NhRhT4ZJs6pFQTR7ceuR7mKKZeQRtMxX5OCIbyuCsBfng==E33twYaYU+/nOQDf2Atqm4oTE3ocyoN6X47IOyCff7Y28FtUiO6+ragXMUfFMNrC4+lsKA++6lNBz35L6+A3/lZ9

Da notare i diversi colori che simboleggiano le diverse chiavi utilizzate per crittografare ogni singolo campo (per un totale di oltre 65000 chiavi univoche, scelte a caso per ridurre al minimo la probabilità che 2 campi vengano codificati con la stessa chiave)

Criptazione permanente

Alcuni prodotti software della categoria dei "personal information manager" (gestori di dati personali) possono consentire la crittografia del database a fine lavoro, quando si esce dal programma. Ciò richiede l'apertura del database prima di accedervi, usando la password; lasciandolo aperto, però, rimane vulnerabile durante tutta la fase di utilizzo.

In Cryptobase, tutte le informazioni sono memorizzate in modo permanente in forma criptata sul supporto di memoria fisica (hard disk, server, storage di cloud etc.). Cryptobase non ha bisogno di decifrare il file di database intero. Quando l'utente visualizza un set di dati (p.es. un indirizzo di un contatto), il programma copia il relativo set di dati crittografato dal database in RAM (memoria volatile). Qui verrà decodificato prima di essere visualizzato sullo schermo. Dopo un'eventuale modifica, i dati verranno criptati prima di essere salvati nel file di database.

Questo principio (vedi sotto: Criptazione di singola unità di dati) garantisce la massima sicurezza dei dati, in quanto la crittografia viene eseguita in modo continuo e affidabile nello sfondo, senza che l'utente debba preoccuparsene o ricordarsi di criptare il file a fine lavoro: il file è sempre criptato.

LETTURA di dati

RAM

importazione di 1 singolo set di dati
(= 1 riga) dal database
DECRIPTAZIONE

invio allo schermo
File di database criptato Output (schermo)

MEMORIZZAZIONE di dati

RAM


set di dati nuovi o modificati

CRIPTAZIONE

salva nel file database

Modifica dei dati

File (database) criptato

Criptazione di singola unità di dati

Ogni singola unità di informazioni viene cifrata con una fra decine di migliaia di password (vedi paragrafo successivo). La lettura di un'unità di dati (= campo di una riga del database), ad esempio un indirizzo, ne comporta l'importazione nella memoria volatile (RAM) dove avviene la decodificazione, prima di essere visualizzato sullo schermo. Sul disco rigido o altro supporto (p.es. cloud) rimane memorizzato in forma criptata. Informazioni leggibili (decriptate) non vengono MAI in nessun momento salvate su supporto fisico di memoria, nemmeno parzialmente. Dati che sono stati aggiunti o modificati passano il filtro di crittografia, prima di essere scritto nel database sul disco rigido. Nessuno sarà mai in grado di decifrare qualsiasi informazione analizzando il disco rigido, neppure con le tecniche più sofisticati disponibili.

Migliaia di chiavi di crittografia (password)

Mentre il database viene aperto con la password principale, internamente il database dispone di decine di migliaia di chiavi crittografiche, creati con un algoritmo speciale e composte da caratteri puramente casuali, che vengono utilizzate per criptare ogni singolo pezzo di informazione. La probabilità che la stessa chiave venga usata più di una volta in 50000 dati è quasi nullo. In altre parole, in un database di medie dimensioni, tutti i dati sono criptati con chiavi diverse.
Ogni database ha una collezione unica di chiavi: i dati del vostro database può essere decifrato solo con le chiavi dello stesso database.

Algoritmi di crittografia di massima sicurezza

Gli algoritmi di crittografia a 128 e 256 bit sono gli stessi usati, fra altri, da enti militari e organizzazioni politiche. E 'stato calcolato che già gli algoritmi di crittografia a 128 bit sono così sicuri che decifrare un singolo set di dati richiederebbe milioni di anni, anche con l'impiego di una rete di supercomputer, per non parlare della crittografia a 256 bit, ampiamente utilizzata nel programma. Dal momento che ogni record è criptato con una password individuale, nel caso utopico una persona riuscisse a rompere il codice, solo le informazioni contenute in un unico set di dati potrebbe essere rivelato.

  • Algoritmi con cifratura a blocchi Rijndael-AES (Advanced Encryption Standard). L'Advanced Encryption Standard (AES) rappresenta l'attuale standard di crittografia (Federal Information Processing Standard number 197 oppure FIPS-197) utilizzato comunemente, fra altri, da enti e organizzazioni governative degli Stati Uniti per proteggere informazioni sensibili (e anche segreti e top secret).
    Introduzione a AES (in inglese): "What is Advanced Encryption Standards (AES)"

  • SHA-1 and SHA-256: Algoritmi di hash con l'uso di migliaia di cicli.

  • Derivazione di chiave crittografica basata su password (PKCS #5 v2 PBKDF2)

  • Generatori di numeri casuali compatibili con FIPS-140-2 e X9.31/X9.17

  • La sincronizzazione cloud si basa sulla crittografia asimmetrica (chiavi RSA) di chiavi simmetriche, usate per lo scambio di dati con il clooud. Le chiavi vengono generate in modo casuale ad ogni singolo invio di informazioni da e verso il cloud, e garantiscono che qualsiasi intercettazione di dati sarebbe inutile per l'intruso.

  • Indipendente da Microsoft Cryptographic API

Oscuramento dati altamente sensibili

Questa funzione fornisce un ulteriore livello di sicurezza. Tutti i dati, senza eccezione, sono ovviamente crittografati in modo sicuro. Ma è possibile contrassegnare alcuni dati particolarmente sensibili ("dati privati"). Questi dati possono essere nascosti al volo (premendo il pulsante "Nascondere" sulla barra degli strumenti) non appena una persona estranea si avvicina al monitor o se un'altra persona deve lavorare sui dati meno sensibili (ad esempio, la segretaria).

Per sbloccare e visualizzare i dati nascosti ("dati privati"), l'utente deve inserire il PIN o, se il PIN non risulta corretto, ri-inserendo la password principale.

Blocco automatico dell'accesso ai dati

Attivando questa funzione il programma verrà chiuso automaticamente dopo un periodo di 1-15 minuti di inattività.

In alternativa, si può optare di non uscire dal programma, ma di oscurare i dati particolarmente sensibili ("dati privati"), di chiudere la sezione attiva (ad esempio, il calendario o il diario) oppure di chiudere il database quando il programma è rimasto inutilizzato (periodo impostabile). Ciò previene un accesso non autorizzato qualora il database rimanga inavvertitamente aperto, se l'utente lascia la postazione di lavoro.

Cancellazione automatica della memoria temporanea (Appunti - Clipboard)

Qualora informazioni siano state copiate negli "appunti" per essere incollate in altre applicazioni non è escluso il rischio che dati sensibili (ad esempio password) restano inavvertitamente nella clipboard per un periodo prolungato, anche dopo la chiusura del programma. Per ovviare a questo rischio il contenuto degli appunti viene svuotato dopo 30 secondi. L'applicazione cancella la memoria della clipboard anche al momento di uscita dal programma.

PIN

Il PIN ha lo solo scopo di permettere un accesso più veloce al programma, quando questo si trova in stand-by (p.es. dopo blocco per inattività). Il PIN può essere comodo in dispositivi mobili, nei quali l'inserimento della password principale risulta in genere più macchinoso che la digitazione di un PIN numerico. Per mantenere un livello elevato di sicurezza il PIN deve essere digitato correttamente al primo tentativo, altrimenti verrà richiesta la password principale.

Controllo inserimento password

Lunghezza minima password: 8 caratteri. Una password di 8 caratteri, considerando i tasti disponibili della tastiera, richiederebbe teoricamente una media di 92 ^ 92/2 tentativi per aprire il database. La lunghezza e la composizione dei caratteri della password determina in modo fondamentale la sicurezza dei dati da proteggere. Pertanto è importante utilizzare una password relativamente lunga e difficile da indovinare. Dovrebbe contenere un mix di caratteri numerici, maiuscole e minuscole, e caratteri non-alfanumerici.

Intervallo forzato dopo inserimento errato della password: 2 secondi (questo rende praticamente impossibile per attacchi brute-force automatizzati di aprire il database). Inoltre i cicli di hash sono nell'ordine delle decine di migliaia.

Numero massimo di tentativi: dopo la terza password errata, l'applicazione viene chiusa. Il riavvio crea un ritardo che rappresenta un ulteriore protezione contro gli attacchi di "forza bruta".

Backup e sincronizzazione Cloud

I dati salvati e sincronizzati con il server del Cloud vengono trasmessi esclusivamente in forma crittografata. L'eventuale intercettazione dei dati sul percorso da e verso il cloud sarebbe totalmente inutile. Nessuno riuscirebbe ad utilizzarne o interpretarne il contenuto. L'applicazione invia i dati crittografati con doppia cifratura, utilizzando una chiave casuale monouso per ogni fase di trasmissione.

Se un hacker dovesse riuscire a scaricare un database completo, si troverebbe, suo malgrado, in possesso di un file comunque inutilizzabile, a meno che non venga a conoscenza o riesca ad indovinare la password principale. Lo stesso vale per chi, trovando uno smartphone smarrito o rubato, tenta di analizzare i dati.

Misure anti-sabotaggio

Qualsiasi tentativo di corrompere il database con dati fittizi al fine di renderli inutilizzabili per l'utente (ad esempio utilizzando un virus per sovrascrivere / modificare i dati nel database locale) verrà rilevato immediatamente, impedendo che i dati manipolati vengano propagati al cloud. È possibile in ogni momento ripristinare il database dall'archivio salvato nel cloud.

RECUPERO PASSWORD IMPOSSIBILE ("NO BACKDOOR")

Consideriamo questa uno dei principali parametri di sicurezza di questa app: non vi è alcun modo per un intruso curioso di reimpostare la password o recuperarla dalla app o dal database. Questo vale anche per gli sviluppatori del software.
Ciò significa d'altronde anche che non si avrà alcuna possibilità di aprire il database, se si dimentica la password principale.

Scegliere una password sicura!

La forza della propria password principale determina la sicurezza del database. Una password sicura garantirà che il database sarà impenetrabile per chiunque utilizzi anche più sofisticati metodi di cracking. Pertanto, è di massima importanza di selezionarla con cura, ricordarla e conservarne una copia scritta in un luogo sicuro. E ricordate ancora una volta, non c'è modo di recuperare la password se la si dimentica!