In generale, è fisicamente impossibile togliere la conoscenza a qualcuno. Quando dai a qualcuno sia i dati che la chiave per decrittografarli, non c'è modo di portarli via da loro, perché hanno la possibilità di creare backup illimitati da ognuno dei quali funzionerà per tutta l'eternità.
Quando vuoi essere in grado di controllare l'accesso alla conoscenza, devi mantenere una sorta di segreto per te che puoi dare a una persona solo quando vuole accedere alla conoscenza. Ma considerando che il tuo suggerimento era di creare più copie dei dati con chiavi diverse e distruggere quelle che sono state revocate, sembra che tu sappia questo.
Nel tuo scenario puoi criptare i dati con una chiave comune comune. Quindi si crea una copia di quella chiave master per ciascun utente e la si cripta con la chiave dell'utente. Quando un utente ha bisogno di decifrare i dati, gli dai la copia della chiave master crittografata con la loro chiave. Possono quindi decrittografare la chiave master e utilizzare quella comune chiave master per decrittografare i dati. Quando si desidera revocare l'accesso per un utente, si distrugge la copia della chiave master crittografata per loro.
Ricorda che dopo aver dato a un utente una copia della chiave master, avranno sempre accesso a quella chiave master. Ciò significa che è necessario modificare la chiave principale e crittografare nuovamente i dati a intervalli regolari. In questo modo hanno accesso ai dati solo nello stato in cui hanno ricevuto la copia della chiave e non hanno accesso a uno stato successivo dei dati perché sono crittografati con una chiave master diversa.