数据安全与隐私保护——AES,DES,RSA(基于大整数素因子分解问题)

前言: 传统的对称加密非常容易破解,但目前对称加密还是非常安全的,主流是AES。非对称加密的主流是RSA,MD5。

RSA
虽稍后于MH背包公钥系统,但它是到目前为止应用最广的一
种公钥密码。RSA的理论基础是数论的欧拉定理,它的安全
性依赖于大整数的素因子分解的困难性。
RSA可用于加密,签名等。

但近代提出的量子计算机可能会打破这一稳定的格局~

本文重点阐述 非对称算法RSA的实现~

DES:Data Encrytion Standard(数据加密标准),对应算法是DEA

  1. 对称加密
  2. 同一个SK

AES:Advanced Encrytion Standard(高级加密标准)

  1. 对称加密
  2. 一个SK扩展成多个子SK,轮加密

RSA:RSA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用:

  1. 非对称加密,即:PK与SK不是同一个

  2. PK用于加密,SK用于解密

  3. PK决定SK,但是PK很难算出SK(数学原理:两个大质数相乘,积很难因式分解)

  4. 速度慢,只对少量数据加密

公匙密码算法思想

数据安全与隐私保护——AES,DES,RSA(基于大整数素因子分解问题)_第1张图片

常用算法

数据安全与隐私保护——AES,DES,RSA(基于大整数素因子分解问题)_第2张图片

RSA公钥密码的简介

数据安全与隐私保护——AES,DES,RSA(基于大整数素因子分解问题)_第3张图片

数论核心:

欧拉函数

大整数素因子分解

提前了解~

在数论,对正整数n,欧拉函数是小于或等于n的正整数中与n互质的数的数目(因此φ(1)=1)
数据安全与隐私保护——AES,DES,RSA(基于大整数素因子分解问题)_第4张图片
欧拉函数计算通式:
在这里插入图片描述
个人理解:其实并不是很难理解,我们可以用概率论来讨论,给定一个数字x,我们给它拆成了几个质数p1,p2,p3…,pn相乘,每个质数的倍数,当然不是质数,每个质数的倍数出来的概率就是1/pi,1-1/pi就得到了满足该个pi的概率,连乘后就得到了同时满足所有这种情况的概率,因此得到欧拉数了~
原始的欧拉函数公式也可以用我这个思想去推导,例如把24拆开拆成2^3*3,然后分别乘于概率就可以推导原公式了,千万不要死记硬背。


数据安全与隐私保护——AES,DES,RSA(基于大整数素因子分解问题)_第5张图片
欧拉定理:
在数论中,欧拉定理,(也称费马-欧拉定理)是一个关于同余的性质。欧拉定理表明,若n,a为正整数,且n,a互质,则:
在这里插入图片描述
举个例子:
首先看一个基本的例子。令a = 3,n = 5,这两个数是互素的。比5小的正整数中与5互素的数有1、2、3和4,所以φ(5)=4。计算:a^{φ(n)} = 3^4 =81,而81= 80 + 1 Ξ 1 (mod 5)。与定理结果相符。
这个定理可以用来简化幂的模运算。比如计算7^ 222 的个位数,实际是求7^ 222被10除的余数。7和10[[互素]],且φ(10)=4。由欧拉定理知7^ 4Ξ1(mod 10)。所以7^ 222=(7^ 4)^ 55*(7^ 2)Ξ1^ 55*7^2Ξ49Ξ9 (mod 10)。

RSA的密钥对 生成算法

对于重点进行解释
第三和第四点
这里取e非常有讲究,e得和n的欧拉数互质,不然如果e>=n的欧拉数,在加密中,mod后就为1了,如果e 数据安全与隐私保护——AES,DES,RSA(基于大整数素因子分解问题)_第6张图片

加解密过程

数据安全与隐私保护——AES,DES,RSA(基于大整数素因子分解问题)_第7张图片
画个简单的例子:

推导过程:

还有在大数的n次方求解问题中,很容易出现溢出情况,可以采用指数快速幂的方法。
加密时首先将明文比特串分组,使得每个分组对应的十进制数小于n,即分组长度小于log2n。

推导当m与n互素的情况

数据安全与隐私保护——AES,DES,RSA(基于大整数素因子分解问题)_第8张图片

推导当m与n不互素的情况

数据安全与隐私保护——AES,DES,RSA(基于大整数素因子分解问题)_第9张图片

实战应用


数据安全与隐私保护——AES,DES,RSA(基于大整数素因子分解问题)_第10张图片

同态性普及

1.RSA 算法对于乘法操作是同态的。
2.Paillier 算法则是对加法同态的。
3.Gentry算法则是全同态的。

同态性可用于机器学习的隐私保护,则不用知道原始数据,通过处理后的数据就可以得到我们想要的结果,实现两个同态中的一个已经非常难得了,全同态是超级厉害的。
全同态加密属于密码学领域。由于全同态加密支持无需解密,就能够对密文进行任意计算,因此可以立竿见影的解决数据隐私安全问题,有很大的应用需求。

你可能感兴趣的:(数据安全与隐私保护)