论文部分内容阅读
摘要:随着信息技术的发展,信息系统的安全性受到极大的威胁,因此必须采用可靠性非常高的安全保密技术来确保数据传输安全、有效。公钥基础设施正好解决了这个难题。证书路径是一个有序列,起始于信任方的信任根颁发的一个证书,终止于需要被验证的目标证书。
本课题将在研究PKI公钥基础设施的基础上,着重研究证书路径构建的理论和技术,并根据实际的拓扑图,设计一个有效的算法,尽快地排除那些非法路径,找到正确、有效的路径。
关键词: 证书 PKI CA
中图分类号:U692.7+4
1、设计拓扑图
本文设计的拓扑图是层次结构模型,如图1所示。对于简单的拓扑图来说,层次结构模型更加清晰的体现了各个CA以及终端实体之间的关系。
证书路径构造就是聚集从用户证书到他所需要的目标证书之间形成完整路径所需的所有证书。路径构造的原则是使得路径尽量短,即路径中所含的证书个数尽量少。运用交叉证书,能够有效地缩短路径的长度,但却增加了路径的复杂性。交叉证书是用于交叉认证的证书。交叉认证就是把以前无关的CA连接在一起,使得在它们各自主体群之间的安全通讯成为可能。在交叉认证中,如果两个CA属于不同的域,称为域间交叉,如果两个CA属于同一个域,称为域内交叉。
2、证书路径构造的算法
在一个PKI系统中,如图1所示,实体5试图验证实体8的公钥(即目标证书)的有效性,就要构造从实体(到实体)的证书路径。先设计一个证书路径表用以存放证书。
Step1:以5为起始结点,作为父结点存入证书路径表的第一行中,按图的宽度优先搜索算法搜索所有与5相连接的除父结点之外的结点,并把这些结点作为子结点存入证书路径表的下一行中,如果其中的某个结点为8,则路径构造完成,算法结束;否则,进入Step2。
Step2:从证书路径表的当前行中删除为终端实体的结点和没有子结点的结点(叶子);从上一行中删除那些被删除了所有子结点的结点,并依次向上删除;对于当前行中留下来的结点(既非终端实体结点又非叶子结点),分别以这些结点为起始点搜索所有与之相连接的除父结点之外的结点,并作为子结点依次存入证书路径表中当前行的下一行,直到其中的某个结点为8,路径构造完成,算法结束;如果搜索完所有结点没有发现为8的结点,则输出失败信息,表示不存在从实体(到实体)之間的证书路径。否则,返回step2。
对于所有留在表中的结点,删除不相邻的相同结点之间的结点,合并相邻的相同结点,把所剩下的结点按表的行顺序排列,即为证书路径。
3、证书的验证流程
在构造好了证书路径之后,例如图1所示,实体5可以通过证书路径获得实体8的公钥证书,即目标证书。但所获得的8的公钥证书是否有效?也就是说8的证书中的公钥是否可信?实体5需要通过路径验证来确认8的证书的有效性。这需要依次检查在证书路径中的每个证书,确定它含有的公钥是否可以被信任。
只有在确认了证书路径中的每个证书及其所含的公钥都是可信的,目标证书及其所含的公钥才是可信的。这首先要检验证书路径中的每个证书的签发者的数字签名是否有效;第二要检验每个证书的有效期(以保证该证书没过期)和每个吊销状态(以保证路径中的证书还没有被吊销);第三要考虑适当的证书策略限制、密钥使用限制和各种约束等等,如图2所示。
4、小结与展望
上文针对类路径的构建问题,提出了一种构建方案。通过对证书路径的研究,并结合实际的拓扑图,采用了邻接表的方法。但随着网络中终端实体的增加和CA的增加,邻接表的效率慢的缺点会越来越突出,如何快速有效地实现路径查找要根据不同的情况采用不同的结构。另外,本文所设计的路径查找算法的优点是在CA和终端实体不多的层次结构情况下使路径查找更加有效、快捷,缺点是不适合CA和终端实体过多且网络比较复杂的系统。
在实际应用中,可以根据各种拓扑图的特点设计出不同的方案。PKI在这几年取得了快速的发展,许多科学家都正在对这个领域作更加深入的研究。我深信,随着PKI理论研究的深入以及科学的不断发展,PKI的路径构建将得到极大的发展,预计在以下几个方面将会得到更进一步的发展:
⑴ 路径构建的方法会越来越多,并融合在一起来实现路径构建的快速有效。例如在一个复杂的系统中同时使用邻接表和邻接矩阵两种算法,使他们的优缺点互补。
⑵ 发明一种新的算法,来加快路径构建和验证的速度。
⑶ 形成统一的证书路径构造算法和标准的证书路径验证程序,有利于PKI系统向规模化和标准化的方向发展。
参考文献:
[1] 关振胜:公钥基础设施PKI与认证机构CA,北京,电子工业出版社,2002。
[2] 谢冬青,冷健:PKI原理与技术[M].北京,清华大学出版社,2003。
[3] 关振胜:公钥基础设施PKI及其应用,北京,电子工业出版社,2008。
本课题将在研究PKI公钥基础设施的基础上,着重研究证书路径构建的理论和技术,并根据实际的拓扑图,设计一个有效的算法,尽快地排除那些非法路径,找到正确、有效的路径。
关键词: 证书 PKI CA
中图分类号:U692.7+4
1、设计拓扑图
本文设计的拓扑图是层次结构模型,如图1所示。对于简单的拓扑图来说,层次结构模型更加清晰的体现了各个CA以及终端实体之间的关系。
证书路径构造就是聚集从用户证书到他所需要的目标证书之间形成完整路径所需的所有证书。路径构造的原则是使得路径尽量短,即路径中所含的证书个数尽量少。运用交叉证书,能够有效地缩短路径的长度,但却增加了路径的复杂性。交叉证书是用于交叉认证的证书。交叉认证就是把以前无关的CA连接在一起,使得在它们各自主体群之间的安全通讯成为可能。在交叉认证中,如果两个CA属于不同的域,称为域间交叉,如果两个CA属于同一个域,称为域内交叉。
2、证书路径构造的算法
在一个PKI系统中,如图1所示,实体5试图验证实体8的公钥(即目标证书)的有效性,就要构造从实体(到实体)的证书路径。先设计一个证书路径表用以存放证书。
Step1:以5为起始结点,作为父结点存入证书路径表的第一行中,按图的宽度优先搜索算法搜索所有与5相连接的除父结点之外的结点,并把这些结点作为子结点存入证书路径表的下一行中,如果其中的某个结点为8,则路径构造完成,算法结束;否则,进入Step2。
Step2:从证书路径表的当前行中删除为终端实体的结点和没有子结点的结点(叶子);从上一行中删除那些被删除了所有子结点的结点,并依次向上删除;对于当前行中留下来的结点(既非终端实体结点又非叶子结点),分别以这些结点为起始点搜索所有与之相连接的除父结点之外的结点,并作为子结点依次存入证书路径表中当前行的下一行,直到其中的某个结点为8,路径构造完成,算法结束;如果搜索完所有结点没有发现为8的结点,则输出失败信息,表示不存在从实体(到实体)之間的证书路径。否则,返回step2。
对于所有留在表中的结点,删除不相邻的相同结点之间的结点,合并相邻的相同结点,把所剩下的结点按表的行顺序排列,即为证书路径。
3、证书的验证流程
在构造好了证书路径之后,例如图1所示,实体5可以通过证书路径获得实体8的公钥证书,即目标证书。但所获得的8的公钥证书是否有效?也就是说8的证书中的公钥是否可信?实体5需要通过路径验证来确认8的证书的有效性。这需要依次检查在证书路径中的每个证书,确定它含有的公钥是否可以被信任。
只有在确认了证书路径中的每个证书及其所含的公钥都是可信的,目标证书及其所含的公钥才是可信的。这首先要检验证书路径中的每个证书的签发者的数字签名是否有效;第二要检验每个证书的有效期(以保证该证书没过期)和每个吊销状态(以保证路径中的证书还没有被吊销);第三要考虑适当的证书策略限制、密钥使用限制和各种约束等等,如图2所示。
4、小结与展望
上文针对类路径的构建问题,提出了一种构建方案。通过对证书路径的研究,并结合实际的拓扑图,采用了邻接表的方法。但随着网络中终端实体的增加和CA的增加,邻接表的效率慢的缺点会越来越突出,如何快速有效地实现路径查找要根据不同的情况采用不同的结构。另外,本文所设计的路径查找算法的优点是在CA和终端实体不多的层次结构情况下使路径查找更加有效、快捷,缺点是不适合CA和终端实体过多且网络比较复杂的系统。
在实际应用中,可以根据各种拓扑图的特点设计出不同的方案。PKI在这几年取得了快速的发展,许多科学家都正在对这个领域作更加深入的研究。我深信,随着PKI理论研究的深入以及科学的不断发展,PKI的路径构建将得到极大的发展,预计在以下几个方面将会得到更进一步的发展:
⑴ 路径构建的方法会越来越多,并融合在一起来实现路径构建的快速有效。例如在一个复杂的系统中同时使用邻接表和邻接矩阵两种算法,使他们的优缺点互补。
⑵ 发明一种新的算法,来加快路径构建和验证的速度。
⑶ 形成统一的证书路径构造算法和标准的证书路径验证程序,有利于PKI系统向规模化和标准化的方向发展。
参考文献:
[1] 关振胜:公钥基础设施PKI与认证机构CA,北京,电子工业出版社,2002。
[2] 谢冬青,冷健:PKI原理与技术[M].北京,清华大学出版社,2003。
[3] 关振胜:公钥基础设施PKI及其应用,北京,电子工业出版社,2008。