Maison > Java > javaDidacticiel > le corps du texte

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

DDD
Libérer: 2024-10-25 06:45:28
original
779 Les gens l'ont consulté

How to Load an RSA Private Key from File in Java for SAML Signing?

Comment charger la clé privée RSA à partir d'un fichier

Lors de la tentative de signature d'un message du service consommateur d'assertion SAML 1.1 à l'aide d'une clé privée RSA, l'erreur suivante peut se produire :

<code class="java">java.security.spec.InvalidKeySpecException: java.security.InvalidKeyException: invalid key format</code>
Copier après la connexion

Cette erreur indique que la clé privée n'est pas au bon format. Les clés privées RSA sont généralement stockées au format PEM, mais Java exige qu'elles soient au format PKCS8.

Pour convertir une clé privée RSA du format PEM au format PKCS8, vous pouvez utiliser la commande suivante :

<code class="bash">openssl pkcs8 -topk8 -inform PEM -outform DER -in private_key_file  -nocrypt > pkcs8_key</code>
Copier après la connexion

Une fois que vous avez converti la clé privée au format PKCS8, vous pouvez la charger en Java en utilisant le code suivant :

<code class="java">byte[] privKeyBytes = Files.readAllBytes(Paths.get("pkcs8_key"));
KeySpec ks = new PKCS8EncodedKeySpec(privKeyBytes);
RSAPrivateKey privKey = (RSAPrivateKey) KeyFactory.getInstance("RSA").generatePrivate(ks);</code>
Copier après la connexion

Vous pouvez maintenant utiliser la privKey pour signer le message SAML.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!