PKI中关于数字证书的点滴

来源:互联网 发布:剑三炮哥脸型数据 编辑:程序博客网 时间:2024/04/29 09:05

数字证书的管理不是平坦模型,正如现实世界的管理模型不是平坦的一样,为了更有效的管理,人们普遍采用分层模型,也就是一个等级的金字塔模型,这样每个级别的管理重心就可以有效的分离,但是这种等级结构虽然不能是扁平的,也不能太深,不同于太扁平会导致上级的管理开销过大导致的效率低下,如果太深的话,漏洞就会越来越多,最底层的受管体就会有山高皇帝远的感觉,同时如果它还有下级,那么它的管理策略可能与最上层的管理策略大相径庭,比如它可以受贿,接纳更多实际上不被认可的要求,如果要我举个例子的话,那么古代中国和中世纪欧洲就是扁平化和纵深分级的典型,中国的权力集中在皇帝手中,而中世纪的欧洲普遍采取了封建制,在灵活性的意义上,欧洲更加灵活,于是更加多元化,然而就管理意义上,中国的制度更有效,如果没有一个社会学意义上的“可信计算基(TCB)”---也就是社会普遍接受的伦理道德,那么越多元化的社会越不稳定,幸运的是,欧洲的世俗权力和宗教权力的相互制衡,有效的将多元化限制在了一个有限的范围内,也就是说工商业的市民阶级总是摇摆在王权和教权之间,在已经形成自己本位主义的阶级后没有进一步形成自己的强大变革力量,直到工业革命将世界带入了一个新的均势,整个世界才彻底平稳。我们中国的可信计算基就是儒学,实际上是已经朱熹化的儒学,因此才有了有效的世俗皇权,最上层的压力并不大...
     扯远了啊!不过谁让我这么喜欢历史呢...现在说说数字证书认证体系,它可没有什么TCB,因为这个庞大的体系最后面的控制者不是一段程序或者是一台机器,而是CA的那帮人,于是为了更安全,同时管理上的开销更小,PKI体系提倡多级CA体系,同时也限制了证书链的长度。先说说为何PKI的最后是人而不是软件,试想数字证书是做什么的,很多人对它有一种误解,认为只要用CA的公钥验证证书的签名通过即可,实际上这是不对的,这个验证仅仅说明了该证书是有效的,只是为接下来的真正验证提供了可靠性,比如你拿了一张吉林大学日语系的研究生毕业证书去应聘,招聘方要确认两个信息,一个是你的证书是真的而不是假证,在你的证书是真实的情况下,接下来进行最重要的验证,那就是证书确实是你的证书,比如比对照片和你的签名信息,这后一步是验证的根本,前一步只是为了后一步的可信性。和现实世界一样,如果你要申请数字证书,那么你必须提供你的真实信息,CA的那帮人会对你提供的信息进行审查,你不可能用Microsoft作为名字来注册一家私人作坊的证书,因此可以说,PKI不完全是IT的,它更多的是人的。
    既然有了证书链,那么如何去核对这条链子呢,如果只有两张证书那么很好办,用CA的自签名证书去验证用户证书即可,或者反过来也可以,就是看看用户证书是否能通过CA的自签名证书的验证。实际上证书链的验证方式和两个证书的验证方式一模一样,也有两种方式,那就是自上而下和自下而上两种方式,具体到实现那就多了去了,如自上而下的方式可以分为两种,完全遍历的方式和单路径方式,完全遍历的方式实际上结合了自下而上的验证方式,自下而上的验证方式有两种实现方式,一种是平坦模式,另一种是分级模式,举个例子,OpenSSL采用的是自上而下的单路径方式进行证书链验证。如果有机会,我会在接下来的文章中举例实现这些证书链的实现方式。

原创粉丝点击