SSL 安全协议最初是由美国网景 Netscape Communication 公司设计开发的,全称为:安全套接层协议 (Secure Sockets Layer) , 它指定了在应用程序协议 ( 如 HTTP 、 Telnet 、 FTP) 和 TCP/IP 之间提供数据安全性分层的机制,它是在传输通信协议 (TCP/IP) 上实现的一种安全协议,采用公开密钥技术,它为 TCP/IP 连接提供数据加密、服务器认证、消息完整性以及可选的客户机认证。
最简单地讲:服务器部署SSL证书后,能确保服务器与浏览器之间的数据传输是加密传输的,是不能在数据传输过程中被篡改和被解密的。所以,所有要求用户在线填写机密信息的网站都应该使用SSL证书来确保用户输入的信息不会被非法窃取,这不仅是对用户负责的做法,特别是要求填写有关信用卡、储蓄卡、身份证、以及各种密码等重要信息时,而且也是保护网站自己的以后机密信息的有效手段。而用户也应该有这种意识,在线填写用户自己认为需要保密的信息时看看浏览器右下面是否出现一个锁样标志,如果没有锁样标志,则表明用户您正在输入的信息有可能在提交到服务器的网络传输过程中被非法窃取而泄露,建议您拒绝在不显示安全锁的网站上提交任何您认为需要保密的信息,这样才能确保您的机密信息不会被泄露。
目前国内用户可选择购买的SSL证书有两种,一种是直接支持所有浏览器的来自美国的Thawte /GeoTrust/Verisign等公司颁发的,一种是国内各种认证中心颁发的,但不被浏览器认可,需要另外安装根证书,同时,在访问网站时会提示 “ 该安全证书由您没有选定信任的公司颁发 ” 或点击锁标志查询证书时会显示“ 无法将这个证书验证到一个受信任的证书颁发机构 ”。用户应该根据自己的需要正确选择全球通用的支持所有浏览器的SSL证书。
什么是证书的密钥对?
当您与其它个人或公司联系时,需要一个安全的方式来交换信息,来保证不会有其它人截获和读取信息。现在最先进的加密数据的方法是通过密钥对。密钥对包含一个公钥和一个私钥。
应用软件使用密钥对中的一个密钥来加密文档。加密后的信息的接收者要用与之匹配的密钥解密信息。如何只把解密密钥交给信息接收者而其它人不会得到?通过使用密钥对可解决此问题。当申请一个数字证书时,浏览器生成一个私钥和一个公钥。私钥只被证书申请者使用,而公钥会成为数字证书的一部分。浏览器会要求您在访问私钥时的口令。
当收到并安装数字证书后,把数字证书发给任何需要它的人。数字证书中包含您的公钥。别人给您发送信息时会使用您的公钥加密。因为只有您有与之匹配的私钥,所以只有您能够解密用您的公钥加密的信息。
同样的,当您想要向别人发送加密的信息,您必须首先获得他们的公钥。您可以在目录中查找他们的数字证书。如果您只有他们发给您包含其数字证书和公钥的签名电子邮件,您的电子邮件应用软件会自动的保存数字证书。
什么是HTTPS?
HTTPS (Secure Hypertext Transfer Protocol)
安全超文本传输协议
HTTPS 是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返回网络上传送回的结果。HTTPS实际上应用了Netscape的 完全套接字层(SSL)作为HTTP应用层的子层。(HTTPS使用端口443,而不是象HTTP那样使用端口80来和TCP/IP进行通信。)SSL使用40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。
假设您使用Netscape浏览器访问一个如NetPlaza的站点,并且观看其商品类目。当您希望定购商品时,您可以通过URL进行,单击“发送”,将相应的订单发送到供应商那里,浏览器的HTTPS层将对信息进行加密。从服务器返回的加密信息也是经过加密的,在您服务器的HTTPS层进行解密后显示。
HTTPS和SSL支持使用X.509数字认证,这样(如果需要的话),用户可以确认发送者是谁。SSL是一个开放的协议。
注意:HTTPS不要和由EIT开发的SHTTP混淆起来。
HTTPS是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换信息。它使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版
数字证书介绍
一、什么是数字证书
数字证书就是互联网通讯中标志通讯各方身份信息的一系列数据,提供了一种在Internet上验证您身份的方式,其作用类似于司机的驾驶执照或日常生活中的身份证。它是由一个由权威机构-----CA机构,又称为证书授权(Certificate Authorit y)中心发行的,人们可以在网上用它来识别对方的身份。数字证书是一个经证书授权 中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件。最简单的证书包含一 个公开密钥、名称以及证书授权中心的数字签名。一般情况下证书中还包括密钥的有 效时间,发证机关(证书授权中心)的名称,该证书的序列号等信息,证书的格式遵循 ITUT X.509国际标准。
一个标准的X.509数字证书包含以下一些内容:
证书的版本信息;
证书的序列号,每个证书都有一个唯一的证书序列号;
证书所使用的签名算法;
证书的发行机构名称,命名规则一般采用X.500格式;
证书的有效期,现在通用的证书一般采用UTC时间格式,它的计时范围为1950-2049;
证书所有人的名称,命名规则一般采用X.500格式;
证书所有人的公开密钥;
证书发行者对证书的签名。
二、为什么要用数字证书
基于Internet网的电子商务系统技术使在网上购物的顾客能够极其方便轻松地获 得商家和企业的信息,但同时也增加了对某些敏感或有价值的数据被滥用的风险。买 方和卖方都必须对于在因特网上进行的一切金融交易运作都是真实可靠的,并且要使 顾客、商家和企业等交易各方都具有绝对的信心,因而因特网(Internet)电子商务 系统必须保证具有十分可靠的安全保密技术,也就是说,必须保证网络安全的四大要 素,即信息传输的保密性、数据交换的完整性、发送信息的不可否认性、交易者身份 的确定性。
1、信息的保密性
交易中的商务信息均有保密的要求。如信用卡的帐号和用户名被人知悉,就可能 被盗用,订货和付款的信息被竞争对手获悉,就可能丧失商机。因此在电子商务的信 息传播中一般均有加密的要求。
2、交易者身份的确定性
网上交易的双方很可能素昧平生,相隔千里。要使交易成功首先要能确认对方的 身份,对商家要考虑客户端不能是骗子,而客户也会担心网上的商店不是一个玩弄欺 诈的黑店。因此能方便而可靠地确认对方身份是交易的前提。对于为顾客或用户开展 服务的银行、信用卡公司和销售商店,为了做到安全、保密、可靠地开展服务活动, 都要进行身份认证的工作。对有关的销售商店来说,他们对顾客所用的信用卡的号码 是不知道的,商店只能把信用卡的确认工作完全交给银行来完成。银行和信用卡公司 可以采用各种保密与识别方法,确认顾客的身份是否合法,同时还要防止发生拒付款 问题以及确认订货和订货收据信息等。
3、不可否认性
由于商情的千变万化,交易一旦达成是不能被否认的。否则必然会损害一方的利 益。例如订购黄金,订货时金价较低,但收到订单后,金价上涨了,如收单方能否认 受到订单的实际时间,甚至否认收到订单的事实,则订货方就会蒙受损失。因此电子 交易通信过程的各个环节都必须是不可否认的。
4、不可修改性
交易的文件是不可被修改的,如上例所举的订购黄金。供货单位在收到订单后, 发现金价大幅上涨了,如其能改动文件内容,将订购数1吨改为1克,则可大幅受益, 那么订货单位可能就会因此而蒙受损失。因此电子交易文件也要能做到不可修改,以 保障交易的严肃和公正。
人们在感叹电子商务的巨大潜力的同时,不得不冷静地思考,在人与人互不见面 的计算机互联网上进行交易和作业时,怎么才能保证交易的公正性和安全性,保证交 易双方身份的真实性。国际上已经有比较成熟的安全解决方案, 那就是建立安全证书体系结构。数字安全证书提供了一种在网上验证身份的方式。安全证书体制主要采 用了公开密钥体制,其它还包括对称密钥加密、数字签名、数字信封等技术。
我们可以使用数字证书,通过运用对称和非对称密码体制等密码技术建立起一套严密的身份认证系统,从而保证:信息除发送方和接收方外不被其它人窃取;信息在传输过程中不被篡改;发送方能够通过数字证书来确认接收方的身份;发送方对于自己的信息不能抵赖。
三、数字证书原理介绍
数字证书采用公钥体制,即利用一对互相匹配的密钥进行加密、解密。每个用户自己设定一把特定的仅为本人所知的私有密钥(私钥),用它进行解密和签名;同时设定一把公共密钥(公钥)并由本人公开,为一组用户所共享,用于加密和验证签名。当发送一份保密文件时,发送方使用接收方的公钥对数据加密,而接收方则使用 自己的私钥解密,这样信息就可以安全无误地到达目的地了。通过数字的手段保证加 密过程是一个不可逆过程,即只有用私有密钥才能解密。在公开密钥密码体制中,常用的一种是RSA体制。其数学原理是将一个大数分解成两个质数的乘积,加密和解密用的是两个不同的密钥。即使已知明文、密文和加密密钥(公开密钥),想要推导出解密密钥(私密密钥),在计算上是不可能的。按现在的计算机技术水平,要破解目前采用的1024位RSA密钥,需要上千年的计算时间。公开密钥技术解决了密钥发布的管理问题,商户可以公开其公开密钥,而保留其私有密钥。购物者可以用人人皆知的公开密钥对发送的信息进行加密,安全地传送给商户,然后由商户用自己的私有密钥 进行解密。
用户也可以采用自己的私钥对信息加以处理,由于密钥仅为本人所有,这样就产生了别人无法生成的文件,也就形成了数字签名。采用数字签名,能够确认以下两点:
(1)保证信息是由签名者自己签名发送的,签名者不能否认或难以否认;
(2)保证信息自签发后到收到为止未曾作过任何修改,签发的文件是真实文件。
数字签名具体做法是:
(1)将报文按双方约定的HASH算法计算得到一个固定位数的报文摘要。在数学上保证:只要改动报文中任何一位,重新计算出的报文摘要值就会与原先的值不相符。这样就保证了报文的不可更改性。
(2)将该报文摘要值用发送者的私人密钥加密,然后连同原报文一起发送给接收者,而产生的报文即称数字签名。
(3)接收方收到数字签名后,用同样的HASH算法对报文计算摘要值,然后与用发送者的公开密钥进行解密解开的报文摘要值相比较。如相等则说明报文确实来自所称的发送者。
四、证书与证书授权中心
CA机构,又称为证书授证(Certificate Authority)中心,作为电子商务交易中受信任的第三方,承担公钥体系中公钥的合法性检验的责任。CA中心为每个使用公开密钥的用户发放一个数字证书,数字证书的作用是证明证书中列出的用户合法拥有证书中列出的公开密钥。CA机构的数字签名使得攻击者不能伪造和篡改证书。它负责产生、分配并管理所有参与网上交易的个体所需的数字证书,因此是安全电子交易的核心环节。
为保证用户之间在网上传递信息的安全性、真实性、可靠性、完整性和不可抵赖性,不仅需要对用户的身份真实性进行验证,也需要有一个具有权威性、公正性、唯一性的机构,负责向电子商务的各个主体颁发并管理符合国内、国际安全电子交易协议标准的电子商务安全证书。
五、数字证书的应用
数字证书可以应用于互联网上的电子商务活动和电子政务活动,其应用范围涉及需要身份认证及数据安全的各个行业,包括传统的商业、制造业、流通业的网上交易,以及公共事业、金融服务业、工商税务、海关、政府行政办公、教育科研单位、保险、医疗等网上作业系统。
误解一:我们的应用系统用了CA认证后,用户在使用我们的系统时,都要到CA中心做身份认证,而且认证时间会很长。
CA认证中心(机构)中的认证对应的英文是Certification,在这里是指一个认证机构在给一个实体(人、组织机构、设备等)签发数字证书前,
(1) 确认证书申请者身份的真实性、合法性、有效性;
(2) 确认实体具有拥有该证书的合法性;
(3) 确认申请者具有代实体申请证书的资格;
(4) 确认将包含在证书中的信息的真实性、有效性、准确性(包括公钥信息);
(5) 验证确实是所声称的申请者在申请证书(防止假冒);
(6) 在以上基础上为实体签发数字证书。
(1)--(5)称为确认(Validation)和验证(Verification)。需注意的是证书申请者不一定是拥有证书的实体,比如对于组织机构证书、设备证书,由人代实体申请证书。
以上过程就是CA认证所指的认证,是签发证书前对申请者、实体的身份确认,不是证书使用过程中的身份认证,这与在使用证书访问某个应用系统过程中所进行的身份认证完全是两码事。
我们平常所说的在某个应用中的身份认证实际上应该是身份鉴别(Authentication)而不是身份认证(Certification)。在许多时候,我们用身份认证这个词是不准确的、错误的。在某个应用中的身份鉴别,是指确认某个用户、实体是它所声称的人、实体的过程。对于使用数字证书进行身份鉴别的过程包括两个方面,一是验证、确认数字证书是有效的,二是验证用户、实体拥有数字证书对应的私钥。因此,这里所说的身份认证(实际上应该是鉴别)与CA认证所指的身份认证是完全不同的。
前面提到在应用中的基于数字证书的身份鉴别包括证书有效性确认和私钥拥有验证。用户、实体私钥拥有验证只需在应用系统本地完成,只有证书有效性确认,根据应用的安全要求程度,有可能需要同CA中心系统实时进行实时交互。一般地根据应用的安全性要求程度的不同,证书有效性确认有下面几种方式:
(1) 只验证证书信任链(安全性要求一般),确认证书是有效的;
(2) 验证证书信任链,同时检查证书吊销列表CRL(Certificate Revocation List),又称黑名单,检查证书是否吊销 (安全性要求中);
(3) 验证证书信任链,同时进行证书状态的实时查询OCSP(Online Certificate Status Protocol),检查证书是否吊销(安全性要求高);
(4) 由专门的证书验证系统(Validation Authority)。
对于方式(1),证书有效性确认完全是在应用系统本地完成的,验证确认过程非常快;对于方(2),应用系统只需定时(如每24小时)到CA中心系统下载一次CRL即可,证书有效性验证确认过程在应用系统本地完成,无须对每个证书有效性的验证、确认都与CA中心系统交互,验证过程也比较快;对于方式(3),应用系统在对用户进行身份鉴别时,对每个证书有效性的确认都需同CA中心系统的OCSP服务器交互,处理时间取决于OCSP的负载和响应时间,在负载不是很大时,处理时间一般很短,一般不会超过几秒。方式(4)目前用得不多。方式(1)和(2)是目前应用最多的证书有效性确认方式。
因此,我们可以看到在一般情况下,应用系统对用户、实体的身份鉴别无需同CA中心系统实时交互,无需实时到CA中心去完成"身份认证";只有在安全性要求很高的场合,才需要同CA中心系统交互确认证书的有效性,看证书是否吊销,但这不是去CA中心进行实时"身份认证"。其实对于方式(1), 实际的安全性可以做到很高,因为一般应用系统维护有用户帐户信息,将用户帐户信息同身份鉴别方式(1)结合,同样可达到很高的安全。
误解二:CA认证中心作为一个公正的第三方,对电子交易进行公证和担保,在交易出现纠纷时提供证据。
CA中心不是一个公证机构,CA中心只负责为用户、实体签发数字证书,保证用户、实体身份的真实性、准确性,CA中心不对任何交易提供任何担保、仲裁,不参与交易过程。有的认证中心同时提供一种叫做时间戳(Time Stamp)的服务,可以对文档、合同、交易单据加盖一个时间戳,但这个时间戳不提供任何担保承诺,这个时间戳能否作为法律证据由法庭根据交易双方的约定和法律决定,认证中心不作任何保证和仲裁。当然,在一定的条件下(如法律规定、双方约定等),用户通过数字证书(更确切地说是使用数字证书对应的私钥)签名的电子交易表单、合同,可以作为法律证据,但这并不意味着CA中心对交易行为作任何公证和担保。
误解三:有其它身份认证技术可替代PKI/CA技术。
除了数字证书外,目前还有其它身份认证(确切地是鉴别)技术,如生物特征、动态口令等。关于这些技术是否安全可靠在这里不作讨论,但我们知道,生物特证是不能在网上明文传送的,而且容易被盗用,动态口令在网吧等公共环境的安全性几乎同静态口令一样。我们知道信息安全涉及如下四个基本问题:
(1) 身份鉴别 (Authentication);
(2) 信息保密 (Privacy and Confidentiality);
(3) 数据完整性 (Integrity);
(4) 抗抵赖 (Non-repudiation)
目前已有的其它身份鉴别技术,如生物特征、动态口令,只能解决第一个问题,即身份鉴别,无法解决其它三个问题,而这些都是信息世界的活动中必须解决的安全问题。因此,目前还没有其它技术能够替代PKI、数字证书,为信息世界安全提供完整的安全保障和解决方案。
误解四:我们的产品通过了某某CA认证中心的认证。
正如前面所说,CA认证中所指的认证是指对申请证书的用户、实体的真实性、证书信息的真实性、准确性的确认(Validation)和申请的验证(Verification)。虽然CA认证中心可以为设备签发数字证书,但CA认证中心不对任何产品针对任何标准作产品方面的认证。
误解五:我们可以使用Smart Card、USB Key Token等密码硬件对数字证书进行保护,防止对证书的窃取。
数字证书是公开的信息,不需保密保护,需要保护的是数字证书对应的私钥。密码硬件能够保护私钥的安全,防止私钥的泄密。
误解六:CA必须支持交叉认证才能实现不同CA信任体系的交叉认证。
我们常常会遇到很多用户问,你们的CA支持交叉认证吗?这个问题本身并不错,但许多人在问这个问题时往往不了解,就技术而言,实现交叉认证的关键其实是应用对交叉认证的支持。我们知道实现交叉认证有多种方法,如桥交叉认证、网状交叉认证和信任列表交叉认证。信任列表交叉认证是一种最简单的交叉认证方法,即通过安装配置一系列受信任的根CA证书,使得某一应用,如邮件、浏览器、Web服务程序,信任和接受这些根CA证书下的证书,从而实现不同信任域的证书的相互信任,即交叉认证。CA系统对交叉认证的支持主要在两个方面,证书格式与目录系统。桥交叉认证、网状交叉认证对证书格式与目录结构要求比较严,涉及较多的技术问题,而信任列表法对此要求不是很高,即使CA系统不提供交叉认证的功能,目前的大部分应用(如邮件、浏览器、Web服务程序等)都可以通过信任列表法实现交叉认证。
PKI/CA
最新推荐文章于 2024-09-03 15:39:49 发布