Data masking: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Funzionalità collegamenti suggeriti: 1 collegamento inserito.
 
(4 versioni intermedie di 3 utenti non mostrate)
Riga 1:
{{NN|informatica|gennaio 2021|}}
Il '''data masking''' è una procedura di offuscamento dati,; è impiegata per la salvaguardia della privacy nell’utilizzo e nel testing di piattaforme online.<ref>{{Cita pubblicazione|autore=enisa|titolo=Pseudonymisation techniques and best practices}}</ref><br>Attraverso il masking, i [[dati sensibili]] vengono sostituiti con altri dati o con stringhe di [[Carattere (informatica)|caratteri]], in modo da impedire l’identificazione della [[persona fisica]]. Questa procedura previene l’appropriazione indebita dei dati a fini commerciali, ma ne permette l’utilizzo per lo sviluppo di applicativi, siti web e collaudo [[software]]. <br>
 
Il data masking è utilizzato e raccomandato per attuare le misure di sicurezza previste dal [[Regolamento generale sulla protezione dei dati|Regolamento generale sulla protezione dei dati (GDPR).]]
Riga 8:
Il data masking deve essere irreversibile, qualsiasi sia la tecnica utilizzata. I dati in [[Output (informatica)|output]] non possono essere riconvertiti alla loro forma originale. I risultati devono comunque essere rappresentativi dei dati di origine.
 
Quando si utilizzano soluzioni di data masking è necessario mantenere l’integrità referenziale dei dati. Alcuni attributi presenti all’interno del [[Base di dati|database]] possono infatti essere utilizzati come riferimento per altri elementi. AdPer esempio, se il numero di una carta di credito utilizzato come [[chiave primaria]] all'interno di una tabella è associatoconvertito adin un insieme di caratteri, tutti i valori ada esso collegati devono essere codificati secondo i medesimi criteri.<ref name="Dynamic Data Masking">{{Cita web|url=https://docs.microsoft.com/it-it/sql/relational-databases/security/dynamic-data-masking?view=sql-server-ver15|titolo=Dynamic Data Masking}}</ref>
 
Molti database relazionali, per ottimizzare l’archiviazione dei dati, consentono agli elementi di relazionarsi tra loro attraverso chiavi. Per questo motivo, mescolareMescolare o sostituire queste chiavi durante i processi di mascheramento di dati, potrebbe avere conseguenze sul funzionamento del database causatea causa dalladella perdita di relazioni tra i dati.
 
Non è necessario codificare l’intero database. Devono però essere codificati tutti i [[dati sensibili]] e i [[Dati sensibili|dati non sensibili]] che possano ricondurre a quelli sensibili.
 
Il mascheramento dei dati deve essere un processo ripetibile,: non è consigliabile eseguire mascheramenti “una tantum”, che sarebbero difficili da mantenere e poco efficaci.
È spesso importante che il mascheramento mantenga inalterato il tipo di dato all'interno dei database, ad esempioperché i database per esempio non accettano testo in campi numerici o riferiti a date. Ci sono però situazioni in cui un dato specifico può essere conservato come un dato generico (adper esempio, un numero può essere conservato come varchar, ovvero testo generico).
 
Anche la struttura dei dati deve di regola rimanere inalterata: se i dati originali hanno una lunghezza checompresa varia datra due ae venti caratteri, i dati riprodotti dalla macchinaalterati dovrebbero avere la stessa lunghezza.
 
In alcuni casi può anche essere necessario mantenere i raggruppamenti logici di valori. AdPer esempio, il mescolamento casuale di dati relativi alla posizione geografica di determinati soggetti, indicata attraverso il codice postale, risulterebbe nella perdita di informazioni geografiche importanti.
 
