Я должен проверить подпись в файле размером до 2 ГБ, и я хочу сделать это как можно более эффективным с точки зрения памяти способом. По разным причинам файл уже будет полностью загружен в память и доступен приложению с помощью InputStream
. Я хотел бы проверить подпись, используя интерфейс потока, но метод JCA Signature
class 'update
принимает только byte[]
и связанные классы.
Как я могу сделать это эффективно? Я не хочу загружать зверя во второй байтовый массив, в противном случае мы увидим серьезное использование памяти, но интерфейс, похоже, не поддерживает его в противном случае.
Обновление
Если это имеет значение, алгоритм подписи SHA-1