Если файл JAR имеет цифровую подпись, то подпись становится частью файла манифеста?JAR file: digital signature
ответ
По-видимому, ответ: «Разработчики могут подписывать JAR-файлы в цифровой форме. В этом случае информация подписи становится частью файла манифеста». (http://en.wikipedia.org/wiki/JAR_%28file_format%29)
Практически. На самом деле это не файл JAR, который подписан, но его содержимое.
Технически отдельные файлы в архиве JAR, которые должны быть подписаны, хэшируются с помощью подходящей хеш-функции (например, SHA-1). Значение хэша указано в манифесте. Затем добавляется дополнительный файл (файл *.SF
) в каталоге META-INF/
; этот файл содержит записи для каждого из подписанных файлов: каждая запись содержит хэш соответствующей записи в манифесте (так это более или менее хэш хэша). *.SF
также содержит запись, содержащую хэш основных заголовков в манифесте. Наконец, файл *.SF
сам подписывается, в результате получается файл или *.DSA
(сам по себе в каталоге META-INF/
), который следует за форматом CMS (ранее называемым «PKCS # 7»). CMS опирается на все атрибуты сертификатов X.509.
Так что это довольно косвенно. Следует понимать, что подписываются только отдельные файлы в JAR; в данном файле JAR может быть смесь подписанных и неподписанных частей.