Comment générer un fichier MD5 hash en JavaScript?
Comment écrire functionToGenerateMD5hash
pour ce code? J'ai déjà fileVideo
et j'ai besoin d'envoyer le correspondant de hachage md5 pour le serveur en cliquant sur le bouton.
$("#someButton").click(function() {
var fr = new FileReader();
fr.onload = function(e) {
string md5 = functionToGenerateMD5hash(e.target.result);
//send md5 here
};
fr.readAsArrayBuffer(fileVideo);
- Voici une stackoverflow exemple: stackoverflow.com/questions/768268/...
- Expample de quoi? Je ne peux pas y trouver des exemples de comment obtenir le hash md5 du fichier à l'aide de js.
- Double Possible de Comment calculer le hash md5 d'un fichier à l'aide de javascript ... et fortement Liées: [Comment générer de la somme de contrôle & convertir 64 bits en Javascript pour les très gros fichiers sans déborder de la RAM? ](stackoverflow.com/q/51987434/514235)
Vous devez vous connecter pour publier un commentaire.
Il y a des fonctions pour générer
MD5
les hachages sont situés ici:http://www.myersdaily.org/joseph/javascript/md5-text.html
http://pajhome.org.uk/crypt/md5/md5.html
Cependant je vous conseille d'utiliser un plus secure hash comme
SHA256
Si vous ne souhaitez pas utiliser les bibliothèques ou d'autres choses, vous pouvez utiliser ce natif javascript approche:
JS:
Pour les non anglais mots que vous pouvez avoir besoin d'utiliser ne pas encoder() et la encodeURIComponent() méthodes.
unescape(encodeURIComponent('unicode string'))
CryptoJS est une bibliothèque crypto qui peuvent générer de hachage md5, entre autres:
http://code.google.com/p/crypto-js/#MD5
CA: https://cdnjs.com/libraries/crypto-js
Google code: https://code.google.com/archive/p/crypto-js/downloads
Simplifiée et la version compacte (environ 3,5 k) de cette jolie mise en œuvre
http://pajhome.org.uk/crypt/md5/md5.html
sera (dépouillé conversion en utf-8, en majuscules/minuscules modifier le tableau).
C'est la plus petite taille que j'ai pu obtenir, toujours parfait pour des serveurs web intégrés.
Comme une alternative contemporaine, il y a une norme maintenant, pour le côté client de la cryptographie. Cela a l'avantage d'être optimisé par le navigateur lui-même.
Prises à partir de l'exemple dans la documentation:
MD5 est probablement pas pris en charge, cependant les goûts de SHA-256, SHA-384 et SHA-512 sont.
Et ceux qui seront susceptibles d'être calculés côté serveur aussi.
Voici de la documentation sur l'utilisation: https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto/digest
Et de compatibilité du navigateur: https://caniuse.com/#feat=cryptography
Vous pouvez utiliser un léger bibliothèque pure-md5.
Juste un 4,7 ko.
JS:
CSS:
HTML: