文件传输签名验证程序设计.doc
约59页DOC格式手机打开展开
文件传输签名验证程序设计,5万字58页 有程序摘要: 数字签名可以解决否认、伪造、篡改及冒充等问题。具体要求:发送者事后不能否认发送的报文签名,接收者能够核实发送者发送的报文签名,接收者不能对发送者的报文进行部分篡改,网络中的某一用户不能冒充另一用户作为发送者获接收者。数字签名的应用范围十分广泛,在保障电子数据交换的安全性上是一个突破性的进展,...
内容介绍
此文档由会员 刘丽 发布
5万字 58页 有程序
摘要:
数字签名可以解决否认、伪造、篡改及冒充等问题。具体要求:发送者事后不能否认发送的报文签名,接收者能够核实发送者发送的报文签名,接收者不能对发送者的报文进行部分篡改,网络中的某一用户不能冒充另一用户作为发送者获接收者。数字签名的应用范围十分广泛,在保障电子数据交换的安全性上是一个突破性的进展,凡需要对用户的身份进行判断的情况都可以使用数字签名以确保数据的完整性、私有性和不可抵赖性。
设计了一个数字签名及签名验证系统。该系统基于RSA和MD5算法以及 Winsock通信,并利用Java作为编程语言,JCreator作为开发工具,成功实现了对选定文件进行数字签名及其签名验证。
系统由客户端和服务器端两部分组成。客户端能对任意选定文件进行数字签名,并保存签名和公钥,然后通过Winsock通信将签名和公钥发送到服务器端。服务器为多线程服务器,能够处理多个客户端连接,接收它们发送过来的签名和公钥,然后对签名进行验证。
本设计最大的特点是利用了Java安全API中数字签名的功能和Java强大的网络功能,直接调用Java的内部函数实现了数字签名,利用Java中的Socket实现了Winsock通信,使得数字签名和Winsock通信的实现简化了许多。
因此,本文设计的是一个操作方便、功能齐全的简单的数字签名及签名验证系统。
关键词 数字签名,签名验证,RSA, MD5算法, Winsock通信,Java
ABSTRACT
The system consists of client-side and server-side. The client-side is able to sign any file chosed , save its signature and public key,and then send them to server-side by Winsock communication. The server-side which is a multi-thread server, is able to deal with multiple connections of client-side,receive signature and public key sended by them,and then verify the signature.
This design has a major characteristic,which is that making use of functions of signature in java’s security API and java’s powerful network functions.The design directly used functions inner java to implement digital signature ,used socket inner java to implement winsock communication,which maked it much more simple to implement digital signature and winsock communication.
KEY WORDS digital signature, signature verification, RSA, MD5 algorithm, winsock communication,Java
目录
摘 要 II
ABSTRACT III
第一章 绪论 1
1.1 课题背景 1
1.2 国内外数字签名技术的研究现状 2
1.3 任务要求和目标 5
1.4实现条件和方案的选择 6
第二章 数字签名技术原理 8
2.1 数字签名的基本原理 8
2.1.1数字签名的定义 8
2.1.2数字签名的功能和应用 9
2.2 数字签名算法 11
2.2.1 数字签名算法概述 11
2.2.2 RSA签名算法 12
2.2.3 MD5算法简介 13
2.3 数字签名在JAVA中的实现方法 15
第三章 软件设计 19
3.1 软件设计思路 19
3.2 系统框图 20
3.2.1 程序流程图 20
3.2.2程序模块图 21
3.3 系统详细设计 23
3.3.1 客户端程序 23
3.3.2 服务器端程序 26
3.3.3 利用Sokcet实现Winsock通信 29
第四章 软件测试与分析改进 33
4.1 系统整体功能测试 33
4.2 客户端功能测试 34
4.3 服务器端功能测试 35
4.4 软件性能整体分析与改进 37
第五章 总结 39
结束语 40
参考文献 41
附录 42
附录Ⅰ 42
附录Ⅱ 47
摘 要
本
摘要:
数字签名可以解决否认、伪造、篡改及冒充等问题。具体要求:发送者事后不能否认发送的报文签名,接收者能够核实发送者发送的报文签名,接收者不能对发送者的报文进行部分篡改,网络中的某一用户不能冒充另一用户作为发送者获接收者。数字签名的应用范围十分广泛,在保障电子数据交换的安全性上是一个突破性的进展,凡需要对用户的身份进行判断的情况都可以使用数字签名以确保数据的完整性、私有性和不可抵赖性。
设计了一个数字签名及签名验证系统。该系统基于RSA和MD5算法以及 Winsock通信,并利用Java作为编程语言,JCreator作为开发工具,成功实现了对选定文件进行数字签名及其签名验证。
系统由客户端和服务器端两部分组成。客户端能对任意选定文件进行数字签名,并保存签名和公钥,然后通过Winsock通信将签名和公钥发送到服务器端。服务器为多线程服务器,能够处理多个客户端连接,接收它们发送过来的签名和公钥,然后对签名进行验证。
本设计最大的特点是利用了Java安全API中数字签名的功能和Java强大的网络功能,直接调用Java的内部函数实现了数字签名,利用Java中的Socket实现了Winsock通信,使得数字签名和Winsock通信的实现简化了许多。
因此,本文设计的是一个操作方便、功能齐全的简单的数字签名及签名验证系统。
关键词 数字签名,签名验证,RSA, MD5算法, Winsock通信,Java
ABSTRACT
The system consists of client-side and server-side. The client-side is able to sign any file chosed , save its signature and public key,and then send them to server-side by Winsock communication. The server-side which is a multi-thread server, is able to deal with multiple connections of client-side,receive signature and public key sended by them,and then verify the signature.
This design has a major characteristic,which is that making use of functions of signature in java’s security API and java’s powerful network functions.The design directly used functions inner java to implement digital signature ,used socket inner java to implement winsock communication,which maked it much more simple to implement digital signature and winsock communication.
KEY WORDS digital signature, signature verification, RSA, MD5 algorithm, winsock communication,Java
目录
摘 要 II
ABSTRACT III
第一章 绪论 1
1.1 课题背景 1
1.2 国内外数字签名技术的研究现状 2
1.3 任务要求和目标 5
1.4实现条件和方案的选择 6
第二章 数字签名技术原理 8
2.1 数字签名的基本原理 8
2.1.1数字签名的定义 8
2.1.2数字签名的功能和应用 9
2.2 数字签名算法 11
2.2.1 数字签名算法概述 11
2.2.2 RSA签名算法 12
2.2.3 MD5算法简介 13
2.3 数字签名在JAVA中的实现方法 15
第三章 软件设计 19
3.1 软件设计思路 19
3.2 系统框图 20
3.2.1 程序流程图 20
3.2.2程序模块图 21
3.3 系统详细设计 23
3.3.1 客户端程序 23
3.3.2 服务器端程序 26
3.3.3 利用Sokcet实现Winsock通信 29
第四章 软件测试与分析改进 33
4.1 系统整体功能测试 33
4.2 客户端功能测试 34
4.3 服务器端功能测试 35
4.4 软件性能整体分析与改进 37
第五章 总结 39
结束语 40
参考文献 41
附录 42
附录Ⅰ 42
附录Ⅱ 47
摘 要
本