Skip to content Skip to sidebar Skip to footer

Is It Possible To Compute A File's Sha1 Id Using Javascript?

If this were possible to do prior to posting a form, it may save me having to upload the file to my server...

Solution 1:

Actually you can read the contents of a client-side file now, as long as it's chosen in a file upload field and you are using Firefox. See the input.files array. You can then indeed hash it, although it might be rather slow.

See How would I get a Hash value of a users file with Javascript or Flash? for an example and a compact SHA-1 implementation.

Solution 2:

To do that you would have to load the file's binary information into JavaScript. Which is not possible.

But here's an implementation of SHA1 in JavaScript.

Solution 3:

It is possible to use SHA1, though performance isn't going to be the best...

For anything over a few hundred KB's you will have to run some benchmarks and determine if indeed its a viable solution.

See this link for a good implementation (passpack and quite a few OS projects use it)

Edit: As other have already replied, actually getting the file contents may be a whole different matter - so unless you use something like Google Gears or Adobe AIR it should be virtually impossible.

Solution 4:

One can read their local file using the HTML5 File interface: https://developer.mozilla.org/en-US/docs/Web/API/File

And then you can use a library for like Crypto.js https://code.google.com/p/crypto-js/ to finish the hash over the read text.

Solution 5:

No, you can't access a file from a local computer using JavaScript .

You're going to have to upload it first to the server, then checking the checksum of the file.

Post a Comment for "Is It Possible To Compute A File's Sha1 Id Using Javascript?"