Crittografia dei dati dei campi

La piattaforma FileMaker fornisce queste funzioni per crittografare e decrittare i dati utilizzando una chiave specificata:

  • CryptEncryptBase64: accetta il testo o i dati Contenitore e restituisce il testo con codifica Base64 crittografato.

  • CryptDecryptBase64: accetta il testo con codifica Base64 crittografato da CryptEncryptBase64 e restituisce i dati decrittati dello stesso tipo (testo o dati Contenitore) di quelli prima della crittografia.

Per un maggiore controllo sulla codifica e sulla formattazione dei dati crittografati, è possibile utilizzare le funzioni CryptEncrypt e CryptDecrypt. Vedere la Guida di FileMaker Pro.

Importante  Queste funzioni non sono direttamente collegate allo schema di sicurezza di un file FileMaker Pro (account, set di privilegi, privilegi estesi). Pertanto, la sicurezza dei dati dipende da come queste funzioni vengono utilizzate nell'app personalizzata.

Lo sviluppatore deve considerare come gestire in modo sicuro queste chiavi:

  • Creazione: le migliori metodologie operative per la creazione (o la generazione) delle chiavi includono di base questi elementi: lunghezza, complessità ed entropia della chiave.

  • Memorizzazione: memorizzare le chiavi in un posto sicuro e separato dai dati che decrittano.

  • Conservazione: le chiavi devono rimanere a disposizione fino a quando lo rimangono i dati crittografati. Ad esempio, senza chiavi, i backup sono inutilizzabili.

  • Distruzione: a seconda di come si utilizzano queste funzioni, se una chiave viene distrutta, di fatto vengono distrutti anche i dati che crittografa, dal momento che non è possibile decrittarli senza la chiave.

Una delle applicazioni di queste funzioni ha lo scopo di proteggere la riservatezza dei dati in un campo (anche detta crittografia a livello di campo). Tuttavia, questo livello di crittografia non sostituisce la crittografia dei dati a riposo, che protegge dalla manomissione l'intero file (inclusi i backup). Vedere Crittografia di un'app personalizzata.

Tenere inoltre presente quanto segue:

  • Se si tenta di decrittare dati già decrittati, vi è il rischio di distruggerli. Utilizzare invece un flag distinto per indicare se i dati sono crittografati e decrittarli solo se necessario.

  • Se i contenuti di un campo vengono crittografati, quindi decrittati e poi nuovamente crittografati, i valori crittografati saranno ogni volta diversi.

  • Se la chiave è compromessa, si dovrà essere in grado di localizzare tutti i record con dati crittografati per poterli decrittare con la chiave compromessa e crittografarli con una nuova chiave.