组件外包:传输加密组件。

davidweimin 2002-09-11 09:17:01
我们正在用.NET开发一套应用系统,工期紧,打算把部分底层功能外包,“数据传输控件”是其中一部分,我把<需求说明书>贴出来,看有没大侠愿接此单?



目 录


1. 引言 2
1.1. 编写目的 2
1.2. 项目背景 2
1.3. 定义 3
1.4. 参考资料 3
2. 任务概述 3
2.1. 目标 3
2.2. 业务目标 3
2.3. 功能目标 3
2.4. 性能及技术目标 4
2.5. 运行环境 4
2.5.1. 服务器运行环境 4
2.5.2. 客户端运行环境 4
2.6. 条件与限制 4
2.7. 数据描述 5
2.8. 功能需求 5
2.9. 性能需求 5
2.10. 运行需求 5
2.11. 其他需求 5






1. 引言
1.1. 编写目的
本需求规格说明书是为了开发《数据传输控件》而编写,给系统分析和程序设计人员提供参考,使他们对软件有一个共同的理解。本说明书应成为整个开发工作的基础。程序编制人员必须严格按照需求规格来进行该控件的开发。开发完成后,验收时根据本需求规格说明书对本系统进行验收,同时本需求规格说明书还是编制《用户手册》和《测试计划》的基础。
1.2. 项目背景
根据系统的要求,需要开发一个“数据传输组件”,将服务器文件下载到客户端、和将客户端文件上传到服务器上,上传下载过程中需要进行文件加密和压缩、以及相应的解密和解压缩过程。
1.3. 定义
一、 流压缩:Streaming Compression,指在对文件进行压缩并传输过程中,不是先将文件压缩完成后再传输,而是边压缩边传输的过程。在此过程中,压缩后的数据不再另存为文件,而是直接保存在内存中,然后立即进行传输。用这种压缩并传输的方式,可以极大地提高数据压缩和传输的效率。
二、 多线程:指在数据传输过程中,对传输进程开启多个传输线程,同时进行传输,以提高数据传输速度。如:网络蚂蚁的多线程下载过程。
三、 多用户并发:指多个用户同时对数据传输组件进行调用,调用时无论该组件是开启多个进程,还是开启多个线程,都能够同时对多个用户提供服务。此方法不包括对用户的调用请求进行排队以使调用同步的方法,即使利用了操作系统提供的自动同步服务。
四、 MS.NET:指微软公司提供的Microsoft .NET Framework框架体系结构。
五、 VS.NET:指微软公司提供的Microsoft Visual Studio.NET开发工具。
1.4. 参考资料

