Question

WinForms / C #

Mon application permet à l'utilisateur de spécifier 1) des informations supplémentaires pour 2) un fichier donné, qui sont tous deux téléchargés sur le serveur. Il y a deux téléchargements isolés: le fichier d'abord et (peut-être beaucoup plus tard) les métadonnées.

Supposons que le fichier reste toujours inchangé et disponible (pour le code).

Lorsque les métadonnées sont téléchargées, je dois m'assurer qu'elles sont associées au fichier donné sans télécharger à nouveau ce fichier (ce sont de gros fichiers).

Mon plan consiste à utiliser un hachage MD5 des trois attributs suivants du fichier:

  • contenu
  • taille
  • date de création

Le hachage accompagnera le fichier et les métadonnées dans leurs téléchargements respectifs (et leur éventuelle persistance).

Quelle solution plus intelligente suis-je en train de négliger?

Était-ce utile?

La solution

Vous pouvez envisager d’utiliser SHA-1 ou même un meilleur SHA-256 au lieu de MD5, car les hachages MD5 peuvent ne pas être assez uniques: il est possible de générer un fichier de taille et un hachage MD5 correspondant à ceux des autres fichiers. Voir, par exemple, la vulnérabilité MD5 .

Upd: si l'unicité des fichiers n'est pas strictement importante, vous trouverez peut-être beaucoup plus pratique de simplement générer un identifiant auto-incrémenté lors du téléchargement.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top