2.3.2 RSA数字签名算法的实现
RSA数字签名算法包括两个算法:签名算法和签名验证算法。1.签名算法,先用SHA1算法对要签名的消息做散列计算,生成一个消息摘要。再对摘要做RSA计算,通过加密算法,用持证人的私钥来加密消息摘要,得到加密后的密文。2.签名验证算法,验证时需要两步:用签名者公开的密钥解密密文得打一个消息摘要,验证者在对原文消息进行相同的SHA1哈希算法计算得到一个新的消息摘要,对比两个消息摘要。如果两个摘要相同,则验证成功,确认签名文件为签名者的,不然会造成验证失败。
RSA是被研究使用最广泛的公钥算法,经历了各种考验,逐渐为人们接受,被认为是目前最优秀的公钥方案之一。但自身也存在着缺点比如明文长度有限,加密的明文长度不能超过RSA密钥的长度-11,密文的长度总是密钥的长度的一半,比如1024位的,密文长度是64,如果是1032位,密文长度是65位。
3. 系统分析和设计
3.1需求分析
对于使用证件的人们来说,证件信息安全问题越来越受到他们的关注。信息安全包括信息的完整性,数据不被第三方破坏和修改。在对纸质证件进行网上查实的时候为了保证读取的信息是真实有效的,利用数字签名技术的保密性读取数据。
在对系统进行需求分析时,逐步细化对系统的要求,描述系统要处理的数据域,并给系统开发提供一种可转化为数据设计、结构设计和过程设计的数据和功能表示。在系统完成后,制定的系统规格说明还要为评价系统质量提供依据。
毕业证信息数字签名系统主要有注册、登陆、添加学生信息、查询学生信息、修改学生信息等功能模块。根据实际的应用流程设计出功能模块图如图1所示。
图1 系统功能模块图

3.2功能分析
系统主要功能是实现从数据库读取和写入数据的时候保护数据的安全,分为查询和写入信息两个模块即信息查询模块和信息修改模块。任何人可以直接注册登陆进行信息查询,当个人信息有误的时候可以联系管理员进行修改。管理员可以直接进行信息的修改。系统用例图如图2所示。
 
图2 系统用例图
3.3 数据库设计
数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。
数据库设计是在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。数据库系统需要操作系统的支持。用户在需求分析阶段所得到的应用需求应该首先抽象为信息世界的结构,才能更好的用某一DBMS实现这一需求。概念结构是各种数据模型的共同基础,是对现实世界的一个真实模型。概念结构拥有易于理解、易于更改和易于向关系、网状、层次等各种数据模型转换等特点。系统使用SQL Server 2005作为后台数据库,涉及到用户表和学生信息表,用户表存储系统注册的用户,用flag字段标识用户和管理员;学生信息表的ID字段是明文,其他字段都是密文。
4. 系统实现
毕业证信息数字签名系统主要包括用户登录模块、用户注册模块、学生信息添加模块、学生信息查询模块、学生信息修改模块。主要模块的详细设计与实现如下。
4.1用户登录模块
用户进入登录界面之后,输入用户名和密码之后,点击登录按钮,系统首先判断用户名和密码是否为空,在用户名和密码都不为空的情况下,根据用户名和密码在数据库中查找是否有用户名和密码都相等的行,如果有的话则表示该用户存在,允许其登录,并且在登陆的时候在数据库中获取用户所在行的flag,如果flag为1,表示该用户是管理员,如果flag是0,表示该用户是普通用户,然后通过构造函数重载,将flag传递到功能界面,如果是管理员,则所有功能都可以使用,如果是普通用户,则把修改学生信息和添加学生信息这两项功能的Button按钮隐藏起来,已实现不同角色的用户拥有不同的权限。
上一篇:基于.net的户外用品专营商城的设计和实现
下一篇:ASP.net家具用品宣传网站的设计与实现

银行行办公信息服务系统【1544字】

论信息技术茬外语教學中的應用【3270字】

计算机信息管理茬第三方...

电子商务中信息不對称问题研究【2365字】

用友NC信息系统的实施應用实践研究【3307字】

网络信息安全技术管理的...

商业银行管理信息系统开...

国内外图像分割技术研究现状

公寓空调设计任务书

中国学术生态细节考察《...

AT89C52单片机的超声波测距...

10万元能开儿童乐园吗,我...

承德市事业单位档案管理...

志愿者活动的调查问卷表

神经外科重症监护病房患...

C#学校科研管理系统的设计

医院财务风险因素分析及管理措施【2367字】