web-dev-qa-db-fra.com

Est-ce que ça va aux données sensibles à hachage, donnée sans confidentialité?

  1. La confidentialité est la propriété d'un message permettant à personne, mais la personne qui sait un secret (callons-le k) peut lire le message.
  2. Les hachages ne fournissent pas de confidentialité (les données sont détruites, vous ne pouvez pas la récupérer)

Suite à ces définitions, est-ce correct des données sensibles au hasch (par exemple: mots de passe) et stockez-le dans une base de données? Je sais déjà que l'utilisation de SHA256 (ou de tout autre hachage non spécialisé) est dangereuse, car la forçage brute est relativement facile. Disons que nous utilisons argon2.

La question devient maintenant: est-ce que ça va d'assumer que les données hachées restent privées lors de l'utilisation de l'algorithme de hachage correct? Si oui, quel est le nom de la propriété qui fournit cette sécurité? Est-ce non-réversibilité? SHA256 fournit également une non-réversibilité, mais est facile à bruteforce. Y a-t-il un nom pour cette propriété?

1
joaquinlpereyra

est-il correct d'assumer que les données hachées restent privées lorsque vous utilisez l'algorithme de hachage correct?

Ça dépend. Il est facile de dériver le hachage des données. Donc, s'il n'y a qu'un nombre limité d'options dans les données, il est facile d'essayer de déterminer tous les éléments de données un moyen de hachage spécifique.

Même s'il y a un grand nombre d'options possibles, mais la plupart de ces personnes hautement improbables, la vie privée peut être brisée dans de nombreux cas en essayant simplement les options les plus probables. C'est aussi l'idée derrière le mot de passe efficace brute-forçage: essayez d'abord les mots de passe les plus couramment utilisés et leurs variations en premier.

Si oui, quel est le nom de la propriété qui fournit cette sécurité?

Les propriétés pertinentes qui font de la brute forçage sont les performances lentes et le choix des sels. Une utilisation correcte des sels rend impossible de précomputer le hachage de nombreuses intrants. Les performances lentes empêchent alors d'essayer simplement chaque entrée.

SHA256 fournit également une non-réversibilité, mais est facile à bruteforce. Y a-t-il un nom pour cette propriété?

Performance. SHA-256 est tout simplement très rapide et c'est pourquoi il est possible d'essayer de nombreuses intrants en peu de temps.

2
Steffen Ullrich