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

质数: 除了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. Nlog日志出坑合集

    .net core框架下nlog不记录: 1.安装NLog.Web.AspNetCore 2.在Startup.cs文件的方法public void Configure(IApplicationBui ...

  2. Oracle 左连接(+)加号用法及常用语法之间的关系

    本文目的: 通过分析左连接(+)加号的写法和一些常用语法之间的联系,了解到Oracle 加号(+)的用法 分析步骤: 1.首先创建测试表的结构: create table test_left_a (a ...

  3. struts2-笔记

    文件下载http://struts.apache.org/download.cgi 第一步导入jar 包 在lib中有jar 包,不能把这些都导入到项目中 在apps 目录里面,找到实例程序,程序中直 ...

  4. SQLMAP注入常见用法

    1.检查注入点 sqlmap -u http://www.com.tw/star_photo.php?artist_id=11 2.列数据库信息当前用户和数据库 sqlmap -u http://ww ...

  5. UDP实现网络通信程序

    VC6.0创建基于UDP协议的网络聊天程序 只有一个工程UDP,服务器和客户端都是这个工程,因为UDP中C/S区分不强化 只讲关键部分,避免累赘 1.为对话框添加控件 2.为控件绑定变量和消息函数 启 ...

  6. 在Notepad++中使用文本对比插件

    目前Notepad++最新版是7.5.1,但很多插件仍然不能在64位版中使用,官网上是这么说的“Note that the most of plugins (including Plugin Mana ...

  7. react-router-dom和本地服务本地开发 (node、webpack)

    场景 使用react 做开发,避免会使用react-router React Router 已经是V4的版本 React Router 目前已经被划分成了三个包:react-router,react- ...

  8. Delphi 拦截滚轮事件不响应滚轮的上下滚动

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...

  9. Java实例 Part2:Java语言基础

    Part2:Java语言基础 ** Example01:从控制台接收输入字符 ** 运行结果: 实现代码: import java.util.Scanner; public class Example ...

  10. python应用:日期时间

    计算时间差时,注意天数差引发的问题,获取天数差为 (date2-date1).days 此处,需谨记date2>date1,以保证结果的正确性 具体应用如下: # -*-coding:utf8- ...