对称加密 VS 非对称加密

一、PK

密钥使用方式:

    对称加密:使用对称方式,使用同一个密钥进行加密与解密,密钥必须保密

    非对称加密:使用非对称方式,使用两个密钥(加密密钥和解密密钥),其中一个密钥用于加密,其可对公众公开;另一个密钥用于解密,该密钥必须保密(私钥)

思想:

    对称加密:是基于代换与置换操作,

    非对称加密:是使用数学函数进行变换的。

性能:

    对称加密:速度快,加解密所需要的计算量小;但密钥管理工作量很大

    非对称加密:计算量很大;但密钥管理工作量很小

二、非对称加密需要满足的要点

    1.一对密钥容易生成

    2.从公开的密钥推出私有密钥来,在计算上是不可行的。(其思想与单向陷门有关,一般基于数学难题去设计生成密钥的算法;如著名的RSA非对称密码体制的安全性依赖于大整数分解的困难性;ELGamal非对称密码体制及其变种的安全性依赖于离散对数问题的困难性)

    扩充:单向陷门函数 f:D->V

    1)  任意给定 x∈D,计算 y=f(x) 是容易的。

    2)  对于几乎所有任意给定y∈V,计算x∈D使得y=f(x),在计算上是困难的,即计算x=f﹣¹(y)是困难的。这里所谓困难是指有意义的时间要求之内计算是不可行的。

    3)  存在陷门信息t,当已知t时,对给定的任何y∈V,若相应的x存在,则计算x使y=f(x)是容易的。

     通俗得说,就是已知x很容易得出y,但是已知y很难得到x,但当已知一个信息t时,可以轻易的从y得到x;

     这里t保密,用作解密密钥。加密函数是公开的,任何人可以将信息x加密成y=f(x);但只有拥有t的人,才能机密出信息x=f﹣¹(y)。

三、经典的非对称算法体制:RSA

    密钥的生成:随机选择两个大素数p和q,计算N=pq和φ(N)=(p-1)(q-1);随机选择整数e,1<e<φ(N),满足gcd(e,φ(N))=1,并计算整数d满足ed≡1(modφ(N));公钥PK=(N,e),安全销毁p,q和φ(N),并秘密保存密钥SK=(d)

    加密:发送消息m,首先获取对方的公钥PK=(N,e),然后计算密文c←m的e次方(modN),

    解密:计算m←c的d次方(modN),得到消息m

    相关知识:

    欧拉函数:任意给定正整数n,计算在小于等于n的正整数之中,有多少个与n构成互质关系?计算这个值的方法就叫做欧拉函数,以φ(n)表示.

    性质1.如果n可以分解成两个互质的整数之积,即n=p×q,则有:φ(n)=φ(pq)=φ(p)φ(q);

    性质2.根据“大数是质数的两个数一定是互质数”可以知道:一个数如果是质数,则小于它的所有正整数与它都是互质数;所以如果一个数p是质数,则有:φ(p)=p-1

   所以若我们知道一个数n可以分解为两个质数pq的乘积,则有φ(n)=(p-1)(q-1)

   欧拉定理与模反元素:欧拉函数的用处,在于欧拉定理“欧拉定理”指的是如果两个正整数an互质,则n的欧拉函数φ(n)可以让下面的等式成立:aφ(n)1(modn)

也就是说,aφ(n)次方被n除的余数为1模反元素的推导过程如下根据欧拉定理,有:aφ(n)=a×aφ(n)11(modn)b=aφ(n)-1,得:ab1(modn)b就是a的模反元素意即,如果两个正整数an互质,那么一定可以找到整数b使得ab-1n整除,或者说abn除的余数是1


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值