ホームページ >Java >&#&チュートリアル >SAMLResponse 署名のために Java のファイルから RSA 秘密キーをロードするにはどうすればよいですか?
Java でファイルから RSA 秘密キーをロードする
SAMLResponse に署名するには、ファイルから RSA 秘密キーをロードする必要があります。その方法は次のとおりです:
<code class="java">File privKeyFile = new File("mykey.pem"); byte[] privKeyBytes = new byte[(int) privKeyFile.length()]; BufferedInputStream bis = new BufferedInputStream(new FileInputStream(privKeyFile)); bis.read(privKeyBytes); bis.close();</code>
OpenSSL コマンドを使用して、秘密キーを PEM から PKCS8 形式に変換する必要があります:
openssl pkcs8 -topk8 -inform PEM -outform DER -in mykey.pem -nocrypt > pkcs8_key
これにより、新しいファイル pkcs8_key が生成されますPKCS8 DER 形式。
<code class="java">KeySpec ks = new PKCS8EncodedKeySpec(privKeyBytes); RSAPrivateKey privKey = (RSAPrivateKey) keyFactory.generatePrivate(ks);</code>
これで、RSA 秘密キーが PKCS8 形式で正常にロードされました。これを使用して SAMLResponse に署名します。
以上がSAMLResponse 署名のために Java のファイルから RSA 秘密キーをロードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。