学习阅读的文章地址:http://www.youdzone.com/signature.html
另外学习过程中写些笔记,是个好习惯~~
公钥私钥的原则:
- 一个公钥对应一个私钥。
- 密钥对中,让大家都知道的是公钥,不告诉大家,只有自己知道的,是私钥。
- 如果用其中一个密钥加密数据,则只有对应的那个密钥才可以解密。
- 如果用其中一个密钥可以进行解密数据,则该数据必然是对应的那个密钥进行的加密。
bob有一对公匙和私匙,他自己保留私匙,把公匙分给pat 和susan
case1:susan 用bob的公匙写加密信件发给bob
susan想邀请bob和她dating,用bob的公匙加密信件本身发给bob,信件本身被加密了,bob拿到被加密的文件后,用私匙解密,得到正确的信件内容。私匙只有bob拥有,其他人即使得到密文信件,也没法知道信件的真实内容了。
case2:bob用数字签名的方式回信给susan
bob接受了susan的dating请求,决定以数字签名的方式回信给susan,回信的内容是大家都可以见的。首先bob写好信件,通过hash函数,形成信件的摘要(digest),然后用私匙加密信件摘要(digest)成一个数字签名(Signature),并且把数字签名(signature)附在信件后面发送给susan。susan收到信件后,怎么确定这个信件是bob发的呢?首先她用bob的公匙解密数字签名(signature),然后把信件内容通过hash函数形成摘要(digest),如果信件摘要和解密数字签名以后的内容是一致的,那么就可以断定这封信是来自bob的了。数字签名可以防止内容在互联网上传输的过程中,被其他人篡改。
case3:数字签名的骗局
故事2如果这样发展,Doug其实对susan爱慕已久,他知道susan对bob有dating请求(线下潜入bob电脑,或者瞟一眼看到),他回去决定假冒bob,回应susan的邀请。首先doug潜入susan的系统,把bob的公匙换成自己的公匙,然后用自己的私匙给susan发一封拒绝dating的信件,并且是假借bob的名义的。susan以为是bob写的,就用bob的公匙(这时已经被替换成doug的公匙了),解开数字签名,并且验证通过了。susan认定这是bob拒绝了她。doug完美的欺骗了susan。
case4:数字证书Digital Certification
bob决定对自己的公匙做数字证书,让第三方来保管公匙,以防doug之徒的破坏。他找到"证书中心"(certificate authority,简称CA)。CA也有自己的公匙和私匙,它把bob的公匙和bob的信息一起加密,做成数字证书。bob有了这个数字证书以后,给susan写信的时候,不但在信下附上数字签名,还附上数字证书。susan拿到信以后,先用ca的公匙解密数字证书,得到bob的公匙,然后再解开bob的数字签名。
相关推荐
数字证书和公钥私钥加密是当今网络安全中的基础元素。它们在保护数据传输、验证身份、以及确保信息交流的完整性和机密性方面发挥着关键作用。以下是对数字证书原理和公钥私钥加密原理的详细解读。 数字证书是一种...
### 公钥私钥加密解密、数字证书与数字签名详解 #### 一、基础知识概述 在探讨公钥私钥加密解密、数字证书以及数字签名之前,我们需要先理解几个核心概念。 **1. 密钥对:** - 在非对称加密技术中,存在两种密钥...
【数字证书原理与公钥私钥加密概述】 在信息技术领域,数据安全至关重要,尤其是在网络通信中。为了确保信息不被未经授权的用户访问或篡改,加密技术被广泛应用。本文将探讨数字证书的基本原理以及公钥私钥加密的...
本示例提供了一个RSA加密工具类,用于生成公钥和私钥,并使用它们进行加密和解密操作,这对于保护数据库中的敏感信息,如密码,是非常必要的。 1. **RSA算法原理**: RSA算法基于数论中的大数因子分解难题。其基本...
java公钥加密私钥解密与数字证书,数字证书的生成看这里 http://hi.baidu.com/chenminliang/blog/item/2b30db24920ae0338744f9db.html
PFX(Personal Information Exchange)文件是微软定义的一种证书存储格式,它包含了用户的数字证书和相应的私钥,通常用于跨平台的数据传输或者网络通信中的身份验证。PFX文件通常以.pfx或.p12为扩展名,是二进制...
"密码学总结_公钥_私钥_数字签名_数字证书完全解析" ...这篇文章为读者提供了密码学的基础概念,包括单钥加密、私钥加密、公钥、私钥、数字签名和数字证书等,并且介绍了数字签名和数字证书的应用。
在IT安全领域,RSA是一种广泛使用的非对称加密算法,用于保护敏感数据,如密码、数字证书等。本文将详细讲解如何在Windows操作系统上利用OpenSSL工具生成RSA公钥和私钥。 首先,OpenSSL是一个强大的安全套接字层...
RSA算法是一种非对称加密算法,它在信息...综上所述,C++实现RSA公钥私钥加密算法涉及了大数运算、素数检测、欧拉函数、模逆运算等多个数学和密码学概念。理解并实现这一算法有助于深入理解信息安全基础和加密技术。
由于公钥是公开的,所以它可以安全地分发给任何需要加密数据的人,而私钥则需要保密,因为它用于解密数据或验证数字签名。这样的机制确保了只有拥有私钥的一方才能解密由公钥加密的信息,从而保护了数据的安全性。
通过上述介绍,我们可以看到**公钥私钥加密**及其配套的数字签名和数字证书技术,在现代网络安全领域发挥着至关重要的作用。它们不仅能够保护信息的机密性,还能确保信息的完整性和来源的可靠性,为用户提供了强大的...
本文将详细讲解如何使用C++在Visual Studio 2017环境下生成证书和私钥,并探讨公钥和私钥的概念及其作用。 首先,我们需要理解证书和私钥的基本概念。在公钥基础设施(PKI)中,证书是一种数字文档,用于证明一个...
3. **数字证书**:数字证书通常包含公钥信息,并由可信的第三方机构(如CA)签发。这些证书用于验证网站或其他实体的身份,确保用户正在与预期的实体通信。 #### 六、总结 通过以上分析,我们可以看到公钥和私钥在...
"openssl工具(RSA网络通信加密,需要的,生成公钥私钥)" 这个标题提到了两个关键概念,一个是`openssl`工具,另一个是`RSA`加密算法,主要用于在网络通信中生成公钥和私钥对。 **`openssl`工具:** `openssl`是...
数字证书是CA对公钥及关联信息的验证,它包含了公钥、私钥的指纹、CA的签名以及证书的有效期等。在Windows中,系统会自动处理证书的验证和安装。数字签名则是一种保证信息完整性和发送者身份的方法,它使用发送者的...
在本例中,“代码签名数字证书(含私钥).pfx”就是这样的文件,包含了用于签名的私钥和对应的证书信息。而“密码.txt”可能是用来解密和访问这个.pfx文件的密码,确保私钥的安全。 总的来说,代码签名是保证软件...
**应用场景**:公钥加密私钥解密广泛应用于数字证书、电子邮件加密、安全套接层协议(SSL/TLS)等场景中。 #### 二、私钥加密公钥解密——实际为私钥签名公钥验证 私钥加密公钥解密这一说法并不准确,正确的表述...
CA是一个可信赖的第三方实体,负责验证用户或系统的身份,并签发包含公钥和身份信息的数字证书。这些证书在互联网上广泛用于验证网站的身份,确保用户与正确的服务器通信,防止中间人攻击。 认证授权是网络安全中的...
公钥加密和私钥解密在实际应用中有着广泛的应用,例如HTTPS协议用于安全的网页浏览,SSH用于远程登录,PGP用于电子邮件加密,以及数字证书用于身份验证等。了解和掌握公钥加密私钥解密的原理及其在Java中的实现,...