在以下三项行动中:
..。密钥上的认证功能允许哪些?
据我所知,Certify允许1),但我不明白什么允许2)和3)。
如果我从密钥环中移除主密钥(及其认证功能),我可以看到我不再能够生成吊销证书:Secret parts of primary key are not available.
这是因为我不再拥有Certify功能,还是因为我不再拥有主密钥(主密钥本身是否具有撤销的特殊权限?)
发布于 2014-11-26 17:24:01
RFC 4880,关键结构将证书标志定义为强制性的:
在V4密钥中,主密钥必须是能够进行认证的密钥。子项可以是任何其他类型的键。
它暗示操作子项的操作将被视为证书:
也有可能有一个只有签名的子项。这允许收集证书(密钥签名)的主密钥,但仅用于验证用于加密和签名的子密钥。
哪些(签名)操作现在被认为是认证,并取决于这种能力?
“签名其他密钥”显然意味着颁发证书,并且已经包含在命名中。如RFC 4880,签名类型中所定义的:
0x10: Generic certification of a User ID and Public-Key packet.
0x11: Persona certification of a User ID and Public-Key packet.
0x12: Casual certification of a User ID and Public-Key packet.
0x13: Positive certification of a User ID and Public-Key packet.操作子项的操作也明确地定义为证书:
0x18: Subkey Binding Signature
0x19: Primary Key Binding Signature
0x28: Subkey revocation signature然而,尚未确定的签名类型(属于“密钥管理”领域)是:
0x1F: Signature directly on a key
0x20: Key revocation signature
0x30: Certification revocation signature0x30,认证撤销也应该被视为一种认证操作。0x1F也用于“非自我验证者希望对密钥本身进行的声明”。唯一剩下的操作是0x20,密钥撤销签名:
0x20: Key revocation signature
The signature is calculated directly on the key being revoked. A
revoked key is not to be used. Only revocation signatures by the
key being revoked, or by an authorized revocation key, should be
considered valid revocation signatures.我找不到任何不允许子键充当撤销密钥的显式限制。[RFC 4880,吊销密钥](https://www.rfc-editor.org/rfc/rfc4880#section-5.2.3.15)不将目标限制为主密钥,但也不显式地允许子密钥。这可能是唯一一个不需要认证能力的机构。然而,GnuPG只为主密钥创建撤销密钥签名。另一个只允许主键的提示是,如果子项在该节中应用,则子项总是这样命名的,所以我假设只允许主键。
证书特权的
如果我从密钥环中删除主密钥(及其Certify功能),我可以看到我不再能够生成吊销证书:主密钥的秘密部分不可用。这是因为我不再拥有Certify功能,还是因为我不再拥有主密钥(主密钥本身是否具有撤销的特殊权限?)
最后,主密钥和具有认证能力的密钥没有区别,只有主密钥可能有,但这些密钥也必须具有。
https://security.stackexchange.com/questions/73679
复制相似问题