2. 任务概述
2.1. 目标
使系统中的数据传输极大地提高运行效率,极大地提高文件上传下载的速度,极大地提高数据传输过程中的安全保密性。
2.2. 业务目标
用一个组件同时提供数据压缩、数据解压缩、数据加密、数据解密、数据传输及其他相关功能,极大地提高系统运行效率,极大地提高文件上传下载的速度,极大地提高数据传输过程中的安全保密性。
2.3. 功能目标
1. 数据压缩,文件压缩。
2. 数据解压缩,文件解压缩。
3. 数据加密,文件加密。(可选)
4. 数据解密,文件解密。(可选)
5. 文件的上传和下载。
6. 支持上传下载时的流压缩。
7. 支持多用户并发。
8. 支持多线程上传和下载。
9. 支持HTTP、TCP/IP(可选)等多种协议。
10. 上传下载过程中可以显示进度条和进度信息。
11. 各种接口参数化,包括文件名、数据内容、使用的协议、是否压缩和解压缩、是否加密和解密、是否显示进度条或进度信息等。
2.4. 性能及技术目标
1. 支持在WEB环境下的浏览器自动分发部署。
2. 支持MS.NET的XCOPY部署。
3. 数据和文件压缩比率达到或超过WINRAR的压缩比率。
4. 数据和文件加密的算法做到无法通过逆推而解密。(可选)
5. 多线程上传和下载。
6. 多用户并发的支持用户量可以无限扩展,只要系统资源允许。
7. 支持流压缩后,压缩和传输的总速度大大超过不使用流压缩时的速度。
8. 考虑到INET控件在浏览器界面中使用时的诸多问题,要求不能使用该控件进行数据传输,也不允许存在类似的问题。
9. 同时支持中英文两种语言,并能够非常容易地扩充其他语言类别。(可选)
2.5. 运行环境
2.5.1. 服务器运行环境
目前初步确定的系统环境如下:Windows 2000 Advance Server+SP2、Internet Information Service 5.0、Microsoft .NET Framework 1.0、MS SQL SERVER 2000或ORACLE 8i及其他数据库。但为了兼顾组件的可移植性,要求组件能够支持Windows NT、Windows 2000、Windows XP等操作系统,支持Microsoft .NET Framework。
2.5.2. 客户端运行环境
客户端的环境相对会多变一些,要求能够支持Windows 9X、Windows NT、Windows 2000、Windows XP等多种操作系统,浏览器支持IE4.0至IE6.0各种版本。要求客户端不需要安装Microsoft .NET Framework。可用OCX
2.6. 条件与限制
程序编码要求严格按照编码规范进行,程序中需要对关键算法和复杂算法加上完整的注释。
2.7. 数据描述
传输控件所使用的数据可以通过两种途径获得,一种是直接通过控件的一个数据参数传入,这需要调用者事先取得该数据。另一种是给控件传入一个文件路径,控件从该文件中取得需要的数据,该文件可能是一个文本文件,也可能是一个未知格式的二进制文件,或者其他格式的文件。
传输到目的端后的数据也可以通过这两种方式提供给调用者。
2.8. 功能需求
根据上述的功能目标,可以将控件划分为上传、下载、压缩、解压缩、加密、解密这样几个部分,要求在设计中尽量降低这几个模块的耦合性,以方便今后对控件的维护。
参考前述“功能目标”一节。
2.9. 性能需求
参考前述“性能及技术目标”一节。
2.10. 运行需求
1. 支持在WEB环境下的浏览器自动分发部署。
2. 要求客户端不需要安装额外的软件,不需要安装MS.NET。
3. 考虑到INET控件在浏览器界面中使用时的诸多问题,要求不能使用该控件进行数据传输,也不允许存在类似的问题。
4. 组件在运行出错后,要求不能破坏系统原有文件和数据。
5. 组件在运行出错后,需要向调用者抛出错误对象,同时将该错误的出错信息记录到系统日志或者日志文件中。具体记录到哪个系统日志中、以及哪个日志文件中,要求提供参数化接口由调用者传入。

2.11. 其他需求
1. 在设计中尽量降低功能模块之间的耦合性,并对程序中的关键算法和复杂算法添加完整的注释,以方便今后的维护。
...全文
96 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
davidweimin 2002-09-24
  • 打赏
  • 举报
回复
15000之内有没人干,可双方共同拥有产权,细节可再谈。
最好写EMAIL:WM139@163.COM
格利高里 2002-09-11
  • 打赏
  • 举报
回复
这种压缩加密传输的技术并不难,不过你提出的这个组件的业务目标、性能要求过于理想化了吧。
davidweimin 2002-09-11
  • 打赏
  • 举报
回复
我的EMAIL:WM139@163.COM
QQ:1563609
能做的可尽快与我联系。
davidweimin 2002-09-11
  • 打赏
  • 举报
