信息加密简介

 

加密的基本概念 :

在密钥和算法的控制下 , 将明文变成密文的过程 .

通过使用加密 , 可以提供的安全服务 .

 

基本的加密操作:

基本的加密思想:

置换:按照规则改变内容的排列顺序

移位:打乱字母的排列顺序

(移位和置换都是可逆的操作,容易恢复信息)

密码设计的基本公理和前提是算法公开。

系统的安全性仅依赖于密钥的保密性

 

加密算法的分类:

对称密钥密码算法(又称私有密钥算法)

非对称密钥密码算法(又称公钥密码算法)

 

对称加密的原理

加密密钥和解密密钥是相等的。

加密密钥和解密密钥是可以相互推导的。

优点是加密速度快,但安全性完全依赖于密钥的传送。

 

原理如下图所示

 

著名的对称加密算法

DES/3DES 数据加密标准

IDEA 国际数据加密算法

RC 系列( RC2 RC4 RC5

CAST

Blowfish /Twofish

AES 高级数据加密标准

 

DES 算法

明文被分成 64 位的块,对每块进行 16 次变换(替换或换位),其中 16 次变换由 56 位的密钥的不同排列形式控制( IBM 使用的是 128 位密钥),最后产生 64 位的密文块,如下图所示:

3DES Triple-DES

这种方法是 DES 的改进算法,它使用两把密钥对报文作三次 DES 加密,效果相当于将 DES 密钥的长度加倍了,克服了 DES 密钥长度较短的缺点,但缺点是要花费原来三倍的时间。

假设两个密钥分别是 K1 K2 ,其算法的步骤如下:

1 )用密钥 K1 进行 DES 加密

2 )用密钥 K2 对步骤( 1 )的结果进行 DES 解密

3 )对步骤( 2 )的结果使用密钥 K1 进行 DES 加密

如下图所示:

 

IDEA

这种加密算法使用 128 位的密钥,把明文分成 64 位的块,进行 8 轮的迭代加密。

设计原则:来之不同代数群的混合运算

                   异或,模 216 加,模 216+1

IDEA 可以使用硬件或软件实现,并且比 DES 快。

在苏黎世技术学院用 25MHz VLSI 芯片,加密速率是 177MBPS

 

RC 系列

RC2 --------Ronald Rivest 设计

                  密钥长度可变

                  RC2 的运算速度比 DES

                  软件实现的 RC2 DES 快三倍

                   RC2 是否比 DES 安全取决于其所使用的密钥长度

RC4 --------Rivest 设计

                  密钥长度可变

                  流模式加密算法,面向 bit 操作

                  算法基于随机置换

                  RC4 应用范围广

所谓流加密,就是将数据流和密钥生成二进制比特流进行异或运算的加密过程。

这种算法采用如下步骤:

1 )利用密钥 K 生成一个密钥流 KS (伪随机序列)

2 )用密钥流 KS 与明文 P 进行“异或”运算,产生密文 C

            解密过程则是用密钥流与密文 C 进行异或运算,产生明文 P

    为了安全,对不同的明文必须用不同的密钥流,否则容易被破解。

RC5 --------Rivest 设计

                  分组长,密钥长度和迭代轮数都可变

                  面向字结构,便于软件和硬件快速实现

                  数据相倚旋转技术

 

公钥加密原理

公钥加密使用两个密钥,

一个密钥用于加密信息,另一个密钥用于解密信息。

 

原理如下图所示

公钥加密特点

私钥需要安全保存,而公钥公开。

公钥加密速度慢,

公钥和私钥不可以相互推导

可以和对称加密相结合。

 

RSA

RSA算法是一种非对称密码算法,所谓非对称,就是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密。

RSA的算法涉及三个参数,n、e1、e2。

其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。

e1和e2是一对相关的值,e1可以任意取,但要求e1与(p-1)*(q-1)互质;再选择e2,要求(e2*e1)mod((p-1)*(q-1))=1。

(n及e1),(n及e2)就是密钥对。

RSA加解密的算法完全相同,设A为明文,B为密文,则:A=B^e1 mod n;B=A^e2 mod n;

e1和e2可以互换使用,即:

A=B^e2 mod n;B=A^e1 mod n;

 

具体实现过程如下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值