Certificate X509证书是否应设置非否认位以检查PKCS7签名?

Certificate X509证书是否应设置非否认位以检查PKCS7签名?,certificate,x509,pki,pkcs#7,Certificate,X509,Pki,Pkcs#7,X509证书具有一组密钥使用位。其中两个是 数字签名 不可否认性(X.509的最新版本将此位重命名为ContentCommission) 我读了x509rfc(),它讨论了这些位的一般用法 我读了pkcs7rfc(),它讨论了PKCS7结构等等,并没有指定需要设置哪些位 是否有任何RFC或其他规范确定是否应设置其中一个或两个 问候,, VictorPKCS#7文件通常包含一个证书链。也就是说,根CA证书、任何应用的中间CA证书以及端点证书(SSL、电子邮件等)PKCS#7通常用于将这些证书捆绑到

X509证书具有一组密钥使用位。其中两个是 数字签名
不可否认性(X.509的最新版本将此位重命名为ContentCommission)

我读了x509rfc(),它讨论了这些位的一般用法

我读了pkcs7rfc(),它讨论了PKCS7结构等等,并没有指定需要设置哪些位

是否有任何RFC或其他规范确定是否应设置其中一个或两个

问候,, Victor

PKCS#7文件通常包含一个证书链。也就是说,根CA证书、任何应用的中间CA证书以及端点证书(SSL、电子邮件等)PKCS#7通常用于将这些证书捆绑到单个文件中。它很有用,因为您可以一次将整个链导入密钥库或其他应用程序

至于密钥使用位,则根据特定证书的需要和用途进行设置。例如,根CA证书通常具有数字签名和不可否认集。对于SSL证书,您可以找到密钥加密和数字签名。密钥使用与PKCS#7文件之间实际上没有相关性,除非您讨论的是PKCS#7文件中包含的CA证书。

PKCS#7文件通常包含一系列证书。也就是说,根CA证书、任何应用的中间CA证书以及端点证书(SSL、电子邮件等)PKCS#7通常用于将这些证书捆绑到单个文件中。它很有用,因为您可以一次将整个链导入密钥库或其他应用程序


至于密钥使用位,则根据特定证书的需要和用途进行设置。例如,根CA证书通常具有数字签名和不可否认集。对于SSL证书,您可以找到密钥加密和数字签名。密钥使用与PKCS#7文件之间实际上没有相关性,除非您讨论的是PKCS#7文件中包含的CA证书。

顺便说一句,此位违反了其设计中关注点的分离。不可抵赖性是在业务层面上协商的法律问题。在证书/签名级别使用位是不相关的。例如,请参见

顺便说一句,该位违反了其设计中的关注点分离。不可抵赖性是在业务层面上协商的法律问题。在证书/签名级别使用位是不相关的。请参见,例如。

明白了。我想这证实了我的想法。关于PKCS#7在许多地方几乎与SMIME同义的问题。SMIME不需要拒绝,这就是我感到困惑的原因。PKCS#7实际上指的是“数字签名消息”。因此,这实际上取决于您所谈论的PKCS#7数据的类型。如果您谈论的是S/MIME,那么您确实需要设置“数字签名”和“不可否认性”。如果你说的是一个封装了一组证书的文件,那么它就没有那么重要了。有几个标准说的几乎是一样的——PKCS#7、s/MIME、PKIX、CMS——但从来没有完全兼容过。我的目标是遵循CMS(RFC5652),除非它被证明与我不得不使用的一些遗留软件不兼容。就不可否认性而言:所有使用非对称加密技术的数字签名都提供不可否认性(只要您保持私钥的安全,任何其他方都不能伪造您的签名),但一些标准要求证书明确声明不可否认性为密钥使用。不可抵赖性意味着签名,你不需要两者都有。明白了。我想这证实了我的想法。关于PKCS#7在许多地方几乎与SMIME同义的问题。SMIME不需要拒绝,这就是我感到困惑的原因。PKCS#7实际上指的是“数字签名消息”。因此,这实际上取决于您所谈论的PKCS#7数据的类型。如果您谈论的是S/MIME,那么您确实需要设置“数字签名”和“不可否认性”。如果你说的是一个封装了一组证书的文件,那么它就没有那么重要了。有几个标准说的几乎是一样的——PKCS#7、s/MIME、PKIX、CMS——但从来没有完全兼容过。我的目标是遵循CMS(RFC5652),除非它被证明与我不得不使用的一些遗留软件不兼容。就不可否认性而言:所有使用非对称加密技术的数字签名都提供不可否认性(只要您保持私钥的安全,任何其他方都不能伪造您的签名),但一些标准要求证书明确声明不可否认性为密钥使用。不可抵赖性意味着签名,你不需要两者都有。我已经听过好几次了。似乎大家的共识是,从法律上讲,不可否认条款的存在与否没有任何区别。我已经听过好几次了。似乎大家的共识是,从法律上讲,不可否认性比特的存在与否没有任何区别。