读改变未来的九大算法笔记04_公钥加密

这篇具有很好参考价值的文章主要介绍了读改变未来的九大算法笔记04_公钥加密。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

读改变未来的九大算法笔记04_公钥加密

1. 加密的目的就是传输秘密

2. 分块密码(Block Cipher)的现代加密技术使用了相加把戏的变体

2.1. 加法得出的结果能用于统计分析,这意味着一些人能通过分析你的大量加密消息来得到密钥

2.2. 任何知道密钥的人都能用相反的步骤运行所有操作,以获得最初的、解密的消息

2.3. 最流行的分块密码是高级加密标准(Advanced Encryption Standard)

2.3.1. AES能配合多种不同配置使用,但标准配置是使用16个字母的“块”,配备128位密钥,进行10轮混合操作

3. 单向操作

3.1. One-way Action

3.2. 颜料混合把戏中的单向操作是“混合颜料”

3.3. 可以做一些事情,但不能取消做过的事

4. 混合操作就是离散指数

4.1. Discrete Exponentiation

5. 分离操作被称为离散对数

5.1. Discrete Logarithm

6. 幂函数

6.1. Power Notation

6.2. 写下许多相同数字相乘的快捷方法

6.2.1. 6×6×6×6=6^4

7. 钟算

7.1. Clock Arithmetic

7.2. 钟的大小可以是任何数

7.2.1. 非一座普通的钟上熟悉的12个数字

7.3. 数字从0而不是从1开始计数

7.4. 只能使用比钟大小小的私人数字

7.4.1. 现实中运用时通常会使用几百个数位长的钟大小

7.5. 钟大小必须是一个素数

7.5.1. 只有1和其自身两个除数

7.6. 基数必须是钟大小的本原根(primitive root)

7.6.1. 基数的幂最终将循环遍钟上每个可能的值

7.7. 示例

7.7.1. 用大小为7的钟做钟算,只要像平常一样将数字相加再相除即可,不过不管结果如何,你只要取除以7所得的余数即可

8. 迪菲–赫尔曼密钥交换

8.1. Diffie-Hellman Key Exchange

8.2. 1976年首次发表了这一算法

8.3. 怀特菲德·迪菲(Whitfield Diffie)

8.4. 马丁·赫尔曼(Martin Hellman)

8.5. https:使用的方法是迪菲–赫尔曼机制或工作原理类似的替代方法之一

8.6. 颜料混合把戏(Paint-mixing Trick)

8.6.1. 你和阿诺德各自选择一种“私人颜色”

8.6.2. 选择一种新的不同的颜色成分并公开宣布,我们称这种颜色为“公开颜色”

8.6.3. 你和阿诺德各用一桶公开颜色和一桶私人颜色制造一种混合颜色。这就是你的“公开 – 私人混合颜色”

8.6.4. 你选取一批阿诺德的公开–私人混合颜色,拿回自己的角落。现在加入一桶私人颜色

8.6.5. 阿诺德选取一批你的公开 – 私人混合颜色,拿回他的角落,在那里,他再加入一桶他的私人颜色

8.6.6. 你和阿诺德制作了同样的混合颜色

8.7. 用数字进行颜料混合把戏

8.7.1. 机密信息和公开信息用一种在数学上不可逆的方式“混合”在一起,就像混合在一起的颜料一样,再也分不开

8.8. 共享密钥

8.8.1. 示例

8.8.1.1.

读改变未来的九大算法笔记04_公钥加密文章来源地址https://www.toymoban.com/news/detail-471523.html

8.8.1.2. 你和阿诺德各自单独选择一个私人数字

8.8.1.2.1. 你选择8作为私人数字,而阿诺德选择9

8.8.1.3. 你和阿诺德公开就两个公开数字达成一致——钟大小(11)和另一个被称为基数的数字(选2为基数)

8.8.1.4. 通过使用幂符号和钟算,你和阿诺德各自将自己的私人数字和公开数字相混,分别得到一个公开–私人数字(public–private number,PPN)

8.8.1.4.1. PPN=base^私人数字(钟大小)
8.8.1.4.2. 你的PPN=(2^8=256,256 mod 11)=3(钟大小为11)
8.8.1.4.3. 阿诺德的PPN=(2^9=512,512 mod 11)= 6(钟大小为11)

8.8.1.5. 你和阿诺德各自单独获得对方的公开–私人数字,再将其与自己的私人数字相混合

8.8.1.5.1. 共享密钥=其他人的PPN^私人数字 (钟大小)
8.8.1.5.2. 你的共享密钥=(6^8=1679616,1679616 mod 11)=4(钟大小为11)
8.8.1.5.3. 阿诺德的共享密钥=(3^9=19683,19683 mod 11)=4(钟大小为11)

8.8.1.6. 尽管你按照不同的顺序混合了各种成分,但你和阿诺德都使用了相同的成分,因此也得到了相同的共享密钥

9. RSA

9.1. 1978年

9.2. 罗纳德·李维斯特(Ronald Rivest)

9.3. 阿迪·沙米尔(Adi Shamir)

9.4. 雷奥纳德·阿德尔曼(Leonard M.Adlemen)

9.5. 20世纪70年代为自己的系统申请了专利,而他们的专利直到2000年年末才失效

10. 背后的故事

10.1. 英国政府在数年前就已经知道类似迪菲–赫尔曼密钥交换和RSA系统

