信息系统国产密码算法应用改造的探索与实践——以福建广播电视大学系统为例
2016-12-12毛高丽
毛高丽
信息系统国产密码算法应用改造的探索与实践——以福建广播电视大学系统为例
毛高丽
(福建广播电视大学,福建福州,350003)
密码技术是支撑国家网络安全战略的核心技术,广泛应用具有自主知识产权的国产密码算法是保障网络安全的重要举措。当前信息技术领域密码算法主要分为对称加密、非对称加密和数字摘要三类。福建广播电视大学(简称电大)系统现使用的密码技术是以SM系列屏法为代表的国内自主知识产权的商用密码算法。
密码技术;国产密码算法;密码应用改造
一、引言
随着科技发展和信息化进程的加速,信息技术已成为我国经济与社会发展的基础条件,网络安全也成为国家安全战略的重要组成部分。密码技术是网络安全的核心技术和重要支撑,主要用于身份认证、敏感数据存储、通信传输加密、数字签名等各类安全业务场景,在保障信息的机密性、完整性和抗抵赖性方面具有重要作用。
近年来,我国密码技术发展迅速,公开发布了具有自主知识产权和高安全强度的商业密码算法及相关行业标准,对于确保密码算法的自主可控,降低敏感信息泄露和信息系统遭受攻击的风险具有十分重要的意义。同时,国产密码基础设施也逐步建成并提供服务,为各类信息系统尤其是自行开发建设的信息系统实施密码改造创造了技术条件和应用环境。
二、密码算法应用现状及问题
(一)密码的起源与发展
人类使用密码的历史可追溯至公元前400多年伯罗奔尼撒战争,古希腊人用腰带缠绕在约定长度和粗细的木棍上以书写情报,使之展开时成为杂乱无章的字母序列,从而确保情报传递时的安全。此后密码技术伴随着人们记录和传递信息方式的变革而不断演进。机械化时代,无线电是最主要的通信技术,与之相伴的摩尔斯电码作为现代密码算法的鼻祖而家喻户晓。至信息化时代,高性能计算机的出现和普及为密码技术的突飞猛进奠定了基础,也促使这项技术摆脱了军事专用的局限性制约,广泛应用到教育、通讯、金融、商务等方方面面,成为人们日常生活不可或缺的一部分。
(二)密码算法简介及应用场景
当前信息技术领域密码算法主要分为对称加密、非对称加密和数字摘要三类。
对称加密采用单钥密码系统,即使用一个密钥同时作为信息加密和解密的依据。它的优点是计算量小、加密速度快,适合快速加密大量数据;缺点是加、解密双方需事先协商确定密钥,密钥管理工作量大也存在泄露风险。目前国际上通用的对称加密算法以美国研发的DES、3DES、AES和瑞士研发的IDEA为主,其大量应用于注重加解密效率且对密钥安全性要求不高的领域,如一般数据的加密存储、传输,以及访问控制等场景。
非对称加密亦称公钥密码系统,需要使用两个不同的密钥(公钥和私钥)分别进行加密和解密。其中公钥是公开的,私钥是加密或解密单方自行建立保管的,因此这一对密钥无需在通信之前预先同步,较对称加密安全性更高。但由于公、私钥生成的过程相对复杂,导致加、解密时间消耗较长,计算速度慢,仅适合加密少量数据。目前通用的非对称加密算法以美国研发的RSA和DSA为主,常见于安全关注度较高的领域,且一般由第三方机构CA(Certificate Authority)证书中心负责保证公钥的合法性,如身份认证、数字证书等。
数字摘要是将任意长度信息转换成“摘要”生成固定长度特征码的算法,主要通过哈希(Hash)函数实现,理想状态是任意不同明文“摘要”而得的密文总是不同,而相同明文“摘要”结果必定一致。数字摘要算法可与非对称加密算法结合使用,将大量数据摘要而得简短数据从而进行非对称加密,为数据安全提供双重保障。目前常用的摘要算法包括SHA、MD5等,多应用在一致性认证、数字签名等领域。
(三)当前密码算法的主要问题
三类主要密码技术多以国外研发的算法为主,尤其是美国研发的DES、AES、RSA和SHA等算法,在互联网应用领域占据绝对主导地位。但于我国而言,当前主流算法风险高、隐患大,主要体现在两个方面:
1.安全性挑战日益严峻。一些密码算法的安全性由其密钥长度决定,面对当下呈几何级数增长的计算能力,被破解的隐忧也显著增加;此外,个别算法因其自身设计缺陷,从数学计算角度已不再可靠,但或因历史原因、或因暂无可替代而仍被大量使用。
2.风险可控性较低。大部分密码算法知识产权归属国外机构,既难以判断是否存在后门及漏洞,也难以对其进行改造、改进和深度利用,等同于将网络安全的命脉拱手交予他人掌控。2014年路透社披露的RSA公司应美国国家安全局要求设置移动终端加密技术后门的丑闻就充分暴露出国外密码算法风险可控性较低的隐患。
因此,密码算法关系网络安全,关乎国家安全,实施信息系统国产密码应用改造如箭在弦、势在必行。
三、国产密码算法简介
1996年我国决定大力发展商用密码,此后以SM系列算法为代表的国内自主知识产权的商用密码算法快速生根发芽并逐步成熟,与之配套的信息产业链也不断完善,初步具备了广泛商用的条件。
SM系列算法主要包含SM1、SM2、SM3、SM4等四种算法,其中SM1算法与AES算法相当,为分组标准对称算法,采用硬件实现,具体算法不公开。
SM2算法是一种基于椭圆曲线算法(ECC)的非对称密钥算法,加密强度为256位。其安全性远胜于目前主流的RSA-1024算法,密钥生成速度和解密加密速度也较优于RSA算法。作为一种公钥算法,可以完成签名、密钥交换以及加密应用过程,支持近128G字节数据长度,加密结果增加96个字节。
SM3也叫密码杂凑算法,属于数字摘要算法的一种。其可将长度为L(L<264)比特的数据经过填充和迭代压缩,生成长度为256比特的杂凑值,其抗碰撞攻击的能力明显优于MD5算法,适用于数字签名和验证、消息认证码的生成与验证以及随机数的生成,可满足多种密码应用的安全需求。
SM4算法为对称加密分组密码算法,分组长度为128比特,密钥长度为128比特。加密算法与密钥扩展算法都采用32轮非线性迭代结构,解密算法与加密算法的结构相同,只是轮密钥的使用顺序相反。该算法是我国制定无线局域网鉴别和保密基础结构(WAPI)标准的组成部分,同时也可以用于其它环境下,如可信计算系统的数据加密与保护。
四、信息系统国产密码应用改造基本思路
(一)找应用
实施国产密码改造首先要明确改造范围、确定具体的改造对象。改造范围以自行开发建设的系统为主,可逐步扩大到委托国内外软件厂商研发但享有版权的信息系统。在此基础上,进一步找准密码技术在各系统中的应用模块。
以福建电大系统为例,现使用密码技术的功能模块及具体算法如下表所示:
表福建电大系统密码技术应用情况初步调查表
由上表可知,常见的密码应用有用户身份认证、文件加密、数据加密以及数字签名等场景,其中用于存储用户名、密码的身份认证模块应用最为广泛,几乎涉及每个信息系统,可选为国产密码改造的首要目标。
(二)选算法
确定密码技术的应用模块后,可选择与其现有密码算法功能及用途相一致的国产SM系列算法作为替代,具体为SM2替代RSA,用于数字签名、非对称传输加密等功能模块;SM3替代SHA-1或MD5,用于用户身份认证等功能模块;以及SM4替代DES、AES等,用于文件加密和数据加密等功能模块。
其中,SM3和SM4密码标准清晰、算法过程相对简单,可自行编程实现(如上文所示),推荐采用模块化程序技术(如动态链接库DLL等)将SM3和SM4密码算法的实现程序打包封装,供各类信息系统统一调用。SM2算法实现则较为复杂,且大多数情况下需配合可信的认证中心(CA)共同使用,因此建议采用国产的成熟的SM2软件产品进行整体替代。
(三)稳推进
国产密码改造不仅涉及密码算法的替代与整合,还涉及到系统旧数据的迁移与验证,更需考虑不同系统数据交互时的算法磨合。因此实施改造宜依循“先试点、后推广”的总体原则稳步推进:即优先选择运行环境较为独立、重要程度中等的自建系统入手,改造具有较强代表性的密码算法应用模块,如身份认证;在单一系统或模块改造测试基本成功的基础上,及时编制国产密码算法模块接口调用规范,梳理建立完备的开发改造技术档案;之后可以按照算法实现从易到难,重要程度从中到高,数据联系从单一到复杂的顺序逐步覆盖各个改造对象。
(四)改造成效及问题浅析
推动福建电大信息系统实施国密算法改造,即是对国家网络安全战略的响应与实践,亦是从根本上提升信息系统安全性,消除现有密码算法自身缺陷和后门漏洞带来的隐患。同时,SM2较于RSA以及SM4较于DES/AES,除安全性更高外,还具有软硬件实现快、加解密速度快等效率优势,有助于提高系统的运行性能,进一步改善用户体验。
另一方面,应用改造过程需充分重视并克服两方面问题:
第一,新旧密码算法并存共用环境下的自动识别问题。如档案管理系统,若仅改造系统中的应用模块,则会产生新数据采用国产密码SM4算法加密,旧数据仍采用AES算法加密的现象,导致数据读取时无法正确识别加密算法而造成解密失败。因此应将旧数据重新过密纳入改造范围或对所有使用国密算法加密的新数据进行标记。
第二,部分B/S架构系统的密码应用需要浏览器支持。如办公自动化系统中的数字签名功能即是通过浏览器的SSL功能模块采用HTTPS协议与后台服务器进行通讯。而现有主流浏览器,如IE、火狐(Firefox)、谷歌(Chrome)等,其SSL模块仅支持RSA等非国产密码算法,仅有360安全浏览器有支持国产密码算法的版本,但尚处于试用阶段。因此,此类密码应用的改造宜等待相关浏览器产品成熟后再稳步实施、平滑过渡。
五、小结
综上所述,国产密码算法安全可靠、技术成熟,充分具备了应用推广可行性。逐步推进自建信息系统国产密码的应用改造,有助于化解当前密码体系可能被破解的网络安全风险,也有助于在教育、通讯、金融等国计民生关键行业建立以国产密码为主要支撑的网络安全保障体系。
[1]卢开澄.计算机密码学:计算机网络中的数据保密与安全(第3版)[M].北京:清华大学出版,2003.
[2]何大可,唐小虎.现代密码学[M].北京:人民邮电出版社,2009.
[3]国家密码管理局.GM/T 0003-2012 SM2椭圆曲线公钥密码算法[Z].2012-03-21.
[4]国家密码管理局.GM/T 0004-2012 SM3密码杂凑算法[Z].2012-03-21.
[5]国家密码管理局.GM/T 0002-2012 SM4分组密码算法[Z].2012-03-21.
[6]王高丽,申延召.带消息填充的29步SM3算法原根和伪碰撞攻击[J].通信学报,2014,(2).
[7]杨宪萍.聚焦聚合聚力推进商密应用:对金融领域国产密码应用的几点思考[J].中国信息安全,2014,(11).
[责任编辑:陈晓蔚]
TP309
A
1008-7346(2016)01-0093-04
2016-01-02
毛高丽,女,江西高安人,福建广播电视大学现代远程教育技术处助教。