| CPC H04L 9/0825 (2013.01) [G06F 21/62 (2013.01); H04L 9/083 (2013.01); H04L 9/0894 (2013.01); H04L 9/3226 (2013.01); H04L 63/0435 (2013.01); H04W 12/04 (2013.01); H04W 12/06 (2013.01); H04W 12/08 (2013.01); G06F 2221/2101 (2013.01); G06F 2221/2107 (2013.01)] | 14 Claims |

|
8. A method comprising:
creating a public key and a secret key corresponding to a role, wherein the public key and the secret key are configured to encrypt and decrypt, respectively, one or more dataset keys;
creating a dataset or obtaining an indication that the dataset has been created;
generating a dataset key in response to creating the dataset or obtaining the indication that the dataset has been created, wherein the dataset key is configured to encrypt and decrypt the dataset;
encrypting the dataset into an encrypted dataset using the dataset key;
encrypting the dataset key into an encrypted dataset key using the public key;
receiving a request to access the dataset, the request indicating the role and an identifier for the dataset;
transmitting the encrypted dataset key in response to receiving the request to access the dataset;
decrypting the encrypted dataset key using the secret key, wherein the decrypting of the encrypted dataset key causes generation of the dataset key;
decrypting the encrypted dataset using the dataset key, wherein the decrypting of the encrypted dataset causes generation of the dataset or a copy of the dataset;
in response to receiving an indication that the dataset or the copy of the dataset has been accessed, generating a log, wherein the log comprises different portions having different security parameters or different access privileges;
encrypting the log using the dataset key;
storing the encrypted log with the dataset or the copy of the dataset in a storage; and
deactivating the dataset key upon the log being encrypted.
|