×

Methods for cryptographic delegation and enforcement of dynamic access to stored data

  • US 9,559,837 B2
  • Filed: 09/05/2014
  • Issued: 01/31/2017
  • Est. Priority Date: 01/27/2006
  • Status: Active Grant
First Claim
Patent Images

1. A computer implemented method for reading a protected data object stored in a memory of a computer, the protected data object comprising encrypted data blocks and a region of data block metadata, the region of data block metadata associated with at least one of the encrypted data blocks, the method comprising:

  • reading a first encrypted data block of the encrypted data blocks from the memory, the protected data object including a plurality of regions of data block metadata interleaved between the encrypted data blocks;

    reading a hierarchical key tree associated with the protected data object from a) the region of data block metadata or b) a data object header stored in the protected data object;

    decrypting, in succession, using a set of first decryption algorithms, encrypted first path keys on a first key path of the hierarchical key tree from a top node of the hierarchical key tree including a plaintext version of a received data object decryption key to a node in a bottom row of the hierarchical key tree including an encrypted per-block decryption key for the first encrypted data block, the decrypting including decrypting the encrypted first path keys starting with decrypting one of the encrypted first path keys immediately following the data object decryption key using the data object decryption key and continuing with decrypting the next encrypted first path key with a decrypted version of a preceding first path key moving from the top node to the bottom row until a decrypted version of the per-block decryption key for the first encrypted data block is obtained; and

    decrypting, using the per-block decryption key and a second decryption algorithm, the first encrypted data block to produce a first decrypted data block.

View all claims
  • 3 Assignments
Timeline View
Assignment View
    ×
    ×