Невозможно конвертировать хранилище JKS в Oracle Wallet с помощью orapki

Вопрос или проблема

Я создал хранилище jks с помощью keytool, и с помощью этого hранилища у меня есть csr. Этот csr я отправил в Уполномоченный орган по подписи. Уполномоченный орган предоставил доверенные сертификаты (корневой, промежуточный и серверный), которые я импортировал с помощью команды keytool. После импорта я узнал о политике паролей для Oracle Wallet (сочетание буквенно-цифровых, специальных символов и минимальная длина 8), а также о том, что для преобразования jks в wallet пароли должны совпадать. Я изменил пароли для хранилища (storepasswd, keypasswd) с помощью следующих команд:

keytool -keypasswd -alias <Alias> -keystore KEYSTORE.jks
keytool -storepasswd -keystore KEYSTORE.jks

Я сделал это успешно. Я использую инструмент orapki от OHS, чтобы преобразовать хранилище jks в Oracle Wallet с помощью следующей команды:

orapki wallet jks_to_pkcs12 -wallet <WALLET> -keystore KEYSTORE.jks

и я получаю следующее исключение

Исключение: oracle.security.crypto.util.InvalidFormatException: Неверный формат атрибута

Я искал это исключение в интернете, но не нашел хорошей ссылки. Пожалуйста, помогите мне понять, в чем проблема или какую ошибку я допустил?

Сначала вам нужно создать кошелек:

orapki wallet create -wallet oam.oracle.poc.wallet -pwd <pwd> -auto_login

Затем выполните импорт снова:

orapki wallet jks_to_pkcs12 -wallet oam.oracle.poc.wallet -pwd <pwd> -keystore <keystore.jks> -jkspwd <jks_pwd>

Помните, что пароли хранилища и ключевых записей должны совпадать.

Ответ или решение

Проблема, с которой вы столкнулись при конвертации JKS (Java KeyStore) в Oracle Wallet с помощью инструмента orapki, скорее всего связана с неправильными параметрами или последовательностью действий.

Вот пошаговое руководство для успешной конвертации вашего JKS в Oracle Wallet:

  1. Создание хранилища (Wallet):
    Прежде всего, вам необходимо создать Oracle Wallet. Для этого выполните следующую команду:

    orapki wallet create -wallet <путь_к_wallet> -pwd <ваш_пароль> -auto_login

    Убедитесь, что пароль, который вы используете, соответствует требованиям по политике паролей Oracle Wallet (комбинация букв, цифр и специальных символов, минимум 8 символов).

  2. Импорт JKS в Oracle Wallet:
    После создания Wallet вы можете импортировать ваш JKS файл. Убедитесь, что вы используете правильный пароль для JKS и что пароли для хранилища и ключевых записей совпадают.

    Выполните следующую команду:

    orapki wallet jks_to_pkcs12 -wallet <путь_к_wallet> -pwd <ваш_пароль> -keystore <KEYSTORE.jks> -jkspwd <jks_pwd>

    Здесь <jks_pwd> — это пароль, который вы установили для вашего JKS.

  3. Проверка паролей:
    Убедитесь, что пароли для хранилища (Wallet) и для хранилища ключей (KeyStore) действительно совпадают. Это важное условие для успешной конвертации.

  4. Ошибка "Malformed attribute type":
    Ошибка oracle.security.crypto.util.InvalidFormatException: Malformed attribute type может возникать по нескольким причинам:

    • Не правильный формат JKS файла.
    • Неверные пароли, если они не совпадают.
    • Проблемы с совместимостью версий Java и Oracle Wallet.

    Если вы продолжаете сталкиваться с этой ошибкой, попробуйте проверить, правильно ли вы импортировали сертификаты в JKS перед конвертацией.

  5. Дополнительные проверки:

    • Убедитесь, что ваш JKS статус корректен и нет повреждённых записей.
    • Используйте keytool -list -keystore <KEYSTORE.jks> для проверки содержимого вашего JKS и убедитесь, что все сертификаты и ключи отображаются правильно.

Следуя данным шагам, вы сможете успешно конвертировать ваш JKS в Oracle Wallet без ошибок. Если проблема не будет решена, рассмотрите возможность обращения в техническую поддержку Oracle для более детального анализа вашей ситуации.

Оцените материал
Добавить комментарий

Капча загружается...