Spec-Zone.ru › OpenJDK 27

Класс AlgorithmParameters

java.lang.Object
java.security.AlgorithmParameters
public class AlgorithmParameters extends Object
Этот класс используется для представления криптографических параметров в непрозрачной форме.

Объект AlgorithmParameters для управления параметрами определённого алгоритма можно получить, вызвав один из фабричных методов getInstance (статических методов, возвращающих экземпляры заданного класса).

После получения объекта AlgorithmParameters его необходимо инициализировать вызовом init, используя соответствующую спецификацию параметров или кодировку параметров.

Прозрачную спецификацию параметров можно получить из объекта AlgorithmParameters вызовом getParameterSpec, а байтовую кодировку параметров — вызовом getEncoded.

Каждая реализация платформы Java должна поддерживать следующие стандартные алгоритмы AlgorithmParameters. Для алгоритма "EC" реализации должны поддерживать кривые, указанные в скобках. Для алгоритма "RSASSA-PSS" реализации должны поддерживать параметры, указанные в скобках.

  • AES
  • ChaCha20-Poly1305
  • DiffieHellman
  • DSA
  • EC (secp256r1, secp384r1)
  • PBEWithHmacSHA256AndAES_128
  • PBEWithHmacSHA256AndAES_256
  • RSASSA-PSS (функция генерации маски MGF1 и хеш-алгоритмы SHA-256 или SHA-384)
Описание этих алгоритмов приведено в разделе AlgorithmParameters спецификации стандартных имён алгоритмов безопасности Java. См. документацию к выпуску вашей реализации, чтобы узнать, поддерживаются ли какие-либо другие алгоритмы.
Начиная с версии:
1.2
Внешние спецификации
  • Стандартные имена алгоритмов безопасности Java
См. также:
  • AlgorithmParameterSpec
  • DSAParameterSpec
  • KeyPairGenerator

Краткое описание конструкторов

AlgorithmParameters(AlgorithmParametersSpi paramSpi, Provider provider, String algorithm)
Модификатор Конструктор Описание
protected
Создаёт объект AlgorithmParameters.

Краткое описание методов

Модификатор и тип Метод Описание
final String getAlgorithm()
Возвращает имя алгоритма, связанного с этим объектом параметров.
final byte[] getEncoded()
Возвращает параметры в их основном формате кодирования.
final byte[] getEncoded(String format)
Возвращает параметры, закодированные в указанной схеме.
static AlgorithmParameters getInstance(String algorithm)
Возвращает объект параметров для указанного алгоритма.
static AlgorithmParameters getInstance(String algorithm, String provider)
Возвращает объект параметров для указанного алгоритма.
static AlgorithmParameters getInstance(String algorithm, Provider provider)
Возвращает объект параметров для указанного алгоритма.
final <T extends AlgorithmParameterSpec>
T
getParameterSpec(Class<T> paramSpec)
Возвращает (прозрачную) спецификацию этого объекта параметров.
final Provider getProvider()
Возвращает поставщика этого объекта параметров.
final void init(byte[] params)
Импортирует указанные параметры и декодирует их в соответствии с основным форматом декодирования параметров.
final void init(byte[] params, String format)
Импортирует параметры из params и декодирует их в соответствии с указанной схемой декодирования.
final void init(AlgorithmParameterSpec paramSpec)
Инициализирует этот объект параметров, используя параметры, указанные в paramSpec.
final String toString()
Возвращает форматированную строку с описанием параметров.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, является ли другой объект «равным» этому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии.
Финализация признана устаревшей и будет удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного времени.

Подробное описание конструкторов

AlgorithmParameters

protected AlgorithmParameters(AlgorithmParametersSpi paramSpi, Provider provider, String algorithm)
Создаёт объект AlgorithmParameters.
Параметры:
paramSpi — делегат
provider — поставщик
algorithm — алгоритм

Подробное описание методов

getAlgorithm

public final String getAlgorithm()
Возвращает имя алгоритма, связанного с этим объектом параметров.
Возвращает:
имя алгоритма.

getInstance

public static AlgorithmParameters getInstance(String algorithm) throws NoSuchAlgorithmException
Возвращает объект параметров для указанного алгоритма.

Этот метод перебирает список зарегистрированных поставщиков безопасности, начиная с наиболее предпочтительного. Возвращается новый объект AlgorithmParameters, содержащий реализацию AlgorithmParametersSpi от первого поставщика, поддерживающего указанный алгоритм.

Обратите внимание, что список зарегистрированных поставщиков можно получить с помощью метода Security.getProviders().

Возвращённый объект параметров необходимо инициализировать вызовом init, используя соответствующую спецификацию параметров или кодировку параметров.

Примечание по реализации:
Эталонная реализация JDK дополнительно использует свойство jdk.security.provider.preferred Security для определения порядка предпочтения поставщиков для указанного алгоритма. Этот порядок может отличаться от порядка поставщиков, возвращаемых методом Security.getProviders().
Параметры:
algorithm — имя запрашиваемого алгоритма. Сведения о стандартных именах алгоритмов см. в разделе AlgorithmParameters спецификации стандартных имён алгоритмов безопасности Java.
Возвращает:
новый объект параметров
Исключения:
NoSuchAlgorithmException — если ни один Provider не поддерживает реализацию AlgorithmParametersSpi для указанного алгоритма
NullPointerException — если algorithm равен null
Внешние спецификации
  • Стандартные имена алгоритмов безопасности Java
См. также:
  • Provider

getInstance

public static AlgorithmParameters getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException
Возвращает объект параметров для указанного алгоритма.

