在IC卡特别是智能卡应用方面,信息安全的保密性、完整性及可获取性等都涉及到密码技术。密码技术在有关IC卡的安全应用主要有信息传输保护、信息认证及信息授权(数字电子签名)等几种主要模式。
目前,随着网络技术的飞速发展,网络应用已深入到社会的各个领域,而INTERNET更是逐步走入千家万户。在这样一个网络信息平台上,人们迫切希望获得真实、安全、可靠的信息,密码技术和IC卡技术的结合必将成为在这一平台上保护信息安全的重要技术手段。
密码技术和IC卡,特别是智能IC卡技术的结合必将具有十分广阔的应用和发展前景。
IC卡信息传输保护
对IC卡处理、传输的信息进行保护是密码应用最重要的方面。采用密码技术的基本思想是将保护大量的明文信息问题转化为保护少量密钥信息的问题,使得信息保护问题易于解决。
为防止对传输信息的非法截取,采用密码技术对传输信息进行加密保护,使得非法截取的信息成为不可读、不可知具有十分重要性意义。
首先,因为IC卡的应用和计算机密切相关,并且其中有些安全保护概念就来源于此,所以先对计算机网络的传输加密作一简单介绍。计算机网络中的传输加密,通常分为链路加密和端端加密。链路加密是对通过每条链路的全部信息进行加密;端端加密是在信息发送的起点加密,在信息接收点解密。链路加密的优点是全部信息包括信息头都加密,在每条链路上流经的都是密文信息;缺点是信息每经过一个节点就要解密,然后再加密,因此,在信息传输的每一个节点上信息要暴露。端端加密的优点是信息在每一节点上都不暴露,缺点是信息头不能加密。为了安全,也有将两种方式结合使用的。
与此相对应,在智能IC卡上也存在着类似的传输信息保护方式,一般有三种方式:一是认证传输方式(Authentic Transmit Mode);二是加密传输方式(Encipher Transmit Mode);三是混合传输方式(Mixed Transmit Mode)。
认证传输方式
认证传输方式就是将在接口设备(IFD)和IC卡(ICC)之间传输的信息附加上相应的认证信息。在IFD和ICC之间传输的信息可以简单分为两部分:一是信息头,主要为传输控制信息,如传输方式等;二是信息主体。
在认证传输方式中,发送端利用相应的加密算法及加密密钥将待传输信息的信息头和信息主体进行加密,得到的密文附加在明文信息尾部传输给接收端。接收端收到该信息后按发送相反的顺序对接收到的信息进行认证,认证通过则进行相应处理,否则回送相应错误信息。c
在具体的智能IC卡应用中,信息发送、接收端则分别为IFD或ICC,采用不同的加密算法则密钥分配、工作顺序也不相同。以采用DES算法为例,认证传输的前提就是在IFD和ICC之间有一公共密钥,在每次认证传输之前,发送端向接收端请求一中间密钥,发送端根据此中间密钥,利用公共密钥导算出加密密钥,再对传输信息作传输认证。如果系统设计合理,附加的认证信息除具有认证功能外,不应具有检错甚至纠错功能。认证传输方式原理见图。
认证传输方式 认证传输方式具有如下特点:一是传输的信息为明文,不具有保密性;二是附加认证信息可以具有信息认证、检错、纠错等多种功能,但决不是一般的冗余校验。
加密传输方式
加密传输方式就是将信息加密之后再进行传输。加密之后的信息具有保密性,但不具备检错、纠错等功能。此外,在一种具体的IC卡应用中可能同时存在几种传输方式,此次传输所使用的传输方式必须在信息头中说明,所以应用加密传输方式时的信息头或部分信息头不能被加密,否则接收端将因无法确认传输方式而不能正确地接收信息。
混合传输方式
混合传输方式就是将认证传输方式和加密传输方式的优点结合起来,对待传输的信息既认证又加密。一般在具体实施时先对信息进行认证然后再加密。
因为这几种信息传输方式主要是以时间及空间换来信息传输安全的,所以在一种IC卡具体应用中,完全可以视不同情况交替使用或根本不使用这几种信息传输方式。
信息认证与授权
信息认证的目的是防止信息被篡改、伪造、或信息接收方事后否认。特别是对于某些开放环境中的信息系统来讲,确保其认证十分重要。认证技术是现代各种计算机通讯网络、办公自动化、电子资金转帐系统、自动零售服务网络等系统设计中的重要组成部分。今后,在IC卡应用系统中必将广泛使用。信息认证主要有以下两种方式。
信息验证
防止信息被篡改,保证信息的完整性,使得有意或无意地篡改了信息后接收者可以发现,其中最简单的为纯认证系统。
采用该认证系统的关键在于防止认证码的破译,必须有良好的认证算法和密钥。它将信息通过密钥和某一特定算法进行加密后压缩成一个“信息摘要”,附加在信息之后,接收方收到信息和“信息摘要”之后,用相同的密钥和算法对信息进行验证,如果信息被篡改,必然与所附“信息摘要”不符,可以及时发现。
例如,可以利用DES算法作信息验证,如果信息过长,可用Hash算法先对信息进行压缩,再进行验证运算。
为没有防范进行信息验证双方的任何措施,纯认证系统必须建立在双方互相信赖的基础上。当然,纯认证系统主要是针对来自进行信息验证双方以外因素的有意或无意的破坏、干扰等。
数字电子签名
目前,越来越多的敏感数据和文档使用电子服务设施,如电子邮件、电传等进行信息处理和传输,这也使得电子签名变得特别重要和迫切。
A方要发送一个信息给B方,既要防止B方或第三方伪造,又要防止A方事后因对自己不利而否认,通常采用数字签名的方法解决这一问题。
数字签名必须满足三个条件;
收方应能确认发方的签名,但不能伪造(收方条件);
发方发送签名信息后,不能否认他已签名的信息(发方条件);
公证方能确认收发双方的信息,作出促裁,但不能伪造成这一过程(公证条件)。
为实现数字签名,用上面的纯验证技术还不行,一般用公钥密码方案解决。用户A设计好公钥密码方案棗如选用RSA算法,设计好加密密钥E、解密密钥D并将有关算法及加密密钥或公布或单独发放给B。对于信息M,A方用解密密钥D计算D(M),发给B方,B方用A方发放的加密密钥E计算E((D(M)=M,此时,B方掌握了D(M)和M。因为只有A掌握了解密密钥,其它人包括B都无法伪造,如果A方事后否认,B方可以用D(M)和M诉之于公证人裁决。反之,B也可以设计自己的签名方案并发放给A。
数字电子签名必须禁止除了原始发送者之外的其他人员再产生此次签名,还必须有一个个人化特性并被每一人校验。为避免拷贝,不仅不同的文本给以不同的签名,而且同样的文本也必须给以不同的签名,以区别不同的版本,例如,两个据有同样内容的电子公函。
若被签名的文本过长超过了定义的签名串时,可以利用Hash算法对文本进行适当的压缩处理等。
智能IC卡特别适用于改善计算机、信息通讯系统等的安全性。其中一个最重要的应用就是利用数字签名机制达到文档的合法接收,类似的应用领域还有贸易、金融、办公自动化等。
这种数字电子签名并无保密功能。若要保密,则需对签名的密文再进行加密。