曹记东 和斌涛
摘要:文章设计的手机签到系统集会议通知、会议签到、记录报表、记录查询四大功能于一身。基于RsA和二维码加密技术,同时在利用二维码扫码签到时合理地考虑了扫码时间、扫码地址、扫码身份识别等因素,可以有效地防止异地扫描和现场代签等情况。
关键词:加密;解密;二维码;RsA加密算法
随着智能手机的普及,二维码在人们生活的各行各业中得到广泛应用,运用二维码进行手机扫码签到具有方便、易操作、准确等优势,本系统将RSA等加密方法和二维码技术相结合,增强了手机二维码签到的安全性。
1.系统功能描述
本系统是基于RSA和二维码加密手机签到系统,利用RSA等加密技术结合二维码的应用,实现会议通知、扫码签到、报表记录、会议记录查询等功能。
1.1RSA算法加密与解密
(1)加密:每次新建会议,系统会自动将会议内容进行加密,并且生成的密文、公钥、密钥都存入数据库。(2)解密:对于签到人员来说,当他在扫码签到的时候,Android端会获取他的手机唯一标识号(每部手机都有一个唯一的号)、会议ID(二维码当中存放会议ID和会议内容密文)、路由器名称和路由器的MAC地址,传送到服务器进行信息匹配,当所有信息都完全吻合的时候,服务器就会根据此人手机的唯一标识号获取此人的基本信息,将个人基本信息、公钥和密钥一起返回给Android端,当Android获得服务器返回的信息后,将公钥、密钥和在二维码当中获得的会议密文进行解密,最后将明文信息显示到Android端,以此达到解密效果。
1.2系统功能
本手机签到系统是针对某学校的二级学院设计的,服务器根据用户的属性设置不同的权限,设置为管理员角色、领导角色、教师角色。
1.2.1管理员后台
管理员不涉及会议的数据管理,只对系统进行正常维护。(1)职位添加和管理(如:院长、主任、教师)。(2)部门添加和管理(如教研室1、教研室2)。(3)开会地点添加和管理(添加开会地点时将该地点路由器的名称和MAC地址也保存进数据库)。(4)用户注册和管理。
1.2.2领导角色
(1)新建会议(会自动生成此次会议的二维码)。每次会议根据会议主题、会议时间、会议地点、会议内容利用RSA加密后生成二维码。(2)通知会议(添加开会人员)。可以选择性地邀请参会人员,邀请成功后系统会自动推送消息给参会人员以提示他开会。被通知的参会人员能通过手机收到服务器推送的会议通知。(3)查看所有会议记录。管理层人员可以查看所有会议记录。点击“查看详情”可以看到每次会议的具体内容。
1.2.3教师角色
(1)修改登录密码。(2)确认个人信息。(3)连接会议地点路由器扫描二维码签到(使用其他网络签到不会成功,开会前10分钟签到属正常,开会后30分钟属迟到,之后的扫描二维码签到不会成功)。(4)查看个人开会记录详情。每个教师可以通过手机登录自己的账号对自己参加的所有会议的签到情况进行查看。
2.系统测试
为了体现系统的正确性,作了如下测试:将会议生成的二维码放在会议地点投影仪的屏幕上,如图1所示。
图2是此次会议人员在会议扫描二维码规定时间内(包括正常签到和迟到签到),并且在会议地点使用签到软件扫描会议二维码。
测试结果:能够扫描出会议内容,并且签到成功。
非正常隋况:(1)外界无关人员使用其他软件扫描会议二维码(见图3)。
测试结果:不能签到,扫描看不到会议内容,是由于字符串乱码。
(2)图4是此次会议人员但不在开会地点使用签到专用软件扫描会议二维码(不能连接该开会地点的路由器)。
测试结果:扫描不出信息,提示到现场签到。
(3)图5是此次会员人员在会议地点,并在会议规定时间扫描会议二维码,但是属于迟到的情况。
测试结果:能签到成功,但是提示迟到。
本手机签到系统具有如下优势:
(1)数据安全性。每次会议通过二维码图片形式放在显示屏上,会议内容使用RsA加密算法加密,将密文存放在二维码当中,只有具备合法属性的用户才能看到会议内容、会议时间、参会地点,保证了数据传送的安全性。(2)及时统计。每次会议在参会人员扫码签到时,服务器会采用每隔10秒刷新签到统计结果,所有参会人员和领导在第一时间掌握到会人员的人数。(3)防止补签。对每次会议设置了扫码签到时间和能接受的迟到时间。在规定时间范围内扫码签到的为正常签到,在会议开始30分钟内签到的为迟到。会议开始30分钟后无法扫码签到,此后所有扫码均为无效签到,可以有效防止会后补签。(4)防止异地签到。每次会议签到时,手机app会获取当前会议室的路由器的MAC地址与路由器名称,提交到服务器进行验证会议地点、会议主题、签到人是否匹配。在匹配的情况下会返回签到成功,否则签到失败,提示会议地点或会议二维码不正确。这样可以有效地防止签到人在异地扫码签到或者不在本次会议范围内扫码签到。(5)防止篡改签到记录。服务器会将每次的会议信息以及用户签到信息以密文的形式存在数据库中,系统不设置更改签到状态的功能。即使拥有最高权限的领导和管理员登录系统也无法更改系统签到数据,也不能直接更改数据库的密文。所以,可以有效地防止用户私自更改签到记录。