CPC G06F 21/79 (2013.01) [G06F 21/602 (2013.01); H04L 9/0643 (2013.01); H04L 9/0819 (2013.01); H04L 9/3242 (2013.01); G06F 21/64 (2013.01); G06F 21/72 (2013.01); G06F 21/78 (2013.01); H04L 9/0897 (2013.01)] | 23 Claims |
1. A method, comprising:
transmitting, by a host device to a memory device, signaling assigning a respective hash to each row of data of a volatile memory or a non-volatile memory of the memory device;
receiving, by the host device from the volatile memory, data and a first hash assigned to a row of data associated with the data;
writing, by the host device, the data and the first hash received from the volatile memory to a cache of the host device;
generating, by the host device, a second hash associated with the data using a key that is accessible to the host device and inaccessible to the volatile memory, wherein generating the second hash comprises:
generating a third hash using the data and the key that is accessible to the host device and inaccessible to the volatile memory; and
truncating the third hash to generate the second hash, the second hash comprising a cryptographic construction of a message authentication code;
authenticating, by the host device and after writing the data and the first hash to the cache of the host device, the data by using the first hash received from the volatile memory and the second hash generated by the host device; and
executing, based at least in part on authenticating the data, the data directly from the cache of the host device, wherein executing the data comprises executing at least a first operation associated with the host device.
|