请稍候,页面正在加载中 ......
上海市密码管理局
  设为首页   加入收藏
首 页 通知公告 商密动态 政策法规 产品名录 企业信息 办事指南 下载服务 技术标准
   2018年10月17日 星期三
      
  通知公告 更多
国务院关于加快推进全国一体化在线政务服务平台建设的指导意见
财政部印发《政务信息系统政府采购管理暂行办法》
国家密码管理局公告(第36号)
关于征选密标委测评工作组成员单位的通知
关于上海市密码管理局进出口许可证实行网上预审的通知
国家密码管理局公告(第35号)
国家密码管理局公告(第34号)
《信息系统密码应用基本要求》正式发布实施
 
 
 当前位置: 知识园地 > 正文
网上银行数字证书很安全
  来源: 计算机世界报 2009年02月27日
 


    在一个城市中,什么地方最安全?肯定有很多人会说是银行。多年以来,坚固的金库、严密的守卫、严格的制度,让银行在老百姓心目中有着很高的地位。近年来,银行保管箱业务的快速发展就是一个很好的佐证。网上银行账户被盗事件引起了社会各界的广泛关注,同时也引发了一场大讨论。不过,大众对于本案中涉及到的网上银行数字证书、电子认证、PKI体系的概念大都不是很清晰,于是很多人在似懂非懂之间认定网上银行的安全性是有问题的。网上银行真的就不安全了吗?其所涉及的安全体系不可靠吗?带着这些问题,记者采访了无锡江南信息安全工程技术中心副主任刘平。


密码技术:

