Domanda

WinForms / C #

La mia applicazione consente all'utente di specificare 1) ulteriori informazioni per 2) un determinato file, entrambi caricati sul server. Esistono due caricamenti isolati: prima il file e (forse molto) in seguito i metadati.

Si prega di presumere che il file sia sempre invariato e disponibile (rispetto al codice).

Quando i metadati vengono caricati, devo assicurarmi che sia associato al file specificato senza caricare nuovamente quel file (sono file di grandi dimensioni).

Il mio piano è usare un hash MD5 con i seguenti tre attributi del file:

  • contenuto
  • size
  • data di creazione

L'hash accompagnerà sia il file che i metadati nei rispettivi caricamenti (ed eventuale persistenza).

Quale soluzione più intelligente sto trascurando?

È stato utile?

Soluzione

Puoi prendere in considerazione l'uso di SHA-1 o SHA-256 ancora migliore anziché MD5, dal momento che gli hash MD5 potrebbero non essere abbastanza unici: è possibile generare un file con dimensioni e hash MD5 corrispondenti a quelli di altri file. Vedi, ad esempio, vulnerabilità MD5 .

Aggiornamento: se l'unicità del file non è strettamente importante, potresti trovare molto più conveniente generare un ID con incremento automatico durante il caricamento.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top