For many reasons, it's often convenient for organizations to have their own CA (self-signed or otherwise).

As I understand it, adding the CA certificate to a OS or browser will make it trust the organization's servers - but also open the door for the organization (or any attacker to access to the CA key) to impersonate any server on the internet. This is a problem, especially if the organization has a BYOD policy.

Is there any way to add a CA to popular OSs and browsers (Windows, Mac, Linux, Android, Chrome, Firefox,...) such that it is only trusted to certify some domains? If there isn't, is this because of a technical limitation in the PKI system, or simply because "nobody needed it implemented yet"?

1 Answer 1


Having a CA specific to a domain is possible with X.509, using Name Constraints. It is not well supported, though -- many implementations will ignore the constraints. If it did work well, commercial CA could sell domain-specific subCA certificates to domain owners (that would be a technically much better solution than wildcard certificates).

In many cases where there is an "organizational CA", the users are organization employees, for whom the CA is an emanation from the upper spheres of the organization, i.e. (theoretically and formally) the Voice of God. In these cases, limitation to a single domain would not provide a significant security improvement, which explains the lack of sustained demand for such a feature (and, thus, lack of support from existing browsers).

  • 1
    It's good to know that at at least the format supports it. I don't understand your point about there being no significant security improvement - are you thinking about having the CA installed on company systems? I was thinking something along the lines of BYOD (I've clarified that in the question)
    – watchowl
    Jan 9, 2015 at 13:10
  • 2
    @paj28 Indeed, if the physical system is the organization's property. But it's very relevant with BYOD
    – watchowl
    Jan 9, 2015 at 13:13
  • 2
    @goncalopp - Good point. Seems you are in luck - support is more widespread than Thomas thought. unmitigatedrisk.com/?p=24
    – paj28
    Jan 9, 2015 at 14:02
  • 5
    Do you know if these Named Constraints are user configurable or come "baked" in the certificate? I ask because most websites controlled by the Brazilian government and its branches uses a CA not trusted by any browser, and controlled by the government itself (ICP-Brasil). It would be awesome if we could trust their root certificate only for domains .gov.br but not for anything besides that. Instead of trusting it globally (bad) or - as many of these sites actually instruct their users to do - simply ignoring the warning messages that the browser shows.
    – mgibsonbr
    Dec 3, 2015 at 5:27
  • 4
    "In these cases, limitation to a single domain would not provide a significant security improvement." There would be substantial benefit, actually. For one, as a user, I don't want to trust my corp to MITM my bank connection. For the orgs themselves, they may want to limit exposure by declaring they will only issue certs only for domains which they already control. In the event of a key exposure, then, they've not assumed any liability for external sites, e.g. users' banking info.
    – 10gistic
    Sep 19, 2017 at 19:26

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .