Podcast
Root Causes 225: The Difference Between Relying Parties and Certificate Consumers


Hosted by
Tim Callan
Chief Compliance Officer
Jason Soroko
Fellow
Original broadcast date
May 20, 2022
Despite the similarity in their names, in the world of digital certificates a Relying Party and a Certificate Consumer are very different things. In this episode we define the four main roles in the public trust ecosystem: CA, Subscriber, Certificate Consumer, and Relying Party, with real-world examples.
Podcast Transcript
Lightly edited for flow and brevity.
So we know what a Certificate Authority is, of course. A Certificate Authority is the organization that is trusted within the PKI system to issue certificates and is viewed as the authority over what those certificates are and that if certificates come from that CA, the rest of the system is going to choose to trust it. Is that a fair layman’s definition?
So the CA creates the certificate. The Subscriber wants the certificate, obtains the certificate for use. Sound good so far?
So, the Certificate Consumer is essentially the root store. The Certificate Consumer is the piece of software or service that is going to look at the root, watch the root chain up to the CA and agree that that is an acceptable CA in this scenario. So, the Consumer and the Relying Party are very different. The Consumer is a software manufacturer. In the case of a public certs, the Consumer is a browser manufacturer, and Relying Party is a browser user. Just to put those in to terms we can all understand. In the case of a private CA, the Consumer is the system internally that is going to trust your internal private CA root. That is the Consumer as opposed to the relying party which is the machine or the person who inside of your walled garden is connecting and wants to know that that connection is secure. So, with that, fire away on your questions, Jay.
So, the CA’s responsibility is to, well, I guess it’s really two things - one of which is it has to run a proper CA from a computer science perspective. So things have to be secure, and the crypto has to be current and the expiration dates have to be on time, and things along those lines. So, let’s take that, let’s put that aside because that’s a different point, and we could easily spend 100 podcasts on that topic. But assuming that it’s running itself correctly, then the CA’s responsibility is basically to vouch for the identity of the subscriber. The CA says within whatever the parameters are that we’re identifying the Subscriber – and this would varies by certificate type, but let’s say in the case of public SSL cert, I’m vouching that this organization really controls this domain name and that in the event that you are getting an EV or an OV certificate that there are these sort of other data about the organization that I’m going to share with you, and that information is vouched for by the CA. That’s really the CA’s responsibility in this. The CA’s benefit is that the CA is here to run a PKI. The CA is here to run a secure PKI so that all these other interactions can take place. That’s why the CA exists. So, by doing that correctly, the CA is fundamentally achieving its goal in the world. So, that’s the CA’s responsibility and the CA’s benefit.
The Subscriber’s responsibility is to use the correct types of certs in all of its network-facing machines and operations, essentially. Because in the absence of that, you can get man-in-the-middle attacks and any number of other problems. And so, the Subscriber’s responsibility is to have certificates that are correct, that are current, that are unexpired, and that are following secure methodologies for now, todays and time. And then the Subscriber’s benefit is secure connections with other parties is protecting from all those attacks we just described and therefore, also probably enablement of communication at all. Because there are plenty of circumstances where in the absence of that, just that client-server communication would be deemed unsafe and just wouldn’t occur. So, that’s the subscriber’s benefits and the Subscriber’s responsibility.
And then the last one’s Consumer. The Consumer’s responsibility is to maintain a list of trusted CAs that is accurate and current so that I know, ok, you can connect to this, and you cannot connect to that. So, again, in our public scenario world, that is the browser manufacturer who says, ok, I’m going to let you connect to these certs, and I’m not going to let you connect to those certs. That one’s fairly easy. What’s a little more interesting is in your walled garden, your private scenario, the Consumer is, somewhere someone’s got to maintain a root store. They got to make sure that the roots are in that root store, or your systems aren’t going to work, and they also have to make sure that they don’t have roots in that root store that they don’t want because those are exposure. Those are risks. You shouldn’t have roots there you’re not using. You shouldn’t have roots there that you don’t think you can fully trust. And so, that winds up being the consumer in that particular scenario.

