Verzije X.509 certifikata

Najstarija verzija, verzija 1, potječe iz 1988. godine, kada je tek definiran X.500 standard. U proširenju 1993. godine, dodana su dva nova polja, rezultirajući formatom verzije 2 (v2). Verzija 2 uvela je koncept jedinstvenih identifikatora subjekta i izdavača da bi se dozvolila mogućnost promjene imena subjekta ili izdavača tijekom vremena. Većina dokumenata predlaže da se imena subjekta i izdavača ne mijenjaju s vremenom, te da se ne koriste jedinstveni identifikatori. Verzija 2 nije u širokoj upotrebi. Najnovija i najčešće upotrebljavana verzija je verzija 3. Ova verzija podržava proširenja. Proširenja su zamišljena tako da svatko može definirati proširenje i uključiti ga u certfikat. Neka danas česta proširenja su upotreba ključa (KeyUsage) koja dozvoljava upotrebu u ključa za određene svrhe, npr. samo za potpisivanje dokumenata, alternativno ime (AlternativeNames) koje dozvoljava da više identiteta bude povezano s istim javnim kjučem, dodatni podaci o identifikaciji vlasnika certifikata, podaci o atributima ključa, ograničenja u stazi certifikacije, ... Proširenja se mogu označiti kao kritična (critical) kako bi se indiciralo da se proširenja moraju provjeriti. Npr. ako certifikats ima upotrebu ključa označenu kao critical, a postavljenu na keyCertSign, a certifikat se prezentira tijekom SSL komunikacije, certifikat treba odbiti, jer proširenja na certifikatu indiciraju da se privatni ključ smije koristiti samo za potpisivanje certifikata, i ništa drugo.