论文部分内容阅读
摘 要 大型实验设备出租系统的主要目的是为了使得那些在实验过程中必不可少却又太贵,又不是经常使用的实验设备能够在各个实验室、团体以及个人之间流通,从而达到降低成本,提供方便的目的。大型试验设备出租系统为大型试验设备的拥有者和暂时需要租用大型试验设备的人/机构提供更加便捷和安全的平台。该系统使用数据库技术保存和管理需要招租的设备信息、所有者信息、租赁信息等。并通过数据库防注入和Discuz加密为使用者提供安全的网络环境。
关键词 实验仪器设备;租赁;数据库;防注入;垂直搜索;Discuz加密
中图分类号:TP311 文献标识码:A 文章编号:1671-7597(2013)15-0039-02
就目前国内高校和一些公司的现状看来,每所高校和公司每年都会有很多的大型项目,一旦这些项目验收成功,那么在项目过程中所用的大型设备都是处于闲置状态,这样既浪费了资源、提高了成本,也降低了设备的利用率、降低了经济效益。那么如果有一个平台可以让对闲置设备进行租赁则可有效扩大设备销路,促进资产的合理使用,这是从出租者的角度考虑的。那么从承租者的角度来看,对于某些学校和公司而言,在做一些项目的时候可能会对某些高端设备有需求,但是昂贵的价格无疑大大增加了项目成本,所以从减少资金占用和减轻资金负债状况的角度出发,如果有一个平台可以让他们以租赁的方式得到自己所需的设备则有效地解决了这一问题。所以不管从出租者还是承租者的角度出发,都需要一个为实验室大型设备提供租赁的平台。
1 系统描述
功能描述:本系统有六个模块组成,各个模块的详细描述如下。
1)设备管理模块:设备管理模块是整个设备租赁平台的基础,为平台基础功能的实现提供支持。该模块负责将所有的实验设备详细管理起来,供用户进行查询、增删和修改。
2)事务管理模块:事务管理模块负责对平台上用户与用户之间、用户与设备之间发生的各种活动做详细的管理,并为用户和管理员提供方便的对记录的活动信息进行查看、删除等操作的功能。为用户和管理员提供详细的活动记录查询依据。
3)线上交易模块:线上交易模块主要负责与网上银行系统、第三方支付平台进行交互,用于满足用户线上完成交易的需求。
4)用户管理模块:用户管理模块主要用于记录和管理用户的基本信息,包括用户名、密码、绑定邮箱、绑定电话号码等,系统通过该模块进行用户的添加/删除操作以及对用户详细信息的增删改查。
5)日志管理模块:日志管理模块主要负责对用户的使用情况和行为进行记录,例如:用户登录本系统的信息(用户名、登录IP、登录/退出的时间)、用户在本平台进行的操作、用户进行线上交易的记录。通过这种日志记录的方式提高系统的安全性,同时为用户可能出现的账务纠纷提供交易证明。
6)数据备份模块:系统备份模块主要负责在系统的数据发生改变时进行备份,以确保系统的安全。
2 系统分析
本系统主要由登录、设备管理、搜索和在线交易四个部分组成。用户可以在不注册(即不登录)的情况下直接在平台上进行设备的查找和搜索操作。而用户要想发布和管理自己的闲置设备或者是作为租赁方与出租方进行租赁方面的沟通以及随后的在线交易,就必须要在注册后登录到本平台。
本平台的数据库系统主要用于保存闲置设备信息、用户信息以及日志信息。闲置设备信息主要包括设备名称、设备型号、设备使用情况、设备的所有权单位或个人、设备可以出租的日期等。用户信息主要包括用户的姓名、所属单位、联系方式、用户信用评分等。为了保护用户的隐私信息不被肆意窃取,我们规定只有公布了自己全部信息的登录用户才可以看到其他用户的相应信息。同时为了降低用户在被平台被骗的几率,我们加入了用户信用评分机制。日志信息主要记录用户的各种与信息安全、系统安全相关的活动,包括登陆时间、登陆IP、交易记录等。
为了方便用户的使用,我们为用户提供了线下交易和线上交易两种方式。对于线上交易,我们采取与成熟的网上银行系统、第三方支付平台(支付宝、财付通等)对接的方式,以确保用户交易的安全性。
系统的设备搜索功能采用关键字搜索和分类搜索相结合的方式。用户可以通过输入关键字进行搜索,为了适应用户的需求,我们允许用户选择进行精确搜索或者是模糊搜索;通过精确搜索可以查找含有完全匹配关键字的条目,而模糊搜索可以让用户找到所有包含关键字中字符的条目。用户还可以通过设备的类型进行逐级分类查询,直到找到自己想要找的设备。
3 技术实现
3.1 开发技术
本平台采用了ASP.NET和MySQL相结合的技术方案。使用ASP.NET来为用户提供简单方便的数据库接口、完善的数据库访问操作以及良好的交互界面;使用MySQL为系统提供数据库支持,包括数据库的管理、数据库的维护以及用户的权限管理,保存大量的闲置设备信息、用户信息和日志信息,并可以通过ASP.NET与SQL语句的结合的方式来完成对数据库的访问和操作。同时,本系统还使用PHP来进行动态网页设计,通过Apache来完成服务器和客户端之间的数据交流。本系统采用B/S架构,对计算机操作系统平台没有特殊要求,用户几乎可以通过任何计算机系统上的网页浏览器使用本租赁平台。
3.2 数据库防注入
本系统采用了数据库防注入技术,避免了不法分子通过注入SQL语句的方式进行攻击,对数据库中的数据进行非法修改。
为了实现数据库防注入,需要定义两个函数:一个函数用于实现数据库的注入检测:checkInject(),另一个函数用来对登录数据库的url进行检测:checkUrl()。在防止SQL语句注入的程序段通过调用isLegal()函数,对输入值进行合法性检测,合法则返回true;不合法则返回false,提示输入信息非法并退出。在检查登录url时使用了pregReplace()函数,通过进行正则表达式的搜索和替换操作来确认此url是否合法。
3.3 加密算法
为了提高系统的安全性,本系统使用了Discuz加密算法。Discuz加密算法是先对密码进行MD5加密,之后再与生成的多位随机数相结合再次进行MD5加密,从而提高密码的安全性。
系统使用的是六位随机数对用户注册密码进行加密,同时也在对用户表的设计过程中加入了注册时提供的相应字段信息。将此随机六位数保存在用户表中,在用户登录的过程中通过输入的账号查找到与之对应的六位随机数,将这六位数与用户登录时输入的密码相结合进行Discuz加密,通过比较加密后的密文与用户信息表中保存的数据来确定是否输入正确。
4 总结
随着互联网的普及,互联网已经渐渐成为了人们获取信息的主要途径。而实验仪器设备网络租赁平台系统符合特定人群的特定需求,同时通过互联网的载体使信息更容易传达,具有很强的实用性和推广前景,应该针对变化的需求对本系统不断进行改进和完善,使得整个实验仪器设备网络租赁系统更加方便与实用。
参考文献
[1][澳]威利,[澳]汤姆.PHP和MySQL Web开发[M].武欣,译.北京:机械工业出版社,2009.
[2]蒋继娅,刘彤,王树威.Web应用中的SQL注入攻击与防护方案研究[J].计算机安全,2008(05).
[3]王志刚,江友华.MySQL高效编程[M].北京:人民邮电出版社,2012.
关键词 实验仪器设备;租赁;数据库;防注入;垂直搜索;Discuz加密
中图分类号:TP311 文献标识码:A 文章编号:1671-7597(2013)15-0039-02
就目前国内高校和一些公司的现状看来,每所高校和公司每年都会有很多的大型项目,一旦这些项目验收成功,那么在项目过程中所用的大型设备都是处于闲置状态,这样既浪费了资源、提高了成本,也降低了设备的利用率、降低了经济效益。那么如果有一个平台可以让对闲置设备进行租赁则可有效扩大设备销路,促进资产的合理使用,这是从出租者的角度考虑的。那么从承租者的角度来看,对于某些学校和公司而言,在做一些项目的时候可能会对某些高端设备有需求,但是昂贵的价格无疑大大增加了项目成本,所以从减少资金占用和减轻资金负债状况的角度出发,如果有一个平台可以让他们以租赁的方式得到自己所需的设备则有效地解决了这一问题。所以不管从出租者还是承租者的角度出发,都需要一个为实验室大型设备提供租赁的平台。
1 系统描述
功能描述:本系统有六个模块组成,各个模块的详细描述如下。
1)设备管理模块:设备管理模块是整个设备租赁平台的基础,为平台基础功能的实现提供支持。该模块负责将所有的实验设备详细管理起来,供用户进行查询、增删和修改。
2)事务管理模块:事务管理模块负责对平台上用户与用户之间、用户与设备之间发生的各种活动做详细的管理,并为用户和管理员提供方便的对记录的活动信息进行查看、删除等操作的功能。为用户和管理员提供详细的活动记录查询依据。
3)线上交易模块:线上交易模块主要负责与网上银行系统、第三方支付平台进行交互,用于满足用户线上完成交易的需求。
4)用户管理模块:用户管理模块主要用于记录和管理用户的基本信息,包括用户名、密码、绑定邮箱、绑定电话号码等,系统通过该模块进行用户的添加/删除操作以及对用户详细信息的增删改查。
5)日志管理模块:日志管理模块主要负责对用户的使用情况和行为进行记录,例如:用户登录本系统的信息(用户名、登录IP、登录/退出的时间)、用户在本平台进行的操作、用户进行线上交易的记录。通过这种日志记录的方式提高系统的安全性,同时为用户可能出现的账务纠纷提供交易证明。
6)数据备份模块:系统备份模块主要负责在系统的数据发生改变时进行备份,以确保系统的安全。
2 系统分析
本系统主要由登录、设备管理、搜索和在线交易四个部分组成。用户可以在不注册(即不登录)的情况下直接在平台上进行设备的查找和搜索操作。而用户要想发布和管理自己的闲置设备或者是作为租赁方与出租方进行租赁方面的沟通以及随后的在线交易,就必须要在注册后登录到本平台。
本平台的数据库系统主要用于保存闲置设备信息、用户信息以及日志信息。闲置设备信息主要包括设备名称、设备型号、设备使用情况、设备的所有权单位或个人、设备可以出租的日期等。用户信息主要包括用户的姓名、所属单位、联系方式、用户信用评分等。为了保护用户的隐私信息不被肆意窃取,我们规定只有公布了自己全部信息的登录用户才可以看到其他用户的相应信息。同时为了降低用户在被平台被骗的几率,我们加入了用户信用评分机制。日志信息主要记录用户的各种与信息安全、系统安全相关的活动,包括登陆时间、登陆IP、交易记录等。
为了方便用户的使用,我们为用户提供了线下交易和线上交易两种方式。对于线上交易,我们采取与成熟的网上银行系统、第三方支付平台(支付宝、财付通等)对接的方式,以确保用户交易的安全性。
系统的设备搜索功能采用关键字搜索和分类搜索相结合的方式。用户可以通过输入关键字进行搜索,为了适应用户的需求,我们允许用户选择进行精确搜索或者是模糊搜索;通过精确搜索可以查找含有完全匹配关键字的条目,而模糊搜索可以让用户找到所有包含关键字中字符的条目。用户还可以通过设备的类型进行逐级分类查询,直到找到自己想要找的设备。
3 技术实现
3.1 开发技术
本平台采用了ASP.NET和MySQL相结合的技术方案。使用ASP.NET来为用户提供简单方便的数据库接口、完善的数据库访问操作以及良好的交互界面;使用MySQL为系统提供数据库支持,包括数据库的管理、数据库的维护以及用户的权限管理,保存大量的闲置设备信息、用户信息和日志信息,并可以通过ASP.NET与SQL语句的结合的方式来完成对数据库的访问和操作。同时,本系统还使用PHP来进行动态网页设计,通过Apache来完成服务器和客户端之间的数据交流。本系统采用B/S架构,对计算机操作系统平台没有特殊要求,用户几乎可以通过任何计算机系统上的网页浏览器使用本租赁平台。
3.2 数据库防注入
本系统采用了数据库防注入技术,避免了不法分子通过注入SQL语句的方式进行攻击,对数据库中的数据进行非法修改。
为了实现数据库防注入,需要定义两个函数:一个函数用于实现数据库的注入检测:checkInject(),另一个函数用来对登录数据库的url进行检测:checkUrl()。在防止SQL语句注入的程序段通过调用isLegal()函数,对输入值进行合法性检测,合法则返回true;不合法则返回false,提示输入信息非法并退出。在检查登录url时使用了pregReplace()函数,通过进行正则表达式的搜索和替换操作来确认此url是否合法。
3.3 加密算法
为了提高系统的安全性,本系统使用了Discuz加密算法。Discuz加密算法是先对密码进行MD5加密,之后再与生成的多位随机数相结合再次进行MD5加密,从而提高密码的安全性。
系统使用的是六位随机数对用户注册密码进行加密,同时也在对用户表的设计过程中加入了注册时提供的相应字段信息。将此随机六位数保存在用户表中,在用户登录的过程中通过输入的账号查找到与之对应的六位随机数,将这六位数与用户登录时输入的密码相结合进行Discuz加密,通过比较加密后的密文与用户信息表中保存的数据来确定是否输入正确。
4 总结
随着互联网的普及,互联网已经渐渐成为了人们获取信息的主要途径。而实验仪器设备网络租赁平台系统符合特定人群的特定需求,同时通过互联网的载体使信息更容易传达,具有很强的实用性和推广前景,应该针对变化的需求对本系统不断进行改进和完善,使得整个实验仪器设备网络租赁系统更加方便与实用。
参考文献
[1][澳]威利,[澳]汤姆.PHP和MySQL Web开发[M].武欣,译.北京:机械工业出版社,2009.
[2]蒋继娅,刘彤,王树威.Web应用中的SQL注入攻击与防护方案研究[J].计算机安全,2008(05).
[3]王志刚,江友华.MySQL高效编程[M].北京:人民邮电出版社,2012.