web-dev-qa-db-fra.com

Données personnalisées dans le certificat SSL

Je cherche un moyen d'ajouter des données personnalisées supplémentaires dans un certificat SSL Server délibéré par une ca. standard Est-ce possible?

Je souhaite obtenir un certificat SSL Server émis par une CA standard, de sorte que ce sera accepté par les navigateurs standard. Cependant, j'ai une petite quantité de données supplémentaires qui seront utilisées par mon application privée que j'aimerais également avoir incluse dans le certificat. Je cherche un moyen de l'inclure dans le certificat, d'une manière que les navigateurs standard ignorent et (de manière critique) que l'autorité de caresse ne se couche pas.

Y a-t-il un champ ou un endroit où je peux stocker des données arbitraires, sans qu'il soit dépouillé par des CAS publics?

Peut-être la partie otherName partie de subjectAltName: sera-t-il préservé par n'importe quel ca? Devrais-je regarder une extension X509 personnalisée?

L'exigence critique est que, pour que cela ne soit ni dépouillé ni modifié par la ca. J'ai besoin de là pour exister au moins une CA qui fait confiance aux grands navigateurs et ne pas dépasser ces données personnalisées. Je sais que certains champs de la demande de signature de certificat (RSE) sont filtrés ou dépouillés par CAS, mais je n'ai pas été en mesure de trouver une documentation sur laquelle (le cas échéant) autoriser des données arbitraires et sera préservée de la RSE dans la Final Cert.


Cette question est liée, mais pas la même chose: il n'a pas l'obligation que le certificat soit signé par une CA qui soit fiable par les navigateurs modernes. En outre, j'ai trouvé beaucoup d'informations sur la manière d'ajouter des extensions personnalisées à une RSE X509, mais ce n'est pas ce que je cherche; Cela ne me dit pas quelle extension fourrer les données dans (quelle extension ne sera pas dépouillée par le major CAS). Je sais Comment créer une CSR contenant des données personnalisées , mais je ne sais pas quels champs de la RSE seront copiés non modifiés dans le certificat de serveur final. Je ne cherche pas non plus une solution qui implique la gestion de mon propre CA: je souhaite que le serveur CERT soit accepté par les navigateurs standard. Cette question a également l'air similaire, mais je ne vois pas une réponse claire là-bas.

7
D.W.

Eh bien, je contacterais CAS pour demander si elles le feraient. Ils pourraient le faire et sont peut-être disposés à le faire si vous payez assez. Tous les champs non critiques que Broswers ne comprennent pas seront ignorés et pouvaient être ajoutés par la ca. La question est de savoir si elles le feraient et que cela ne peut être répondu que par eux.

Certains CPs mentionnent même la possibilité d'ajouter des extensions non critiques (et des thos peuvent être privés) et ne pas ajouter, bien sûr, des extensions privées critiques ( https://www.digicert.com/docs/cps/digicert_cp_v409-1 -June-2015-SIGNÉ.PDF - 7.1.2). C'est juste une question de vouloir le faire.

L'émetteur CAS utilisera des extensions de certificat conformément aux normes de l'industrie applicables, y compris la RFC 3280/5280. L'émetteur CAS ne doit pas émettre de certificats avec une extension privée critique.

Mais probablement la bonne façon de faire ce que vous voulez utiliser des certificats d'attribut. Vous pouvez avoir un certificat d'attribut que vous contrôlez et émettez des AC sur votre SSL CERT lui donnant les attributs supplémentaires dont vous avez besoin et que vous comprenez seulement. TLS prend en charge la fourniture de ces AC à votre client ou que vous pourriez envoyer ces derniers à l'utilisation du tunnel SSL déjà créé, et ceux-ci pourraient être interprétés par le client au besoin.

6
CristianTM