Qu'est-ce que la RAM inconsciente et comment fonctionne-t-elle?

9

Quelqu'un pourrait-il m'expliquer ce qu'est exactement la RAM inconsciente?

J'ai trouvé l' explication suivante qui me rend un peu clair, mais je voudrais avoir une idée des aspects techniques:

Le chiffrement n'est pas toujours suffisant pour garantir la confidentialité. Si un adversaire peut observer vos modèles d'accès au stockage chiffré, il peut toujours apprendre des informations sensibles sur ce que font vos applications. La mémoire RAM inconsciente résout ce problème en mélangeant continuellement la mémoire lors de son accès; masquant ainsi complètement les données auxquelles vous accédez ou même quand elles ont déjà été consultées.

Merlijn
la source
Quel genre d'aspects techniques? Comment ça se fait sur la puce?
Raphael
J'ai lu qu'un client a besoin d'une taille particulière de mémoire, disons O (n ^ 1 / r) avec r> 1, où le serveur a une mémoire de taille n. Ma question serait, que se passe-t-il côté client que le client a besoin de sa propre mémoire.
Merlijn
Pas nécessairement, dans le protocole ORAM qui utilise une arborescence et décale les points de données, vous pouvez utiliser une idée comme la mise en cache L1 / L2 / L3 pour décharger plus de mémoire sur le serveur afin que le client ait seulement besoin de conserver la mémoire O (1). Mais sans cette extension, le client stocke une liste d'indices.
quantumtremor

Réponses:

10

Oblivious RAM est une interface entre un programme et la RAM physique qui, lorsque vous effectuez une lecture ou une écriture, fait les deux en même temps sur la RAM physique pour se cacher si vous lisez ou écrivez. De plus, il mélange la mémoire de temps en temps afin qu'un adversaire ne voyant que les accès à la RAM physique ne puisse pas savoir si vous avez accédé aux mêmes données deux fois ou accédé à deux données différentes. Masquant ainsi les modèles d'accès à la RAM physique.

Les instanciations que je connais reposent sur un tri inconscient, qui est un moyen de trier les éléments d'une liste en comparant et éventuellement en échangeant des éléments dans un ordre prédéfini, qui ne dépend pas des résultats de la comparaison.

Florian Bourse
la source