Класс 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 Standard Algorithm Names для получения информации о стандартных именах алгоритмов шифрования. -
encryptedData- зашифрованные данные. СодержимоеencrypedDataкопируется для защиты от последующих изменений при построении этого объекта. - Исключения:
-
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компонентаAlgorithmIdentiferтипаEncryptedPrivateKeyInfo. -
encryptedData- зашифрованные данные. СодержимоеencrypedDataкопируется для предотвращения последующих изменений при построении этого объекта. - Исключения:
-
NullPointerException- еслиalgParamsилиencryptedDataравны null. -
IllegalArgumentException- еслиencryptedDataпусто, т.е. имеет длину 0. -
NoSuchAlgorithmException- если указанное имя algName для указанного параметраalgParamsне поддерживается.
Подробное описание методов
getAlgName
public String getAlgName()
Примечание: Возвращается стандартное имя вместо указанного в конструкторе, когда такая замена доступна. Обратитесь к документу Java Security Standard Algorithm Names для получения информации о стандартных именах алгоритмов шифрования.
- Возвращает:
- имя алгоритма шифрования.
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- инициализированный объект шифра, который будет использоваться для расшифровки зашифрованных данных. - Возвращает:
- объект PKCS8EncodedKeySpec.
- Исключения:
-
NullPointerException- еслиcipherравен null. -
InvalidKeySpecException- если заданный шифр непригоден для зашифрованных данных или зашифрованные данные повреждены и не могут быть расшифрованы.
getKeySpec
public PKCS8EncodedKeySpec getKeySpec(Key decryptKey) throws NoSuchAlgorithmException, InvalidKeyException
- Параметры:
-
decryptKey- ключ, используемый для расшифровки зашифрованных данных. - Возвращает:
- объект PKCS8EncodedKeySpec.
- Исключения:
-
NullPointerException- еслиdecryptKeyравен null. -
NoSuchAlgorithmException- если невозможно найти подходящий шифр для расшифровки зашифрованных данных. -
InvalidKeyException- если заданный шифр не может быть использован для расшифровки зашифрованных данных или результат расшифровки не является допустимым PKCS8KeySpec. - С:
- 1.5
getKeySpec
public PKCS8EncodedKeySpec getKeySpec(Key decryptKey, String providerName) throws NoSuchProviderException, NoSuchAlgorithmException, InvalidKeyException
- Параметры:
-
decryptKey- ключ, используемый для расшифровки зашифрованных данных. -
providerName- имя провайдера, чья реализация Cipher будет использоваться. - Возвращает:
- объект PKCS8EncodedKeySpec.
- Исключения:
-
NullPointerException- еслиdecryptKeyилиproviderNameравны null. -
NoSuchProviderException- если провайдерproviderNameне зарегистрирован. -
NoSuchAlgorithmException- если невозможно найти подходящий шифр для расшифровки зашифрованных данных. -
InvalidKeyException- если заданный шифр не может быть использован для расшифровки зашифрованных данных или результат расшифровки не является допустимым PKCS8KeySpec. - С:
- 1.5
getKeySpec
public PKCS8EncodedKeySpec getKeySpec(Key decryptKey, Provider provider) throws NoSuchAlgorithmException, InvalidKeyException
- Параметры:
-
decryptKey- ключ, используемый для расшифровки зашифрованных данных. -
provider- имя провайдера, чья реализация Cipher будет использоваться. - Возвращает:
- объект PKCS8EncodedKeySpec.
- Исключения:
-
NullPointerException- еслиdecryptKeyилиproviderравны null. -
NoSuchAlgorithmException- если невозможно найти подходящий шифр для расшифровки зашифрованных данных вprovider. -
InvalidKeyException- если заданный шифр не может быть использован для расшифровки зашифрованных данных или результат расшифровки не является допустимым PKCS8KeySpec. - С:
- 1.5
getEncoded
public byte[] getEncoded() throws IOException
- Возвращает:
- кодировка ASN.1. Возвращает новый массив каждый раз при вызове этого метода.
- Исключения:
-
IOException- если произошла ошибка при построении его кодировки ASN.1.
© 1993, 2021, 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/17/docs/api/java.base/javax/crypto/EncryptedPrivateKeyInfo.html