My question is, is it still a norm today to use v1 certs for root or self-signed certificates?
No, no and no. For certificates issued within last 20 years only Version 3 X.509 certificates shall be used.
Is there any other place where usage of version 1 still recommended?
no, there is no such unless you need to support software or hardware that doesn't support V3 certificates (I doubt you can find one that is still in active use and cannot be replaced).
V1 certificates are still supported by cryptography libraries, but they are hard to use, because certificate behavior may vary on different platforms. For example, it is impossible to determine the subject type of the certificate -- is it CA or end-entity? Is it allowed to sign other certificates? There is no such information in V1 certificates. And different platforms may treat them very differently. With V3 it is clear: if Basic Constraints
extension is presented and isCA
bit is set to True
-- it is CA certificate, otherwise it is end entity.
In addition, V1 make chaining engine less reliable, because only name match can be used when binding certificates in the chain, thus much more chains can be constructed and more chances that inproper chain is selected. V3 allows both, KeyMatch
and ExactMatch
which produce less chains (ExactMatch
produces only one chain in all cases) and is less error-prone.
In other words, V1 certificates are museum history. You may know key properties and features provided by V1 certificates, but use only V3.