Valor de hash de archivo de JavaScript Generar con parte del archivo

Estoy trabajando con JavaScript para generar un valor de hash de archivo para valores de archivo únicos. Compruebe amablemente el siguiente código para el mecanismo de generación de hash que funciona bien.

<script type="text/javascript">
// Reference: https://code.google.com/p/crypto-js/#MD5
function handleFileSelect(evt) 
{   
    var files = evt.target.files; // FileList object
    // Loop through the FileList and render image files as thumbnails.
    for (var i = 0, f; f = files[i]; i++) 
    {
        var reader = new FileReader();
        // Closure to capture the file information.
        reader.onload = (function(theFile) 
        {
            return function(e) 
            {
                var span = document.createElement('span');
                var test = e.target.result;                 
                //var hash = hex_md5(test);
                var hash = CryptoJS.MD5(test);
                var elem = document.getElementById("hashValue");
                elem.value = hash;
            };
        })(f);
        // Read in the image file as a data URL.
        reader.readAsBinaryString(f);
    }
}
document.getElementById('videoupload').addEventListener('change', handleFileSelect, false);
</script>

Sin embargo, estoy enfrentando un problema al generar HASH VALUE para archivos grandes, ya que en el lado del cliente el navegador se bloqueó.

Hasta 30 MB, el HASHING funciona bien, pero si intento cargar más grande que eso, el sistema falla.

Mi pregunta es:

¿Puedo generar valor HASH para parte del archivo que leer los archivos GRANDES y obtener bloqueos? En caso afirmativo, ¿puedo saber cómo hacer ese ancho 'FileReader';

¿Puedo especificar cualquier cantidad de bytes, como 2000 caracteres de un archivo para generar el valor HASH y luego generar archivos grandes?

Espero que las dos soluciones anteriores funcionen para archivos más grandes y pequeños. ¿Hay alguna otra opción?

My Fiddle Demo

Respuestas a la pregunta(1)

Su respuesta a la pregunta