Возвращается новый объект AlgorithmParameters, содержащий реализацию AlgorithmParametersSpi от указанного поставщика. Указанный поставщик должен быть зарегистрирован в списке поставщиков безопасности.

Обратите внимание, что список зарегистрированных поставщиков можно получить с помощью метода Security.getProviders().

Возвращённый объект параметров необходимо инициализировать вызовом init, используя соответствующую спецификацию параметров или кодировку параметров.

Параметры:
algorithm — имя запрашиваемого алгоритма. Сведения о стандартных именах алгоритмов см. в разделе AlgorithmParameters спецификации стандартных имён алгоритмов безопасности Java.
provider — имя поставщика.
Возвращает:
новый объект параметров
Исключения:
IllegalArgumentException — если имя поставщика равно null или является пустым
NoSuchAlgorithmException — если указанный поставщик не предоставляет реализацию AlgorithmParametersSpi для указанного алгоритма
NoSuchProviderException — если указанный поставщик не зарегистрирован в списке поставщиков безопасности
NullPointerException — если algorithm равен null
Внешние спецификации
  • Стандартные имена алгоритмов безопасности Java
См. также:
  • Provider

getInstance

public static AlgorithmParameters getInstance(String algorithm, Provider provider) throws NoSuchAlgorithmException
Возвращает объект параметров для указанного алгоритма.

Возвращается новый объект AlgorithmParameters, содержащий реализацию AlgorithmParametersSpi от указанного поставщика. Обратите внимание, что указанный поставщик не обязан быть зарегистрирован в списке поставщиков.

Возвращённый объект параметров необходимо инициализировать вызовом init, используя соответствующую спецификацию параметров или кодировку параметров.

Параметры:
algorithm — имя запрашиваемого алгоритма. Сведения о стандартных именах алгоритмов см. в разделе AlgorithmParameters спецификации стандартных имён алгоритмов безопасности Java.
provider — имя поставщика.
Возвращает:
новый объект параметров
Исключения:
IllegalArgumentException — если поставщик равен null
NoSuchAlgorithmException — если указанный объект Provider не предоставляет реализацию AlgorithmParameterGeneratorSpi для указанного алгоритма
NullPointerException — если algorithm равен null
Начиная с версии:
1.4
Внешние спецификации
  • Стандартные имена алгоритмов безопасности Java
См. также:
  • Provider

getProvider

public final Provider getProvider()
Возвращает поставщика этого объекта параметров.
Возвращает:
поставщика этого объекта параметров

init

public final void init(AlgorithmParameterSpec paramSpec) throws InvalidParameterSpecException
Инициализирует этот объект параметров, используя параметры, указанные в paramSpec.
Параметры:
paramSpec — спецификация параметров.
Исключения:
InvalidParameterSpecException — если указанная спецификация параметров не подходит для инициализации этого объекта параметров или если этот объект параметров уже был инициализирован.

init

public final void init(byte[] params) throws IOException
Импортирует указанные параметры и декодирует их в соответствии с основным форматом декодирования параметров. Основным форматом декодирования параметров является ASN.1, если для параметров этого типа существует спецификация ASN.1.
Параметры:
params — закодированные параметры.
Исключения:
IOException — при ошибках декодирования или если этот объект параметров уже был инициализирован.

init

public final void init(byte[] params, String format) throws IOException
Импортирует параметры из params и декодирует их в соответствии с указанной схемой декодирования. Если format равен null, используется основной формат декодирования параметров. Основным форматом декодирования является ASN.1, если для этих параметров существует спецификация ASN.1.
Параметры:
params — закодированные параметры.
format — имя схемы декодирования.
Исключения:
IOException — при ошибках декодирования или если этот объект параметров уже был инициализирован.

getParameterSpec

public final <T extends AlgorithmParameterSpec> T getParameterSpec(Class<T> paramSpec) throws InvalidParameterSpecException
Возвращает (прозрачную) спецификацию этого объекта параметров. paramSpec задаёт класс спецификации, в котором должны быть возвращены параметры. Например, это может быть DSAParameterSpec.class, указывающий, что параметры должны быть возвращены в экземпляре класса DSAParameterSpec.
Параметры типа:
T — тип возвращаемой спецификации параметров
Параметры:
paramSpec — класс спецификации, в котором должны быть возвращены параметры.
Возвращает:
спецификацию параметров.
Исключения:
InvalidParameterSpecException — если запрошенная спецификация параметров не подходит для этого объекта параметров или если этот объект параметров не был инициализирован.

getEncoded

public final byte[] getEncoded() throws IOException
Возвращает параметры в их основном формате кодирования. Основным форматом кодирования параметров является ASN.1, если для параметров этого типа существует спецификация ASN.1.
Возвращает:
параметры, закодированные с использованием основного формата кодирования.
Исключения:
IOException — при ошибках кодирования или если этот объект параметров не был инициализирован.

getEncoded

public final byte[] getEncoded(String format) throws IOException
Возвращает параметры, закодированные в указанной схеме. Если format равен null, используется основной формат кодирования параметров. Основным форматом кодирования является ASN.1, если для этих параметров существует спецификация ASN.1.
Параметры:
format — имя формата кодирования.
Возвращает:
параметры, закодированные с использованием указанной схемы кодирования.
Исключения:
IOException — при ошибках кодирования или если этот объект параметров не был инициализирован.

toString

public final String toString()
Возвращает форматированную строку с описанием параметров.
Переопределяет:
toString в классе Object
Возвращает:
форматированную строку с описанием параметров или null, если этот объект параметров не был инициализирован.

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры основных понятий, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API