首頁 >Java >java教程 >如何從 Java 中的檔案載入 RSA 私鑰以進行 SAMLResponse 簽章?

如何從 Java 中的檔案載入 RSA 私鑰以進行 SAMLResponse 簽章?

Barbara Streisand
Barbara Streisand原創
2024-10-25 07:29:28961瀏覽

How do I Load an RSA Private Key from a File in Java for SAMLResponse Signing?

從 Java 中的檔案載入 RSA 私鑰

為了簽署 SAMLResponse,您需要從檔案載入 RSA 私鑰。操作方法如下:

  1. 匯入私鑰檔案:
<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>
  1. 轉換私鑰轉換為

您需要使用OpenSSL 指令將私鑰從PEM 轉換為PKCS8 格式:

openssl pkcs8 -topk8 -inform PEM -outform DER -in mykey.pem -nocrypt > pkcs8_key

這將產生一個新檔案pkcs8_key PKCSCS8 DER 格式。

  1. 載入私鑰:
<code class="java">KeySpec ks = new PKCS8EncodedKeySpec(privKeyBytes);
RSAPrivateKey privKey = (RSAPrivateKey) keyFactory.generatePrivate(ks);</code>

現在您已成功載入PKCS8 格式的RSA 私鑰,可以用它來簽署您的SAMLResponse。

以上是如何從 Java 中的檔案載入 RSA 私鑰以進行 SAMLResponse 簽章?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn