Класс AlgorithmParameters
- java.lang.Object
-
- java.security.AlgorithmParameters
public class AlgorithmParameters extends Object
Этот класс используется в качестве непрозрачного представления криптографических параметров.
Объект AlgorithmParameters для управления параметрами конкретного алгоритма может быть получен, вызвав один из фабричных методов getInstance (статические методы, возвращающие экземпляры заданного класса).
После получения объекта AlgorithmParameters он должен быть инициализирован вызовом init, используя соответствующее задание параметров или кодировку параметров.
Явное задание параметров получается из объекта AlgorithmParameters с помощью вызова getParameterSpec, а байтовое кодирование параметров — с помощью вызова getEncoded.
Каждая реализация Java-платформы должна поддерживать следующие стандартные алгоритмы AlgorithmParameters:
AESDESDESedeDiffieHellmanDSA
- Since:
- 1.2
- См. также:
-
AlgorithmParameterSpec,DSAParameterSpec,KeyPairGenerator
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected | AlgorithmParameters(AlgorithmParametersSpi paramSpi,
Provider provider,
String algorithm) | Создаёт объект AlgorithmParameters. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
String | getAlgorithm() | Возвращает имя алгоритма, связанного с этим объектом параметров. |
byte[] | getEncoded() | Возвращает параметры в их первичном формате кодирования. |
byte[] | getEncoded(String format) | Возвращает параметры, закодированные в указанной схеме. |
static AlgorithmParameters | getInstance(String algorithm) | Возвращает объект параметров для указанного алгоритма. |
static AlgorithmParameters | getInstance(String algorithm,
String provider) | Возвращает объект параметров для указанного алгоритма. |
static AlgorithmParameters | getInstance(String algorithm,
Provider provider) | Возвращает объект параметров для указанного алгоритма. |
<T extends AlgorithmParameterSpec> | getParameterSpec(Class<T> paramSpec) | Возвращает (прозрачное) задание этого объекта параметров. |
Provider | getProvider() | Возвращает поставщика этого объекта параметров. |
void | init(byte[] params) | Импортирует указанные параметры и декодирует их в соответствии с первичным форматом декодирования параметров. |
void | init(byte[] params,
String format) | Импортирует параметры из |
void | init(AlgorithmParameterSpec paramSpec) | Инициализирует этот объект параметров, используя параметры, указанные в |
String | toString() | Возвращает отформатированную строку, описывающую параметры. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait Конструкторы
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.preferredSecurityдля определения предпочтительного порядка провайдеров для указанного алгоритма. Это может отличаться от порядка провайдеров, возвращаемого методомSecurity.getProviders(). - Параметры:
-
algorithm- имя запрашиваемого алгоритма. См. раздел AlgorithmParameters в Спецификации Java Security Standard Algorithm Names для получения информации об именах стандартных алгоритмов. - Возвращает:
- новый объект параметров
- Исключения:
-
NoSuchAlgorithmException- если ни одинProviderне поддерживает реализациюAlgorithmParametersSpiдля указанного алгоритма -
NullPointerException- еслиalgorithmявляетсяnull - См. также:
Provider
getInstance
public static AlgorithmParameters getInstance(String algorithm,
String provider)
throws NoSuchAlgorithmException,
NoSuchProviderException Возвращает объект параметров для указанного алгоритма.
Возвращается новый объект AlgorithmParameters, инкапсулирующий реализацию AlgorithmParametersSpi от указанного провайдера. Указанный провайдер должен быть зарегистрирован в списке провайдеров безопасности.
Обратите внимание, что список зарегистрированных провайдеров можно получить с помощью метода Security.getProviders().
Возвращаемый объект параметров должен быть инициализирован вызовом init, используя соответствующее описание параметров или кодирование параметров.
- Параметры:
-
algorithm- имя запрашиваемого алгоритма. См. раздел AlgorithmParameters в Спецификации Java Security Standard Algorithm Names для получения информации об именах стандартных алгоритмов. -
provider- имя провайдера. - Возвращает:
- новый объект параметров
- Исключения:
-
IllegalArgumentException- если имя провайдера являетсяnullили пустым -
NoSuchAlgorithmException- если реализацияAlgorithmParametersSpiдля указанного алгоритма недоступна от указанного провайдера -
NoSuchProviderException- если указанный провайдер не зарегистрирован в списке провайдеров безопасности -
NullPointerException- еслиalgorithmявляетсяnull - См. также:
Provider
getInstance
public static AlgorithmParameters getInstance(String algorithm,
Provider provider)
throws NoSuchAlgorithmException Возвращает объект параметров для указанного алгоритма.
Возвращается новый объект AlgorithmParameters, инкапсулирующий реализацию AlgorithmParametersSpi из указанного объекта Provider. Обратите внимание, что указанный объект Provider не обязательно должен быть зарегистрирован в списке провайдеров.
Возвращаемый объект параметров должен быть инициализирован вызовом init, используя соответствующее описание параметров или кодирование параметров.
- Параметры:
-
algorithm- имя запрашиваемого алгоритма. См. раздел AlgorithmParameters в Спецификации Java Security Standard Algorithm Names для получения информации об именах стандартных алгоритмов. -
provider- имя провайдера. - Возвращает:
- новый объект параметров
- Исключения:
-
IllegalArgumentException- если провайдер являетсяnull -
NoSuchAlgorithmException- если реализацияAlgorithmParameterGeneratorSpiдля указанного алгоритма недоступна от указанного объектаProvider -
NullPointerException- еслиalgorithmявляетсяnull - C момента:
- 1.4
- См. также:
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()
Возвращает отформатированную строку, описывающую параметры.
© 1993, 2020, 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/11/docs/api/java.base/java/security/AlgorithmParameters.html