• [^] # Re: Comment le cache peut être lu ?

    Posté par . En réponse à la dépêche Deux failles critiques : Meltdown et Spectre. Évalué à 1.

    Ben c'est surtout que je pense que la partie vraiment significative de l'attaque est le fait de transformer une valeur en index, ce qui se perdait dans ton code. :-)

    Non, je ne suis pas d'accord, c'est le fait de faire un calcul dépendant de cette valeur, de sorte que ce calcul laisse une trace dans le cache. Dans ça forme la plus abstraite ça donne :

    char a;
    if(cas_impossible()){
     char c = *adresse;
     if(p(c){
     a = *adresse_1
     }else{
     a = *adresse_2
     }
    }
    if(est_dans_le_cache(adresse_1)){
     //p(*adresse) == 1
    }
    if(est_dans_le_cache(adresse_2)){
     //p(*adresse) == 0
    }