La différence entre le Type d'Entrée “keyEntry” et “trustedCertEntry” dans un magasin de clés
Je n'ai pas beaucoup de connaissances dans ce domaine, mais j'ai toujours essayé de faire des choses par googler. Là est le problème, je suis confronté à.
Cas 1(Travaux):
J'ai un CA certificat signé et je voudrais l'utiliser dans mon Application Web. J'ai d'abord créé un fichier de clés. Je vois qu'il crée une entrée de type "keyEntry" dans le fichier de clés. Puis-je importer les CA certificat de signature pour le magasin de clés créé.
Voici les étapes:
keytool -genkeypair -keystore keystore.jks
Je vois une entrée dans le fichier de clés de type "keyEntry" d'alias "maclé"
Maintenant, je importer le certificat:
keytool -importcert -alias abc -file cert.crt -keystore keystore.jks
Maintenant, je vois une autre entrée de trype "trustedcertEntry".
Avec ce fichier de clés, je suis en mesure d'accéder à mon application web quand je l'ai transféré.
Cas 2 (ne fonctionne pas):
J'ai créer un fichier de clés à la volée lors de l'importation du certificat.
keytool -importcert -alias abc -file cert.crt -keystore keystore2.jks
Ici je ne vois qu'un type d'écriture qui est "trustedcertEntry"
Avec ce keystore je ne suis pas en mesure d'accéder à mon application web.
Question:
Ce qui est la clé d'entrée de type "keyEntry" et "trustedcertEntry" et pourquoi mon fichier de clés ne fonctionne que lorsque j'ai le type d'entrée "keyEntry"
OriginalL'auteur bluefoggy | 2015-02-16
Vous devez vous connecter pour publier un commentaire.
Ma compréhension de keytool est fragile mais je pense que le truc c'est qu'avec le Cas 2, en omettant les
-genkeypair
, vous n'êtes pas de la génération de la nécessaire clé privée.Dans le Cas 1, les étapes que vous utilisez sont les suivantes: créer un privé paire de clés (clé publique et clé privée), puis importer le certificat dans les certificats pour le fichier de clés. Je suppose que vous avez un autre certificat dans le keystore que de joindre avec la clé privée si c'est possible de trusted cert agit comme le cert ou votre application n'est pas à l'aide d'un joint paire de clés/cert dans le même fichier.
Je peux dire que 'trustedCertEntry " est un certificat qui est approuvé par le fichier de clés. Ceci est essentiel pour permettre aux chaînes de certificat (ex: Root-CA signes Intermédiaires-CA1 qui signerait la Fin Cert1. Sans avoir les deux à la Racine de l'AC et de l'Intermédiaire-CA1 comme trustedCertEntry, le fichier de clés n'a pas confiance en la fin cert). TrustedCertEntry n'ont pas les clés privées associées avec eux, seule la clé publique du certificat contient.
Un keyEntry (je pense!) est une paire clé publique/privée sans le certificat.
Un privateKeyEntry est une paire clé publique/privée avec une CA-signé ou un certificat auto-signé.
OriginalL'auteur duct_tape_coder