信息加密简介

来源:互联网 发布:河北邯郸seo网 编辑:程序博客网 时间:2024/04/30 12:58

 

加密的基本概念:

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

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

 

基本的加密操作:

基本的加密思想:

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

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

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

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

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

 

加密算法的分类:

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

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

 

对称加密的原理

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

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

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

 

原理如下图所示

 

著名的对称加密算法

DES/3DES数据加密标准

IDEA国际数据加密算法

RC系列(RC2RC4RC5

CAST

Blowfish/Twofish

AES高级数据加密标准

 

DES算法

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

3DESTriple-DES

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

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

1)用密钥K1进行DES加密

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

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

如下图所示:

 

IDEA

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

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

                   异或,模216加,模216+1

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

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

 

RC系列

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

                  密钥长度可变

                  RC2的运算速度比DES

                  软件实现的RC2DES快三倍

                   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^e1mod n;B=A^e2 mod n;

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

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

 

具体实现过程如下

原创粉丝点击