MD5 hash blob hochgeladen auf Azure doesnt match mit der gleichen Datei auf der lokalen Maschine
Ich bin derzeit am hochladen von Medien auf den Azure-Blob-Speicher. Alles funktioniert wunderbar außer wenn ich versuche zu macth den MD5-hash der hochgeladenen Medien mit der lokalen Datei (genau das gleiche, die hochgeladen wurde). Lokale Datei gibt ein byte-array, wo sind blob.Eigenschaften.ContentMD5 gibt einen string zurück, und beide passen nicht.
Lokalen MD5-hash: sÔ(F¦‚"“Db~[N
blob.Eigenschaften.ContentMD5: c9QoHkamgiKTRANifltOGQ==
Jede mögliche Weise zu entsprechen diesen beiden?
- Versuchen Sie zu konvertieren MD5-byte-array Base64-string und sehen, ob das passt.
- Es funktioniert! Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier ist ein guter Artikel , wie zu berechnen und zu überprüfen Blob MD5-Prüfsummen.
Ich habe vor, dies vor, und ich weiß nicht warum, aber Sie kann NICHT einfach tun
md5.computeHash(fileBytes)
.Für Azure-Blobs verwendet er den folgenden Pfad, um die hash:
und es funktioniert...
Und ja, Guarav bereits erwähnt - MD5-hash gespeichert wird als base64-string.
MD5.ComputeHash(Stream stream)
finden Sie unter stackoverflow.com/a/43647643/411428