密码技术在图书馆信息推送服务中的应用*
2014-09-22杨清兰
关键词:图书馆;信息推送服务;安全
摘 要:文章利用数字签名技术、密钥交换技术和对称加密技术,给出了图书馆信息推送服务中的信息保护方案,以实现信息推送服务过程中对消息和文本的认证和保护。
中图分类号:G250.76 文献标识码:A 文章编号:1003-1588(2014)06-0126-03
收稿日期:2014-05-11
*本文为国家自然科学基金项目“组合公钥密码体制的设计与安全分析”(编号:61272525)的系列成果之一,以及河南省教育厅科学技术研究重点项目“基于云计算的图书馆数字参考咨询创新服务模式研究” (编号:13A870370)的阶段性研究成果之一。
随着信息技术的发展,人们对图书馆信息服务技术提出了更高的要求,特别是对个性化的查询和文档处理,是用户的一种重要需求。而信息推送服务技术,正是面向用户的一种个性化服务技术[1]。图书馆信息推送服务,是其利用推送技术自动搜索用户感兴趣的信息,并主动推送到用户指定的地址的服务,是其网络信息服务的组成部分,具有如下几个特点[2-3]:主动服务、定制化、个性化服务、动态信息服务、集成化服务、智能化服务。其包括三种方式:基于消息的信息推送方式、基于代理的信息推送方式、基于频道的信息推送方式,其中,频道信息推送方式采用了高效的信息推进技术,是目前研究的一个热点[4-5]。
然而,随着计算机网络技术和信息技术的广泛应用和发展,经常需要对信息推送技术中的信息和文本实施认证和保护,特别是对服务器、用户的认证,以及对关键经济技术和情报等敏感信息的保护[6],引起了许多学者的关注。最近,利用密码技术给出了数字图书馆建设中关于信息保护的诸多技术措施[7-10]。利用数字签名理论从概念上指出数字签名技术可用于图书馆信息推送服务中。然而,在已有的文献研究中,相关的研究内容都未给出图书馆信息推送服务中对重要信息(如面向重点学科、重点科研项目和重点用户提供的深层次机密或敏感信息)的加密保护方案。因此,利用数字签名技术、密钥交换技术和对称加密技术,对图书馆信息推送服务中重要信息进行保护,以实现对这些信息的来源及完整性进行认证,并保证推送服务中重要信息的机密性,就显得尤为重要。
1 密码学的基本知识
1.1 公钥和私钥
公钥密码学的概念由Diffie-Hellman首先提出[11]。在公钥密码体制中,用户通常有两个密钥,一个称为公钥,另一个称为私钥。其中公钥是公开的,任何人都可以通过公开的网络目录查询到用户的公钥,而私钥是秘密的,即只有用户本人掌握自己的私钥。公钥和私钥一般是不同的,且由公钥很难计算出私钥。
另外,与公钥密码学对应的是对称加密体制。在对称加密体制中,加密算法和解密算法使用的是同一个密钥。目前,使用比较普遍的对称加密算法有DES、AES等。
1.2 数字签名技术
所谓数字签名,就是利用私钥对文本和消息进行加密,加密后的结果称为相应文本和消息的数字签名。为对数字签名进行认证,只需利用公钥对数字签名解密,从而得到相应的文本和消息,此过程即为对文本和消息的认证。由于公钥是公开的,故任何人都可以利用用户的公钥对数字签名和相应的文本及消息进行认证。由于私钥只有用户本人掌握,故只有用户自己能够对相关的文本和消息产生数字签名。数字签名具有如下特点:①不可伪造性。任何一个文本和消息,只有掌握私钥的用户本人能够对其进行数字签名,而其他任何人无法伪造相应的数字签名。②不可篡改性。数字签名可以保护文本和消息的完整性。一旦文本和消息遭到篡改和破坏,数字签名的接收者可以通过验证数字签名的合法性来断定文本和消息是否受到篡改。③不可否认性。用户一旦对文本和消息产生签名,则任何人都可验证该签名的合法性,用户无法否认自己的签名。
2 图书馆信息推送服务中的信息保护方案
图书馆信息推送服务的基本工作流程为:①用户填写包括其个人档案、所需信息类型以及需要推送的时间等相关内容的订阅单,并提交给图书馆信息服务部门。②信息服务人员按用户的订阅单收集相关信息,并由服务器推送给用户,客户端获取信息后告知用户可读取信息。在此工作流程中,一是容易出现非法用户冒充合法用户填写订阅单并将其提交给信息服务部门;二是由于图书馆服务器推送给用户的信息并未采取认证和保密措施,故其中的信息可能会被其他网络用户浏览、截获甚至篡改;三是信息服务人员需要人工将用户的订阅单提交给服务器,从而降低了信息推进服务系统的工作效率。因此,为保证图书馆信息推送服务的安全性,需要采用数字签名技术、密钥交换技术以及对称加密技术对文档和信息进行保护。
为简明起见,用L代表图书馆服务器;用L-pk代表图书馆服务器公钥;用L-sk代表图书馆服务器私钥;用U代表图书馆用户;用U-pk代表图书馆用户的公钥;用U-sk代表图书馆用户的私钥;用m表示U申请的信息推送服务订阅单;用m表示L产生的推送服务信息;用s=sign(m,sk)表示公开的签名算法,其输入为订阅单m和私钥sk,输出为签名s;用J=verify(m,s,pk)表示公开的签名验证算法,其输入为订阅单m、签名s和公钥pk,输出J只有两种可能,即真或者假;用k表示对称加密算法所需的密钥;用c=DES(m,k)表示对称加密算法,其输入为m和k,输出c表示m加密后的密文;用m=DES—1(c,k)表示与加密算法DES对应的对称解密算法,其输入为密文c和对称密钥k,输出m为图书馆服务器产生的推送服务信息。
2.1 初始化
此模块主要对图书馆服务器和用户进行初始化。假定p是一个大素数,并且假设在集合Zp\{0}={1,2,…,p-1}中求解离散对数问题和计算Diffie-Hellman问题是困难的。令g是Zp\{0}的一个乘法生成元。系统参数{p,g}是公开的。L在Zp\{0}中随机选取L-sk作为自己的私钥,而将L-pk=gL-skmodp作为自己的公钥。类似地,U在Zp\{0}中随机选取U-sk作为自己的私钥,而将U-pk=gU-skmodp作为自己的公钥。L和U都使用ElGamal签名方案[12]中的签名算法sign来对m进行签名,并采用相应的验证算法verify来对m进行验证。
2.2 信息推送服务保护措施
在信息推送服务过程中,采用如下五个步骤实现对推送信息的保护。
步骤一:U向L请求信息推送服务。首先U要填写订阅单,其中包括用户个人档案、所需信息类型以及需要推送的时间等相关内容;然后U利用数字签名算法计算出m的签名s=sign(m,U-sk),并在Zp\{0}中随机选取t,计算r=gtmodp,k=(L-pk)tmodp;最后U秘密保存k,并将U-pk,m,s,r发送给L。
步骤二:L验证订阅单的合法性。当L收到U的申请数据U-pk,m,s,r之后,计算J=verify(m,s,U-pk)。若J为真,说明U所提供的申请为真,且没有受到非法用户的伪造和篡改,则L继续向U提供信息推送服务;否则,L认为申请非法,拒绝服务,并停止执行以下步骤。
步骤三:L向U提供信息推送服务。首先L产生推送服务信息m,并计算对称密钥k=rL-skmodp;然后L利用对称加密算法DES加密m,生成密文c=DES(m,k);然后针对c,L计算自己的签名s=sign(c,L-sk);最后,L将c,s,L-pk发送给U。
endprint
[JP2]步骤四:U验证c的有效性。当U收到c,s,L-pk之后,利用签名验证算法计算J=verify(c,s,L-pk)。若J为真,说明c是有效的,则U继续执行下面的步骤;否则,U重新执行步骤1。
步骤五:U获得L推送的服务信息。U利用对称密钥k和对称解密算法计算m=DES(c,k),从而获得L推送的服务信息。上述步骤如图1所示。
3 安全分析
上述信息保护方案可以做到:①防止非法用户获得图书馆的信息推送服务。②任何机构或个人无法冒充图书馆向用户提供虚假的信息推送服务。③只有合法用户才能获得图书馆的信息推送服务。
3.1 服务信息的不可伪造和不可否认性
U向L请求信息推送服务时,需要利用自己的私钥对订阅单进行数字签名,并将订阅单发送给L。由于只有U掌握了私钥U-sk,故只有U能为自己的订阅单进行签名;而由于其他任何用户不知道U的私钥,故他们无法伪造U的订阅单;同时U也无法对自己提交的订阅单进行否认。由于U的订阅单的数字签名s具有不可伪造性和不可否认性,一旦订阅单的签名s通过验证,则L可以断定U申请了订阅单m,从而可以为U提供信息推送服务。
3.2 服务信息的不可篡改和保密性
在信息推送服务保护措施中,L要对U的订阅单的签名进行验证。若订阅单在传递过程中遭到篡改,L可以通过验证签名s的有效性检测出来。为防止第三方冒充图书馆向用户提供信息推送服务,L利用数字签名技术对自己所提供的服务信息进行数字签名,并利用对称加密算法和密钥k对所提供的推送信息进行加密,以保证只有U能够获得推送信息。同时,U验证L所签发的推送信息的有效性,并能获得有效的推送信息,而其他任何第三方无法获得有效的推送信息。事实上,由于只有L掌握着L-sk,故只有L能够对所推送的信息进行签名;若L所推送的信息在传递过程中遭到篡改,则U可以通过验证签名s的有效性检测出来,L也不能否认自己所提供的推送信息。由于L的公钥L-pk是公开的,故U能够验证L所推送信息签名的有效性;且由于L所提供的信息推送服务是针对U的,故L通过使用对称加密算法DES和对称密钥k对推送信息进行加密,使得只有指定的U能够解密c而获得推送信息。在此方案中,由于U和L利用计算Diffie-Hellman问题共享对称密钥k,故只有U和L能够获得对称密钥;由于任何第三方无法获得对称密钥k,故任何第三方无法获得L所提供的推送信息。
4 结语
在图书馆信息推送服务中,用户需要提交订阅单,而图书馆需要提供数字化的推送信息。本文给出的图书馆信息推送服务中的信息保护方案,该方案既可以防止非法用户冒充合法用户申请信息推送服务,又可以防止合法用户所提交的订阅单遭到篡改,同时也可以防止非法机构或个人冒充图书馆提供信息推送服务。而且,此方案采用了对称加密技术,使得只有指定的合法用户才能查看到图书馆所推送的服务信息,从而确保了信息推送服务的针对性和保密性,进而提高了图书馆和用户之间信息推送服务的有效性和安全性。
参考文献:
[1]李 沛.个性化信息推送服务及其在图书馆中的应用[J].河南图书馆学刊,2010(6):55-57.
[2]高福宁.浅谈高职图书馆个性化信息推送服务体系建设——以邢台职业技术学院图书馆为例[J].科技情报开发与经济,2012(2):67-68.
[3] 谢 嫚.图书馆信息推送服务评价研究[J].图书馆学研究,2012(8):78-83.
[4] 黄艳娟. 基于RSS的图书馆个性化信息推送服务[J].情报科学,2006(7):1024-1026.
[5] 孔 季.基于RSS的数字图书馆个性化信息推送服务[J].现代情报,2009(8):78-83.
[6] 魏建国.数字签名及其在图书馆数字参考咨询服务中的应用[J].电脑知识与技术,2008(4):817-818,824.
[7] 董理文.数字签名技术在数字图书馆中的应用[J].图书馆论坛,2004(5):111-112.
[8] 杨清兰.基于身份的数字签名在数字图书馆中的应用[J].郑州轻工业学院学报,2013(2):100-102.
[9] 杨清兰.量子密码在数字图书馆中的应用[J].轻工科技,2013(2):100-102.[ZK)]
[10] 安 琳等.基于改进式RSA加密算法的高校网络数字化图书阅览系统的研究[J].高校图书馆工作,2010(3):50-52.
[11] Diffie W., Hellman M. E. New directions in Cryptography [J]. IEEE Transaction on information theory, 1976(6): 644-654.
[12] ElGamal T. A public key cryptosystem and a signature scheme based on discrete logarithms [J]. IEEE Transaction on information theory, 1985(4): 469-472.
(编校:马怀云)
endprint