RSA非对称加密算法详解

加密概要

加密技术是对信息进行编码和解码的技术,编码是把原来可读信息(又称明文)译成代码形式(又称密文),其逆过程就是解码(解密),加密技术的要点是加密算法,加密算法可以分为三类:
1. 对称加密
2. 非对称加密
3. 不可逆加密

对称加密算法

  1. 加密过程:
    • 将明文分成N个组,然后对各个组进行加密,形成各自的密文,最后把所有的分组密文进行合并,形成最终的密文。
  2. 优点:
    • 算法公开、计算量小、加密速度快、加密效率高
  3. 缺点:
    • 交易双方都使用同样钥匙,安全性得不到保证
    • 密钥管理困难,尤其是在分布式网络中
  4. 常用算法:
    • DES、3DES(TripleDES)、AES、RC2、RC4、RC5和Blowfish

非对称加密算法

  1. 使用过程:
    1. 乙方生成两把密钥(公钥和私钥)
    2. 甲方获取乙方的公钥,然后用它对信息加密。
    3. 乙方得到加密后的信息,用私钥解密,乙方也可用私钥加密字符串
    4. 甲方获取乙方私钥加密数据,用公钥解密
  2. 优点:
    • 更安全,密钥越长,它就越难破解
  3. 缺点:
    • 加密速度慢
  4. 常用算法:
    • RSA、Elgamal、背包算法、Rabin、D-H、ECC(椭圆曲线加密算法)

RSA算法历史

1977年,三位数学家Rivest、Shamir 和 Adleman 设计了一种算法,可以实现非对称加密。这种算法用他们三个人的名字命名

数论基础

1. 欧拉函数

  • 定义:对于一个正整数 n ,小于 n 且和 n 互质的正整数(包括 1)的个数,记作 φ(n).则
    这里写图片描述
  • 证明:
    1. 如果n是一个质数,那么φ(n) = n-1
    2. 如果n是一个质数p的幂,即n = p^k,则φ(n) = p^k-p^(k-1) = (p-1)*p^(k-1)
    3. 欧拉函数是一个积性函数,当n,m互质的时候,φ(n*m) = φ(n)*φ(m)

2. 欧拉定理

  • 定义:如果两个正整数a和n互质,则n的欧拉函数 φ(n) 可以让下面的等式成立:a^φ(n)%n=1
  • 证明:
    这里写图片描述这里写图片描述

3. 费马小定理

  • 定义:假设正整数a与质数p互质,因为质数p的φ(p)等于p-1,则欧拉定理可以写成:a^(p-1)%n=1

4. 模反元素(乘积逆元)

  • 定义:两个正整数a和n互质,那么一定可以找到整数b,使得 ab-1 被n整除,或者说ab被n除的余数是
  • 20
    点赞
  • 68
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值