Aller au contenu
uencoder

scrypt ROMix

ROMix est le composant central de scrypt à mémoire coûteuse : il lit et écrit séquentiellement dans un tableau mémoire rempli pseudo-aléatoirement, forçant l'attaquant à dépenser soit beaucoup de mémoire, soit beaucoup de temps.

Objectif

Il fournit la dureté mémoire de scrypt, si bien que les attaques parallèles exigent autant de mémoire ou un temps quadratique.

Mécanisme

Il remplit séquentiellement V[0..N] avec la fonction de hachage (V[i]=H(V[i-1])), puis, à partir de V[N-1], effectue N sauts pseudo-aléatoires indexés par des entiers dérivés de V, en hachant à chaque lecture. L'association du remplissage séquentiel et de l'accès aléatoire impose un coût en mémoire ou en temps.

Cas d’usage

  • Composant central de scrypt
  • Fonction à mémoire coûteuse
  • Hachage de mots de passe

Outils associés

References