密码学 Crytography

密码学 Crytography

对称密码与非对称密码:

对称密钥密码体制:发送方和接收方使用相同的密钥

非对称密钥密码体制:发送方和接收方使用不同的密钥

通常采用对称密码体制实现数字加密,公钥密码体制实现密钥管理的混合加密机制

对称密钥体制:

加密处理速度快、保密度高,密钥管理分发复杂代价高、数字签名困难

分组密码和序列密码:

分组密码(一次加密一个明文分组):一次加密一个明文分组:DES,IDEA,AES;

序列密码(一次加密一位或者一个字符):一次加密一位或者一个字符:RC4,SEAL

加密方法:代换法:单表代换密码,多表代换;置换法

安全性:

攻击密码体制:穷举攻击法(对于密钥长度128位以上的密钥空间不再有效),密码分析学;

典型的密码攻击:唯密文攻击,已知明文攻击,选择明文攻击(加密算法一般要能够抵抗选择明文攻击才认为是最安全的,分析方法:差分分析和线性分析),选择密文攻击。

对称加密

传统对称密码加密时所使用的两个技巧是代换置换

Caesar密码

凯撒密码属于古典密码、置换密码

恺撒密码的替换方法是通过排列明文和密文字母表,如果仔细观察,能很轻易地找出其中的规律,密文字母表示将明文字母表向左或向右移动一个固定数目的位置。例如,当偏移量是左移3的时候,解密时的密钥就是3,当然我们也可以设置偏移量:
明文字母表:ABCDEFGHIJKLMNOPQRSTUVWXYZ;
密文字母表:DEFGHIJKLMNOPQRSTUVWXYZABC。

数据加密标准DES

1977年提出 。对称加密算法。

明文按64位进行分组密钥长64位,实际长度是56位(64-8)(第8、16、24、32、40、48、56、64位是奇偶校验位)。

密码结构基于Feistel网络

国际数据加密算法IDEA

对称加密算法

利用128位密钥对64位的明文分组,经连续加密产生64位的密文分组

高级加密标准AES

AES(Advanced Encryption Standard)支持三种长度的密钥:128位192位256位。对称加密算法;分组加密,分组长度固定为128

SP网络。 2001年提出。

非对称加密算法

基于难解问题设计密码是非对称密码设计的主要思想,NP问题NPC问题

克服密钥分配上的困难、易于实现数字签名、安全性高,降低了加解密效率

RSA

非对称加密算法(公开密钥密码);建立在大整数因式分解的困难性之上;既可用于加密,又可用于数字签名;目前应用最广泛;

尚未破解的密钥长度包括:512、1024、2048

RSA公钥和私钥的生成:

RSA算法由两个密钥,即公钥和私钥组成。
    1)准备两个非常大的素数 p p p q q q(转换成二进制后1024个二进制位或者更多,位数越多越难破解);
    2)利用字符串模拟计算大素数 p p p q q q的乘积 n = p q n=pq n=pq
    3)同样方法计算 m = ( p − 1 ) ( q − 1 ) m=(p-1)(q-1) m=(p1)(q1),这里的 m m m n n n的欧拉函数;
    4)找到一个数 e ( 1 < e < m ) e(1<e<m) e(1<e<m),满足 g c d ( m , e ) = 1 gcd(m,e)=1 gcd(m,e)=1(即 e e e m m m互素);
    5)计算 e e e在模 m m m域上的逆元 d d d(即满足 e d   m o d   m = 1 ed\ mod\ m=1 ed mod m=1 );
    6)至此,公钥和私钥生成完毕: ( n , e ) (n,e) (n,e) 为公钥, ( n , d ) (n,d) (n,d) 为私钥;

RSA加密过程:

对于明文x,用公钥(n,e)x加密的过程,就是将x 转换成数字(字符串的话取其 ASCII码或者 unicode 值),然后通过幂取模计算出y ,其中y 就是密文。 y = x e   m o d   n y=x^e\ mod\ n y=xe mod n

RSA解密过程:

对于密文y,用私钥 (n,d)y进行解密的过程和加密类似,同样是计算幂取模; x = y d   m o d   n x=y^d\ mod\ n x=yd mod n

EIGamal密码

非对称加密算法(公开密钥密码);建立在离散对数求解困难之上;

椭圆曲线密码ECC

基于椭圆曲线离散对数求解困难的问题设计;参数P的规模应该大于160位

哈希函数

单向密码体制,从一个明文到密文的不可逆的映射,只有只有加密过程,没有解密过程。

可将任意长度的输入经过变换后得到固定长度的输出(原消息的散列或消息摘要)。

应用:消息认证(基于哈希函数的消息认证码),数字签名(对消息摘要进行数字签名口令的安全性,数据完整性)

压缩;易计算;单向性;抗碰撞性;高灵敏性;

SHA比MD5更安全SHA比MD5速度了25%,SHA操作步骤较MD5更简单

碰撞性

理想的哈希函数是无碰撞的,但实际算法设计中很难做到。有两种抗碰撞性:弱碰撞性和强碰撞性;

  • 弱抗碰撞性:即对于给定的消息x,要发现另一个消息y,满足H(x)=H(y)在计算上不可行;

  • 强抗碰撞性:即对任意一对不同的消息(x,y),使得H(x)=H(y)在计算上不可行。

