2-3. 账号管理子系统设计

网络安全传输系统整体设计:

  1.基本传输子系统+OpenSLL加密传输 (客户端 <->服务器端)

  2.线性池的优化设计(并行服务器)

  3.基于sqlite账号管理子系统    (验证客户端)(1.数据文件置于客户端目录下;2,客户端加入数据验证程序(利用数据文件中查找))

对于数据库系统:

  访问数据库应用 -> 管理数据库系统 -> 数据库存储 (自上而下)

数据库中数据以表的形式而存在,当处理大批量数据时,更体现其高效性与安全性!(结构化查询语言SQL,用于访问数据库中的数据)

创建表 creat table stu name varchar(10),number small(int)  表名 变量-类型
向表中插入数据 insert into stu values('HJH',1)                          表名 name-number
表中查询数据 select * form stu
表中删除数据 delete form stu where 范围

 

 

 

 

 

-----------------------------------------------------------------------------------------

数据库移植、创建数据文件

  解压运行"./configuer --host=arm-linux- --prefix=${PWD}/_install"配置命令 -> 生成Makefile文件-> make、make install -> 将产生的库函数文件全部复制与/rootfs/lib/目录下,并运行产生test_db执行文件;

#test_db sql.db "create table stu (name varchar(10),number small(int) )";创建sql_db数据库文件

#test_db sql.db "insert into stu values ( 'david',1 )"; 向数据可中插入数据

#test_db sql.db "insert into stu values ( 'HJH',1 )";  

#test_db sql.db "insert into stu values ( 'CC',1 )";  

 

数据库应用

  数据库账号管理子系统,主要用于管理客户端账号,非允许客户禁止登陆服务器

-> 1.创建数据库文件sql.db(存储可登录的用户信息),存储于客户端目录下;

->2.客户端程序内加入登陆验证程序,查询sql.db信息表中是否匹配,错误即exit(0)立即退出。

main()主函数下:
if(login()!=0)
    {
        printf("wrong username or password!\n");
        exit(0);    
    }

int login()   //登陆验证函数,成功返回0
{
    char username[10];
    char passwd[10];
    sqlite3 *db;
    char sql[50];
    int success;
    //1.通知输入用户名和密码
    printf("User name: ");  scanf("%s",username);
    printf("Password: ");    scanf("%s",passwd);
    //2.根据用户名,从数据库提取正确的密码
    sprintf(sql, "select passwd from tb0 where name='%s';",username);  
    sqlite3_open("sql.db", &db);                 /*a.打开数据库*/
    sqlite3_exec(db, sql, callback, 0, NULL);     /*b.执行sql语言*/ 
    sqlite3_close(db);                            /*c.关闭数据库*/  
    //3.比较用户输入的密码和数据库提取出的密码,以决定是否登录成功
    success = strcmp(passwd,passwd_d);     //成功返回0
    return success;
}

----------------------------------------------------------------

网络安全传输系统

  1)通过对基础传输子系统的程序,实现客户端上传或下载服务器程序。在此基础上加入OpenSSL加密机制增强网络传输的安全性;  2)应用线性池技术优化服务器,实现多客户端同时访问并行执行任务。  3)同时为了提高对客户端账号的管理,加入数据库账号管理子系统,对欲登录服务器的客户端进行账号验证,非数据库允许账号禁止登陆。  实现网络安全的环境下有序进行文件传输操作。

 

 

posted @ 2019-07-24 22:09  行路人&  阅读(540)  评论(0编辑  收藏  举报