Maison  >  Article  >  Java  >  Comment charger une clé privée RSA à partir d'un fichier en Java pour la signature SAMLResponse ?

Comment charger une clé privée RSA à partir d'un fichier en Java pour la signature SAMLResponse ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-25 07:29:28871parcourir

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

Charger la clé privée RSA à partir d'un fichier en Java

Pour signer votre SAMLResponse, vous devez charger votre clé privée RSA à partir d'un fichier. Voici comment procéder :

  1. Importer le fichier de clé privée :
<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. Convertir la clé privée au format PKCS8 :

Vous devez convertir votre clé privée du format PEM au format PKCS8 à l'aide de la commande OpenSSL :

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

Cela générera un nouveau fichier pkcs8_key dans Format PKCS8 DER.

  1. Chargez la clé privée :
<code class="java">KeySpec ks = new PKCS8EncodedKeySpec(privKeyBytes);
RSAPrivateKey privKey = (RSAPrivateKey) keyFactory.generatePrivate(ks);</code>

Vous avez maintenant chargé avec succès votre clé privée RSA au format PKCS8 et pouvez utilisez-le pour signer votre SAMLResponse.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn