Класс PEM
- Все реализуемые интерфейсы:
BinaryEncodablePREVIEW
public final class PEM extends Object implements BinaryEncodablePREVIEW
PEM — предварительная версия API платформы Java. BinaryEncodableПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, представляющий структуру Privacy-Enhanced Mail (PEM), состоящую из идентификатора типа, содержимого в кодировке Base64 и необязательных начальных данных, предшествующих заголовку PEM. type — это метка в заголовке PEM, следующая за ключевым словом BEGIN и не включающая ограничители инкапсуляции. К распространённым значениям type относятся, помимо прочего: CERTIFICATE, CERTIFICATE REQUEST, ATTRIBUTE CERTIFICATE, X509 CRL, PKCS7, CMS, PRIVATE KEY, ENCRYPTED PRIVATE KEY и PUBLIC KEY.
Экземпляры этого класса возвращаются методами PEMDecoder.decode(String)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ и PEMDecoder.decode(InputStream)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, когда содержимое невозможно представить в виде криптографического объекта. Чтобы явно получить экземпляр PEM с доступом к начальным данным, используйте PEMDecoder.decode(String, Class)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ или PEMDecoder.decode(InputStream, Class)ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ, указав PEM.class в качестве типа.
Объект PEM можно преобразовать в текстовое представление, вызвав toString() или используя PEMEncoderПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ.
Чтобы создать экземпляр PEM, type и base64Content должны быть не-null. Для конструкторов, принимающих leadingData, оно также должно быть не-null.
Проверка соответствия type RFC 7468 или устаревшим форматам, а также соответствия содержимого объявленному type не выполняется.
- Начиная с версии:
- 26
- Внешние спецификации
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
PEM |
Создаёт экземпляр PEM с указанным типом и массивом байтов содержимого в кодировке Base64. |
PEM |
Создаёт экземпляр PEM с указанным типом, содержимым в кодировке Base64 и начальными данными в виде массивов байтов. |
PEM |
Создаёт экземпляр PEM с указанным типом и строкой содержимого в кодировке Base64. |
PEM |
Создаёт экземпляр PEM с указанными типом, строкой содержимого в кодировке Base64 и массивом байтов начальных данных. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
byte[] |
content() |
Возвращает содержимое в кодировке Base64. |
byte[] |
decode() |
Возвращает декодированное из Base64 содержимое в виде массива байтов, используя Base64.getMimeDecoder(). |
byte[] |
leadingData() |
Возвращает начальные данные, предшествовавшие заголовку PEM во входных декодированных данных. |
String |
toString() |
Возвращает строковое представление этого объекта в формате PEM, используя type для строк заголовка и завершающей строки, а content — для тела в кодировке Base64. |
String |
type() |
Возвращает идентификатор типа PEM. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли другой объект этому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии. Финализация объявлена устаревшей и может быть удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения для этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного времени. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного времени. |
Подробное описание конструкторов
PEM
public PEM(String type, String base64Content, byte[] leadingData)
PEM с указанными типом, строкой содержимого в кодировке Base64 и массивом байтов начальных данных.- Параметры:
-
type— идентификатор типа PEM; не должен содержать синтаксис инкапсуляции PEM -
base64Content— содержимое в кодировке Base64 без заголовка и завершающей строки PEM -
leadingData— данные, предшествующие заголовку PEM. Этот массив копируется для защиты от изменений. - Исключения:
-
IllegalArgumentException— еслиtypeсодержит синтаксис инкапсуляции PEM -
NullPointerException— если какой-либо параметр равенnull
PEM
public PEM(String type, String base64Content)
PEM с указанными типом и строкой содержимого в кодировке Base64.- Параметры:
-
type— идентификатор типа PEM; не должен содержать синтаксис инкапсуляции PEM -
base64Content— содержимое в кодировке Base64 без заголовка и завершающей строки PEM - Исключения:
-
IllegalArgumentException— еслиtypeсодержит синтаксис инкапсуляции PEM -
NullPointerException— если какой-либо параметр равенnull
PEM
public PEM(String type, byte[] base64Content, byte[] leadingData)
PEM с указанными типом, содержимым в кодировке Base64 и начальными данными в виде массивов байтов.- Параметры:
-
type— идентификатор типа PEM; не должен содержать синтаксис инкапсуляции PEM -
base64Content— содержимое в кодировке Base64 без заголовка и завершающей строки PEM. Этот массив копируется для защиты от изменений. -
leadingData— данные, предшествующие заголовку PEM. Этот массив копируется для защиты от изменений. - Исключения:
-
IllegalArgumentException— еслиtypeсодержит синтаксис инкапсуляции PEM -
NullPointerException— если какой-либо параметр равенnull - Начиная с версии:
- 27
PEM
public PEM(String type, byte[] base64Content)
PEM с указанными типом и массивом байтов содержимого в кодировке Base64.- Параметры:
-
type— идентификатор типа PEM; не должен содержать синтаксис инкапсуляции PEM -
base64Content— содержимое в кодировке Base64 без заголовка и завершающей строки PEM. Этот массив копируется для защиты от изменений. - Исключения:
-
IllegalArgumentException— еслиtypeсодержит синтаксис инкапсуляции PEM -
NullPointerException— если какой-либо параметр равенnull - Начиная с версии:
- 27
Подробное описание методов
type
public String type()
- Возвращает:
- идентификатор типа PEM
leadingData
public byte[] leadingData()
- Возвращает:
- новый массив байтов, содержащий начальные данные, или
null, если начальные данные отсутствуют
content
public byte[] content()
- Возвращает:
- новый массив байтов, содержащий содержимое в кодировке Base64
- Начиная с версии:
- 27
decode
public byte[] decode()
Base64.getMimeDecoder().- Возвращает:
- новый массив байтов, содержащий декодированное содержимое
- Исключения:
-
IllegalArgumentException— если декодирование не удалось
toString
© 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.
PEMтолько при включённых предварительных функциях.