由于考试系统并发用户较多,同时试题信息对安全性极其敏感,因此系统对速率和安全性能都有较高的要求。为了解决考试系统安全方面所涉及的问题,我们提出了一种将加密传输应用于C/S模式的考试系统中的方法。

一、考试系统的基本结构及主要模块设计

本考试系统是基于C/S运行模式所开发,由服务系统和用户系统两部分组成。服务系统和用户系统均采用JAVA语言编写,具有良好的跨平台性。服务系统和用户系统连接采用TCP/IP协议。系统基本结构如图1所示。

C/S模式的考试系统中加密传输的应用

为了使本考试系统跨平台性达到最佳,我们使用XML文件存储系统配置信息。服务系统可以生成用户系统的配置文件,并由管理员将其放在用户系统中,同时应用ACCESS数据库作为临时数据文件来存储并传输由服务系统从数据库中提取的试题信息。

二、C/S模式的考试系统中加密传输的应用

1、技术简介

在考试系统中,考试试题信息为安全性要求最高的数据信息。所以,希望应用密码学原理,完成试题数据的保密存储,并可以进行安全的传输。该方法在此系统中将待加密的数据信息称为明文,通过密码学原理,利用密钥与明文生成密文的过程称为加密。反之,利用密钥与密文生成明文的过程称为解密。在对称密码体制中,加密与解密使用相同的密钥,即秘密密钥。由于通信双方共享同一个密钥,这就要求通信双方必须在安全信道上传输并保存密钥。因此,秘密密钥的存在使得对称密码体制开放性变差。在非对称密码体制中,加密与解密分别使用不同密钥,分为公钥和私钥。非对称密码体制使得发送者和接受者无需提前在安全信道上进行密钥传输,弥补了对称密码体制的缺陷。因为JAVA平台本身就提供用于安全和加密服务的API,而且无需进行配置,所以我们直接使用其提供的类就可以实现加密算法。

2、安全性分析

在本考试系统中,若采用对称密码体制加密试题信息,由于加密与解密采用相同密钥,便于用户系统进行解密操作。但是由于对称密码体制的弊端,即秘密密钥的存在,使得在考试系统所处的网络环境中无法找到安
全信道i也就无法实现秘密密钥的传输。若采用非对称密码体制加密考试试题,便可由用户系统生成密钥对,将公钥通过不安全信道传输给服务系统,由服务系统进行试题加密传回客户机,再由客户机利用私钥解密试题文件。但是这将使服务器承受巨大压力,服务系统需要接受每个客户机传来的不同的公钥并对试题信息进行加密,由于非对称密码体制的加密相率相当于同等水平对称密码体制的100倍。随着试题文件的增大,服务系统处理请求的时间将会急剧地增长,同时所消耗的系统资源也会成倍增加。

3、设计与实现

通过对两种可能的密码体制分别在本考试系统中的应用所产生的效果所进行分析,可以得出两个结论:一是若想采用较为安全的非对称密码体制,必须保证服务器可以处理客户机所请求的数据加密需求。一是若想采用对称密码体制,必须保证秘密密钥可以在不安全信道上安全传输。在一定的硬件环境下,首先要做到的就是是否可以将系统至于安全信道之下进行通信。

结合以上几点信息,研究出适合于本考试系统的安全模型。考试系统安全模型,将整个考试分为三次信息传递。在此称现实中通过存储介质,如U盘、硬盘等设备进行的传输称为在物理信道上传输,由于其不可预测性也认为是不安全信道。

第一次传递。在开始考试之前,我们利用对称密码体制中的典型加密算法AES对试题信息进行加密,加密后的试题信息由管理员通过不安全信道,如网络或物理信道,在考试之前放置在用户系统中。根据保密通信模型可知,通过对称密码体制加密得到的考试试题信息在一定时间内,放置在客户机上或者在物理介质上进行传输是安全的。本考试系统采用128位AES算法加密,可以得出,除极端情况外,考试结束前加密试题文件是安全可靠的。

第二次传递。当考试开始时,考生通过用户系统登录界面登录考试系统,用户系统会发送考生信息供服务系统确认。于此同时,用户系统利用非对称密码体制中的典型加密算法RSA构造密钥对,并将密钥对中的公钥并通过不安全信道发送给服务系统。

第三次传递。服务系统在收到由用户系统发送的公钥后,利用RSA算法中的公钥加密—私钥解密算法,对128位AES算法密钥,即秘密密钥进行加密。将加密后的密文信息通过不安全信道传输给用户系统。用户系统在接收到通过公钥加密—私钥解密算法加密的秘密密钥后,利用私钥对密文信息进行解密,解密之后的信息就是128位AES算法密钥。由此通信双方均安全获得秘密密钥。

4、性能对比分析

本考试系统所采用的安全模型,利用对称密码体制的优点,即加密效率高,将其作为试题加密的算法来使用。同时,为了避免对称密码体制的缺点,即秘密密钥,安全模型利用非对称密码体制算法中加密密钥和解密密钥不同的特点,保证秘密密钥的顺利传输。同时由于采用128位AES算法加密,秘密密钥的长度只有128位,大大缩短了非对称密码体制算法加密所需要的时间,大大提高了服务器处理请求的效率。

本考试系统安全模型的核心在于将需要进行特殊安全保护的数据量较大的考试试题转变为数据量较小的秘密密钥。在本系统中,只要保证秘密密钥的安全可靠,即可保证考试试题的安全可靠。这样的变换使得系统中的重点由数据加密效率向数据安全传输的转换。而非对称密码体制正是解决数据安全传输的方式。通过减少传输数据量来提高数据安全传输的效率,以此来提高整个系统的效率。

小知识之C/S 模式

C/S 模式,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server 应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。