Класс EncryptedPrivateKeyInfo
public class EncryptedPrivateKeyInfo extends Object
EncryptedPrivateKeyInfo, как определено в PKCS #8. Его определение ASN.1 таково:
EncryptedPrivateKeyInfo ::= SEQUENCE {
encryptionAlgorithm AlgorithmIdentifier,
encryptedData OCTET STRING }
AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm OPTIONAL }
- Since:
- 1.4
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
EncryptedPrivateKeyInfo |
Конструирует (т.е., парсит) EncryptedPrivateKeyInfo по его кодировке ASN.1. |
EncryptedPrivateKeyInfo |
Конструирует EncryptedPrivateKeyInfo по имени алгоритма шифрования и зашифрованным данным. |
EncryptedPrivateKeyInfo |
Конструирует EncryptedPrivateKeyInfo по параметрам алгоритма шифрования и зашифрованным данным. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
String |
getAlgName() |
Возвращает алгоритм шифрования. |
AlgorithmParameters |
getAlgParameters() |
Возвращает параметры алгоритма, используемые алгоритмом шифрования. |
byte[] |
getEncoded() |
Возвращает ASN.1 кодировку этого объекта. |
byte[] |
getEncryptedData() |
Возвращает зашифрованные данные. |
PKCS8EncodedKeySpec |
getKeySpec |
Извлекает объект PKCS8EncodedKeySpec из зашифрованных данных и возвращает его. |
PKCS8EncodedKeySpec |
getKeySpec |
Извлекает объект PKCS8EncodedKeySpec из зашифрованных данных и возвращает его. |
PKCS8EncodedKeySpec |
getKeySpec |
Извлекает объект PKCS8EncodedKeySpec из зашифрованных данных и возвращает его. |
PKCS8EncodedKeySpec |
getKeySpec |
Извлекает объект PKCS8EncodedKeySpec из зашифрованных данных и возвращает его. |
Подробное описание конструкторов
EncryptedPrivateKeyInfo
public EncryptedPrivateKeyInfo(byte[] encoded) throws IOException
EncryptedPrivateKeyInfo по его кодировке ASN.1.- Параметры:
-
encoded- кодировка ASN.1 этого объекта. Содержимое массива копируется для защиты от последующих изменений. - Исключения:
-
NullPointerException- если кодировкаencodedявляетсяnull. -
IOException- если произошла ошибка при разборе кодировки ASN.1.
EncryptedPrivateKeyInfo
public EncryptedPrivateKeyInfo(String algName, byte[] encryptedData) throws NoSuchAlgorithmException
EncryptedPrivateKeyInfo по имени алгоритма шифрования и зашифрованным данным. Примечание: Этот конструктор будет использовать null в качестве значения параметров алгоритма. Если параметры алгоритма шифрования имеют значение, отличное от null, следует использовать другой конструктор, например, EncryptedPrivateKeyInfo(AlgorithmParameters, byte[]).
- Параметры:
-
algName- имя алгоритма шифрования. Смотрите документ Стандартные имена алгоритмов Java Security для получения информации о стандартных именах алгоритмов шифрования. -
encryptedData- зашифрованные данные. СодержимоеencryptedDataкопируется для защиты от последующих изменений при создании этого объекта. - Исключения:
-
NullPointerException- еслиalgNameилиencryptedDataявляетсяnull. -
IllegalArgumentException- еслиencryptedDataпустое, т.е. имеет длину 0. -
NoSuchAlgorithmException- если указанное имя algName не поддерживается. - Внешние спецификации
EncryptedPrivateKeyInfo
public EncryptedPrivateKeyInfo(AlgorithmParameters algParams, byte[] encryptedData) throws NoSuchAlgorithmException
EncryptedPrivateKeyInfo по параметрам алгоритма шифрования и зашифрованным данным.- Параметры:
-
algParams- параметры алгоритма шифрования.algParams.getEncoded()должен возвращать байты кодировки ASN.1 поляparametersкомпонентаAlgorithmIdentifierтипаEncryptedPrivateKeyInfo. -
encryptedData- зашифрованные данные. СодержимоеencryptedDataкопируется для защиты от последующих изменений при создании этого объекта. - Исключения:
-
NullPointerException- еслиalgParamsилиencryptedDataявляетсяnull. -
IllegalArgumentException- еслиencryptedDataпустое, т.е. имеет длину 0. -
NoSuchAlgorithmException- если указанное имя algName для указанного параметраalgParamsне поддерживается.
Подробное описание методов
getAlgName
public String getAlgName()
Примечание: Возвращается стандартное имя вместо указанного в конструкторе, когда такая замена доступна. Смотрите документ Стандартные имена алгоритмов Java Security для получения информации о стандартных именах алгоритмов шифрования.
- Возвращает:
- имя алгоритма шифрования.
- Внешние спецификации
getAlgParameters
public AlgorithmParameters getAlgParameters()
- Возвращает:
- параметры алгоритма.
getEncryptedData
public byte[] getEncryptedData()
- Возвращает:
- зашифрованные данные. Возвращает новый массив каждый раз при вызове этого метода.
getKeySpec
public PKCS8EncodedKeySpec getKeySpec(Cipher cipher) throws InvalidKeySpecException
Примечание: Для успешного извлечения объекта PKCS8EncodedKeySpec,
cipher необходимо инициализировать либо в режиме Cipher.DECRYPT_MODE, либо Cipher.UNWRAP_MODE, используя тот же ключ и параметры, что и при генерации зашифрованных данных.- Параметры:
-
cipher- инициализированный объектCipher, который будет использоваться для расшифровки зашифрованных данных. - Возвращает:
- объект PKCS8EncodedKeySpec.
- Исключения:
-
NullPointerException- еслиcipherявляетсяnull. -
InvalidKeySpecException- если заданный шифр не подходит для зашифрованных данных или зашифрованные данные повреждены и не могут быть расшифрованы.
getKeySpec
public PKCS8EncodedKeySpec getKeySpec(Key decryptKey) throws NoSuchAlgorithmException, InvalidKeyException
- Параметры:
-
decryptKey- ключ, используемый для расшифровки зашифрованных данных. - Возвращает:
- объект PKCS8EncodedKeySpec.
- Исключения:
-
NullPointerException- еслиdecryptKeyявляетсяnull. -
NoSuchAlgorithmException- если не удалось найти подходящий шифр для расшифровки зашифрованных данных. -
InvalidKeyException- еслиdecryptKeyне может быть использован для расшифровки зашифрованных данных или результат расшифровки не является допустимым PKCS8KeySpec. - С тех пор:
- 1.5
getKeySpec
public PKCS8EncodedKeySpec getKeySpec(Key decryptKey, String providerName) throws NoSuchProviderException, NoSuchAlgorithmException, InvalidKeyException
- Параметры:
-
decryptKey- ключ, используемый для расшифровки зашифрованных данных. -
providerName- имя провайдера, чья реализация шифра будет использоваться. - Возвращает:
- объект PKCS8EncodedKeySpec.
- Исключения:
-
NullPointerException- еслиdecryptKeyилиproviderNameявляетсяnull. -
NoSuchProviderException- если не зарегистрирован провайдерproviderName. -
NoSuchAlgorithmException- если не удалось найти подходящий шифр для расшифровки зашифрованных данных. -
InvalidKeyException- еслиdecryptKeyне может быть использован для расшифровки зашифрованных данных или результат расшифровки не является допустимым PKCS8KeySpec. - С тех пор:
- 1.5
getKeySpec
public PKCS8EncodedKeySpec getKeySpec(Key decryptKey, Provider provider) throws NoSuchAlgorithmException, InvalidKeyException
- Параметры:
-
decryptKey- ключ, используемый для расшифровки зашифрованных данных. -
provider- имя провайдера, чья реализация шифра будет использоваться. - Возвращает:
- объект PKCS8EncodedKeySpec.
- Исключения:
-
NullPointerException- еслиdecryptKeyилиproviderявляетсяnull. -
NoSuchAlgorithmException- если не удалось найти подходящий шифр для расшифровки зашифрованных данных вprovider. -
InvalidKeyException- еслиdecryptKeyне может быть использован для расшифровки зашифрованных данных или результат расшифровки не является допустимым PKCS8KeySpec. - С тех пор:
- 1.5
getEncoded
public byte[] getEncoded() throws IOException
- Возвращает:
- кодировка ASN.1. Возвращает новый массив каждый раз при вызове этого метода.
- Исключения:
-
IOException- если произошла ошибка при построении кодировки ASN.1.
© 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/javax/crypto/EncryptedPrivateKeyInfo.html