Cache line. We next consider the attacks that can retrieve information at the granularity of one cache line, typically realized by the F/012)R(/o34 technique. This requires the adversary to sharethe same memory line with the victim, e.g., via memory deduplication. The adversary first evictsthe critical memory lines out of the cache using dedicated instructions (e.g., clßush). After a periodoftime,shereloadstheselinesintothecacheandmeasurestheaccesstime.Ashortertimeindicatesthat the memory lines were accessed by the victim and betrays the access trace to the adversary.This attack was first mounted by Gullasch et al. [91] against the AES implementation on the L1cache.ThenYaromandFalkner[225]adoptedthistechniqueontheLLCtomonitorthesquareand multiply operations and steal keys from the RSA implementation. This method was furtherusedtoattackothercipherssuchasECDSA[15,199].Grussetal.[90]proposedacachetem-plate attack, which leverages F/012)R(/o34 to automatically build templates and attack criticalapplications.
A variant of F/012)R(/o34isF/012)F/012 [89],wheretheR(/o34operationisreplacedby
F/012 at the second stage. This technique works, as the execution time of F/012 can also reflect whether the memory line is in the cache or not. This technique can reduce the activity on the cache and achieve better stealthiness, but has higher error rates due to the noise in the observation.
Cache line states with the replacement policy can also leak side-channel information. Lipp et al.
[129] exploited the cache way predictor in the AMD processor to identify the victim’s memory accesses with two new techniques: Co//&4()P%o+( and Lo34)R(/o34. Briongos et al. [33] re-verse engineered the cache replacement policies of the Intel processors and then proposed theR(/o34+R(5%(12 technique to monitor memory accesses in a cache set without evicting the vic-tim’sdata.Xiongetal.[221]alsopresentedthattheLRUstatesofcachelinescanleakinformationand demonstrated the attacks on both Intel and AMD processors. Bhattacharya et al. [20] discov-ered that the prefetching state of the cache lines can result in non-constant time encryption, whichleakstiminginformation for the attacker to reveal the key from CLEFIA.