Crypto-现代密码

本文介绍了现代密码学的基础概念,包括对称密码如流密码和块密码(如DES和AES),非对称密码中的RSA算法和基于离散对数问题的密钥交换,以及椭圆曲线密码体制。这些技术在数据加密、密钥管理和网络安全中起到关键作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Crypto-现代密码


现代密码:对称密码(加密解密数据)、非对称密码(对称密钥管理)、单向散列函数(完整性)、签名验签(不可抵赖性)、智能合约、多方安全计算、联邦学习、

对称密码:流stream密码、块block密码

steam crypto:明文与随机数进行位异或得到密文,重点是随机数RNG的产生

block crypto:输入明文分块加密

​ Feistel结构:加解密相同,仅轮密钥顺序相反输入,round key按轮次与key进行进行function最后得到c m(DES)

​ Substitution-permutation network:每轮keyn与m做异或后产生多个固定大小s,s输入类似hashtable产出下个m,轮n次后输出c(AES)

​ ECB:相同明文出现相同密文(攻击:通过剪切达到改变数据目的)

​ CBC:每块密文都依赖前面的明文->有初始IV,与m异或后得到m0和key进行function_encrypto,得到的作为IV参与下一轮次的m异或(攻击:字节翻转攻击->通过修改iv和c来控制m)

​ CFB:初始IV加密后与密文异或

​ CTR:产生个随机数字counter1,按顺序到countern,counter1与key参与func_encry运算得到的结果与m1异或,得到第一段密文m1,这样可以输入m马上得到c

​ OFB:

非对称密码:Factoring Integers大数分解 、Discrete Logrithm 离散对数、Elliptic Curves椭圆曲线

**Factoring Integers大数分解:**LP问题:大数分解难,无法分解就求不出私钥d

​ RSA==>选大质数p、q, n=p*q,再选一个符合欧拉函数n的e,这样e必有倒数e-1,可得私钥d=e-1 mod(p-1)(q-1),公钥=(N,e),e大加密慢,e小不安全m=pow(c,d,n),c=pow(m,e,n),公钥为(e,n),私钥为d

**Discrete Logrithm 离散对数:**LP问题:x=a^y 求幂指数y难,

​ 假设a, p均为素数,则有以下等式:{a^1 mod p, a^2 mod p…a^(p-1)mod p} ={1,2, …p-1} 对于任意一个数x, 若0<x<p,则必定存在唯一的y (0<y<p),使得x = a^y mod p,当p很大时,很难求出y。

​ Diffie-Hellman密钥交换算法==>Alice Bob约定素数q,以及整数a(a<q),且a是q的原跟。产生私钥Xa,Xb(<q),Alice计算Ya = a^Xa mod q,Bob计算Yb = a^Xb mod q,互相交换Y,Alice和Bob的公钥为K = Yb^Xa = Ya^Xb =a^(Xa*Xb) mod q

Elliptic Curves椭圆曲线:ECDLP问题:P+P+…+P= dP =Q , 给P Q,计算d很困难

​ 选一条椭圆曲线Ep(a,b),并取线上一点为基点P;选一个大数d为私钥,并生成Q=dP为公钥。加密==>选随机数r,C=(rP,M+rQ),解密==>M+rQ-d(rP)=M+r(dP)-d(rp)=M

​ 曲线性质==>y2=x3+ax+b,(4a3+27b2!=0,为了不包括奇点),始终关于x对称;

​ point addition点加法:沿曲线的P+Q两点画线,继续这条线直到第三次相交曲线,最后在第三点(x,y)沿y取反,即(x,-y)为前两点相加的结果;如果一个点的话就是切线找第二个点即为结果。

​ multiplication点乘法:3*A=A+2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值