创建中间根证书时,是否设置了证书模板的“ IsCA”属性?此属性的作用是什么?
我正在为应用程序创建证书链。在此应用程序中,我需要使用中间证书来签署一些客户端证书。我找到了一些有关创建根CA证书的指南,它们指示在创建证书模板时设置IsCA = true,但是我找不到有关创建中间根的任何信息。是否仍然需要设置IsCA属性?创建中间证书与根证书时,证书模板是否还有其他更改?
您必须为中间证书设置cA
基本约束。此布尔值表示可以使用证书来验证其他证书签名。
没有将cA
设置为true的证书是叶子证书。
这里是RFC 5280的“基本约束”部分的相关部分:
cA布尔值指示是否可以使用经过认证的公钥验证证书签名。如果未声明cA布尔值,那么密钥使用扩展中的keyCertSign位一定不能断言。如果基本约束扩展不存在于版本3证书,或存在扩展名,但cA布尔值未声明,则不得使用经过认证的公钥验证证书签名。