SSL-数字签名-数字信封-数字证书
- 格式:pdf
- 大小:2.25 MB
- 文档页数:11
常见数字证书类型1 数字证书1.1 概述 数字证书就是互联⽹通讯中标志通讯各⽅⾝份信息的⼀串数字,提供了⼀种在Internet上验证通信实体⾝份的⽅式,数字证书不是,⽽是⾝份认证机构盖在数字⾝份证上的⼀个章或印(或者说加在数字⾝份证上的⼀个签名)。
它是由权威机构——CA机构,⼜称为证书授权(Certificate Authority)中⼼发⾏的,⼈们可以在⽹上⽤它来识别对⽅的⾝份。
2 证书格式2.1 证书格式分类分为2⼤类:密钥库(含私钥,也可能有公钥)和公钥证书(仅含公钥)2.1.1 密钥库⽂件格式【Keystore】格式 : JKS扩展名 : .jks/.ks描述 : 【Java Keystore】密钥库的Java实现版本,provider为SUN特点 : 密钥库和私钥⽤不同的密码进⾏保护格式 : JCEKS扩展名 : .jce描述 : 【JCE Keystore】密钥库的JCE实现版本,provider为SUN JCE特点 : 相对于JKS安全级别更⾼,保护Keystore私钥时采⽤TripleDES格式 : PKCS12扩展名 : .p12/.pfx描述 : 【PKCS #12】个⼈信息交换语法标准特点 : 1、包含私钥、公钥及其证书2、密钥库和私钥⽤相同密码进⾏保护格式 : BKS扩展名 : .bks描述 : Bouncycastle Keystore】密钥库的BC实现版本,provider为BC特点 : 基于JCE实现格式 : UBER扩展名 : .ubr描述 : 【Bouncycastle UBER Keystore】密钥库的BC更安全实现版本,provider为BC2.2.2 证书⽂件格式【Certificate】格式 : DER扩展名 : .cer/.crt/.rsa描述 : 【ASN .1 DER】⽤于存放证书特点 : 不含私钥、⼆进制格式 : PKCS7扩展名 : .p7b/.p7r描述 : 【PKCS #7】加密信息语法标准特点 : 1、p7b以树状展⽰证书链,不含私钥2、p7r为CA对证书请求签名的回复,只能⽤于导⼊格式 : CMS扩展名 : .p7c/.p7m/.p7s描述 : 【Cryptographic Message Syntax】特点 : 1、p7c只保存证书2、p7m:signature with enveloped data3、p7s:时间戳签名⽂件格式 : PEM扩展名 : .pem描述 : 【Printable Encoded Message】特点 : 1、该编码格式在RFC1421中定义,其实PEM是【Privacy-Enhanced Mail】的简写,但他也同样⼴泛运⽤于密钥管理2、ASCII⽂件3、⼀般基于base 64编码格式 : PKCS10扩展名 : .p10/.csr描述 : 【PKCS #10】公钥加密标准【Certificate Signing Request】特点 : 1、证书签名请求⽂件2、ASCII⽂件3、CA签名后以p7r⽂件回复格式 : SPC扩展名 : .pvk/.spc描述 : 【Software Publishing Certificate】特点 : 微软公司特有的双证书⽂件格式,经常⽤于代码签名,其中1、pvk⽤于保存私钥2、spc⽤于保存公钥2.3 常⽤证书⽂件格式 CA中⼼普遍采⽤的规范是X.509[13]系列和PKCS系列,其中主要应⽤到了以下规范:2.3.1 X.509(1993) X.509是由国际电信联盟(ITU-T)制定的数字证书标准。
数字证书的工作原理数字证书的工作原理是公钥密码机制,简而言之就是通过“私钥签名、公钥验签”规则运行签名验签运算,保证电子文件内容不被篡改。
公钥密码机制让数字证书具备了唯一性和私密性,从而成为网络身份识别和通讯信息加密的利器。
数字证书同时具备网络身份识别和通讯信息加密的功能,从用途来看,可分为签名证书和加密证书:签名证书主要用于对用户信息进行签名,以保证信息的不可否认性;加密证书主要用于对用户传送的信息进行加密,以保证信息的真实性和完整性。
因此,数字证书具备四种基本特性:真实、机密、完整、抗抵赖。
数字证书就是一种确保身份真实与交易数据私密、完整、不可篡改、不可抵赖的产品。
什么是数字证书?数字证书是互联网通讯中标志通讯各方身份信息的一串数字,由CA机构即证书授权(Certificate Authority)中心发行,它提供了一种在网络上验证通信实体身份的方式。
什么是CA机构?CA机构是获得工信部《电子认证服务许可证》的机构,作为独立第三方为用户提供电子认证服务,包括数字证书申请、签发、更新、撤销、查询及签名验证等服务。
数字证书可以为用户提供哪些保障?数字证书服务在业内通常被称为“安全认证”。
也就是说,数字证书带来的“安全认证”是确保网络交易过程安全的一种技术手段,能保障交易双方的身份真实性、电子协议的机密性和真实性、操作行为的抗抵赖性以及电子签约的法律有效性,但与交易内容完全无关。
数字证书的特性使它成为创建真实可信、安全合法网络环境的一项重要手段,可用于多种加密用途,如身份识别,加密传输、数字签名、数字信封等。
按照细分功能和使用场景,数字证书可分为个人证书、企业证书、服务器证书(即SSL证书)、设备证书、代码签名证书、文档签名证书、场景证书等。
广泛应用于电子银行、第三方支付、在线合同签署、无纸化办公、网站安全认证等领域,多层次、全场景保护用户信息安全。
密码学中的数字证书密码学中的数字证书数字证书是由权威公正的第三方机构即CA中心签发的,以数字证书为核心的加密技术可以对网络上传输的信息进行加密和解密、数字签名和签名验证,确保网上传递信息的机密性、完整性,以及交易实体身份的真实性,签名信息的不可否认性,从而保障网络应用的安全性。
数字证书采用公钥密码体制,即利用一对互相匹配钥(私钥),用它进行解密和签名;同时拥有一把公共密钥(公钥)并可以对外公开,用于加密和验证签名。
当发送一份保密文件时,发送方使用接收方的公钥对数据加密,而接收方则使用自己的私钥解密,这样,信息就可以安全无误地到达目的地了,即使被第三方截获,由于没有相应的私钥,也无法进行解密。
通过数字的手段保证加密过程是一个不可逆过程,即只有用私有密钥才能解密。
在公开密钥密码体制中,常用的一种是RSA体制。
用户也可以采用自己的私钥对信息加以处理,由于密钥仅为本人所有,这样就产生了别人无法生成的文件,也就形成了数字签名。
采用数字签名,能够确认以下两点:(1)保证信息是由签名者自己签名发送的,签名者不能否认或难以否认;(2)保证信息自签发后到收到为止未曾作过任何修改,签发的文件是真实文件。
数字证书可用于:发送安全电子邮件、访问安全站点、网上证券、网上招标采购、网上签约、网上办公、网上缴费、网上税务等网上安全电子事务处理和安全电子交易活动。
证书遵循的标准-X.509证书的格式遵循X.509标准。
X.509是由国际电信联盟(ITU-T)制定的数字证书标准。
为了提供公用网络用户目录信息服务,ITU于1988年制定了X.500系列标准。
其中X.500和X.509是安全认证系统的核心,X.500定义了一种区别命名规则,以命名树来确保用户名称的唯一性;X.509则为X.500用户名称提供了通信实体鉴别机制,并规定了实体鉴别过程中广泛适用的证书语法和数据接口,X.509称之为证书。
X.509给出的鉴别框架是一种基于公开密钥体制的鉴别业务密钥管理。
数字证书介绍数字证书就是互联网通讯中标志通讯各方身份信息的一串数字,提供了一种在Internet上验证通信实体身份的方式,数字证书不是数字身份证,而是身份认证机构盖在数字身份证上的一个章或印(或者说加在数字身份证上的一个签名)。
它是由权威机构——CA机构,又称为证书授权(Certificate Authority)中心发行的,人们可以在网上用它来识别对方的身份。
数字证书又称为数字标识(Digital Certificate,Digital Identity),标识某一主体(个人、单位、服务器、智能终端等)的身份信息。
信息系统的用户或设备需要使用数字证书来表明自己的身份,并用其进行信息加密、电子签名等相关操作。
通俗地讲,数字证书就是个人、单位或相关设备的电子身份证。
数字证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件。
最简单的证书包含一个公开密钥、名称以及证书授权中心的数字签名。
数字证书还有一个重要的特征就是只在特定的时间段内有效。
1.1数字证书的特点●安全性(1)为了避免传统数字证书方案中,由于使用不当造成的证书丢失等安全隐患,支付宝创造性的推出双证书解决方案:支付宝会员在申请数字证书时,将同时获得两张证书,一张用于验证支付宝账户,另一张用于验证会员当前所使用的计算机。
(2)第二张证书不能备份,会员必须为每一台计算机重新申请一张。
这样即使会员的数字证书被他人非法窃取,仍可保证其账户不会受到损失。
(3)支付盾是一个类似于U盘的实体安全工具,它内置的微型智能卡处理器能阻挡各种的风险,让您的账户始终处于安全的环境下。
目前保证电子邮件安全性所使用的方式是数字证书。
●唯一性(1)支付宝数字证书根据用户身份给予相应的网络资源访问权限(2)申请使用数字证书后,如果在其他电脑登录支付宝账户,没有导入数字证书备份的情况下,只能查询账户,不能进行任何操作,这样就相当于您拥有了类似“钥匙”一样的数字凭证,增强账户使用安全。
数字证书介绍数字证书就是互联网通讯中标志通讯各方身份信息的一串数字,提供了一种在Internet上验证通信实体身份的方式,数字证书不是数字身份证,而是身份认证机构盖在数字身份证上的一个章或印(或者说加在数字身份证上的一个签名)。
它是由权威机构——CA机构,又称为证书授权(Certificate Authority)中心发行的,人们可以在网上用它来识别对方的身份。
数字证书又称为数字标识(Digital Certificate,Digital Identity),标识某一主体(个人、单位、服务器、智能终端等)的身份信息。
信息系统的用户或设备需要使用数字证书来表明自己的身份,并用其进行信息加密、电子签名等相关操作。
通俗地讲,数字证书就是个人、单位或相关设备的电子身份证。
数字证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件。
最简单的证书包含一个公开密钥、名称以及证书授权中心的数字签名。
数字证书还有一个重要的特征就是只在特定的时间段内有效。
1.1数字证书的特点●安全性(1)为了避免传统数字证书方案中,由于使用不当造成的证书丢失等安全隐患,支付宝创造性的推出双证书解决方案:支付宝会员在申请数字证书时,将同时获得两张证书,一张用于验证支付宝账户,另一张用于验证会员当前所使用的计算机。
(2)第二张证书不能备份,会员必须为每一台计算机重新申请一张。
这样即使会员的数字证书被他人非法窃取,仍可保证其账户不会受到损失.(3)支付盾是一个类似于U盘的实体安全工具,它内置的微型智能卡处理器能阻挡各种的风险,让您的账户始终处于安全的环境下。
目前保证电子邮件安全性所使用的方式是数字证书。
●唯一性(1)支付宝数字证书根据用户身份给予相应的网络资源访问权限(2)申请使用数字证书后,如果在其他电脑登录支付宝账户,没有导入数字证书备份的情况下,只能查询账户,不能进行任何操作,这样就相当于您拥有了类似“钥匙”一样的数字凭证,增强账户使用安全。
数字证书是什么,为什么要用数字证书?数字证书是什么?数字证书就是互联网通讯中标志通讯各方身份信息的一系列数据,提供了一种在Internet上验证身份的方式,其作用类似于司机的驾驶执照或日常生活中的身份证。
它是由一个权威机构-----CA机构,又称为证书授权(Certificate Authority)中心发行的,人们可以在网上用它来识别对方的身份。
数字证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件。
最简单的证书包含一个公开密钥、名称以及证书授权中心的数字签名。
一般情况下证书中还包括密钥的有效时间,发证机关(证书授权中心)的名称,该证书的序列号等信息,证书的格式遵循ITUT X.509国际标准。
一个标准的X.509数字证书包含以下内容:证书的版本信息;证书的序列号,每个证书都有一个唯一的证书序列号;证书所使用的签名算法;证书的发行机构名称,命名规则一般采用X.500格式;证书的有效期,现在通用的证书一般采用UTC时间格式,它的计时范围为1950-2049;证书所有人的名称,命名规则一般采用X.500格式;证书所有人的公开密钥;证书发行者对证书的签名。
为什么要用数字证书基于Internet网的电子商务系统技术使在网上购物的顾客能够极其方便轻松地获得商家和企业的信息,但同时也增加了对某些敏感或有价值的数据被滥用的风险。
买方和卖方都必须对于在因特网上进行的一切金融交易运作都是真实可靠的,并且要使顾客、商家和企业等交易各方都具有绝对的信心,因而因特网(Internet)电子商务系统必须保证具有十分可靠的安全保密技术,也就是说,必须保证网络安全的四大要素,即信息传输的保密性、数据交换的完整性、发送信息的不可否认性、交易者身份的确定性。
1、信息的保密性交易中的商务信息均有保密的要求。
如信用卡的帐号和用户名被人知悉,就可能被盗用,订货和付款的信息被竞争对手获悉,就可能丧失商机。
因此在电子商务的信息传播中一般均有加密的要求。
作业:1、试比较数字签名与数字信封公钥密码体制在实际应用中包含数字签名和数字信封两种方式。
数字签名是指用户用自己的私钥对原始数据的哈希摘要进行加密所得的数据。
信息接收者使用信息发送者的公钥对附在原始信息后的数字签名进行解密后获得哈希摘要,并通过与自己用收到的原始数据产生的哈希哈希摘要对照,便可确信原始信息是否被篡改。
这样就保证了数据传输的不可否认性。
数字信封的功能类似于普通信封。
普通信封在法律的约束下保证只有收信人才能阅读信的内容;数字信封则采用密码技术保证了只有规定的接收人才能阅读信息的内容。
数字信封中采用了单钥密码体制和公钥密码体制。
信息发送者首先利用随机产生的对称密码加密信息,再利用接收方的公钥加密对称密码,被公钥加密后的对称密码被称之为数字信封。
在传递信息时,信息接收方要解密信息时,必须先用自己的私钥解密数字信封,得到对称密码,才能利用对称密码解密所得到的信息。
这样就保证了数据传输的真实性和完整性。
2、举例说明数字证书的应用现有持证人甲向持证人乙传送数字信息,为了保证信息传送的真实性、完整性和不可否认性,需要对要传送的信息进行数字加密和数字签名,试阐述其传送过程。
(1)甲准备好要传送的数字信息(明文)。
(2)甲对数字信息进行哈希(hash)运算,得到一个信息摘要。
(3)甲用自己的私钥(SK)对信息摘要进行加密得到甲的数字签名,并将其附在数字信息上。
(4)甲随机产生一个加密密钥(DES密钥),并用此密钥对要发送的信息进行加密,形成密文。
(5)甲用乙的公钥(PK)对刚才随机产生的加密密钥进行加密,将加密后的DES 密钥连同密文一起传送给乙。
(6)乙收到甲传送过来的密文和加过密的DES密钥,先用自己的私钥(SK)对加密的DES密钥进行解密,得到DES密钥。
(7)乙然后用DES密钥对收到的密文进行解密,得到明文的数字信息,然后将DES密钥抛弃(即DES密钥作废)。
(8)乙用甲的公钥(PK)对甲的数字签名进行解密,得到信息摘要。
⼀⽂看懂HTTPS、证书机构(CA)、证书、数字签名、私钥、公钥说到https,我们就不得不说tls/ssl,那说到tls/ssl,我们就不得不说证书机构(CA)、证书、数字签名、私钥、公钥、对称加密、⾮对称加密。
这些到底有什么⽤呢,正所谓存在即合理,这篇⽂章我就带你们捋⼀捋这其中的关系。
对称加密对称加密是指双⽅持有相同的密钥进⾏通信,加密速度快,但是有⼀个安全问题,双⽅怎样获得相同的密钥?你总不能总是拿着U盘把密钥拷贝给对⽅吧。
常见的对称加密算法有DES、3DES、AES等⾮对称加密⾮对称加密,⼜称为公开密钥加密,是为了解决对称加密中的安全问题⽽诞⽣,⼀个称为公开密钥(public key),即公钥,另⼀个称为私钥(private key),即私钥。
但是它的加密速度相对于对称加密来说很慢。
公钥(public key)是对外开放的,私钥(private key)是⾃⼰拥有的。
公钥(public key)加密的数据,只能⽤私钥(private key)解密。
私钥(private key)加密的数据,只能⽤公钥(public key)解密。
信息安全问题在信息安全性问题中,我们常常要做到三点才能保证信息的安全:1. 信息的保密性2. 信息的完整性3. ⾝份识别信息的保密性(加密算法)信息的保密性我们可以使⽤对称加密和⾮对称加密来完成,使⽤对称加密来完成,速度相对⾮对称加密很快,但是存在⼀个安全问题,密钥如何传递?由此通⽤的⽅法是使⽤⾮对称加密+对称加密来完成。
客户端使⽤公钥对对称加密的密钥进⾏加密,然后传递给服务端,服务端使⽤私钥进⾏解密确认密钥,开始传输数据。
信息的完整性(数字签名)信息传输的途中,我们的信息很有可能被第三⽅劫持篡改,所以我们需要保证信息的完整性,通⽤⽅法是使⽤散列算法如SHA1,MD5将传输内容hash⼀次获得hash值,即摘要。
客户端使⽤服务端的公钥对摘要和信息内容进⾏加密,然后传输给服务端,服务端使⽤私钥进⾏解密获得原始内容和摘要值,这时服务端使⽤相同的hash算法对原始内容进⾏hash,然后与摘要值⽐对,如果⼀致,说明信息是完整的。
什么是数字证书?数字证书也就是我们平常说称的数字标识(Digital Certificate,Digital ID),是目前网络上应用最为广泛的信息安全技术之一,它提供了一种在Internet上身份验证的方式,是用来标志和证明网络通信双方身份的数字信息文件。
数字证书一般由权威公正的第三方机构即CA(Certificate Authority)机构,也称为证书授权中心所签发,主要用于网上安全交往的身份认证。
从比较专业的角度来说,数字证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件。
最简单的证书包含一个公开密钥、名称以及证书授权中心的数字签名。
一般情况下证书中还包括密钥的有效时间,发证机关(证书授权中心)的名称,该证书的序列号等信息,证书的格式遵循相关国际标准。
数字证书查看方法:在IE浏览器菜单栏上依次单击“工具→Internet选项→内容”,点击“证书”按钮,打开“证书”对话框。
在该对话框中便包含了所有已经安装在本机上的数字证书。
选定其中的某个数字证书,单击“查看”,然后进入该证书的“详细信息”选项卡,即可看到数字证书的内容了.一个标准的X.509数字证书包含以下一些内容:证书的版本信息:它用来区别X.509的各种连续的版本。
默认值是1988版本。
序列号:序列号是一个整数值,在发行的证书颁发机构中是惟一的。
序列号与证书有明确联系,这就像我们的身份证号码和我们的个人资料一一对应,有着明确的联系一样。
算法识别符:算法识别符识别证书颁发机构用来签署证书的算法。
证书颁发机构使用它的私钥对每个证书进行签名。
发行者或证书颁发机构:证书颁发机构是创建这个证书的机构。
有效期:提供证书有效的起止日期,类似于我们所使用的银行信用卡的期限或者身份证的有效期。
现在通用的证书一般采用UTC时间格式,计时范围为1950-2049;主体:证书对他的身份进行验证。
公钥信息:即证书所有人的公开密钥,为证书识别的主体提供公钥和算法识别符。
SSLTLS协议与数字证书SSL/TLS协议与数字证书摘要:本文主要介绍SSL/TLS协议与数字证书的相关知识。
首先,我们将解释SSL/TLS协议是什么以及它的基本原理。
然后,介绍数字证书的作用以及它们是如何验证的。
最后,我们还会讨论一些与SSL/TLS协议和数字证书相关的安全性问题。
一、SSL/TLS协议SSL(安全套接层)和TLS(传输层安全)协议是用于保护网络通信的密码协议。
它们通过建立安全的通信通道,确保数据的机密性和完整性。
SSL/TLS协议依赖于公钥加密、对称加密和散列算法等加密算法来实现安全通信。
二、数字证书的作用数字证书是一种由权威机构颁发的电子凭证,用于验证通信双方的身份。
它们包含了公钥以及与公钥相关的信息,如证书持有人的名称和组织等。
数字证书通过使用证书颁发机构的私钥对证书进行签名,来保证证书的真实性。
三、数字证书的验证过程在建立SSL/TLS连接的过程中,数字证书的验证起着重要的作用。
验证过程大致如下:1. 客户端向服务器发起连接请求,请求服务器的数字证书。
2. 服务器将数字证书发送给客户端。
3. 客户端使用证书颁发机构的公钥验证服务器证书的签名是否有效。
4. 如果验证通过,客户端生成一个随机数,使用服务器的公钥加密该随机数,并发送给服务器。
5. 服务器使用私钥解密客户端发送的随机数,并生成一个对称加密密钥。
6. 客户端和服务器使用对称加密密钥进行后续的通信。
通过数字证书的验证过程,可以确保通信双方的身份和通信的安全性。
四、SSL/TLS协议的安全性问题尽管SSL/TLS协议和数字证书提供了一定的安全性保障,但仍然存在一些安全性问题需要关注:1. 证书颁发机构的可信度:如果证书颁发机构受到攻击或存在不当操作,相关证书的可信度将会受到影响。
2. 中间人攻击:中间人攻击是指攻击者冒充服务器与客户端进行通信,同时又冒充客户端与服务器进行通信,以此来窃取通信双方的信息。
3. 加密算法的弱点:某些加密算法存在漏洞,可能被攻击者利用破解加密数据。