我有一个系统,其中X509证书可以有许多“模式”,其中模式是证书主题中必需/可选的确切OID的集合。验证这些证书的应用程序需要知道给定证书使用了什么模式(以及该模式的哪个版本)。
例如,模式A需要CN,O,OU,模式B需要CN,UID,O,C,ST。
我正在寻找一种标准方法来对证书中的模式(+版本)进行编码,以便接收应用程序可以从证书中分辨出如何解析它。解决方案:
同样,我可以使用#1进行此工作,或者可以使用#2进行类似的黑客攻击,但我真正想要的是实现此目标的标准非黑客方式。
答案 0 :(得分:0)
我假设你会关心使用什么模式。这意味着你可能在DN中确切地拥有这些字段 - 并且它们也构成了CA签署的确切内容(带有强制性杂项)。因此,假设您的架构不同 - 这可以让您区分它们。
另一种选择是每个方案的(子)CA;或者只是使用netscape评论字段:)。
根据我的经验 - 当组织因此宣传,识别/重建和解释该计划时,这通常意味着它具有一些商业目的。所以它通常有一个有用的商业名称。在这种情况下;考虑一个(额外的)O或OU(如果需要,可以使用多种变体)。
答案 1 :(得分:0)
我最终在我的两个元数据字段( schema 和 version )中使用2.25弧下的基于UUID的OID。
以下网站提供UUID生成器作为便利和注册链接(虽然不严格要求注册):