数字证书的基础

    记者: 春节期间,记者开通了多家银行的网上银行业务,除了中国银行的网上银行业务没有提供数字证书外,工商银行、招商银行、农业银行、北京银行等都在自己的网上银行业务中提供了数字证书服务,银行的工作人员向记者表示,数字证书是保护用户网上银行账户安全的最有效手段。那么究竟什么是数字证书呢?

    刘平: 经常有人问我这个问题,数字证书是什么?数字证书有什么作用?数字证书应该怎么用?要回答这些问题,首先要从最基本的密码技术说起。
    密码技术可以为信息网络中的电子化信息,如网上银行业务中发生和传递的各种信息,在其产生、交换、使用和存储等过程中提供四种安全保证: 第一是机密性,机密性或隐私性保护保证信息不被非法获得; 第二是完整性,数据完整性保护保证信息不被无意或有意改动; 第三是真实性,真实性保证信息的发送方和接收方的身份得到惟一性确认,这样信息的发送和接收双方就都知道信息的来源和去处; 第四是不可否认性,不可否认性提供对数据完整性和来源的第三方验证,不可否认性服务可以在发生诉讼时提供重要的法律证据。
    使用密码技术可以提供上述安全保证,并可以将其具体化为密码服务系统,也就是说,将上述安全保证具体转化为密码服务系统的加密、解密、签名和验证签名操作,这被称为密码服务。密码技术是实现网络安全保证的核心技术,密码技术的核心是密码算法和密码算法的具体应用。而网上银行涉及的数字证书,都是以密码技术为基础的。
    有人把数字证书俗称为“网络身份证”,其是以密码技术为核心,结合政策法规、安全管理于一体,用于在互联网信息世界中标志用户身份的电子身份凭证和电子签章载体。数字证书采用公钥密码体制,即利用一对互相匹配的密钥进行加密和解密。每个用户拥有仅为本人所掌握的私有密钥(私钥),并用其进行解密和签名; 同时拥有与私钥相对应的公共密钥(公钥),用于加密和验证签名。当发送一份保密文件时,发送方使用接收方的公钥对数据加密,而接收方则使用自己的私钥解密。这样,信息就可以安全无误地到达目的地了,即使被第三方截获,由于没有接受方独有的私钥,也无法进行解密。数字证书保证了加密过程是一个不可逆的过程,即只有用私钥才能解密。

    记者: 网上银行业务由于用户和银行之间并不见面,需要通过网络传递数据来完成账户的登录、确认以及业务办理等过程,而在这些过程中也必然涉及到您所说的对机密性、完整性、真实性以及不可否认性的要求。那么,基于公钥密码体系,数字证书是利用哪些技术来来实现这四种安全保证的呢?

    刘平: 在实际操作中,可以采用对称密码算法对数据加密,解决信息的机密性问题; 采用杂凑算法计算数据摘要,解决数据的完整性问题; 采用公钥密码算法生成数字信封,解决对称密码算法密钥的保护和传递问题; 采用公钥密码算法生成数字签名和验证签名,解决信息的真实性和不可抵赖性问题。

    记者: 您刚才提到的对称密码算法、公钥密码算法,这些概念对于大众来说可能都不是很清楚,它们之间有什么不同?

    刘平: 对称密钥加密的特点是加密和解密使用相同的密钥,它要求发送者和接收者在安全通信之前先商定一个密钥,经过加密的信息可以通过非安全的媒介,自由地从一个地方发送到另一个地方。用对称密钥加密技术构成的密码系统的安全性依赖于密钥保密,泄漏密钥就意味着加密所带来的安全性不复存在,只要消息需要加密保护,密钥就必须保密。
    对称密钥加密技术的最大局限性在于必须设计出一些方法来安全地分发和管理作为系统核心的密钥,通常称为密钥管理。当涉及到很多个当事方时,就会导致巨大的幕后工作量和时间延误; 而且,为了将密钥泄露导致的损失降至最低,必须经常变更密钥,这就又增加了幕后工作的复杂性。
    公开密钥加密也叫非对称密钥加密,它的特点是加密和解密使用不同的密钥,这两把密钥在数学上是相关的,加密密钥可以公开,称为公钥; 解密密钥必须保密,称为私钥。公开密钥算法的安全性是基于知道公钥并且不能通过计算推导出私钥这个前提的。
    因为公钥是公开的,因此任何人都可以使用接收者的公钥加密消息并发给接收者; 而私钥是保密的,因此只有接收者自己才可以解密消息。假设用户B已经生成了自己的公/私密钥对,希望其他人或计算机能发送加密信息给他。
    那么他就可以将公钥放到一个在线数据库中,并将其捆绑到自己的身份上,使人们很容易找到他的公钥。想要发送加密信息给用户B的人就要检索出他的公钥,并利用他的公钥将信息加密发给他。而用户B是惟一能够阅读该信息的人,因为只有他用自己的私钥才能够解密。当然,用户B必须妥善保管他的私钥,否则别人也能够解密他的信息了。
    比如用户A想要使用用户B的公钥将信息加密发送给用户B,他就要从在线公钥数据库中找到用户B的公钥,而用户B可以使用自己惟一的私钥来进行解密。这种方法就保证了信息的机密性,因为用户A知道只有用户B才可以解密并阅读这份信息。
    公开密钥算法在计算上的复杂性,使得它的加密和解密效率大大低于对称密钥算法,所以公钥加密技术不用来加密大的文件。联合使用对称密钥加密技术和公开密钥加密技术进行加密保护会更为有效和快捷。例如,用户A生成一个一次性的对称密钥并用它对文件进行加密,然后再使用用户B的公钥对一次性的对称密钥加密,将经过加密的对称密钥和文件发送给用户B; 用户B利用自己的私钥解密对称密钥,然后用对称密钥解密文件,这种方式称为数字信。
    如果把公钥和私钥反过来使用,用私钥加密而用公钥解密,就是数字签名的基础,并据此进行身份认证,保证数据的完整性和不可否认性。例如,如果用户B想对一份电子文件进行数字签名,他就可以用其私钥对其进行加密。因为他的公钥是公开的,因此任何知道他的公钥的人都可以解密文件,而私钥只有用户B自己有,这就构成了用户B数字签名的基础。如果用户A使用用户B的公钥成功解密了文件,他就知道这份信息来自于用户B,也就达到了用户B对自己的文件进行签名的目的。
    数字签名有两个步骤。前面提到,公钥加密技术不用来加密大的文件,因此,必须采取措施减少加密的数据量。通过采用一种被称为杂凑算法的算法可以将数据压缩成消息包,然后再使用用户B的私钥将消息包加密生成数字签名。因为每个签名的消息包是不同的,所以也就需要每个签名是惟一的,这样就不会发生将不同的信息压缩成相同的消息包的问题了。用户A可以使用相同的杂凑算法计算出文件的压缩消息包,并使用用户B的公钥解密收到的压缩消息包。
    如果消息包相互匹配,用户A就可以有三种安全保证: 第一,用户B真的在文件上签了名(身份认证); 第二,数字签名保证了用户B真的发送了信息(不可否认性); 第三,如果信息有了任何改动,消息包就会不匹配,因此用户A就可以知道没有人在用户B签名之后对文件进行任何改动(数据完整性)。
    公开密钥加密技术的使用克服了对称密钥加密技术的局限性,与对称密钥加密技术联合使用可以完整地提供机密性、完整性、真实性和不可否认性的安全保证,并且很好地克服了密钥管理的复杂性。用公开密钥加密技术构成的密码系统的安全性依赖于私钥的保密,泄漏私钥就意味着加密所带来的安全性和签名所带来的不可否认性不复存在,所以私钥必须保密。


