快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

密码学入门知识点有哪些

这篇文章主要讲解了“密码学入门知识点有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“密码学入门知识点有哪些”吧!

公司主营业务:成都网站建设、成都做网站、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联公司推出华阴免费做网站回馈大家。

一、对称加密和非对称加密入门

1. 如何不被窃听 —— 加密

密码学入门知识点有哪些密码学入门知识点有哪些

  • 这种加密方案在密码学里称为对称密码,加密方和解密方使用的是相同的密钥。

  • 知名的密码算法有 AES(2001)、Blowfish(1993)、DES(1977),再远一点,有二战时期的恩尼格码(转轮机原理,德国)、紫色密码(转轮机原理,日本),以及著名的凯撒密码(没错就是地中海北岸那个凯撒)、栅栏密码等。

2. 如何交换密钥 —— 非对称加密

解决信道安全问题

密码学入门知识点有哪些

  • Bob 事先生成一对公钥和私钥,私钥 pri 由自己保管,把公钥 pub 发给 Alice。

  • Alice 使用 pub 对消息内容进行加密,Bob 用 pri 进行解密。

  • 需要注意的是, 只有私钥才可以解密,所以即使 Eve 窃取到了 pub(只有 pub 被传输而容易被窃取),她也无法解密。

  • 这种加密方式在密码学里称为非对称密码,所谓“非对称”指的是加密方和解密方用的密钥不一样。

  • 知名的非对称算法有:DSA(数字签名算法,只能用于签名,1991)、ECC(椭圆曲线加密,1985)、RSA(公钥加密算法,1977)等。

  • 这些算法除了用于加密外,还可以用于 数字签名。非对称算法有个致命弱点: 性能很低。实际应用中一般采用混合加密体制、哈希签名体制。

3. 如何防止数据篡改 —— MAC

密码学入门知识点有哪些密码学入门知识点有哪些

图中的 MAC 指的是 消息认证码(Message Authentication Code),你现在不需知道它的原理,只要记住 :(1)传入两个参数 message 和 key,进行一系列计算后得到一个值叫 MAC。(2)只有 message 和 key 相同的情况下,才能得到相同的 MAC。

  • 消息认证码有多种实现方式,其中最常见的是 HMAC(Hash MAC),即使用哈希算法来实现 MAC,还有一种是基于分组密码算法的 MAC,不常见。

  • 聪明如你,肯定会想到如果 key 被窃取该怎么办?这就涉及到 数字签名了,后文会讲到。

4. 如何校验身份 —— MAC

密码学入门知识点有哪些

  • MAC包含几种实现方式:基于 HASH 的 MAC 称为 HMAC,应用比较广泛。

  • 有些同学应该接触过阿里云的 Access Key,其实就是 HMAC 的原理。

  • 有些同学在两个系统之间API调用时,会使用同一个 key 做 md5 计算来实现 API 鉴权,这称为“加盐HASH”,可以简单理解为 HMAC 的简化版。

  • 同样的,如果 key 被窃取该怎么办?这可以用 数字签名来解决。

5.更进一步 —— 数字签名

发送方是用 私钥进行签名,而接收方用 公钥 进行验签,这跟加密情况正好相反。

密码学入门知识点有哪些

6. 公钥的身份证 —— 数字证书

伪造公钥,Bob 需要事先生成公钥 pub 和私钥 pri ,然后把 pub 分发给 Alice。那么攻击过程就从这入手,Eve 生成自己的一对公钥 pub' 和 私钥 pri',截获 Bob 的 pub,并用自己的 pub' 冒充 Bob 的公钥发给 Alice。

密码学入门知识点有哪些密码学入门知识点有哪些

这是个“偷天换日”的过程,Eve 通过伪造公钥(中间人攻击),不光窃听到 Alice 的消息,还能保证整个过程中 Alice 和 Bob 都没有察觉!

Eve 不是喜欢伪造公钥吗,Bob 这次就要请 Trent 为自己的公钥注册一张 “身份证” —— 数字证书。见证如见人,哦不对,见证如见公钥!以下是注册数字证书的过程:

密码学入门知识点有哪些

  • Bob 请求 Trent 为自己的公钥 pub 注册一个证书。

  • Trent 收到请求后,用自己的私钥 pri ' 对 pub(以及身份信息) 进行签名,得到一个 sign。

  • Trent 把证书 certificate = pub + sign 颁发给 Bob。

  • Bob 把自己的证书 pub + sign 发给 Alice。

  • Alice 使用 Trent 的公钥 pub ' 对 sign 进行验签,如果校验成功则说明 pub 的确是 Bob 的公钥,因为她相信 Trent 的权威性。

Eve 不可能找 Trent 为她办一个 Bob 的数字证书,因为 Trent 不会同意的,就像警察蜀黍不会给我办一张别人的身份证一样。所以,Eve 无法伪造 Bob 的公钥。

  • 考虑到非对称算法的效率问题,实际应用中一般是先对数据进行哈希,然后才用私钥对哈希值(摘要)进行签名。

  • Trent 在密码技术领域中一般称为 认证机构(Certification Authority,即 CA)。

  • 以数字证书为基础,业界制定了一系列的规范和规格,比如由谁颁发证书、如何进行颁发、如何作废证书等,称为 公钥基础设施(Public-Key Infrastructure,即 PKI)。

二、对称加密常见密码学

AES,DES,3DES,TDEA,Blowfish,RC5,IDEA

三、非对称加密经典算法

RSA、Elgamal、背包算法、Rabin、D-H、ECC(椭圆曲线加密算法)

感谢各位的阅读,以上就是“密码学入门知识点有哪些”的内容了,经过本文的学习后,相信大家对密码学入门知识点有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!


文章名称:密码学入门知识点有哪些
本文路径:http://6mz.cn/article/jcijsg.html

其他资讯