==Data masking statico e dinamico==
Durante le fasi di sviluppo è necessario impiegare i dati per eseguire dei test sul corretto funzionamento del database. Per permettere questa operazione senza compromettere la privacy dell’utente, si fa ricorso a due tipologie di masking: statico e dinamico.<ref>{{Cita web|url=https://docs.microsoft.com/it-it/sql/relational-databases/security/dynamic-data-masking?view=sql-server-ver15|titolo=Dynamic Data Masking|data=24/03/2021|lingua=italiano|citazione=La maschera dati dinamica (DDM) limita l'esposizione dei dati sensibili nascondendoli agli utenti senza privilegi. Può essere usata per semplificare notevolmente la progettazione e la codifica della sicurezza nell'applicazione}}</ref>
 
==== Data masking statico= ===
Il data masking statico viene utilizzato per il testing di applicativi su un database. Viene creata una copia del database originale, che viene poi caricata su un [[server]] separato. Il numero di informazioni contenute nel database copia viene ridotto, lasciando a disposizione solo i dati necessari per condurre test specifici. I dati rimasti subiscono un processo di mascheramento, e la versione offuscata del database viene inviata ai [[Programmatore informatico|programmatori]].
 
==== Data masking dinamico= ===
Il data masking dinamico (masking on-the-fly) avviene durante il processo di trasferimento dei dati necessari alla progettazione agli sviluppatori<ref>{{Cita web|url=https://docs.microsoft.com/it-it/sql/relational-databases/security/dynamic-data-masking?view=sql-server-ver15|titoloname="Dynamic Data Masking}}<" /ref>, e non prevede la registrazione intermedia su alcun supporto di memorizzazione.<br> Questo tipo di masking è più efficiente per le organizzazioni che utilizzano un’integrazione continua dei dati e non hanno il tempo necessario per creare e caricare i [[backup]] del database. Con l’integrazione continua è possibile inviare agli sviluppatori piccoli set di dati per i test.
Questo tipo di masking è più efficiente per le organizzazioni che utilizzano un’integrazione continua dei dati, e non hanno il tempo necessario per creare e caricare i [[backup]] del database. Con l’integrazione continua è possibile inviare agli sviluppatori piccoli set di dati per i test.
 
Attraverso il data masking dinamico è anche possibile effettuare un offuscamento parziale dei dati. Attraverso questa procedura vengono mascherati dati sensibili ada utenti non autorizzati, permettendo comunque la fruizione dell’interfaccia.
 
AdPer esempio, un addetto di un call center può identificare un cliente tramite gli ultimi quattro numeri della sua carta di credito, senza però accedere al numero completo.
 
== Metodi di data masking ==
 
===Pseudonimizzazione===
La [[Pseudonimo|pseudonimizzazione]] nasconde l’identità del soggetto a terzi e riduce il rischio che i dati vengano collegati a domini diversi.<ref name="Pseudonymisation techniques and best practices">{{Cita libro|autore=enisa|titolo=Pseudonymisation techniques and best practices|annooriginale=2019|lingua=inglese}}</ref>
 
Attraverso questo metodo i dati personali vengono trattati in modo tale che non possano più essere attribuiti ada uno specifico interessato senza l’utilizzo di informazioni aggiuntive, che devono essere conservate separatamente.
 
La pseudonimizzazione può essere applicata in diversi modi. AdPer esempio, può essere effettuata dal titolare del trattamento, al momento della raccolta dei dati, per una successiva elaborazione. Un’altraUn'altra possibilità di applicazione è la pseudonimizzazione affidata a terzi che, una volta effettuato il trattamento, inoltreranno i dati al titolare<ref>{{Cita pubblicazione|autore=Enisa|anno=3 dicembre 2019|titolo=Pseudonymisation techniques and best practices|pp=12-17}}</ref>.
 
Le tecniche di pseudonimizzazione sono:
 
* '''Contatore''': si tratta della forma più semplice di pseudonimizzazione. AdA ogni dato viene associato un numero da un contatore (che fornisce numeri incrementandoli). Questa tecnica è utile per set di caratteri molto semplici.
* '''Generatore di numeri casuali''': è simile al contatore, ma fornisce [[Numero casuale|numeri casuali]].
* '''Funzione crittografica di hash''': questo metodo permette di associare a stringhe di lunghezza variabile altre di [[lunghezza]] fissa.
Riga 53 ⟶ 52:
 
=== Anonimizzazione===
L’anonimizzazione è una procedura che fornisce informazioni anonime, ovvero informazioni che non fanno riferimento ada una persona fisica identificata o identificabile.<ref>{{Cita libro|autore=enisa|titoloname="Pseudonymisation techniques and best practices|annooriginale=2019|lingua=inglese}}<" /ref>
 
Si differenzia dalla pseudonimizzazione, che associa uno “pseudonimo” ada ogni dato.
 
Anche in questo caso non esiste un’unicaun'unica tecnica o metodologia.
 
* '''Blocco della correlabilità''': questo metodo impedisce di risalire ada una singola persona o ada un gruppo di persone che hanno dati in diverse banche dati, attraverso, adper esempio, di un’analisi di correlazione.
* '''Rumore statico''': il metodo consiste nell’alterare gli attributi dei dati in modo che non siano riconducibili al soggetto, ma mantengano comunque la possibilità di essere utilizzati.
* '''Scrambling''': lail tecnicametodo mescola tra di loro le lettere dell’alfabeto, secondo un determinato schema.
* '''Generalizzazione''': il metodo consiste nell’estendere o aumentare le scale di grandezza dei vari attributi. AdPer esempio, una regione può essere sostituita con una nazione.
 
=== Shuffling ===
Riga 74 ⟶ 73:
 
* '''Shuffling casuale''': mescola casualmente i dati tra le colonne senza però mantenere un collegamento logico tra esse.
* '''Designazione di gruppi''': consiste nel collegare le colonne che appartengono allo stesso gruppo (adper esempio numero di telefono con prefisso e nazione), e mescolare i loro valori. Il difetto di questa metodologia è che le colonne collegate fra loro inizialmente, mantengono i valori iniziali, il che da la possibilità di stabilire alcune relazioni iniziali.
* '''Designazione delle partizioni''': i dati vengono mescolati all’interno di partizioni specifiche (adper esempio mescolando i valori di tutte le righe che hanno “Giappone “"Giappone" come valore della colonna “nazione”"nazione"). Questo metodo permette di mantenere intatti alcuni collegamenti fra attributi. Lo svantaggio principale è che resta possibile vedere alcune relazioni iniziali.
 
===Crittografia===
In termini informatici, la [[crittografia]] consiste nel rendere illeggibile un set di dati. Per rendere leggibile i dati è necessaria una chiave di [[Decriptazione|decrittatura]].<ref name="Cos'è la crittografia dei dati?">{{Cita web|url=https://www.kaspersky.it/resource-center/definitions/encryption|titolo=Cos'è la crittografia dei dati?}}</ref>
 
La crittografia si basa sull’utilizzo di [[Algoritmo|algoritmi]] di cifratura ed è il metodo più difficile di mascheramento dati. I dati non criptati, detti [[plaintext]], subito il processo di cifratura non sono più interpretabili dalla macchina ([[Ciphertext autokey|ciphertext]]) . Questo processo previene la perdita di informazioni sensibili tramite [[hacking]].<ref>{{Cita web|url=https://www.garykessler.net/library/crypto.html|titolo=An Overview of Cryptography}}</ref>
 
I metodi di crittografia sono molti, affidati a svariati [[software]] e in costante evoluzione.
 
* '''Cifratura a chiave simmetrica''': utile per sistemi chiusi o singoli utenti. La chiave di cifratura è la stessa sia per la codifica che per la decodifica, e viene fornita direttamente al destinatario. Questo metodo è più veloce rispetto alla cifratura asimmetrica, ma è molto più rischioso, perché la chiave di cifratura potrebbe essere intercettata.
* '''Cifratura a chiave asimmetrica''': questo metodo utilizza due tipi di chiavi: una privata, che deve rimanere segreta, e una pubblica, che può essere condivisa. C’è un collegamento matematico tra le due. Entrambe possono decrittare o crittografare un messaggio, utilizzando sempre la chiave opposta a quella utilizzata per uno dei due passaggi.<ref>{{Cita web|url=https://www.kaspersky.it/resource-center/definitions/encryption|titoloname="Cos'è la crittografia dei dati?}}<" /ref>
 
==Note==