methods for cryptographic delegation and enforcement of dynamic access to stored data are disclosed . an example method includes generating for a first modified data block , a new per - block hash value using as a hash function input data contained in the first modified data block or a new per - block hash message authentication code using as hash function inputs a new per - block hash key and data contained in the first modified data block , writing the new per - block hash value or the new per - block hmac to data block metadata associated with the modified data block in the protected data object , and writing the first modified data block to one of the data blocks of the protected data object .