不经意传输(RSA前奏)-笔记理解(1)

不经意传输

首先回顾一下百万富翁
百旺富翁

百万富翁中假设两位主人公A和b 两人都想知道对方的财富而不透露自己的财产。
A: 假设准备了9个箱子,为每个箱子贴上序号,(1-9),然后小于自己金额的箱子里面放入苹果,大于且等于金额的箱子放入香蕉。
b: 找到与自己金额接近的箱子(图中是整数金额,有可能金额不是整数)打开,如果是苹果,则意味着A的金额大于b,如果是香蕉则b的金额大于等于A金额如果6.3万肯定是选7号箱

百万富翁问题通俗解法可以通过密码学中的n选1的不经意传输协(Oblivious Transfer,OT)议完美解决。
对OT协议解决的问题可抽象为:Alice拥有n条消息{m1,…,mn},Bob想知道其中一条消息mi;通过执行OT协议,Bob可以正确获得想要知道的消息mi,无法获得其它n-1条消息,而Alice无法知道Bob获得的是哪条消息。

1.RSA

对称加密算法”(Symmetric-key algorithm)
(1)甲方选择某一种加密规则,对信息进行加密;
(2)乙方使用同一种规则,对信息进行解密。
加密和解密使用同样规则(简称"密钥"),则称为‘对称加密算法’

这种加密模式有一个最大弱点:甲方必须把加密规则告诉乙方,否则无法解密。保存和传递密钥,就成了需要解决的问题。

之后提出新的加密模式被称为"非对称加密算法"
1)乙方生成两把密钥(公钥和私钥)。公钥是公开的,任何人都可以获得,私钥则是保密的。
2)甲方获取乙方的公钥,然后用它对信息加密。
3)乙方得到加密后的信息,用私钥解密。

RSA算法 一直是最广为使用的"非对称加密算法"

1.1 互质关系

如果两个正整数,除了1以外,没有其他公因子,我们就称这两个数是互质关系(coprime),例如:7和11

1. 任意两个质数构成互质关系,比如7和17。

2. 一个数是质数,另一个数只要不是前者的倍数,两者就构成互质关系,比如3和10。

3. 如果两个数之中,较大的那个数是质数,则两者构成互质关系,比如97和57。

4. 1和任意一个自然数是都是互质关系,比如1和99。

5. p是大于1的整数,则p和p-1构成互质关系,比如57和56。

6. p是大于1的奇数,则p和p-2构成互质关系,比如17和15。

1.2欧拉函数

任意给定正整数n,请问在小于等于n的正整数之中,有多少个与n构成互质关系?(比如,在1到8之中,有多少个数与8构成互质关系?)

1.计算这个值的方法就叫做欧拉函数,以φ(n)表示。在1到8之中,与8形成互质关系的是1、3、5、7,所以 φ(n) = 4。
2.φ(n) 的计算方法并不复杂,但是为了得到最后那个公式,需要一步步讨论。
oula
ϕ \phi ϕ ψ \psi ψ 表示一个意思oula2 1.3 欧拉定理oula3
1

1.4模反元素

模范元素

1.5密钥生成的步骤

密钥生成

n的长度就是密钥长度。3233写成二进制是110010100001,一共有12位,所以这个密钥就是12位。实际应用中,RSA密钥一般是1024位,重要场合则为2048位。

在这里插入图片描述
在这里插入图片描述
6

“对极大整数做因数分解的难度决定了RSA算法的可靠性。换言之,对一极大整数做因数分解愈困难,RSA算法愈可靠。
  假如有人找到一种快速因数分解的算法,那么RSA的可靠性就会极度下降。但找到这样的算法的可能性是非常小的。今天只有短的RSA密钥才可能被暴力破解。到2008年为止,世界上还没有任何可靠的攻击RSA算法的方式。
  只要密钥长度足够长,用RSA加密的信息实际上是不能被解破的。”

jiamijiwm
2.1
本文参考自阮一峰的网络日志

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值