Rápido hash no criptográfico de baja colisión en JavaScript para archivos

Estoy buscando un hash rápido con bajas colisiones implementadas en JavaScript. No necesita ser un hash criptográfico. Básicamente lo estoy usando como una forma de ver si un archivo dado ya se ha cargado (o se ha cargado parcialmente) en la cuenta de un usuario para ahorrarles tiempo de carga en archivos grandes (videos).

Estoy usando la nueva API de archivos HTML5 para leer en partes del archivo. Entonces le entrego esto aSparkMD5 Para darme un hash del archivo. Me gusta el hecho de que SparkMD5 me permita hacer un hash incremental para no tener que leer todo el contenido en la memoria.

En general, SparkMD5 funciona para mis necesidades, pero para archivos grandes puede tomar un tiempo obtener mi hash (unos 30 segundos para un archivo de 300 MB). Idealmente me gustaría reducir esto. No tengo mucho conocimiento de las funciones hash, por lo que no busco portar algo y lo ideal es buscar una biblioteca ya implementada.

Respuestas a la pregunta(1)

Su respuesta a la pregunta