10.2. 那些发明迪菲–赫尔曼机制和RSA的先驱是英国政府通信实验室GCHQ的数学家

10.3. 他们工作的结果被记录在内部机密文件中,直到1997年才被解密

到了这里,关于读改变未来的九大算法笔记04_公钥加密的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 读改变未来的九大算法笔记02_数据库

      2.1.1. 当一个程序崩溃时,它会丢掉所有正在处理的东西 2.1.2. 只有安放在计算机文件系统中的信息会得到保存 2.1.3. 崩溃相当宽泛:包括任何可能导致计算机停止运行进而损失数据的事 2.1.3.1. 可能的事件包括断电、硬盘出错、其他硬件出错,以及操作系统或应用程序中的

    2024年02月08日
    浏览(33)
  • 读改变未来的九大算法笔记07_搜索引擎

    1.1.1.1. 惠普(Hewlett-Packard) 1.2.1.1. 从一间卧室开始的,空间很快就不够用了,于是他们转移到了车库 1.3.1.1. 谷歌 1.3.1.1.1. 门洛帕克车库 2.1.1.1. 美国工程师范内瓦·布什(Vannevar Bush) 2.1.1.2. 论文《诚若所思》(As We May Think) 2.1.1.3. 一台被称作麦麦克斯(memex)的机器

    2024年02月08日
    浏览(41)
  • 读改变未来的九大算法笔记09_指尖的精灵

    5.1.2.1. 编译器 5.1.2.2. 程序验证技术 5.2.2.1. 排序算法(快速排序等) 5.2.2.2. 图形算法(迪杰斯特拉最短路径算法等) 5.2.2.3. 数据结构(哈希表等) 5.3.2.1. CPU(中央处理器) 5.3.2.2. 监视器 5.3.2.3. 网络

    2024年02月08日
    浏览(27)
  • 读改变未来的九大算法笔记05_数字签名

    3.3.1.1. 钟大小为11的乘法表 3.5.2.1. 欧几里得算法也能根据钥匙值计算出挂锁值,而这一算法要比暴力破解高效得多。这也是乘法方法被认为不安全的原因 4.2.1.1. 钟大小为22时n的三次方和七次方的值 4.5.1.1. 发明一种高效的分解因子算法只会破坏类RSA机制

    2024年02月08日
    浏览(36)
  • 商用密码应用与安全性评估要点笔记(SM2公钥加密算法)

    1、SM2算法简介         SM2密码算法是我国2010年发布的商用密码算法,属于公钥密码算法,也成为非对称密钥机制密码算法。SM2基于椭圆曲线离散对数问题,相对于RSA基于大整数因数分解更具优越性。         SM2算法于2012年成为我国密码行业标准,并于2017年被ISO采纳,成为

    2024年02月01日
    浏览(32)
  • [XJTU计算机网络安全与管理]——第五讲公钥加密算法

    素数 素数是除了1与自身无其他因子的数;它们无法被写为数字的乘积;1一般不再考虑之内 例如:2,3,5,7是素数,4,6,8,9不是 素数是数论研究的中心 200以内的素数有:2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173

    2023年04月27日
    浏览(37)
  • 密码学学习笔记(九):Public-Key Encryption - 公钥加密2

    如果我们知道𝑝, 𝑞 (即𝑁 = 𝑝𝑞) 我们可以在mod N中进行反幂运算。 比如: 我们有一个单向陷门函数,非常适合加密。  取两个大素数,然后N = 𝑝𝑞, 然后挑选一对𝑒, 𝑑  加密:给定𝑃𝐾 = (𝑁, 𝑒) 和一条消息𝑚 在里面 计算密文𝑐 :  解密:给定一个密文𝑐

    2024年02月13日
    浏览(38)
  • 国密算法 SM2 公钥加密 数字签名 密钥交换 全网最高效的开源python代码

    此前发布过SM2、SM3、SM4、ZUC等文章,以及开源的完整python代码。近些天看到一篇电子科大兰同学的硕士毕业论文(兰修文. ECC计算算法的优化及其在SM2实现中的运用[D]. 成都: 电子科技大学, 2019),文中采用预计算加速SM2椭圆曲线基点点乘,将这个思路用python代码实现后,实测

    2024年02月09日
    浏览(35)
  • RSA算法习题 (采用RSA算法,其中e=7,p=11,q=13,求出公钥和私钥,并求出明文85进行加密后的密文。)

    1、采用RSA算法,其中e=7,p=11,q=13,求出公钥和私钥,并求出明文85进行加密后的密文。 2. 找出质数 P、Q P=11 Q=13 3. 计算公共模数 N = P * Q = 143 4. 欧拉函数 Φ(N) = (P-1)*(Q-1) = 10 *12 = 120 5. 计算公钥E 1Eφ(N) 所以1E120 E的取值范围{3,7,9,11,13,17,19,...,117,119} E的取值必须和φ(N)互质 取

    2024年02月09日
    浏览(73)
  • RSA双向加解密(公钥加密-私钥解密;私钥加密-公钥解密)

            非对称加密算法中,提供一个公钥一个私钥。一般情况下,采用公钥加密、私钥解密的方式。         假设有这样一个场景:服务A与服务B需要通信,通信内容为了安全需要进行加密传输,并且服务A与服务B不能互相持有对方的钥匙。         我首先想到的是

    2024年02月11日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包