数字签名和数字证书究竟是什么?

作者&投稿:庞浅 (若有异议请与网页底部的电邮联系)
~

我们经常会见到数字签名和数字证书的身影,比如访问一些不安全的网站时,浏览器会提示,此网站的数字证书不可靠等。那么究竟什么是数字签名和数字证书呢?本文就将通过一个场景深入浅出的介绍数字签名和数字证书的概念!

Bob有两个密钥,一个叫公钥Public Key,一个叫私钥Private Key。

Bob的公钥是公之于众的,所有需要的人都可以获得公钥,但Bob的私钥是自己私有的。密钥用来加密信息,将一段可以理解阅读的明文信息,用密钥进行加密,变成一段‘乱码’。因此,只有持有正确密钥的人,才能重新将这段加密后的信息,也就是‘乱码’,恢复成可以理解阅读的真实信息。Bob的两个密钥,公钥和私钥都可以将信息进行加密,并且能用对应的密钥将信息解码,也就是说,如果用Bob的公钥将信息加密,那么可以并且只可以用Bob的私钥将信息解码,反之,如果用Bob的私钥将信息加密,那么可以且只可以用Bob的公钥将信息解码!

所以Bob就可以利用自己的公钥和私钥进行信息的加密传输!

比如,Susan想要和Bob进行通信,考虑到信息的安全性,Susan可以利用Bob公之于众的公钥对所要传输的信息进行加密。这样,Bob收到信息后,就可以用自己的私钥对信息进行解码。假设此时有人窃取了Susan传给Bob的信息,但是由于没有Bob的私钥,无法对信息进行解码,所以即使窃取了信息,也无法阅读理解。

但是虽然黑客们无法解码Susan传给Bob的信息,却可以对信息进行篡改,破坏原有的信息,这样Bob收到被篡改的信息之后,再用自己的私钥进行解码,就会与Susan本来想要传达的信息出现不一致,这样也就相当于破坏了Susan和Bob的信息传输!学术上,我们将这种行为称为破坏信息的完整性!通俗的说,就是我得不到的信息,你也别想得到!

所以,现在的问题就是,我们如何保证信息的完整性,也就是保证信息不被破坏,或者说,当信息被破坏之后,接收方可以识别出,这个时候的信息是被破坏过的,就将其丢弃。

数字签名就可以解决上述的问题!根据数字签名,接收方接收到信息之后,可以判断信息是否被破坏过,如果没有被破坏,就可以正确的解码,如果被破坏,就直接丢弃。

数字签名可以保证对信息的任何篡改都可以被发现,从而保证信息传输过程中的完整性。

那么数字签名是如何实现对完整性保证的呢?关键技术就是hash,也就是哈希技术。

首先,Bob先对将要传输的信息进行hash,得到一串独一无二的字符,通常把hash之后的内容称为 信息摘要message digest 。我们都知道,hash往往是不可逆的,就是说,我们无法根据hash后的内容推断出hash前的原文。同时,不同的原文,会造成不同的hash结果,并且结果的差异是巨大甚至毫无规律的。也就是说,对原文进行再细微的修改,得到的hash后的内容都会与未经修改的原文的hash内容大相径庭。这样就保证了黑客对原文的任何修改都会被发现!

Bob同时将hash后的信息摘要,用自己的私钥进行加密,这样就保证只有Bob的公钥才能对信息摘要进行正确的解码,这样就保证了信息摘要一定是来自Bob的,也就是起到了一个独一无二的签名的作用。
加密后的信息摘要实际就是数字签名的内容。

最后,Bob再将数字签名附加到原文信息的后面,这样就形成了一个完整的带数字签名的信息报文。

Bob将带数字签名的信息报文传输给Pat。

Pat接收到信息之后,先利用Bob的公钥对数字签名进行解码,得到信息摘要,如果成功解码,就说明数字签名是来自Bob的,因为数字签名是Bob利用自己的私钥进行加密的,只有Bob的公钥可以进行解密。然后,Pat将信息原文进行hash得到自己hash的信息摘要,再与之前解码数字签名得到的信息摘要进行对比,如果相同,就说明原文信息是完整的,没有被篡改,反之,则确认信息被破坏了。

似乎现在,利用公钥和私钥以及数字签名,我们可以保证信息传输过程中的私密性和完整性。但还存在一个问题,就是公钥分发的问题,我们如果保证Bob的公钥被正确的分发给了Susan或者Pat等人呢?假设现在有一个中间人,他劫取了Bob发给Pat的公钥,然后私自伪造了一个假的公钥并加上Bob的名字,发给了Pat,这样就导致Pat永远实际上就是在跟中间人通信,和Bob也实际上在跟中间人通信,但都以为在跟对方通信。因此,现在的问题就是,Pat如何确认收到的公钥真的是Bob的公钥,而不是别人伪造的!

这个问题,其实可以类比一下现实生活中的问题。我们知道,公钥和私钥是成对存在的,也就是一个人一般都有一对独有的公钥和私钥。就好像我们每个人都有一个独有的身份证,我们把公钥类比为现实中的身份证,当我们在面对一个陌生人的时候,我们为了信任对方,一般可以查看对方的身份证,但此时就存在一个和上面中间人问题一样的漏洞,就是万一对方给的身份证是一个假的伪造的身份证呢?也就是万一对方给的是一个假的公钥呢?我们怎么识别真伪?现实中,我们往往会有一个身份证真伪的识别器,一般公安局等机构会有,也就是我们可以利用身份证真伪的识别器确认这个身份证的真假。我们仔细思考这个机制,实际上就是引入了一个独立的第三方机制,国家作为一个独立的第三方,给我们每个人创建了一个身份证,当我们需要验证身份证的真伪的时候,我们只需要找这个独立的第三方提供的真伪鉴别服务就可以验证身份证的真伪。

所以,相似的我们解决公钥分发问题的思路也就是引入一个独立的权威的第三方机构。

假设现在有一个数字证书的权威认证中心,这个中心会给Bob创建一个数字证书,这个数字证书包括了Bob的一些信息以及Bob的公钥。

那么,此时,想要跟Bob进行通信的人,就可以检查Bob的数字证书,然后向权威的数字证书的认证中心,去认证这是不是真实的Bob的数字证书,如果是,就可以从数字证书中获取到Bob的公钥,然后进行安全的通信。同时,就像现实生活中一样,我们不管进行任何涉及到资金或者安全问题的时候,都需要出示自己的身份证,并且对方会验证你的身份证的真假,也就是说,一个持有假身份证的人,或者没有身份信息的人是获取不了他人的信任的。同理,在网络通信中,如果在数字证书的认证中心中查询不到信息,那么就说明这样的通信方是不安全的,是不值得信任的!另一方面,数字证书除了解决了公钥分发和身份认证的问题,还加强了安全性。

详细的利用数字证书的通信过程如下:

上述的公钥分发和数字签名验证的过程似乎很复杂,但实际上,就跟我们验证身份证真伪一样,我们通常有一个识别器,只要将身份证放上去就可以得到结果,后面的实际过程往往不需要我们关心,网络通信中也是如此,往往会提供一个友好的用户接口,想要验证数字签名或者数字证书,其实就类似于我们点击一下按钮一样简单!




数字证书有哪些主要字段?并简述证书的签名生成过程。
用户首先产生自己的密钥对,并将公共密钥及部分个人身份信息传送给认证中心。认证中心在核实身份后,将执行一些必要的步骤,以确信请求确实由用户发送而来,然后,认证中心将发给用户一个数字证书,该证书内包含用户的个人信息和他的公钥信息,同时还附有认证中心的签名信息。用户就可以使用自己的数字证书进行...

什么是数字证书?它包括什么内容?
数字证书是用电子手段来证实一个用户的身份和对网络资源访问的权限。数字证书作为网上交易双方真实身份证明的依据,是一个经证书授权中心( CA)数字签名的、包含证书申请者(公开密钥拥有者)个人信息及其公开密钥的文件。它包含的以下内容。①证书拥有者的姓名。②证书拥有者的公共密钥。③公共密钥的有效期。...

电子签字怎么签字
电子签字的基本步骤如下:1、创建数字证书:首先,你需要一个数字证书来签署电子文档。数字证书是一个包含公钥和私钥的电子文件。公钥是公开的,可以被任何人看到;私钥是私有的,只有证书的持有者才能看到。你可以从权威的数字证书颁发机构(CA)购买或申请一个数字证书。2、选择电子签名软件:有许多不同的...

数字证书的原理是什么?
一、数字证书的原理:数字证书采用公钥密码体制,即利用一对互相匹配的密钥进行加密、解密。每个用户拥有一把仅为本人所掌握的私有密钥(私钥),用它进行解密和签名;同时拥有一把公共密钥(公钥)并可以对外公开,用于加密和验证签名。当发送一份保密文件时,发送方使用接收方的公钥对数据加密,而接收方则...

什么是数字签名?
PKI的核心执行机构是电子认证服务提供者,即通称为认证机构CA(Certificate Authority),PKI签名的核心元素是由CA签发的数字证书。它所提供的PKI服务就是认证、数据完整性、数据保密性和不可否认性。它的作法就是利用证书公钥和与之对应的私钥进行加\/解密,并产生对数字电文的签名及验证签名。数字签名是...

什么叫数字证书 ?
数字证书就是互联网通讯中标志通讯各方身份信息的一串数字,提供了一种在Internet上验证通信实体身份的方式,数字证书不是数字身份证,而是身份认证机构盖在数字身份证上的一个章或印(或者说加在数字身份证上的一个签名)。它是由权威机构——CA机构,又称为证书授权(Certificate Authority)中心发行的,...

数字签名有什么用处?
数据完整性:数字签名可以保证数据的完整性,即在数据传输过程中没有被篡改。接收者可以使用数字签名来验证数据是否在传输过程中被修改或损坏。防止抵赖:数字签名提供了不可抵赖性,即发送者无法否认自己发送了特定的消息或文件。由于数字签名是使用私钥进行签名的,发送者无法否认签名的有效性。数字证书验证...

关于数字签名的认证流程
数字签名的认证流程:接收方收到数字签名的结果,其中包括数字签名、电子原文和发方公钥,即待验证的数据。接收方进行签名验证。验证过程是:接收方首先用发方公钥解密数字签名,导出数字摘要,并对电子文件原文作同样哈希算法得一个新的数字摘要,将两个摘要的哈希值进行结果比较,结果相同签名得到验证,否则...

数字签名的原理
这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性并保护数据,防止被人进行伪造。它是对电子形式的消息进行签名的一种方法,一个签名消息能在一个通信网络中传输。基于公钥密码体制和私钥密码体制都可以获得数字签名,主要是基于公钥密码体制的数字签名。包括普通数字签名和特殊数字...

微信启用数字证书好处和坏处
2. 防止网络篡改和伪造:数字证书还能防止网络通信过程中的信息篡改和伪造。因为数字证书可以对通信内容进行数字签名,一旦通信内容被篡改,数字签名就会失效,从而及时发现并防止网络攻击。坏处:1. 增加用户操作复杂性:启用数字证书可能需要用户进行额外的操作步骤,如安装证书、导入私钥等,这对于不熟悉数字...

佳木斯市18862914124: 什么是数字签名 和数字证书技术 -
师窦舒筋: 1、数字证书是由权威机构--ca证书授权(certificate authority)中心发行的如wosign ca,能提供在internet上进行身份验证的一种权威性电子文档,人们可以在互联网交往中用它来证明自己的身份和识别对方的身份.2、数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法.一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证3、数字证书好比现实中你的身份证;数字签名 好比现实中你的签字.

佳木斯市18862914124: 什么是数字签名?和数字证书一样吗? -
师窦舒筋: 数字签名 : (又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法.一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证. 数字证书 : ...

佳木斯市18862914124: 数字签名和数字证书的区别是什么 -
师窦舒筋: 数字证书是由权威机构--CA证书授权(Certificate Authority)中心发行的,能提供在Internet上进行身份验证的一种权威性电子文档,人们可以在互联网交往中用它来证明自己的身份和识别对方的身份. 数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法.一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证. 做个简单比喻: 数字证书 好比 现实中你的身份证 数字签名 好比 现实中你的签字

佳木斯市18862914124: 数字证书与数字签名 -
师窦舒筋: 所谓"数字签名"就是通过某种密码运算生成一系列符号及代码组成电子密码进行签名,来代替书写签名或印章,对于这种电子式的签名还可进行技术验证,其验证的准确度是一般手工签名和图章的验证而无法比拟的."数字签名"是目前电子...

佳木斯市18862914124: 数字证书就是数字签名吗?有什么区别? -
师窦舒筋: 不是的,数字证书通过数字签名技术来实现的,数字证书包括数字签名

佳木斯市18862914124: 数字签名 数字证书 CA 是什么 -
师窦舒筋: 数字证书,代表一个人、企业或设备在电子世界中的身份.数字签名,使用数字证书的私钥对数据加密,以保证数据的完整性、真实性和不可抵赖.CA,管理数字证书的软件,是身份的信任源.信任了CA,才信任它颁发的数字证书.具体详细解释可以看百度的百科

佳木斯市18862914124: 数字证书是什么 -
师窦舒筋: 数字证书就是互联网通讯中标志通讯各方身份信息的一串数字,提供了一种在Internet上验证通信实体身份的方式,数字证书不是数字身份证,而是身份认证机构盖在数字身份证上的一个章或印(或者说加在数字身份证上的一个签名).它是由权威机构——CA机构,又称为证书授权(Certificate Authority)中心发行的,人们可以在网上用它来识别对方的身份.

佳木斯市18862914124: 数字证书是怎么回事啊? -
师窦舒筋: 数字证书不是一种实体的证书,和U盾没有关系,所以楼上的说错了.数字证书就是一个数字签名,是一种权威性的电子文档,由权威公正的第三方机构,即CA中心签发的证书.

佳木斯市18862914124: 数字证书的基本原理是什么? -
师窦舒筋: egates问的是数字证书,而非数字签名,这两者经常相关联,但不是一个概念. 数字证书是数字形式的标识,与护照或驾驶员执照十分相似.数字证书是数字凭据,它提供有关实体标识的信息以及其他支持信息.数字证书是由成为证书颁发机...

佳木斯市18862914124: 什么是数字证书? -
师窦舒筋: 数字证书就是互联网通讯中标志通讯各方身份信息的一系列数据,提供了一种在Internet上验证您身份的方式,其作用类似于司机的驾驶执照或日常生活中的身份证.它是由一个由权威机构-----CA机构,又称为证书授权(Certificate Authority)中...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网