回复
高标准才能出好东西嘛。具体实现部分地方还是可以变通的。比如服务端不用.NET组件,用COM.这样对不熟悉.NET的朋友会好些
最新Radmin 3.4完美破解版 隐藏任务栏图标 ] Radmin (Remote Administrator)是一款屡获殊荣的远程控制软件,它将远程控制、外包服务组件、以及网络监控结合到一个系统里,提供目前为止最快速、强健而安全的工具包。   它有以下特点:   1.运行速度快。   2.Radmin支持被控端以服务的方式运行、支持多个连接和IP 过滤(即允许特定的IP控制远程机器)、个性化的档互传、远程关机、支持高分辨率模式、基于Windows NT的安全支持及密码保护以及提供日志文件支持等。   3.在安全性方面,Radmin支持Windows NT/2000用户级安全特性,您可以将远程控制的权限授予特定的用户或者用户组,Radmin将以加密的模式工作,所有的数据(包括屏幕影像、鼠标和键盘的移动)都使用128位强加密算法加密; 服务器端会将所有操作写进日志文件,以便于事后查询,服务器端有IP过滤表,对IP过滤表以外的控制请求将不予回应。   4.Radmin 目前支持TCP/IP协议,应用十分广泛。   安全性亮点:   高级 256-位 AES 强加密用于所有数据流。   可以使用 Windows Security 或 Radmin Security。   Windows 安全性支持对特定用户使用不同的权限,或对主域、可信域和活动目录的用户组使用不同的权限。 支持自动使用登录用户凭证和 Kerberos 验证。   Radmin 安全性支持对添加到 Radmin Server 访问列表的用户使用不同的权限。 Radmin 用户验证使用新的基于 Diffie-Hellman 的密钥交换,密钥长度 2048 位。   IP Filter 仅允许从特定 IP 地址和网络访问 Radmin Server。   添加到日志文件的 DNS 名称和用户名信息。   智能防护密码猜测。   安全性已经构建到了 Radmin 的核心:   Radmin 服务器有两个安全子系统。 因此您可以设置 Radmin 使用 Windows 的内嵌安全性或 Radmin 安全性。 Radmin 支持 Windows Vista/XP/2003/2000(32位和64位)用户级安全性,带有 Kerberos 和 NTLMv2 支持,以限制来自本地计算机、主域、可信域或活动目录的用户对特定用户或用户组的远程访问。 安全设置接口与 Windows 标准统一。   使用 Radmin 安全性时,您可以为 Radmin 用户设置不同的权限。 对于用户验证和会话密钥,使用了 Diffie-Hellman 交换 2048 位密钥的设置。   对于数据流加密,Radmin 使用了带 256 密钥的 AES。 Radmin 为每个会话生成独特的 256 位密钥,从而实现了无与伦比的保护。   使用的算法是最新的加密方法,密钥长度也远远高于行业标准。   所有数据,包括屏幕图像、光标移动和键盘信号都始终加密。 对于 Radmin 2.x 和 3.x 是无法取消加密的。   Radmin 将其所有操作和事件记录到日志文件中。   Radmin 有个 IP 过滤器表,允许您限制对特定 IP 地址和网络的远程访问。   Radmin 有内置的代码测试防御机制,保护程序的代码不受改变。   Radmin 用大随机码序(random bit sequence)为每个连接生成特有的私钥,以实现无与伦比的保护。 访问密码以加密的形式保存,不会以任何形式在计算机之间传输,防止第三方截取或生成密码。   Radmin 防止错误的服务器配置。 Radmin Server 不允许空密码。   Radmin Server 积极地保护其设置,它们保存在系统注册表里。 只有管理员权限的用户才能访问这个注册表区段。   智能防护密码猜测。 这项保护包含的功能有密码反猜测安全延时、密码猜测次数过多禁止 IP 地址等。   Radmin Server 在 Windows Vista/XP/2003/2000 (32 位和 64 位) 上作为一个服务启动,而不作为应用程序启动,增强了安全性。   您可以在您的计算机屏幕上的一个窗口或全窗口内看见远程计算机的画面。   您所有的搜索活动和 新闻都直接的传输到您的远程计算机,您可以工作在远程计算机上就跟在自己的计算机上一样正确的执行。根据我们的测试及使用者的回报,Radmin在速度及可以工作的数量上胜过其他的远程控制软件。   这些远程的计算机可以放置在因特网或您的局域网络内的任何一个地方,有了Radmin您不必需要一个快速的网络联机来在远程的计算机上工作,即使您只能利用modem来联机,您也可以每秒能够到达屏幕更新5-10次的合理速度。如果利用局域网络联机的话,您可以每秒能够到达屏幕更新100-500次的实时速度。它可以上下调整来挽救带宽。   安全和可靠性   Radmin 是容易使用和非常安全的,数据以128位加密传送的,这个软件是以TCP/IP协议为基底,在广域及局域网络内有最多最广泛的协定。这个意思是您可以控制世界上任何一台的计算机。当在"Full control"的模式下时,您可以让远程的计算机做您想要的事情;档案的来回传送,甚至关机。 那是,假如您是这个系统的管理者或是已经授权给sysadmin这些允许。 Radmin 从开始就设计的非常安全。   它极为可靠,工作了许多个月也不会有例外。   容易使用   Radmin有一个重要的优势就是有一个简单的接口,它没有一些无用的功能特色来膨胀这个软件,让它难以使用、学习和变的更慢。

4,390

社区成员

发帖
与我相关
我的任务
社区描述
通信技术相关讨论
社区管理员
  • 网络通信
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