基于USBKey的考试系统安全的设计与实现(3)
客户端网页和java服务器端通过RSA验证用户身份并传输数据的通信流程如下:
i.客户端网页通过确认按钮,将页面信息A(用户名、密码等)发送给服务器;
ii.服务器收到信息A后,将:信息A+当前系统时间+随机码序列(为了防止重放攻击) 形成的数据B保存在服务器上,并通过服务器的加密函数将上述信息以客户公钥加密的方式加密成数据C发送给客户端页面;
m.客户端收到该加密数据C后,用自己的私钥解密,再用服务器公钥加密后,形成数据D发还给服务器;
IV服务器收到数据D后,用自己的私钥解密,并与服务器上原先保存的数据B进行比对,若完全一致,则服务器认为请求者是合法用户,允许用户的登录操作。并通过该方式获取对称加密算法AES的会话秘钥。
4 研究中遇到的技术难点及解决方案
4.1 公钥导入问题
由于USBKey内部有一定的存储空间,用来存储用户的私钥、会话秘钥以及数字证书等机密数据,而对该存储空间的读写操作必须要通过USBKey内的CSP (Cryptographic Service Provider)模块实现,用户无法直接读取数据。因此只有把服务器的公钥导入到USBKey中才能让CSP去访问该公钥,完成RSA加密。经研究发现USBkey提供的PKCS11接口中的C_CreateObject()函数能够将封装好的公钥导入到USBKey中。C_CreateObject()的函数定义如下:
C_CreateObj ect创建了一个新的对象。hSession是对话的句柄;pTemplate指向对象的模板;uICount是模板中的属性数;phObject指向接收新对象句柄的单元。
在使用该函数前,需要先定义公钥模板并对其中的参数赋值.然后才能导入。模板定义方式如下:
CK—ATTRIBUTE pubTemplate[]=
{
{ CKA_CLASS, &pubClass, sizeof (pubClass)),
{CKA_ KEY_7IYPE ,
&keyType ,
sizeof(keyType)},
{CKA_SUBJECT, subject. sizeof (subject)),
{ CKA_MODULUS_BITS, &uIModulusBits,sizeof (uIModulusBits)},
{ CKA_MODULUS, modulus, sizeof (modulus)},
{ CKA_PUBLIC_ EXPONENT, exponent, sizeof(exponent)},
{CKA_ENCRYPT, &bTrue, sizeof (bTrue)},
{ CKA_TOKEN, &bTrue, sizeof (bTrue)},
{ CKA- WRAP, &bTrue, sizeof (bTrue)},
);
4.2 C++和java加解密通信问题
考生机客户端和java服务器端进行双向加密和解密的通信过程中,C/C++加密后的数据通过网络传输到java服务器端进行解密时失败,报出bad_key的错误;同时java服务器端加密的数据经由网络传送到C/C++客户端解密时,也是失败,同样报出bad_key的错误。针对这个问题,研究发现,这与计算机体系中的字节序Big-Endian和Little-Endian有关。
期刊库(http://www.zgqkk.com),是一个专门从事期刊推广、投稿辅导的网站。
本站提供如何投稿辅导,寻求投稿辅导合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。
【免责声明】本文仅代表作者本人观点,与投稿辅导_期刊发表_中国期刊库专业期刊网站无关。投稿辅导_期刊发表_中国期刊库专业期刊网站站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。
投稿辅导服务咨询与期刊合作加盟
陆老师联系QQ:
蒋老师联系QQ:
刘老师联系QQ:
联系电话:18015016272
17327192284
投稿辅导投稿邮箱:zgqkk365@126.com
期刊推荐
- 《校园英语》旬刊 省级 教育类学术期刊
- 《吉林教育》旬刊 省级 教育类学术期刊
- 《文教资料》 旬刊 省级
- 《科技风》半月刊 省级 科技类优秀期刊
- 《价值工程》旬刊 国家级 科技统计源期刊
- 《中国实验方剂学杂志》 半月刊 北大核心
- 《电影评介》半月刊 14版北大核心
- 《社科纵横》季刊 社科类优秀期刊
- 《求索》月刊 14版北大核心期刊
- 《中华建设》月刊 国家级 建设类优秀期刊
- 《继续教育研究》月刊 北大核心期刊
- 《网络空间安全》(信息安全与技术)月刊 国
- 《新闻传播》月刊 省级 新闻类优秀期刊
- 《财会月刊》旬刊 14版北大核心
- 《体育文化导刊》月刊 体育类双核心期刊
- 《机械研究与应用》双月刊 省级 机械应用类
- 《公路交通科技》 月刊 北大核心
- 《教学与管理》旬刊 北大核心
- 《新课程研究》旬刊 省级 教育类优秀学术期
- 《中国医药指南》 旬刊 国家级
- 《高教论坛》 月刊 省级
- 《课程教育研究》 旬刊 国家级
- 《语文建设》 旬刊 14版北大核心
- 《教育发展研究》 半月刊 双核心
- 《学术界》 月刊 双核心