数字证书

安全可靠的前提

    记者: 有了上述密码技术的支撑,数字证书的安全性就得到保障了吗?

    刘平: 可以这样理解。公钥密码技术让公钥公开、私钥保密,解决了密码系统中密钥分发的复杂性和安全性问题,使密码技术得以在保障计算机信息系统安全中广泛应用,并将安全问题最终归结为如何证明和保证公钥的真实性和有效性的问题。
    当然,在网上银行业务这样的实际应用中,还有两个问题必须要解决: 一是如何确定一个用户的公钥确实属于这个用户,并保证用户与其公钥之间的联系真实有效; 另外就是如何保证用户的私钥在被破坏、丢失时或者在有关机构需要取证时能够解密数据。
    第一个问题的解决方法是建立一个大家都能信任的权威机构,由这个权威机构用自己的签名密钥对用户的名称、用户的公钥和其他一些识别信息进行数字签名,形成一个将用户与其公钥联系起来的电子信任状,这个电子信任状就称为数字证书,而这个权威机构就称为CA(Certificate Authority)。由CA签发的数字证书贮存在一个目录或其他数据库中,用户可以像查电话簿一样查找别人的证书,证书中CA的签名保证证书中的公钥确实属于持有该证书的人。可以说,将用户身份与其公钥联系起来的捆绑过程是一个非常关键的步骤。
    第二个问题的解决方法是使用两套密钥分别用于加密和数字签名,签名密钥用于解决真实性和非否认性的问题,而加密密钥用于解决数据机密性的问题。这样,加密密钥的私钥就可以备份在安全的地方,以便需要时可以恢复。而备份加密私钥的地方称为密钥管理中心KMC(Key Mangement Center),通常加密密钥由它产生,其公钥也由CA签发为数字证书。这样,数字证书的安全性和可靠性都可以得到保证。

    记者: 在实际应用中,数字证书该如何管理和应用?

    刘平: 用户的签名私钥自己产生并保存,其公钥由CA签发为签名证书。签名私钥不可以备份,以免破坏其不可否认性。如果用户丢失或损坏了自己的签名私钥,可以生成一套新的签名密钥,用新的签名私钥签名的文件必须用新的公钥验证,以前签名的文件则可以通过原来的公钥验证。
    用户的加密私钥由KMC产生,其公钥由CA签发为加密证书。加密私钥通过安全的手段发给用户的同时也备份在KMC。KMC按照密钥的有效期管理密钥,密钥超过有效期,用户可以再申请一个新的密钥。在用户方,超过有效期的密钥不能再使用; 在KMC方,超过有效期的密钥也不能删除,只能将其归入历史密钥档案,用户或有关机构可以申请恢复这个密钥,用这个密钥来解密在有效期内加密过的文件。
    CA按照一整套安全和管理策略,管理数字证书的生成、签发、更新、撤销和中止。同时,CA和KMC也组成了数字证书的认证系统。
    在应用系统中,签名方使用自己的签名私钥对信息或证据签名,验证方使用该用户的签名证书来验证签名,由于证书与用户的身份绑定,验证证书也可以验证用户的身份,从而实现完整性、真实性和不可否认性的安全保证。发送方使用接收方的加密证书来保护会话密钥,用会话密钥加密信息,接收方用自己的私钥解密会话密钥,再用会话密钥解密信息,从而实现机密性的保证。
    在网上银行这样封闭的系统中,不具备第三方性质的认证系统,可以不按照第三方机构的要求来建设和管理。但是,无论怎样,将用户与其公钥联系起来的捆绑过程是任何公共密钥体系中的关键步骤。

    记者: 听过您的介绍,感觉如果网上银行数字证书应用了上述这些技术,应该是很安全的。但是,近一段时间以来,出现了多起网上银行安全事件,对此您有什么样的看法?

   刘平: 首先可以明确的是,公共密钥体系是安全的技术体系。密码技术是保证安全的核心技术,但却不是保证安全的全部内容,其他安全措施也要跟上。用户在网上银行等网上操作中,特别要防止私钥的泄露,这是最核心的安全要求。对于提供网上银行业务的金融机构而言,要严格按照密码规范建设和运行,任何环节都不能疏漏,这是对开发商和运营商的强制要求。用户在使用数字证书的过程中,应该选择有资质的电子认证服务商提供的服务,使用有资质的产品供应商的产品,保管好自己的证书载体和口令,尤其是做好自己计算机的防木马病毒工作,这是对用户的基本要求。


返回
 
版权所有:上海市密码管理局     
(建议使用IE7浏览器、将电脑显示屏的分辨率调整为1024*768浏览本网站)