一、C A认证的基本概念1.认证中心认证中心是一个负责发放和管理数字证书的权威机构。
认证中心通常采用多层次的分级结构,上级认证中心负责签发和管理下级认证中心的证书,最下一级的认证中心直接面向最终用户。
认证中心的主要功能:·证书的颁发
·证书的更新
·证书的查询
·证书的作废
·证书的归档2.数字签名数字签名是通过一个单向函数对要传送的信息进行处理得到的用以认证信息来源并核实信息在传送过程中是否发生变化的一个字母数字串。
数字签名提供了对信息来源的确定并能检测信息是否被篡改。
数字签名与数据加密完全独立。
数据可以既签名又加密,只签名,只加密,当然,也可以既不签名也不加密。
发送方计算出的签名和数据
一起传送给接收方,签名值是关于发送方的私钥和要发送的信息的一个数学函数的值。
算法的构造保证如果不知道私钥的话就不可能计算出这个签名值。
接收方可以通过依赖发送方的公钥、签名值和接收到的数据的另一个数学算法来验证接收到的信息就是发送方签名的信息。
3.数字证书1)数字证书的概念:数字证书就是网络通信中标志通信各方身份信息的一系列数据,其作用类似于现实生活中的身份证。
它是由一个权威机构发行的,人们可以在交往中用它来识别对方的身份。
2)数字证书的作用:访问需要客户验证的安全I N T E R N E T站点。
用对方的数字证书向对方发送加密的邮件。
给对方发送带自己签名的邮件。
3)数字证书的内容:证书的格式由ITU标准来定义。
根据这项标准,证书包括申请证书个体的信息和发行证书C A的信息。
证书由以下两部分组成:(1)证书数据
版本信息,用来与的将来版本兼容;
证书序列号,每一个由CA发行的证书必须有一个唯一的序列号;
C A所使用的签名算法;
发行证书C A的名称;
证书的有效期限;
证书主题名称;
被证明的公钥信息,包括公钥算法、公钥的位字符串表示;
包含额外信息的特别扩展。
(2)发行证书的C A签名证书第二部分包括发行证书的CA签名和用来生成数字签名的签名算法。
任何人收到证书后都能使用签名算法来验证证书是由CA的签名密钥签发的。
4.安全套接字层(S S L)SSL(Secure Sockets Layer:安全套接层)是一种提供INTERNET上保密性的在线协议。
它允许客户/服务器应用以一种不能被偷听的方式通讯。
它是INTERNET网上安全通讯与交易的标准。
SSL协议使用通讯双方的证书,在通讯双方间建立一条安全的、可信任的通讯通。
数字证书是网络通讯中标志通讯各方身份信息的一系列数据,它提供了在Internet上验证通信各方身份的方法,它是由由权威机构-CA认证机构,又称为证书授权(Certificate Authority)中心发行。
数字证书是经证书管理中心数字签名的包含公开密钥、拥有者信息以及公开密钥的文件。
证书的格式遵循ITUT 国际标准。
数字证书通常包含以下内容:
证书的版本信息;
证书的序列号,每个证书都有唯一的证书序列号;
证书所使用的签名算法;
证书的发行机构名称,命名规则一般采用格式;
证书的有效期,通用的证书一般采用UTC时间格式,它的计时范围为1950-2049;
证书所有人的名称,命名规则一般采用格式;
证书所有人的公开密钥;
证书发行者对证书的签名。
数字证书采用公钥体制,即利用一对互相匹配的密钥进行加密、解密。
每个客户可以设定特定的仅为本人所知的私有密钥(私钥),用它进行数据解密和签名;同时设定一把公共密钥(公钥)并由本人公开,为一组客户所共享,用于数据加密和验证签名。
当发送一份保密文件时,发送方使用接收方的公钥对数据加密,而接收方则使用自己的私钥解密,这样信息就可以安全无误地到达目的地了。
数字加密是一个不可逆过程,即只有使用私有密钥才能解密。
在公开密钥密码体制中,常用的是RSA体制。
其数学原理是将一个大数分解成两个质数的乘积,加密和解密用的是两个不同的密钥。
即使已知明文、密文和加密密钥(公开密钥),想要推导出解密密钥(私密密钥),在计算上是不可能的。
按现在的计算机技术水平,要破解目前采用的1024位RSA密钥,需要上千年的计算时间。
公开密钥体系解决了密钥发布的管理问题,客户可以公开其公开密钥,而保留其私有密钥。
使用者可以使用接受方的公开密钥对发送的信息进行加密,安全地传送到对方,然后由接受方使用自己的私有密钥进行解密。
客户可以采用自己的私钥对信息加以处理,由于密钥仅为本人所有,这样就产生了别人无法生成的文件,也就形成了数字签名。
采用数字签名,能够确认以下两点:
(1) 保证信息是由签名者自己签名发送的,签名者不能否认或难以否认;
(2) 保证信息自签发后到收到为止未曾作过任何修改,签发的文件是真实文件。
数字签名具体做法是:
(1) 将报文按双方约定的HASH算法计算得到一个固定位数的报文摘要。
在数学上保证,只要改动报文中任何一位,重新计算出的报文摘要值就会与原先的值不相符。
这样就保证了报文的不可更改性。
(2) 将该报文摘要值用发送者的私人密钥加密,然后连同原报文一起发送给接收者,而产生的报文即称数字签名。
(3)接收方收到数字签名后,用同样的HASH算法对报文计算摘要值,然后与用发送者的公开密钥进行解密解开的报文摘要值相比较,如相等则说明报文确实来自所称的发送者。