Hashing Identifier per creare pseudonimi

0

Desidero condividere i set di dati tra due organizzazioni in modo pseudonimato in modo tale da collegarli tra loro tramite entità comuni (ad es. persone) ma in modo che le entità non possano essere identificate. Per esempio:.

L'organizzazione A ha un set di dati A. L'organizzazione B ha un set di dati B. La persona C appare in entrambi i dataset, identificati dal loro ID univoco 12345. Voglio memorizzare entrambi i set di dati insieme (in un data warehouse all'esterno di entrambe le organizzazioni), collegando l'attività per persona C nel set di dati A con attività per la persona C nel set di dati B. Tuttavia, per garantire che la persona C non possa essere identificata, desidero memorizzare il proprio ID univoco (su entrambi i set di dati) in modo hash, in modo che non possa essere invertito (ad es. che 12345 diventa 29CX9).

Opzione 1

Potrei semplicemente cancellare l'identificativo univoco tramite SHA2 512 (o altro algoritmo) e memorizzarlo nel magazzino, fornendo quindi uno pseudonimo che esegue sempre lo stesso output per un dato input. Tuttavia, a differenza delle password in cui l'hashing a senso unico è efficace, chiunque (che conosce l'algoritmo di hashing) può eseguire un identificatore univoco noto tramite l'algoritmo di hashing e ottenere lo pseudonimo con hash. Questo metodo impedisce alle persone di invertire l'hash ma poiché gli identificatori non sono segreti allo stesso modo delle password, in realtà non fornisce alcuna sicurezza.

Opzione 2

Crea una tabella che assegni un nuovo identificatore univoco generato casualmente per ogni identificatore per il quale vogliamo creare uno pseudonimo, quindi blocca questa tabella in modo che nessuno possa accedervi. Questo ci dà un identificatore univoco che non è correlato all'identificatore di origine, quindi qualcuno che conosce un identificatore di origine non può scoprire quale sarebbe lo pseudonimo nel magazzino condiviso, tuttavia significa che se la tabella viene mai violata, un utente malintenzionato ha tutto ciò di cui ha bisogno per identificare tutte le entità nel magazzino.

Altre opzioni ...?

Ci sono ulteriori opzioni? Si riduce essenzialmente a una di queste due opzioni: possiamo proteggere un identificatore di origine dall'essere convertito al suo pseudonimo o possiamo proteggere uno pseudonimo dall'inversione al suo identificatore di origine, ma non entrambi? La soluzione migliore sarebbe un ibrido se l'identificatore di origine è stato sottoposto a hashing (SHA2 512) e successivamente viene creata una tabella di ricerca bloccata che mappa gli identificatori con hash con identificatori univoci generati casualmente ...?

    
posta Drunk Goldfish 22.10.2015 - 20:36
fonte

0 risposte

Leggi altre domande sui tag