Класс JarSigner.Builder
- Внешний класс:
JarSigner
public static class JarSigner.Builder extends Object
JarSigner на основе различных параметров, связанных с подписанием.- Начиная с:
- 9
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
Builder |
Создает объект JarSigner.Builder с объектом KeyStore.PrivateKeyEntry. |
Builder |
Создает объект JarSigner.Builder с закрытым ключом и путем сертификации. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
JarSigner |
build() |
Создает объект JarSigner на основе параметров, заданных методами установки. |
JarSigner.Builder |
digestAlgorithm |
Задает алгоритм хеширования. |
JarSigner.Builder |
digestAlgorithm |
Задает алгоритм хеширования, используя указанный провайдер. |
JarSigner.Builder |
eventHandler |
Задает обработчик событий, который будет вызван при добавлении, подписании или обновлении JarEntry в процессе подписания. |
static String |
getDefaultDigestAlgorithm() |
Возвращает алгоритм хеширования по умолчанию. |
static String |
getDefaultSignatureAlgorithm |
Возвращает алгоритм подписи по умолчанию для закрытого ключа. |
JarSigner.Builder |
setProperty |
Задает дополнительное свойство, специфичное для реализации и определяемое указанным ключом. |
JarSigner.Builder |
signatureAlgorithm |
Задает алгоритм подписи. |
JarSigner.Builder |
signatureAlgorithm |
Задает алгоритм подписи, используя указанный провайдер. |
JarSigner.Builder |
signerName |
Задает имя подписанта. |
JarSigner.Builder |
tsa |
Задает URI центра штампов времени (TSA). |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Определяет, «равен ли» этот объект другому объекту. |
protected void |
finalize() |
Устарело и подлежит удалению: этот элемент API будет удален в будущей версии. Финализация устарела и будет удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает значение хеш-кода этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова метода notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова метода notify или interrupt, либо до истечения заданного интервала реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова метода notify или interrupt, либо до истечения заданного интервала реального времени. |
Подробное описание конструкторов
Builder
public Builder(KeyStore.PrivateKeyEntry entry)
JarSigner.Builder с объектом KeyStore.PrivateKeyEntry.- Параметры:
-
entry— объектKeyStore.PrivateKeyEntryподписанта.
Builder
public Builder(PrivateKey privateKey, CertPath certPath)
JarSigner.Builder с закрытым ключом и путем сертификации.- Параметры:
-
privateKey— закрытый ключ подписанта. -
certPath— путь сертификации подписанта. - Исключения:
-
IllegalArgumentException— еслиcertPathпуст или алгоритмprivateKeyне соответствует алгоритмуPublicKeyв сертификате конечного субъекта (первом сертификате вcertPath).
Подробное описание методов
digestAlgorithm
public JarSigner.Builder digestAlgorithm(String algorithm) throws NoSuchAlgorithmException
getDefaultDigestAlgorithm().- Параметры:
-
algorithm— стандартное имя алгоритма. Сведения о стандартных именах алгоритмов см. в разделеMessageDigestдокументации «Стандартные имена алгоритмов архитектуры криптографии Java». - Возвращает:
- сам объект
JarSigner.Builder. - Исключения:
-
NoSuchAlgorithmException— еслиalgorithmнедоступен. - Внешние спецификации
digestAlgorithm
public JarSigner.Builder digestAlgorithm(String algorithm, Provider provider) throws NoSuchAlgorithmException
getDefaultDigestAlgorithm().- Параметры:
-
algorithm— стандартное имя алгоритма. Сведения о стандартных именах алгоритмов см. в разделеMessageDigestдокументации «Стандартные имена алгоритмов архитектуры криптографии Java». -
provider— провайдер. - Возвращает:
- сам объект
JarSigner.Builder. - Исключения:
-
NoSuchAlgorithmException— еслиalgorithmнедоступен у указанного провайдера. - Внешние спецификации
signatureAlgorithm
public JarSigner.Builder signatureAlgorithm(String algorithm) throws NoSuchAlgorithmException
getDefaultSignatureAlgorithm(PrivateKey).- Параметры:
-
algorithm— стандартное имя алгоритма. Сведения о стандартных именах алгоритмов см. в разделеSignatureдокументации «Стандартные имена алгоритмов архитектуры криптографии Java». - Возвращает:
- сам объект
JarSigner.Builder. - Исключения:
-
NoSuchAlgorithmException— еслиalgorithmнедоступен. -
IllegalArgumentException— еслиalgorithmнесовместим с алгоритмом закрытого ключа подписанта. - Внешние спецификации
signatureAlgorithm
public JarSigner.Builder signatureAlgorithm(String algorithm, Provider provider) throws NoSuchAlgorithmException
getDefaultSignatureAlgorithm(PrivateKey).- Параметры:
-
algorithm— стандартное имя алгоритма. Сведения о стандартных именах алгоритмов см. в разделеSignatureдокументации «Стандартные имена алгоритмов архитектуры криптографии Java». -
provider— провайдер. - Возвращает:
- сам объект
JarSigner.Builder. - Исключения:
-
NoSuchAlgorithmException— еслиalgorithmнедоступен у указанного провайдера. -
IllegalArgumentException— еслиalgorithmнесовместим с алгоритмом закрытого ключа подписанта. - Внешние спецификации
tsa
public JarSigner.Builder tsa(URI uri)
- Параметры:
-
uri— URI. - Возвращает:
- сам объект
JarSigner.Builder.
signerName
public JarSigner.Builder signerName(String name)
- Параметры:
-
name— имя подписанта. - Возвращает:
- сам объект
JarSigner.Builder. - Исключения:
-
IllegalArgumentException— еслиnameпусто, его длина превышает 8 символов или оно содержит символы, не входящие в набор "a-zA-Z0-9_-".
eventHandler
public JarSigner.Builder eventHandler(BiConsumer<String,String> handler)
JarEntry в процессе подписания. Обработчик можно использовать для отображения хода подписания. Первым аргументом обработчика может быть "adding", "signing" или "updating", а вторым аргументом является имя обрабатываемого JarEntry.
- Параметры:
-
handler— обработчик событий. - Возвращает:
- сам объект
JarSigner.Builder.
setProperty
public JarSigner.Builder setProperty(String key, String value)
- Примечание по реализации:
- Эта реализация поддерживает следующие свойства:
- "tsaDigestAlg": алгоритм хеширования данных в запросе на штамп времени. Значение по умолчанию совпадает с результатом метода
getDefaultDigestAlgorithm(). - "tsaPolicyId": TSAPolicyID центра штампов времени. Значение по умолчанию отсутствует.
- "internalsf": "true", если файл .SF включен в блок подписи, и "false" в противном случае. Значение по умолчанию — "false".
- "sectionsonly": "true", если файл .SF содержит хеш-значение только для каждого раздела манифеста, но не для манифеста целиком, и "false" в противном случае. Значение по умолчанию — "false".
- "tsaDigestAlg": алгоритм хеширования данных в запросе на штамп времени. Значение по умолчанию совпадает с результатом метода
- Параметры:
-
key— имя свойства. -
value— значение свойства. - Возвращает:
- сам объект
JarSigner.Builder. - Исключения:
-
UnsupportedOperationException— если эта реализация не поддерживает ключ. -
IllegalArgumentException— если значение не является допустимым для этого ключа.
getDefaultDigestAlgorithm
public static String getDefaultDigestAlgorithm()
- Примечание по реализации:
- Эта реализация возвращает "SHA-384". Это значение может измениться в будущем.
- Возвращает:
- алгоритм хеширования по умолчанию.
getDefaultSignatureAlgorithm
public static String getDefaultSignatureAlgorithm(PrivateKey key)
- Примечание по реализации:
- Эта реализация использует сопоставимые уровни стойкости, определенные в таблицах 2 и 3 документа NIST SP 800-57 Part 1-Rev.5, а также соответствующие рекомендации NIST. В частности, если длина ключа RSA превышает 7680 бит или длина ключа EC составляет не менее 512 бит, в качестве хеш-функции для подписи будет использоваться SHA-512. В противном случае будет использоваться SHA-384, если только длина ключа не слишком мала для соответствующего алгоритма подписи. Для ключей DSA алгоритм подписи SHA256withDSA возвращается независимо от длины ключа. Это значение может измениться в будущем.
- Параметры:
-
key— закрытый ключ. - Возвращает:
- алгоритм подписи по умолчанию. Возвращает null, если алгоритм подписи по умолчанию не найден. В этом случае необходимо вызвать метод
signatureAlgorithm(String), чтобы указать алгоритм подписи. В противном случае методbuild()выбросит исключениеIllegalArgumentException.
build
public JarSigner build()
JarSigner на основе параметров, заданных методами установки. Этот метод не изменяет внутреннее состояние объекта Builder и может вызываться несколько раз для создания нескольких объектов JarSigner. После вызова этого метода вызов любого метода объекта Builder не повлияет на только что созданный объект JarSigner.
- Возвращает:
- объект
JarSigner. - Исключения:
-
IllegalArgumentException— если алгоритм подписи не задан и его невозможно определить по закрытому ключу с помощью методаgetDefaultSignatureAlgorithm(PrivateKey).
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.