アルゴリズムでKeytoolを使用してキーストレージを作成しようとしています。
SignatureSPI、MessagedigestSPI、KeyPairGeneratorSPIの拡張クラスでカスタムjava.security.providerを作成し、静的にインストールしました。
私が遭遇した問題は、以下を使用してストレージを作成しようとしているときです。
keytool -alias something -genkeypair -keyalg GOST2001KeyPairGenerator -sigalg GOST2001Signature -providerclass ru.test.security.test_provider -storetype pkcs12 -keystore test_keystore
デバッグメッセージとエラーが表示されます:
GOST2001KeyPairGenerator initialize
GOST2001KeyPairGenerator generateKeyPair
GOST2001Signature engineInitSign
keytool error: java.lang.RuntimeException: internal error! unrecognized algorithm name: GOST2001Signature
奇妙なことに、アルゴリズムは実際に実行を開始しますが、その後認識されずに呼び出されます。何が悪いのか見当がつかない。