一种防篡改的考生数据传输方法
【技术领域】
[0001]本发明涉及数据传输领域,特别是涉及一种防篡改的考生数据传输方法。
【背景技术】
[0002]随着科技的发展,计算机技术也日益发展,目前在各种考试中,计算机的应用也越来越广泛,从考生报名、考生信息校验、生成准考证,到进行上机考试或者进行考试数据传输,还有考试后进行成绩发放等,这些过程都可能用到计算机辅助进行。因此,计算机传输考生数据的安全性对考试的公平性将有至关重要的作用。而在目前,随着信息技术的发展和普及,不法分子利用高科技手段进行考试作弊已呈现集团化、专业化、规模化并有蔓延的趋势,另外由于各种考试的重要性日益提高,导致考生作弊行为日益增多。总的来说,目前考试安全问题日益严重,报名信息、考试信息、成绩等考生数据被篡改的可能性越来越大,数据安全性低。
【发明内容】
[0003]为了解决上述的技术问题,本发明的目的是提供一种防篡改的考生数据传输方法。
[0004]本发明解决其技术问题所采用的技术方案是:
一种防篡改的考生数据传输方法,包括:
加密步骤:生成加密的数据头文件后,将数据头文件与考生数据文件打包压缩生成Zip文件,并将预设的数据签名写入该Zip文件的尾部;
数据上传步骤:将Zip文件转化成二进制数据文件后,上传到考试服务器;
数据下载步骤:通过互联网从考试服务器上下载指定的二进制数据文件,并保存为zip文件;
解密步骤:从zip文件的尾部读取数字签名,并判断该数字签名是否与预设的数字签名一致,若是,则逐层解密验证zip文件中的考生数据文件的安全性,否则,进行异常告警。
[0005]进一步,所述加密步骤,具体包括:
511、获取预设的第一密钥和第二密钥,将考生ID、第一密钥以及第一密钥的长度按照预设顺序组合后,采用第二密钥进行加密后生成数据头文件;
512、将数据头文件与考生数据文件打包压缩生成zip文件,并将预设的数据签名写入该zip文件的尾部;
所述考生数据文件包括考生ID,还包括考生的报名信息、报志愿信息、答题卡扫描图像、成绩数据和身份认证数据中的任一项或多项,所述第一密钥的长度采用两位字符表示。
[0006]进一步,所述步骤SI I,包括:
SI 11、获取预设的第一密钥和第二密钥后,计算第一密钥的长度;
S112、将考生ID、第一密钥以及第一密钥的长度按照第一密钥的长度、第一密钥、考生ID的顺序进行组合后作为明文字符串; S113、将明文字符串与第二密钥进行异或运算后,生成密文字符串并将该密文字符串作为数据头文件。
[0007]进一步,所述解密步骤,具体包括:
521、从zip文件的尾部读取数字签名,并判断该数字签名是否与预设的数字签名一致,若是,则执行步骤S22,反之,进行异常告警并结束;
522、解压该zip文件后,分别获取其数据头文件及考生数据文件,并采用第二密钥对数据头文件进行解密后,获得解密后的数据头文件中的考生ID、第一密钥以及第一密钥的长度;
523、判断该第一密钥是否与预设的第一密钥一致,若是,则执行步骤S24,反之,进行异常告警并结束;
524、读取考生数据文件中的考生ID,并判断该考生ID是否与解密后的数据头文件中的考生ID —致,若是则执行步骤S25,反之,进行异常告警并结束;
525、读取并存储考生数据文件。
[0008]进一步,所述步骤S22,包括:
5221、解压该zip文件后,分别获取其数据头文件及考生数据文件;
5222、获取数据头文件的密文字符串后,将密文字符串与第二密钥进行异或运算,生成解密字符串;
5223、从解密字符串的开头读取两位字符作为第一密钥的长度后,根据该长度从解密字符串的第三位开始读取获得第一密钥,最后读取剩下的字符作为考生ID。
[0009]进一步,所述第二密钥采用O到31之间的任一整数。
[0010]本发明的有益效果是:一种防篡改的考生数据传输方法,包括:生成加密的数据头文件后,将数据头文件与考生数据文件打包压缩生成zip文件,并将预设的数据签名写入该zip文件的尾部;将zip文件转化成二进制数据文件后,上传到考试服务器;通过互联网从考试服务器上下载指定的二进制数据文件,并保存为zip文件;从zip文件的尾部读取数字签名,并判断该数字签名是否与预设的数字签名一致,若是,则逐层解密验证zip文件中的考生数据文件的安全性,否则,进行异常告警。本考生数据传输方法可以防止考生数据在传输过程被篡改,提高了数据安全性,而且本方法实现方式简单,运算量较小,实现成本低。
【附图说明】
[0011]下面结合附图和实施例对本发明作进一步说明。
[0012]图1是本发明的一种防篡改的考生数据传输方法的流程图;
图2是本发明的一种防篡改的考生数据传输方法的实施例一的明文字符串的数据格式示意图;
图3是本发明的一种防篡改的考生数据传输方法的实施例一的第一运算示意图;
图4是本发明的一种防篡改的考生数据传输方法的实施例一的第二运算示意图;
图5是本发明的一种防篡改的考生数据传输方法的实施例一的第三运算示意图;
图6是本发明的一种防篡改的考生数据传输方法的实施例一的第四运算示意图;
图7是本发明的一种防篡改的考生数据传输方法的实施例一的解密字符串的数据格式示意图。
【具体实施方式】
[0013]参照图1,本发明提供了一种防篡改的考生数据传输方法,包括:
加密步骤:生成加密的数据头文件后,将数据头文件与考生数据文件打包压缩生成Zip文件,并将预设的数据签名写入该Zip文件的尾部;
数据上传步骤:将Zip文件转化成二进制数据文件后,上传到考试服务器;
数据下载步骤:通过互联网从考试服务器上下载指定的二进制数据文件,并保存为zip文件;
解密步骤:从zip文件的尾部读取数字签名,并判断该数字签名是否与预设的数字签名一致,若是,则逐层解密验证zip文件中的考生数据文件的安全性,否则,进行异常告警。
[0014]进一步作为优选的实施方式,所述加密步骤,具体包括:
511、获取预设的第一密钥和第二密钥,将考生ID、第一密钥以及第一密钥的长度按照预设顺序组合后,采用第二密钥进行加密后生成数据头文件;
512、将数据头文件与考生数据文件打包压缩生成zip文件,并将预设的数据签名写入该zip文件的尾部;
所述考生数据文件包括考生ID,还包括考生的报名信息、报志愿信息、答题卡扫描图像、成绩数据和身份认证数据中的任一项或多项,所述第一密钥的长度采用两位字符表示。若第一密钥的长度不足两位,则第一位补O。
[0015]进一步作为优选的实施方式,所述步骤SI I,包括:
SI 11、获取预设的第一密钥和第二密钥后,计算第一密钥的长度;
5112、将考生ID、第一密钥以及第一密钥的长度按照第一密钥的长度、第一密钥、考生ID的顺序进行组合后作为明文字符串;
5113、将明文字符串与第二密钥进行异或运算后,生成密文字符串并将该密文字符串作为数据头文件。
[0016]进一步作为优选的实施方式,所述解密步骤,具体包括:
521、从zip文件的尾部读取数字签名,并判断该数字签名是否与预设的数字签名一致,若是,则执行步骤S22,反之,进行异常告警并结束;
522、解压该zip文件后,分别获取其数据头文件及考生数据文件,并采用第二密钥对数据头文件进行解密后,获得解密后的数据头文件中的考生ID、第一密钥以及第一密钥的长度;
523、判断该第一密钥是否与预设的第一密钥一致,若是,则执行步骤S24,反之,进行异常告警并结束;
524、读取考生数据文件中的考生ID,并判断该考生ID是否与解密后的数据头文件中的考生ID —致,若是则执行步骤S25,反之,进行异常告警并结束;
525、读取并存储考生数据文件。
[0017]进一步作为优选的实施方式,所述步骤S22,包括:
5221、解压该zip文件后,分别获取其数据头文件及考生数据文件;
5222、获取数据头文件的密文字符串后,将密文字符串与第二密钥进行异或运算,生成解密字符串;
S223、从解密字符串的开头读取两位字符作为第一密钥的长度后,根据该长度从解密字符串的第三位开始读取获得第一密钥,最后读取剩下的字符作为考生ID。
[0018]进一步作为优选的实施方式,所述第二密钥采用O到31之间的任一整数。
[0019]下面结合具体实施例对本发明做进一步说明。
[0020]实施例一
一种防篡改的考生数据传输方法,包括:
加密步骤:生成加密的数据头文件后,将数据头文件与考生数据文件打包压缩生成Zip文件,并将预设的数据签名写入该Zip文件的尾部;
数据上传步骤:将Zip文件转化成二进制数据文件后,上传到考试服务器;
数据下载步骤:通过互联网从考试服务器上下载指定的二进制数据文件,并保存为zip文件;
解密步骤:从zip文件的尾部读取数字签名,并判断该数字签名是否与预设的数字签名一致,若是,则逐层解密验证zip文件中的考生数据文件的安全性,否则,进行异常告警。
[0021]加密步骤,具体包括:
S11、获取预设的第一密钥SKl和第二密钥SK2,将考生ID、第一密钥SKl以及第一密钥SKl的长度按照预设顺序组合后,采用第二密钥SK2进行加密后生成数据头文件;对任何考试来说,考生通过互联网提交报名信息时,报名系统均会为每个考生产生一个唯一的不重复的标识号,即考生ID,所以这里生成数据头文件时也采用了考生ID。预设顺序实际也可以看做一个预设的加密规则,这里,第一密钥SKl的长度是必须放在最前面的。
[0022]具体地,步骤Sll,包括Sll 1~S113: