以一个形象的小例子来解释数字签名和数字证书。
Bob有两把钥匙,一把叫公钥,一把叫私钥。他把公钥发送给所有想和他通讯的人,私钥自己留着。公钥和私钥之间有这样的对应关系:用公钥加密过的信息只有对应的私钥才能解开。所以了,所有想和Bob发消息的人,比如Susan,他在和Bob发消息之前,先用Bob的公钥加密消息内容,然后再发送,Bob接受到密文之后,用自己的私钥解开密文。借助公钥和私钥的设计,彻底解决了通讯窃ting的问题。
虽然公钥和私钥的设计解决了窃ting问题,但是接下来,Bob又有了新问题,因为坏人Lucy来了,Lucy承认自己就算得到Susan发给Bob的消息,也无法得知其内容(因为他无法解密),所以他换了个思路。于是他开始等待机遇,有一天,Bob睡着了,但是Susan要和Bob发消息,这个时候,Lucy装着自己是Bob,把自己的公钥发给了Susan,Susan拿到Lucy的公钥后,和往常一样,发送消息给自己心中的Bob,当然,Lucy装逼装的很正,他等到Susan发来的消息后,用自己的私钥解密,成功得到了Susan的消息。
后来,Bob发现Lucy老是能提前知道他和Susan的约会,并且还知道自己的银行卡密码。和Susan私下沟通后,他发现,Lucy在自己睡觉的时候伪装成自己骗取Susan的信任。Bob很气愤,当时就报警了。警察了解情况后,喷了俩字:活该。Bob一头雾水、满头大汗的听了警察叔叔的解释:你为什么不办身份证,有了身份证在你和Susan交互时,Susan可以先看看你的身份证,你的身份证信息里包含你的姓名、住址、公钥信息、有效期等,通过身份证Susan就可以确定你的身份。这样Lucy哪有空子可钻?你这黑户,还报警,不处罚你就高香吧。赶紧办证!
从警局出来,Bob清醒了,原来自己一直没找组织,一直不信任组织,一直…….。两天后,身份证办好了,Bob和Susan又开始悄悄话了,甚是惹人嫉妒!Lucy看在眼里,火在心里。但是Lucy又能怎么办,谁让人家找组织了?
Lucy这段时间一直很烦,直到那天他踏上西直门的那个过街天桥。桥上赫然印着的小广告吸引了他:办证 132XXXXXXX,一下子,他就有想法了。晚上回到家,他拨通了那个早已烂记于心的电话号码,办了一张假证,不用猜,假证的信息肯定和Bob一样。第二天,他就去Susan家门口,等Susan要和Bob发消息的时候,他就告诉Susan,我是Bob,你看这是我的身份证。Susan一检查,没问题,是她亲爱的Bob。顺其自然的,他又把悄悄话告诉了Lucy。
时间过的很快,马上就到了2013年,公安局通知,第一代身份证作废,开始办理第二代身份证。第二代身份证主要是为了打击假证分子,在身份证上加入了公安局的签名信息,也就是防伪标志。有了防伪标志,Lucy又开始哭去了,因为Susan一看他的身份证,就是假的,哪会相信他。
Susan和Bob从此恩恩爱爱,幸福生活着,再也不用担心Lucy来捣乱了!
相关推荐
用户的身份认证和数据的...Vanstone) 自签名隐式证书的认证密钥协商协议,主要基于ECQV 自签名隐式证书生成机制和公钥提取机制,可完成感知 节点和用户之间的相互认证及安全传输通道的建立,占用内存小,认证效率高。
以上学习所有内容,对称加密、非对称加密、消息摘要、数字签名等知识都是为了理解数字证书工作原理而作为一个预备知识。数字证书是密码学里的终极武器,是人类几千年历史总结的智慧的结晶,只有在明白了数字证书工作...
面向云服务的安全高效无证书聚合签名车联网认证密钥协商协议.pdf
OpenSSL 是一个免费的开放源代码密码学库,提供了各种加密算法和协议的实现。使用 OpenSSL 命令可以生成证书和自签名,以下是相关知识点的总结: 一、预安装准备 在开始使用 OpenSSL 之前,需要安装相关的软件和...
述了证书认证和数字签名中通用的安全协议流程、数据格式和密码函数接口等标准。安全协议以密码 技术为基础,为网络内的数字证书认证系统密码协议提供统一、通用的通联协议服务,以满足网络内的 实体对数字证书认证...
生成自签名证书工具,发布本地https服务用
(特别注意:该示例程序引用了一个未签名的控件!建议你参看该示例程序的更新版,其基于更可靠的Windows系统自身控件。) 该示例代码为CA证书自动检查和安装解决方案程序!其基于Active X控件运行。主要解决https协议...
该协议不需要属性证书, 也不需要AIK证书, 它通过借助一个离线可信第三方, 应用可信计算绑定和密封机制, 采用基于双线性对的属性环签名, 同时实现了平台的身份证明和完整性状态证明。分析和实验表明, 该协议具有不可...
首先,选中 IIS 根节点,在“功能视图”中找到“服务器证书”,然后进入找到文章前面配置好的 CA,点击“创建自签名证书”,然后输入一个好记的名字。重新在 IIS 添加网站绑定类型:Https,端口号默认是 443,可以不...
使用openssl创建和管理证书的脚本,让我们进行加密 1.使用HTTPS设置Jenkins并让我们加密证书 ... 我们将创建一个Cron作业,该作业将定期运行Certbot来检查和更新证书。 最后,我们将使用新证书来创建J
sslfie, 生成自签名 x.509 证书以便与 SSL/TLS 一起使用 SSLfie生成自签名 x.509 证书,用于 ssl/tls协议。一目了然:在一个证书中支持多个域名,使用 SubjectAltName字段。Trivial自动化- 唯一需要的参数是域名默认...
由于对运算的计算量较大,且现有无双线性对的密钥协商协议存在会话临时秘密值泄露安全缺陷,提出一种无需对运算的无证书隐式认证和密钥协商协议,在随机预言机模型下证明了新协议的安全性。新协议基于椭圆曲线上的...
java后台小程序源码签名证书 通过 java 小程序(@firma miniApplet,开源在 )或本地应用程序 AutoFirma 通过协议 () 在小程序不可用的情况下,提供用于签署 PDF 文件(PAdES-BES 格式)和任何其他文件(分离的 ...
提出了一种基于证书的高效聚集签名方案, 以实现无序聚集和有序聚集两种方式, 并给出 了 安 全 分 析。通过与现有方案的效率分析对比, 表明本方案因无需知识证 明, 所 以 效 率 更 高。最 后 基 于 PBC 算 法 ...
然而随着项目的升级和架构的调整,很多以前常用的类和方法都已被打上了@Deprecated注解,作为一个有代码洁癖的程序猿,我们也有必要升级一下工具类,让代码更加整洁。 另外在项目中正好需要访问https协议的接口,而...
证书管理员此脚本创建和管理自签名证书: 初始化和管理 CA 数据库自动创建服务器证书创建和撤销客户端证书更新服务器的吊销证书 CRL 文件。 生成 nginx 配置一个单独的 bash 脚本,除了 openssl 之外没有任何依赖项...
离线双签数字签名脚本[python] 说明,对应部分换成自己的签名证书即可。
在密码学中,X.509是公钥... 一个X.509证书中包含了其版本号,证书序列号,签名算法,签发者,证书主体,有效期,公钥,公钥密钥等信息。证书中的信息使用 ASN.1进行编码,ASN.1中数据以tag,长度,值的方式进行编码。
数字证书是用于身份验证和加密的电子文件,包含了用户的公钥、身份信息和签发机构的签名。SJY42证书服务器密码机程序员开发使用说明书提供了证书服务器的开发和使用指南,涵盖了证书服务器的架构、证书的生成和管理...
本标准规定了签名验签服务器的功能要求、安全要求、接口要求、检测要求和消息协议语法规范等有关内容。 本标准适用于签名验签服务器的研制设计、应用开发、管理和使用,也可用于指导签名延签服务器的检测。