Jaki jest tańszy algorytm skrótu?

Nie wiem zbyt wiele w algorytmach mieszania.

Muszę obliczyć hash przychodzącego pliku na żywo w Javie przed przekazaniem pliku do systemu zdalnego (trochę jak S3), który wymaga skrótu pliku w MD2 / MD5 / SHA-X. Ten skrót nie jest obliczany ze względów bezpieczeństwa, ale po prostu dla sumy kontrolnej spójności.

Jestem w stanie obliczyć ten skrót na żywo podczas przesyłania pliku, ze standardową biblioteką DigestInputStream Java, ale chciałbym wiedzieć, który algorytm jest najlepszy do uniknięcia problemów z wydajnością przy użyciu DigestInputStream?

Jeden z moich byłych kolegów sprawdził i powiedział nam, że obliczanie skrótu na żywo może być dość kosztowne w porównaniu do linii poleceń Unixa lub pliku.

Edytuj o przedwczesnej optymalizacji: Pracuję w firmie, której celem jest pomoc innym firmom w dematerializacji ich dokumentów. Oznacza to, że mamy partię, która obsługuje przesyłanie dokumentów od innych firm. Celujemy w przyszłe miliony dokumentów dziennie, a czas realizacji tej partii jest wrażliwy na naszą działalność.

Optymalizacja haszowania 10 milisekund na 1 milion dokumentów dziennie to skrócenie dziennego czasu realizacji o 3 godziny, co jest dość duże.

questionAnswers(3)

yourAnswerToTheQuestion