Класс 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 Уполномоченного центра по времени. |
Подробное описание конструкторов
Конструктор
public Builder(KeyStore.PrivateKeyEntry entry)
JarSigner.Builder с объектом KeyStore.PrivateKeyEntry.- Параметры:
-
entry-KeyStore.PrivateKeyEntryподписывающего лица.
Конструктор
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 Cryptography Architecture по стандартным именам алгоритмов для получения информации о стандартных именах алгоритмов. - Возвращаемое значение:
- сам объект
JarSigner.Builder. - Исключения:
-
NoSuchAlgorithmException- еслиalgorithmнедоступен.
digestAlgorithm
public JarSigner.Builder digestAlgorithm(String algorithm, Provider provider) throws NoSuchAlgorithmException
getDefaultDigestAlgorithm().- Параметры:
-
algorithm- стандартное имя алгоритма. См. разделMessageDigestв документации Java Cryptography Architecture по стандартным именам алгоритмов для получения информации о стандартных именах алгоритмов. -
provider- поставщик. - Возвращаемое значение:
- сам объект
JarSigner.Builder. - Исключения:
-
NoSuchAlgorithmException- еслиalgorithmнедоступен в указанном поставщике.
signatureAlgorithm
public JarSigner.Builder signatureAlgorithm(String algorithm) throws NoSuchAlgorithmException
getDefaultSignatureAlgorithm(java.security.PrivateKey) для закрытого ключа.- Параметры:
-
algorithm- стандартное имя алгоритма. См. разделSignatureв документации Java Cryptography Architecture по стандартным именам алгоритмов для получения информации о стандартных именах алгоритмов. - Возвращаемое значение:
- сам объект
JarSigner.Builder. - Исключения:
-
NoSuchAlgorithmException- еслиalgorithmнедоступен. -
IllegalArgumentException- еслиalgorithmнесовместим с алгоритмом закрытого ключа подписывающего лица.
signatureAlgorithm
public JarSigner.Builder signatureAlgorithm(String algorithm, Provider provider) throws NoSuchAlgorithmException
getDefaultSignatureAlgorithm(java.security.PrivateKey) для закрытого ключа.- Параметры:
-
algorithm- стандартное имя алгоритма. См. разделSignatureв документации Java Cryptography Architecture по стандартным именам алгоритмов для получения информации о стандартных именах алгоритмов. -
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(java.lang.String)для указания алгоритма подписи. В противном случае методbuild()выбросит исключениеIllegalArgumentException.
build
public JarSigner build()
JarSigner из параметров, установленных методами-сеттерами. Этот метод не изменяет внутреннее состояние объекта Builder и может быть вызван несколько раз для генерации нескольких объектов JarSigner. После вызова этого метода, вызов любого метода на этом Builder объекте не повлияет на вновь созданный объект JarSigner.
- Возвращаемое значение:
- объект
JarSigner. - Исключения:
-
IllegalArgumentException- если алгоритм подписи не установлен и не может быть получен из закрытого ключа с помощью методаgetDefaultSignatureAlgorithm(java.security.PrivateKey).
© 1993, 2023, 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.
https://docs.oracle.com/en/java/javase/21/docs/api/jdk.jartool/jdk/security/jarsigner/JarSigner.Builder.html