数据加密基本概念及常见技术( 六 )


A使一个签名算法对消息x签名和B验证签名(x,y)的过程可描述为:
(l)A首先使用他的秘密密钥对x进行签名得y 。
(2)A然后将(x,y)发送给B 。
(3)最后B用A的公钥验证A的签名的合法性
DSA是美国国家标准技术学会(NIST)的一个标准,它是ElGamal数字签名算法的一个修改 。当选择p为512比特的素数时,ElGamal数字签名的尺寸是1024比特,而在DSA中通过选择一个160比特的素数可将签名的尺寸降低为320比特,这就大大地减少了存储空间和传输带宽 。关于DSA也有一些批评意见,但它已被人们广泛地接受和应用,它的确为数字签名技术的应用提供了一个适当的内核 。
2. 身份识别技术
通信和数据系统的安全性常常取决于能否正确识别通信用户或终端的个人身份 。比如银行的自动取款机(ATM)可将现款发放给经它正确识别的帐号持卡人 。对计算机的访问和使用、安全地区的出入和放行、出入境等都是以准确的身份识别为基础的 。身份识别技术能使识别者让对方识别到自己的真正身份,确保识别者的合法权益 。但是从更深一层意义上来说,它是社会责任制的体现和社会管理的需要 。
进入电子信息社会,虽然有不少学者试图使用电子化生物唯一识别信息(如指纹、掌纹、声纹、视网膜、脸形等),但由于代价高、准确性低、存储空间人和传输效率低,不适合计算机读取和判别,只能作为辅助措施应用 。而使用密码技术,特别是公钥密码技术,能够设计出安全性高的识别协议,受到人们的青睐 。
身份识别的常用方式主要有两种,一种是使用通行字的方式;另一种是使用持证的方式 。通行字是使时最广泛的一种身份识别方式,比如中国古代调兵用的虎符和现代通信网的拔入协议等 。通行字一般由数字、字母、特殊字符、控制字符等组成的长为5--8的字符串 。其选择规则为:易记,难于被别人猜中或发现,抗分析能力强,还需要考虑它的选择方法、使用期、长度、分配、存储和管理等 。通行字方式识别的办法是:识别者A先输入他的通行字,然后计算机确认它的正确性 。A和计算机都知道这个秘密通行字,A每次登录时,计算机都要求A输入通行字 。这样就要求计算机存储通行字,一旦通行字文件暴露,就可获得通行字 。为了克服这种缺陷,人们建议采用单向函数 。此时,计算机存储通行字的单项函数值而不是存储通行字 。其认证过程为:
1.A将他的通行字传送给计算机 。
2.计算机完成通行字的单向函数值的计算 。
3.计算机把单向函数值和机器存储的值比较 。
由了计算机不再存储每个人的有效通行字表,某些人侵入计算机也无法从通行字的单向函数值表中获得通行字 。当然,这种保护也抵抗不住某些攻击 。不过,它的确是一种简单而有效的识别方法 。
持证(token)是一种个人持有物,它的作用类似于钥匙,用于启动电子设备 。使用比较多的是一种嵌有磁条的塑料卡,磁条上记录有用于机器识别的个人信息 。这类卡通常和个人识别号(PIN) 一起使用 。这类卡易于制造,而且磁条上记录的数据也易于转录,因此要设法防止仿制 。为了提高磁卡的安全性,人们建议使用一种被称作"智能卡"的磁卡来代替普通的磁卡,智能卡与普通的磁卡的主要区别在于智能卡带有智能化的微处理器和存储器 。智能卡已成为目前身份识别的一种更有效、更安全的方法 。智能卡仅仅为身份识别提供了一个硬件基础,要想得到安全的识别,还需要与安全协议配套使用 。
从实用角度来讲,人们最关心的是设计简单而且能在一个智能卡上实现的安全识别协议 。一个安全的身份识别协议至少应满足以下两个条件:

推荐阅读