明天网络安全考试了,看了一下午,还没理解透,持续更新...

质数: 除了1和它本身以外不再有其他因素的数
互质关系: 两个正整数,除了1以外,没有其他公因子
RSA实现了非对称加密
DES实现了对称加密
**************************************************
RSA密钥生成的步骤

step1: 随机选择两个不相等的质数p和q
step2: 计算p和q的乘积n
step3: 计算n的欧拉函数φ(n)=(p-1)(q-1)
step4: 随机选择一个整数e,条件是1< e < φ(n),且e与φ(n)互质
step5: 计算e对于φ(n)的模反元素d(多组取一) ed ≡ 1 (mod φ(n))
  p q    //基础随机
公 n 私
  φ(n)
公 e     //在上一步基础随机上随机
  d 私   //d多组取一,在解密过程中效果一样(为什么效果一样,只是我一知半解的猜测)

***************************************************
RSA算法的可靠性

若已知n、e要推出d
->先推出φ(n)
->将n因式分解
->大整数的因式分解基本不能完成,
虽然此处只有除1外的一对因子,现存方法只有暴力破解
成对的生成公钥、私钥,却无法单独由公钥推出私钥

***************************************************
RSA密钥如何加密解密
公钥(n,e) 只能加密小于n的整数m(解密出m的必要条件)

用公钥 (n,e)对m进行加密,算出下式的c,逆向只能暴力破解
m^e ≡ c (mod n)

解密要用私钥(n,d),逆向只能暴力破解
c^d ≡ m (mod n)

m的值最终得唯一值--原始的明文(具体算法比较复杂,过程中c被消去,而多组取一的d无法影响结果,利用了不同层次互质关系)
公钥加密私钥解,私钥加密公钥解,
***************************************************
模拟信息传输过程
公钥(n,e) 只能加密小于n的整数m,那么长信息怎么办
安全

     公钥
私钥 -----------------> 公钥
     DES加密
Alice <---------------- Bob
     被公钥加密的
     #DES密钥#

无法保证安全

     DES加密
Alice <---------------- Bob
     DES密钥

RSA算法笔记+理解的更多相关文章

  1. 更多细节的理解RSA算法

    一.概述 RSA算法是1977年由Ron Rivest.Adi Shamir 和 Leonard Adleman三人组在论文A Method for Obtaining Digital Signatu ...

  2. RSA算法、SSL协议学习笔记

    最近学习计算机网络,涉及到SSL协议,我想起了去年密码学课程讲过的非对称加密RSA算法,结合阮老师的博客,写写学习笔记,这里再回忆一下. RSA算法 RSA算法是一种非对称密码算法,所谓非对称,就是指 ...

  3. 怎么理解RSA算法

    原文地址:http://www.ittenyear.com/414/rsa/ 怎么理解RSA算法 能够把非对称加密算法里的公钥想象成一个带锁的箱子,把私钥想象成一把钥匙 能够把对称加密算法里的密钥想象 ...

  4. RSA算法理解

    RSA加密算法是最常用的非对称加密算法,CFCA在证书服务中离不了它.但是有不少新来的同事对它不太了解,恰好看到一本书中作者用实例对它进行了简化而生动的描述,使得高深的数学理论能够被容易地理解.我们经 ...

  5. [已解决] 快速理解RSA算法

    RSA算法基础详解 http://www.cnblogs.com/hykun/p/RSA.html RSA算法原理(一) http://www.ruanyifeng.com/blog/2013/06/ ...

  6. [转] 带你彻底理解RSA算法原理

    http://blog.csdn.net/dbs1215/article/details/48953589 1. 什么是RSA RSA算法是现今使用最广泛的公钥密码算法,也是号称地球上最安全的加密算法 ...

  7. 彻底理解RSA算法原理

    1. 什么是RSA RSA算法是现今使用最广泛的公钥密码算法,也是号称地球上最安全的加密算法.在了解RSA算法之前,先熟悉下几个术语 根据密钥的使用方法,可以将密码分为对称密码和公钥密码 对称密码:加 ...

  8. 带你彻底理解RSA算法原理,很简单的

    1. 什么是RSA RSA算法是现今使用最广泛的公钥密码算法,也是号称地球上最安全的加密算法. 在了解RSA算法之前,先熟悉下几个术语 根据密钥的使用方法,可以将密码分为 对称密码 和 公钥密码 对称 ...

  9. C#加密与解密(DES\RSA)学习笔记

    本笔记摘抄自:https://www.cnblogs.com/skylaugh/archive/2011/07/12/2103572.html,记录一下学习过程以备后续查用. 数据加密技术是网络中最基 ...

随机推荐

  1. vue使用iview Timeline 时间轴不显示问题

    vue Timeline 时间轴不显示渲染的效果 官网代码 <Timeline pending> <TimelineItem>发布1.0版本</TimelineItem& ...

  2. Python 学习笔记(九)Python元组和字典(二)

    什么是字典 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 键必须是唯 ...

  3. DML-修改

    一, 修改单表的记录 语法: update 表名 set 字段=值[where 筛选条件] 二,修改多表 update 表名 别名 inner/left/rigth join 表二 on 连接条件 s ...

  4. Linux -- 用户篇

    Linux -- 用户与用户组 1.Linux 系统中有三种角色:所有者(用户),用户组与其他人,一张图可以说明用户与用户组的关系. 如图,某公司相当于一个用户组,该用户组下有A,B两个用户,用户拥有 ...

  5. linux设置容器(中间件)开机自启

    /etc/rc.d/rc.local   JAVA_HOME=/usr/java/jdk1.6.0_45 su - goldsign -c '/home/goldsign/Oracle/Middlew ...

  6. 前端ajax的各种与后端交互的姿势

    前端中常常用的与后端交换数据的话,通常是要用到ajax这种方法的 但是交互的方式有很多种,很多取决于你后端的属性,我这儿主要列举我目前项目比较常用的两种方式 --一个是我们通用的web api和控制器 ...

  7. LeetCode 中级 - 优势洗牌(870)

    给定两个大小相等的数组 A 和 B,A 相对于 B 的优势可以用满足 A[i] > B[i] 的索引 i 的数目来描述. 返回 A 的任意排列,使其相对于 B 的优势最大化. 示例 2: 输入: ...

  8. 【模板】负环(spfa)

    题目描述 暴力枚举/SPFA/Bellman-ford/奇怪的贪心/超神搜索 输入输出格式 输入格式: 第一行一个正整数T表示数据组数,对于每组数据: 第一行两个正整数N M,表示图有N个顶点,M条边 ...

  9. chromium之ScopedNSAutoreleasePool浅析

    上代码,看看注释 ScopedNSAutoreleasePool只有Mac系统特有的,也可以理解为OC特有的函数, 其他系统为空实现   // On the Mac, ScopedNSAutorele ...

  10. chromium之at_exit

    // This class provides a facility similar to the CRT atexit(), except that // we control when the ca ...