消息摘要算法MD5

哈希算法,用于消息认证、数字签名、口令安全和数据完整性校验;对任意长度的明文(首先通过填充的办法使其成为512的倍数)产生128位的消息摘要;

安全散列算法SHA

产生的消息摘要长度为160位

哈希算法SM3

国家商用密码算法;将对任意长度的消息压缩成256位的摘要;

数字签名

通过密码技术实现,其安全性取决于密码体制的安全程度

普通数字签名:RSA,ElGamal,椭圆曲线数字签名算法等

特殊数字签名:盲签名,代理签名,群签名,不可否认签名,具有消息恢复功能得签名等

常对信息的摘要进行签名

美国数字签名标准DSS:签名算法DSA

应用:鉴权:重放攻击;完整性:同形攻击;不可抵赖

DSS数字签名

1994年提出。

DSS 只提供数字签名功能,不提供任何加密或密钥交换策略。签名是结合使用私钥生成的,验证私钥是参照相应的公钥进行的。

DSA签名算法

DSA算法使用了离散对数问题作为其数学基础,通过私钥对消息进行签名,公钥对签名进行验证,保证了消息的完整性、真实性和不可否认性。

密钥管理

包括密钥的生成,存储,分配,启用与停用,控制,更新,撤销与销毁等诸多方面,密钥的分配与存储最为关键。

借助加密,认证,签名,协议和公证等技术

密钥的秘密性,完整性,真实性

密钥产生:噪声源技术(基于力学,基于电子学,基于混沌理论的密钥产生技术);主密钥,加密密钥,会话密钥的产生

密钥分配:

分配手段:人工分发(物理分发),密钥交换协议动态分发

密钥属性:秘密密钥分配,公开密钥分配

密钥分配技术:基于对称密码体制的密钥分配,基于公钥密码体制的密钥分配

密钥信息交换方式:人工密钥分发,给予中心密钥分发,基于认证密钥分发

人工密钥分发:主密钥

基于中心的密钥分发:利用公开密钥密码体制分配传统密码的密钥;可信第三方:密钥分发中心KDC,密钥转换中心KTC;拉模型,推模型;密钥交换协议:Diffie-Hellman算法

公开密钥分配:公共发布;公用目录;公约授权:公钥管理机构;公钥证书:证书管理机构CA,目前最流行

密钥存储:

公钥存储

私钥存储:用口令加密后存放在本地软盘或硬盘;存放在网络目录服务器中:私钥存储服务PKSS;智能卡存储;USB Key存储

Diffie-Hellman算法

第一个实用的在非保护信道中创建共享密钥方法;也称为“Diffie-Hellman密钥协商算法”;

DH算法交换密钥的步骤。假设小明、小红双方需要传递密钥,他们之间可以这么做:

img

密码分析学

密码分析学中4种典型的密码攻击:唯密文攻击、已知明文攻击、选择明文攻击、选择密文攻击

  • 唯密文攻击:只知道密文,推出明文或密钥,一般用穷举攻击;最容易防范
  • 已知明文攻击:知道部分的明文和密文对,推出密钥和加密算法;
  • 选择明文攻击:知道明文就知道密文,目标为推出密钥;
  • 选择密文攻击:知道密文就知道明文,目标为推出密钥;最难防范

一般能抵抗选择明文攻击才认为是安全的。

20世纪90年代提出两种有效的对称密码选择明文分析方法差分分析线性分析

参考1:DES加密算法

参考2:Diffie-Hellman密钥协商算法探究

参考3:古老而又神奇的密码——恺撒密码

参考4:RSA —— 经典的非对称加密算法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
RC4和LSFR都是对称加密算法,但是它们的基本原理和应用场景有所不同。 相同点: 1. 都属于对称加密算法,采用相同的密钥进行加解密,且加密和解密过程可逆。 2. 都是流加密算法,将明文分成若干个连续的小块,并逐块加密。 3. 都可以使用类似于伪随机数生成器的方式生成密钥流,用于加密明文。 不同点: 1. RC4是一种基于状态的加密算法,它通过一个可变长度的密钥来初始化一个状态向量,并通过状态向量生成密钥流。LSFR则是一种基于位运算的加密算法,它通过一个固定长度的寄存器来生成密钥流。 2. RC4的密钥长度可以是任意长度,通常为8到256位,而LSFR的密钥长度是固定的,通常为32或64位。 3. RC4的密钥流是通过状态向量生成的,而LSFR的密钥流是通过寄存器的位运算生成的。 4. RC4是一种高速加密算法,可以用于对实时数据进行加密,比如对音频、视频等数据进行加密。LSFR则相对简单,速度较慢,通常用于对低速数据进行加密。 5. RC4的安全性受到争议,曾被发现存在弱密钥和相关密钥攻击等漏洞。LSFR也存在一些安全问题,比如线性预测攻击和伪随机数生成器的问题,但相对来说比RC4更为安全。 总的来说,RC4和LSFR都是对称加密算法,它们的应用场景和安全性有所不同。需要根据具体的加密需求和安全要求选择合适的加密算法。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值