1 / 20
文档名称:

NPSSV项目详细设计说明书.doc

格式:doc   页数:20页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

NPSSV项目详细设计说明书.doc

上传人:janny 2011/5/12 文件大小:0 KB

下载得到文件列表

NPSSV项目详细设计说明书.doc

文档介绍

文档介绍:NPSSV项目
详细设计说明书
江苏意源科技股份有限公司
Ideabank Technology Corporation Limited
目录
1. 引言 3
编写目的 3
范围 3
文档约定 3
参考资料 3
2. 架构设计 3
控制流程 3
组织关系 6
3. 模块设计 6
6
算法 7
数据结构 7
程序逻辑 8
存储分配和数组分配 8
程序单元说明 8
限制条件 8
8
其他重要信息说明 8
4. 其他设计 8
5. 需求追溯 8
6. 附录A:术语表 9
〈注:蓝色字体为提示,在正式发行时,需将其删除>

引言
编写目的
此文档所涉及的范围包括与安全隔离与信息交换系统主程序的通讯规约、日志管理程序的通讯规约及配置管理程序的通讯规约,以及日志接受,各项功能模块、组织关系。 
范围
是安全隔离与信息交换系统的服务端管理程序。
文档约定
无。
参考资料
无。
架构设计
控制流程
主要功能描述
与日志管理控制台交互
提供审计日志。
提供用户访问日志。
提供病毒日志。
提供邮件内容检查。
与用户的交互
接受用户登录请求,完成用户的验证与登录。
接受用户取消登录请求,完成用户取消登录
主程序结构
初始化程序结构
管理程序结构
日志传输程序结构
组织关系
模块设计
与配置管理控制台交互模块。
模块结构
与配置管理控制台交互
完成添加、删除、编辑用户信息的操作请求。
完成添加、删除、编辑用户组信息的操作请求。
完成添加、删除、编辑URL的操作请求。
完成添加、删除、编辑URL组操作请求。
完成添加、删除、编辑规则过滤规则的操作请求。
完成添加、删除、编辑地址绑定规则的操作请求。
完成添加、删除、编辑地址转换的操作请求。
提供当前在线用户信息,提供踢出、解锁用户的功能。
提供设置管理参数的功能。
模块主流程
命令处理流程:
通信流程:
发送命令头:
struct CmdHdr
{
u_int32_t uMagic; //校验码
u_int16_t uLen; //数据长度
u_int32_t uCmd; //命令码
};
如果命令头中长度为0,则不发送后续数据。否则
发送命令数据,长度为命名头中的数据长度。
为处理通讯时客户端突然死记或者网线断线等异常情况,客户端每隔2秒发送验证数据,如果超过2秒未接受到数据,将退出命令处理线程。
算法
口令验证,加密通道
服务端
客户端
认证请求
发送随机数
根据用户名得到密码,也进行MD5运算,比对HASH。
以HASH为密钥,对用户名和密码进行DES运算,产生sKey。
在通讯过过程中sKey,对通讯内容进行RC4运算。
用户名+HASH+随机数
MD5
随机数
密码
用户名
口令验证
客户端发送请求到服务器端,服务器端生成16随机数,发送可客户端,客户端对用户输入的用户名,密码,加上产生的16位随机数以及服务器端产生的随机数进行md5运算,产生HASH值。客户端把用户名、HASH值、随机数发送到服务器端,服务器端根据用户名得到密码,加上接受的随机数进行MD5运算,比对HASH值。如果相同通过验证。
加密通讯
服务器端通过用户验证后,客户端和服务器端都使用HASH值为密钥,对用户名和密码进行DES运算,产生相同的sKey。在通讯过程中使用sKey对通讯内容进行加密。
数据结构

程序逻辑.
与主程序通讯采用socket通讯。
初始化socket:
初始化完成后开始接受数据,采用循环接收数据,直到出错退出循环,按照struct mHdr接收命令头,然后根据相应命令接收数据。
初始化各类列表信息:
客户端传输过来的配置信息,如用户信息、用户组信息、URL、URL组、规则过滤、地址绑定规则、地址转换等信息。首先存入所对应的列表中,在程序开始时,从文件中读取历史的配置信息,添加到相应的列表中,在以后的操作中,都是首先更新列表的信息,然后更新文件中的内容。
LIST_HEAD(listhdu, curinfo) curhead; //在线用户列表
LIST_HEAD(listheadg, usergop) hdug; //用户组信息列表
LIST_HEAD(listheadu, userinfo) hdui; //用户信息列表
LIST_HEAD(listheadw, wordinfo) hdwr; //关键字信息列表
LIST_HEAD(