收藏 分销(赏)

CA认证中心统计查询系统论文.doc

上传人:仙人****88 文档编号:9465533 上传时间:2025-03-27 格式:DOC 页数:67 大小:1.58MB
下载 相关 举报
CA认证中心统计查询系统论文.doc_第1页
第1页 / 共67页
CA认证中心统计查询系统论文.doc_第2页
第2页 / 共67页
点击查看更多>>
资源描述
石家庄铁道学院毕业设计 1 绪论 1.1 问题的提出 随着计算机应用的普及,特别是近年来Internet的发展,企业、政府、金融中心等各家机构都通过与Internet相连的网络发布信息,使用电子邮件和其他网络应用程序以及开展电子商务等。随着这些机构规模的扩大和分布式应用的不断增加,他们需要统一的身份认证与访问控制机制,并且能够在其网站上实现单点登录。同时,由于Internet建立在开放的TCP/IP协议基础上,消息在网络上以数据包的形式传输,这些数据包通过选择最佳的路由到达目的地,如果不采取任何安全措施的话,这些数据很可能在传输的过程被中断,截取或篡改。另外,通信双方通常都没有建立专用的连接线路,第三方可以冒充通信一方并伪造出欺骗性消息。 为了保证用户网络应用在安全的网络环境下进行,作为安全基础设施的PKI能为不同的用户实体提供多种安全服务,包括核心服务认证性(Authentication)、完整性(Integrity)、保密性(Confidentiality)和支撑服务不可否认性(Non-Repudiation)、安全时间戳(TSP)和易用性(Ease of Use)等安全服务[Stalling,2000]: ⑴ 认证性:该服务用于验证发送消息,接收消息或访问用户应用系统的实体(Entity)身份; ⑵ 完整性:该服务用于保证消息在接收时和发送时的内容时一致的,即数据无论是在 传输还是在存储过程中没有被篡改; ⑶ 保密性:该服务用于保证只有消息接受者能够对加密消息进行解密,从而防止消息的泄漏; ⑷ 不可否认性:该服务用于证实消息的来源,从而防止发送者否认消息的传输; ⑸ 安全时间戳:该服务用于提供一个可信的时间权威; ⑹ 访问控制:该服务要求用户网络安全解决方案时能够一致地实现在多种用户应用程序上,并且易于使用。 PKI(Public Key Infrastructure,公开密钥基础设施)采用了公开密钥和数字证书(Difital Certificate)技术为电子邮件、www、IIS等用户应用提供安全服务地基础设施。其中数字证书包括了实体的身份及其公开密钥信息,并通过认证权威机构CA(Certification Authority,认证中心)的数字签名保证了证书的完整性和真实性。对于用户来说,实施PKI最需要解决的问题就是如何建立用户应用层次的CA。本文在综合研究了PKI技术的基础上,结合不同机构的实际应用,提出了一种基于严格层次结构的CA模型,同时解决了实现过程中的各项关键技术问题。 1.2 国内外研究现状 ⑴国外PKI/CA体系现状 从90年代初期以来,美国、加拿大等国相继开展了PKI/CA体系的研究和建设工作;下面就以美、加为例,让我们来看看他们的体系建设。 ①美国联邦PKI(FPKI)体系建设 FPKI体系主要由联邦的认证机构(FBCA),首级认证机构(PCA),次级认证机构(SCA)等组成。它是一种混合结构,可以支持树状结构、网状结构和信任列表等。它允许加入FPKI体系中的机构可以使用任何结构的PKI信任域。FBCA是FPKI体系中的核心组织,是不同信任域之间的桥梁CA。它与不同的信任域之间建立对等的信任关系,同时允许用户保留他们自己的原始信任点。它主要负责为不同信任域的首级CA颁发交叉认证的证书,建立各个信任域的担保等级与FBCA的担保等级之间的一一映射关系,更新交叉认证证书,发布交叉认证证书注销清单。它不要求一个机构在与另一个机构发生信任关系时,必须遵循联邦PKI所确定的这种映射关系,而是可以采用它认为合适的映射关系建立彼此之间的信任。 FPKI要正式投入使用必须解决好以下四个方面的问题:验证密钥管理证书的信任路径; 测试附加功能,以满足联邦PKI体系中的所有成员之间的互操作性;开发FBCA产品;努力加强在离架商务软件(COTS)产品中PKI的支持。 ②加拿大政府PKI(GOC PKI)体系建设 与FPKI相比,GOC PKI体系结构要简单得多,它是一个树状结构。加拿大政府PKI体系结构是由政策管理机构(PMA)、中央认证机构(CCF)、一级CA和当地注册机构(LRA)组成。CCF是中央认证机构,它实施GOC PKI体系中的所有策略,签署和管理与一级CA交叉认证的证书。一级CA是由政府运营,制定一个和多个证书担保的等级,分发和管理数字证书,定期颁布证书注销清单。LRA是一级CA设置的登记机构,其职责是认证和鉴别申请者的身份;为密钥恢复或证书恢复请求进行审批;接受并审批证书的注销请求。 GOC PKI充分考虑了交易的私密性和安全性,并把保护交易私密性和安全性列为信息高速公路的首要问题。它提供了完全一致的密钥管理办法,并为加密和数字签名提供完全相同的验证过程,它是电子认证、鉴别和智能卡等多项技术的集成。 ⑵国内PKI/CA体系现状 从CA中心的建设背景来看,国内的CA中心大致可以分为三类:大行业或政府部门建立的CA,如CFCA、CTCA 、CCCA等;地方政府与公司共建的CA,如SHECA、天津CA等;商业性CA,如天威诚信公司。 目前国内的PKI/CA行业有如下几个不足:整体发展的速度较快,但具有一定的盲目性;CA中心繁多,但是许多并不是真正的权威性第三方,CA中心之间的协调和交叉认证困难;整个行业发展有些混乱,CA自身的管理也比较混乱。 PKI/CA是一个新生儿,难免有许多问题,最突出的表现在三个方面:一,大多数人对CA中心的建设和运行困难认识明显不足,这些困难包括,在CA中心建设之初,是需要投入大量的资金和进行需达到相当标准的硬件环境建设的,而且在CA中心运行之后,需要解决用户规模、用户信任、保险赔付以及保障中心长期运行的资金等一系列问题;二,有些地方政府行为有误区,有的地方政府把CA认证看成是一种行政管理的手段,使CA中心的建设走上了计划经济时期,条块分割和地方保护主义的老路,殊不知这正与信息社会的开放性和跨地域性背道而驰;三,目前行业的混乱与相关法律和行业性规范尚未形成有关,除了必需的法律约束之外,政府必须出台这方面的管理政策,不能叫大家盲目地信任某一个CA,而是通过一定的管理办法保证CA是可信的。 基于国外该行业的发展经验和国内目前的状况,我们认为该行业未来的发展有着如下趋势:一,国际化趋势。随着电子商务的深入发展和中国加入WTO,中国经济与世界经济的联系将越来越紧密,为满足电子商务的国际化需求,必然要求国内的CA中心与国际性的PKI/CA公司进行交叉认证。二,商业化趋势。网络并不是一个可信的交易环境,人与人之间不能建立信任,同样政府也不能出面证明,所以CA认证既不同于管理,也不同于法律,而更接近于一种契约,显然这种契约形式的关系更适应于商业化运作。而且可以预计,目前具有浓厚政府色彩的CA中心也将逐步从政府中剥离出来,采取商业化运作。三,集中化趋势。现在已经建设的多个CA中心几乎都有明显的局部特征和探索性质,规模较小而且简单重复,难以满足社会化服务的要求。而且,由于在CA中心自身的权威性要求下,必然需要运作规范,技术、资金实力雄厚,并能适应国际化趋势的大型CA中心来为社会服务。因此,未来几年中,行业内产业重组已是必然。 1.3 课题研究的背景及意义 互联网的发展和信息技术的普及,给人们的工作和生活带来了前所未有的便利。然而,由于互联网所具有的广泛性和开放性,决定了互联网不可避免地存在着信息安全隐患。为了防范信息安全风险,许多新的安全技术和规范不断涌现,PKI(Public Key Infrastructure,公开密钥基础设施)即是其中一员。它是在公开密钥理论和技术基础上发展起来的一种综合安全平台,能够为所有网络应用透明地提供采用加密和数字签名等密码服务所必需的密钥和证书管理,从而达到保证网上传递信息的安全、真实、完整和不可抵赖的目的。建立以PKI为基础的安全解决方案,无论是对在Internet上开展的无纸办公等内部业务,还是对电子支付、网上证券交易、网上购物、网上教育、网上娱乐等网络应用,都是一种安全可靠的选择。在实践过程中各国专家发现,以PKI/CA为主体的技术是解决网络安全问题简单、高效、经济的理想方案。 CA是PKI的核心部分它实现的功能主要有:⑴认证中心CA, CA负责管理PKI结构下的所有用户的证书,把用户的公钥和用户的其他信息绑定在一起在网上验证对方的身份,CA还要负责用户证书的黑名单登记和黑名单发布。⑵RA注册中心,RA是数字证书的申请注册、证书签发和管理机构。它是用户和CA的接口,它所获得的用户标识的准确性是CA颁发证书的基础。⑶数字证书库,他用于存储已签发的数字证书和公钥,是一种网上公共信息库,用户可以从此处获得其他用户的证书和公钥。⑷终端实体,终端实体是PKI用户系统,它是 PKI证书的用户,因此其主要的功能是申请证书、下载证书、申请作废证书、查询证书的状态及CRL等。 数字证书一般是由CA认证中心签发的,数字证书也被称作CA证书(简称证书),实际是一串很长的数学编码,包含有客户的基本信息及CA的签字,通常保存在电脑硬盘或IC卡中。CA认证中心证明证书主体("证书申请者"获得CA认证中心签发的证书后即成为"证书主体")与证书中所包含的公钥的唯一对应关系。证书中包括证书申请者的名称及相关信息、申请者的公钥、签发证书的CA的数字签名及证书有效期等内容。通过数字证书的使用,可以实现以下功能: ⑴确保交易信息的保密性; ⑵确保参与电子交易各方身份的真实性; ⑶确保交易信息的完整性; ⑷确保授权的合法性; ⑸确保信息发送的不可抵赖性。 1.4 本文的组织 本文共分为九章: 第一章引言,主要介绍国内外研究现状、课题研究的背景及意义、系统平台模式和本文组织结构。 第二章介绍了系统所用到的开发技术及工具。 第三章分别从密码学基础、PKI组件及功能、PKI的信任模型、系统信任模型、数字证书、系统标准化,五个方面对PKI的相关技术进行了研究。 第四章需求分析,分别从功能需求、结构化开发方法、系统的建模、运行环境、系统流程五个方面对系统可行性和建模方式进行了描述。 第五章SJZRI.CA系统设计,本章在CA系统结构的基础上从全局出发对系统进行概要设计。 第六章详细设计,解决了SJZRI.CA在实现过程中所遇到的各项关键技术问题,主要包括界面设计、客户端证书请求和下载模块、服务器端证书制作和管理模块、数据库模块四个方面。 第七章创新点,列出了系统设计过程中所用到的新技术和主要创新。 第八章测试分析,本章从实际应用出发探讨了系统的配置、测试。 第九章结束语,总结目前所做的研究工作和存在的不足,并对未来的研究方向提出了一些设想。 2 系统平台模式及开发工具 2.1 系统平台模式 本系统同时采用了C/S和B/S模式,下面两节分别对其进行了说明。 2.1.1 客户机/服务器(C/S)模式 C/S模式主要由客户应用程序、服务器管理程序和中间件三个部分组成。首先,交互性强是C/S固有的一个优点。在C/S中,客户端有一套完整应用程序,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程序间自由切换。其次,C/S模式提供了更安全的存取模式。由于C/S配备的是点对点的结构模式,适用于局域网应用,安全性可以得到可靠地保证。由于C/S在逻辑结构上比B/S少一层,对于相同的任务,C/S完成的速度总比B/S快,使得C/S更利于处理大量数据。但是客户端的开发相对复杂,周期较长,需要对使用人员进行专门培训,对每个客户安装客户端,维护复杂,这些方面都加大了具体实施的难度。 2.1.2 Web浏览器/服务器(B/S)模式 B/S模式是一种以Web技术为基础的新型的系统平台模式,它把传统C/S模式中的服务器部分分解为一个数据库服务器与一个或多个应用服务器(Web服务器),从而构成一个三层结构的客户服务器体系,它简化了客户端。其次,它简化了系统的开发和维护。各个用户通过Http请求在权限范围内调用Web服务器上不同处理程序,从而完成对数据的查询或修改。相对于C/S,B/S的维护具有更大的灵活性。另外,它使用户的操作变得更简单。C/S模式的客户应用程序有自己特定的规格,使用者需要接受专门培训。采用B/S模式时,客户端只是一个简单易用的浏览器软件,无论是决策层还是操作层的人员都无需培训,就可以直接使用。但是B/S采用点对多点、多点对多点这种开放的结构模式,并采用TCP/IP这一类运用于Internet的开放性协议,其安全性只能靠数据服务器上管理密码的数据库来保证,必须对传输的数据进行适当的加密。 企业在选择系统平台模式时,要考虑到B/S模式的先进性,也要考虑到C/S模式的成熟性,还可以根据企业自身的业务特点,采取C/S与B/S交叉并用的体系结构。 对于本系统,采用浏览器作为客户端既减轻了安装、维护的麻烦,又便于领导迅速熟悉操作环境;而且减少了开发时间,便于快速实施。维护时只对服务器进行修改即可,客户端不需任何改变。 2.2 开发工具介绍 本系统客户端使用了Dreamweaver MX进行开发,服务器端使用了VC++ 7.0,后台数据库使用Access 2003数据库。 2.2.1 Dreamweaver介绍 Dreamweaver是一款专业的网页制作工具,具有可视化编辑界面和强大的所见即所得网页编辑功能,它不仅可以制作网页,而且为设计和开发站点提供了良好的操作平台,集网页制作与网站管理于一身。使用Dreamweaver用户不必编写复杂的HTML源代码,就可快速生成跨平台,跨浏览器的网页,同时, Dreamweaver支持动态HTML,并采用Roundtrip HTML技术,奠定了在网页高级设计功能方面的领先地位。在进行网页设计过程中, 动态HTML技术能够让用户轻松设计复杂的交互式网页,产生动态效果;而Roundtrip HTML技术则可支持HTML源编辑模式,不会产生冗余代码,使网页渲染速度加快。 Dreamweaver还能与Macromedia公司的其他软件进行完美的合作,可以在Fireworks或其他图片处理程序中创建或编辑图片,然后直接导入到Dreamweaver中,还可以直接添加Flash对象。 Dreamweaver同时也提供了存储代码编辑环境,主要包括HTML、CSS、JavaScript、CFML、ASP和JSP等语言的代码编辑工具和参考资料。 Macromedia的Roundtrip HTML技术让您无需重新格式化即可直接导入使用记事本等程序手写的HTML文档,然后在Dreamweaver中根据实际需要重新格式化代码。 Dreamweaver还允许用户使用CFML、ASP.NET、ASP、JSP及PHP等服务器技术创建动态的网页及程序。另外, Dreamweaver的整个创作环境十分人性化,它不仅界面美观、友好,而且允许用户定制工作环境。用户可以创建完全属于自己的对象和命令,修改快捷键,甚至可以编写JavaScript代码扩充软件功能。 Dreamweaver MX在原有基础上提供了一系列新的特性,新增功能如下:⑴改进的插入工具栏; ⑵外部文档/代码的无缝结合; ⑶改进的表格编辑工具; ⑷灵活的起始页面; ⑸FTP安全保障; ⑹跨浏览器有效性检查; ⑺内置的图形编辑程序让开发更加节省时间; ⑻功能更多的CSS支持; ⑼支持Macromedia Flash元素; ⑽更多有效的代码编辑工具。 2.2.2 VC++介绍 Windows中种类繁多的句柄(Handle)、千变万化的消息(Message)、和难以捉摸的事例(Instance)非常复杂。于是Microsoft推出了以MFC(Microsoft Foundation Classes)为特色的面向对象的Windows编程环境Visual C++。 Visual C++语言是目前为止功能最强、最受欢迎、应用最广泛的、高效的Windows应用程序开发工具,它是在C语言的基础之上发展起来的,是C语言的超集。相对于其他计算机语言来说,学习并掌握Visual C++具有一定的难度,但当你能够熟练使用该语言的时候,你将几乎无所不能,因此熟练运用Visual C++是几乎每个程序开发人员所梦想的事。 整个MFC库构成了Windows应用程序的基本框架(Application Framework),同时,MFC由他许多独到之处。 ⑴Visual C++提供了再次框架上编程的三位一体的工具:AppWizard、Class Wizard和Studio。AppWizard用户可以利用来自动生成Windows应用程序的框架(即起始代码);Class Wizard也可以利用来管理应用程序中的与Windows有关的各种类、消息和处理函数;Studio还可以用以可视化的方式创建和管理各类资源。 ⑵具有灵活的程序结构。它提管理应用数据,并使用视图来管理用户同文档的交互作用。 ⑶具有各种Windows API的封装类。封装的对象有:窗口、对话框、设备描述表、GDI画图对象、控制等。 ⑷支持上下文相关帮助。 ⑸通过数据映射机制提供了简单的编程接口,来与对话框里的控制进行动态的数据交换,同时对输入的数据进行有效性检查。 ⑹具有各种管理集合数据的集类。 借助这些工具,用户只需加入与具体应用有关的代码和资源,其它都由MFC提供,从而大大提高了应用程序的开发效率。Visual C++开发环境Microsoft Developer Studio,是运行于Windows平台的集成开发环境(IDE),是Microsoft Visual C++,Microsoft J++和其他几个产品所公用的开发环境。 Microsoft Developer Studio由菜单栏、工具栏、Workspace窗口、代码编辑窗口、输出(Output)窗口、(调试Debug)等组件组成。而这些窗口可以再分,如调试窗口又可以分成观察窗口、变量窗口、寄存器窗口、存储器窗口、调试堆栈窗口及汇编窗口。Microsoft Developer Studio最大的特点是灵活多变,可以根据个人习惯来定制窗口使程序的开发工作轻松自如。 2.2.3 Access 2000介绍 Access是微软(Microsoft)公司面向小型用户的桌面关系数据库管理系统,但是它提供的功能却非常强大,不仅包括一般数据库管理系统中都有的SQL(结构化查询语言)查询,而且支持数据的完整性和约束(包括:主键约束和实体完整性、外键约束和参照完整性、CHECK约束、UNIQUE约束等)。其最新版本Access2000不仅使用了中文界面,而且在功能上也有了很大的改进,不仅可以在设计数据库时使用“宏(Macro)”功能或是使用VBA(Visual Basic for Application,嵌入式Visual basic),还可以使用数据访问页,将自己设计的数据库发布到因特网上。 ⑴数据表:数据表是一组相关联的数据按行和列排列的二维表格,简称为表(Table),通常用来描写一个实体。一个数据库由多个表组成,各个数据表之间存在某种关系。 ⑵记录与字段:数据表中的每一列称为一个字段(Field),它对应表格中的数据项,每个数据项的名称称为字段名。字段的取值范围称为域,通常用字段描述表格实体在某一方面的属性。表格的项目名称下面的每一行称为一个记录(Record),它是字段值的集合。记录中的每个字段的取值,称为字段值或分量。记录中的数据随着每一行记录的不同而变化。 ⑶关键字:如果数据表中某个字段值能唯一地确定一个记录,用以区分不同的记录,则称该字段名为候选关键字。一个表中可存在多个候选关键字,选定其中一个作为主关键字。主关键字不能为空值。在数据库中,表与表之间的关系是通过关键字来相互关联的。一个表中记录与另一个表中记录之间的数量对应关系,分为一对一、一对多(或多对一)、多对多关系,常用的是一对多关系,而多对多关系必须转化成一对多关系。 ⑷索引:一个表可以按照某种特定的顺序进行保存或排列。通过索引,数据库引擎就能非常迅速地查找某个特定的记录。常见的情况是,表是一个经过分类排序和建立索引后的记录的集合。 3 PKI技术的研究 本章主要介绍加密算法、数字证书和PKI/CA在网络安全中的作用以及现有的一些PKI标准。 3.1 密码学基础 密码学是一种使用加密算法(Encryption Algorithm)保护数据的科学,是PKI的理论基础。这些加密算法主要通过数学运算将明文数据和密钥(Key)结合起来产生密文数据。加密算法通常分为两类:对称算法(Symmetric Algorithm)和公开密钥算法(Public Key Algorithm)[RSA,2000]。 对称算法有时又叫传统密钥算法,其加密与解密密钥是相同的,或者解密密钥能够很容易从加密密钥导出,这种算法的加/解密过程可以表示为: Ek(M)=C Dk(C)=M 其中,E表示加密(Encryption),k表示密钥,M表示消息(Message),C表示密文(Ciphertext),D表示解密(Decryption)。对称算法要求通信双方事先协商好密钥,其安全性也依赖于密钥的保密。泄漏密钥k意味着其他人也能够对消息进行加/解密,因此双方必须在传输加密数据之前安全地进行密钥交换。当通信双方互不相识或者双方进行第一次通信时,这种交换就显得非常困难[Stalling,2000]。 相比而言, 公开密钥算法的基本特征在于加密与解密密钥是不同的,知道其中一个,在计算上很难推导或计算出另一个, 这种算法的加/解密过程可以表示为: Epuk(M)=C Dprk(C)=M 其中puk表示公开密钥(Public Key),prk表示私有密钥(Private Key),公开密钥算法的每个通信实体拥有一对公开密钥和私有密钥,并且将前者对外公开。比如,Bob得到Alice的公开密钥就可以使用该密钥向Bob发送加密数据,而且只有Alice能够通过自己的私有密钥将密文恢复出明文。同样的, Bob可以使用其私有密钥对发送给Bob的消息进行数字签名,而Bob通过Alice的公开密钥就能够验证消息是否真的来自Alice以及数字在传输过程中是否已被篡改。 3.2 PKI组件及功能 3.2.1 PKI组件介绍 完整的PKI是指创建、管理、存储、分发和撤销证书所需要的硬件、软件、人员策略和过程的集合。具体包括五类组成部分:CA,RA(Registration Authority),证书/CRL库,最终用户(End User)和依赖方(Relying Party)组成[RFC,2459]。 CA、RA和证书/CRL库是PKI的核心功能组件,实现了PKI的基本功能,比如签发证书、撤销证书、发布CRL、存储和检索证书等。 CA根据证书策略验证申请者提交的信息,然后使用其私有密钥对证书进行数字签名;除此之外,CA还负责撤销证书,发布CRL。 RA是最终用户与CA之间的桥梁,是提供注册服务和接受证书申请的专门机构,并且负责管理CA签发的证书。 证书/CRL库用于存储密钥,证书和CRL。除了核心组件之外,PKI还包括最终用户和依赖方,最终用户可以是人、应用服务器、也可以是路由器、防火墙等网络设备。依赖方是接受包括证书和签名信息的人和机构,利用证书提供的公钥验证其有效性,与持证人建立保密通信,接受方处于依赖的地位[Nan and Chen,2000]。 为了建立更完善的网络信任环境,IETF(Internet Engineering Tast force , Internet 工程任务组)PKIX(Public Key Infrastructure Using X.509)工作小组不断的对PKI进行扩充,如引入新的组件TSA(Time Stamp Authority,时间戳中心)提供不可否认性服务。TSA将时间戳和数字签名相结合,对某一特定时间的交易信息进行签名,证明其准确的时间。如果交易一方声称某次交易是后来伪造的,对方只需出示交易时TSA的签名就可以证明该交易发生的时间。 3.2.2 现有的PKI标准 基于PKI的框架,不同厂商有各自的标准,其中比较著名的有美国RSA实验室制定的PKCS(Public-Key Cryptography Standards);MasterCard公司制订的SET(Secure Electronic Transaction),用于支持网上银行卡的支付;IETF(Internet 工程工作组)的PKIX工作组为支持电子邮件、www和IP安全也指定了一系列标准草案。 上述标准中PKCS标准的使用最为广泛,它综合补充多种其他国际标准组织的有关标准,根据应用的需要定义了一系列标准,涵盖了对数字签名、数字封包、数字证书,密钥交换协议、交互身份鉴别等应用的支持。下面是PKCS协议族中常用的标准: ⑴PKCS #1(RSA Cryptography Standard):RSA加密标准。 ⑵PKCS #7(Cryptographic Message Syntax Standard):密文语法标准,被加密或签名数据包的通用格式语法。 ⑶PKCS #10(Certification Request Syntax Standard):证书请求语法标准,包含公钥和名字等一组属性。 3.3 系统的信任模型 PKI的目的是建立可信任的网络环境,因此选择合适的信任模型和确定最终用户的信任点是PKI设计的重要环节。目前,已经应用的信任模型包括严格层次(Hierarchical)结构模型,分布式信任模型,Web模型和以用户为中心的信任模型[Adams and Lloyd,1999]。本系统采用的是严格层次结构模型,它是最早被提出的PKI信任模型。在该模型中,整个信任环境中的信任点是根CA,其最基本的形式是由一个CA组成单级CA层次结构,我们所设计的就是单级CA层次结构,所以需要自签名。 3.4 数字证书 数字证书一般简称为证书,与司机驾驶执照和日常使用的其他身份证件相似,它包括一个公开密钥,拥有对应私有密钥的实体身份以及CA对这些内容的数字签名,其格式一般遵循ITU(International Telecomunications Unions,国际电信同盟)制定的X.509标准,目前已经发展到了版本3,其具体字段及说明如表2.1所示[RFC,2459]: 表3-1 X..509v3数字证书字段名及说明 字段名 说明 Version 证书版本号 Serial number 证书唯一序列号 Signature Algorithm ID CA签名使用算法标志 Issuer name 证书发行者名称 Validity period 证书生效日期和失效日期 Subject(user)name 证书主体名称 Subject public key information 证书主体公开密钥信息 Issuer unique indentifier CA唯一标志 Subject unique indentifier 证书主体唯一标志 Extentions 证书扩充内容 Signature on the above fields CA对以上内容的签名 3.5 系统的标准化 以下是本系统的标准化内容列表: ⑴基本安全算法: 表3-2 基本安全算法列表 标准化内容 标准名称 备注 基本安全算法 PKCS#1:RSA密码规范(v2.O) RFC 2437 PKCS#7:加密报文语法(v1.5) RFC 2315 PKCS#10:认证请求语法(v1.5) RFC 2314 MD5散列函数 RFC 1321 RSA用散列函数 ANSI X 31-2 ⑵公钥基础设施: 表3-3 X.509v3公钥基础设施列表 标准化内容 标准名称 备注 公钥基础设施 ASN.1规范 X.208 CA证书格式 X.509 InternetX.509 PKI证书和CRL轮廓 RFC 2459/PKIX InternetX.509 PKI证书管理协议 RFC 2510/PKIX InternetX.509 PKI证书政策和实施框架 RFC 2459/PKIX InternetX.509 PKI证书中的密钥交换算法的表达 RFC 2528/PKIX InternetX.509 PKI时间戳协议TSP PKIX InternetX.509 PKI证书管理报文 PKIX 4 需求分析 在研究了系统开发模式和PKI理论基础之后,结合本系统的自身特点,以理论为指导,进行CA的构建。从本章开始,便进入系统开发设计阶段。 4.1 功能需求 随着计算机的普及和互联网的飞速发展,人们对网络上数据传输的安全性,数据传输的完整性,保密性以及真实性有了更高的要求,CA认证中心作为第三方的权威认证机构应运而生。本项目主要解决以下需求: ⑴用户的注册。 ⑵用户申请个人证书。 ⑶下载已经颁发的证书。 ⑷查询吊销的证书,下载吊销列表。 ⑸CA管理员核查用户个人信息,如果符合要求且真实可靠则同意颁发个人证书。 ⑹吊销个人证书。 ⑺生成根证书。 ⑻生成吊销列表。 4.2 结构化开发方法 软件开发方法是一种使用早已定义好的技术集及符号表示习惯来组织软件生产过程的方法,好的软件开发方法是克服软件微机的重要途径之一,对软件工程及软件产业的发展起到了不可估量的作用。本系统需要处理大量数据针对这一特点我们采用了“结构化方法”进行开发,结构化方法由结构化分析(SA)、结构化设计(SD)和结构化程序设计(SP)构成,它是一种面向数据流的开发方法,特别适合于数据处理领域的问题,应用较广,技术成熟。 为了能圆满的完成任务,我进行了大量的前期准备工作包括系统的可行性研究、需求分析、用户要求等,最终确定采用结构化的建模方式。本系统设计总的指导思想是:自顶向下、逐步求精,基本原则是功能的分解与抽象,所使用的工具有数据流图(DFD) 和数据字典(DD)。 ⑴数据流图在SJZRI.CA中的应用: 利用数据流图表示系统逻辑模型,它以图形的方式描绘了数据在系统中流动和处理的过程,先考虑问题最本质的方面,忽略细节,形成问题的高层概念,然后再逐层添加细节,即在分层过程中采用不同程度的”抽象”级别,最高层的问题越抽象,而低层的较为具体,由此顶层抽象的描述了整个系统,底层具体地画出了系统的每一个细节,而中间层是从抽象到具体的逐步过渡。 ⑵数据字典在系统的应用: 本系统的数据字典描述了系统的”分解”,系统由哪几部分组成,个部分之间的联系,它定义了数据流图中的各个成分的具体含义,它以一种准确的、无二义性的说明方式为系统的分析、设计及维护提供了有关元素的一致的定义和详细的描述,它和数据字典共同构成了系统的逻辑模型。 以下两节描述了具体的建模过程。 4.3 系统的建模 数据流图可以清楚反映用户需求及数据加工处理过程,有利于明确各个功能模块之间的关系。 4.3.1 数据流图 :代表数据流(蓝色为进,黄色为出) :代表加工(为绿色) :代表源或者宿(为紫色) :文件 前注: 数据流:数据流有一组固定成分的数据组成,表示数据的流向。 加工:加工描述了输入数据流到输出数据流之间的变幻,也就是输入数据流作了什么处理后变成了输出数据流。 文件:文件用来表示暂时存储的数据,每个文件都有一个名字。 宿/源:源和宿通常是指存在于软件系统之外的人员或组织。 ⑴根证书的制作CA服务器的数据库 CA超级管理员 根私钥文件 1.CA根证书的制作模块 制作根证书所需数据 根证书 图4-1 顶层图 注:首先由CA超级管理员输入制作根证书所需数据(数据的包含见后面的数据词典)。CA根证书制作模块按要求制作根证书并产生私钥文件,私钥文件用私钥密码加密得到加密后的私钥文件,根证书制作模块按超级管理员要求把根证书于私钥文件一起存入CA服务器中。(如果CA没有根证书就无法向用户颁发值得信任的证书) CA超级管理员 1.2证书制作(自签名) CA服务器的数据库 CSP 私钥文件 公钥与私钥 1.1读取申请数据 申请证书的数据 证书 申请证书的数据 图4-2 1层图 注:CSP产生公钥私钥对,公钥与读取得到的申请数据一起产生了证书,私钥写在私钥文件内。 ⑵普通用户的证书的申请与下载 申请证书者数据 证书与私钥文件(或拒绝信息 用户 1.CA 网站模块 申请处理结果 证书与私钥文件(或拒绝信息 申请证书者数据 CA数据库模块 图4-3 顶层图1 申请证书者数据 申请证书者数据 CA数据库模块 2.CA管理模块 证书与私钥文件(或拒绝信息) CA的操作员 申请处理结果 申请处理结果 图4-4 顶层图2 注:证书的申请有可能被通过也可能被拒绝。开始申请时,需要设定密码,并与个人资料一起存入CA数据库模块;如果最后通过申请,下载证书时需要验证密码及身份,如果没有被通过,被拒绝则是得到拒绝的信息。 CA管理模块 CSP 2.2证书的制作 2.1读取证书数据 公钥与私钥 申请证书者的数据 使用根证书的私钥签名 申请证书者的数据 申请处理结果 下载证书 图4-5 1层图 注:证书的数据即是申请证书者的数据,这个加工是从源数据库管理模块提取申请证书者的数据,再将其传给CA操作员,CA操作员再决定对申请的通过与否。如果通过,就用用户申请信息制作出证书,否则传回拒绝信息。(证书信息流包括证书或者拒绝信息) 申请证书者的数据 1.1传给数据库并返回一个序列号 1.2调入证书私钥文件或者拒绝信息 申请证书者的数据 根据序列号和密码下载 b.申请结果 根据结果调取证书与私钥文件 钥文件 a.证书与私钥文件或拒绝信息 图4-6 顶层图 注:申请者输入必要数据,网站发给一个编号,并将其数据传给数据库;下载证书时凭着申请使得自己输入的密码与发给的序列号请求下载,网站访问数据库,察看处理结果,根据结果决定是发证书与私钥文件还是返回拒绝信息。 4.3.2 数据词典 ⑴证书 证书=证书主体+证书签名算法标示+证书签名算法值; 证书主体=证书版本号+证书序列号+证书发行者名称+证书有效期+证书主体名称+证书公钥+证书发行者ID+证书主体ID+证书的扩展段; 证书的扩展段=身份证号+E-MAIL地址。 ⑵申请证书者的数据 申请证书者的数据=姓名+性别+年龄+所属
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服