当前位置:首页 » 操作系统 » 两种密码算法

两种密码算法

发布时间: 2022-07-06 08:30:52

1. 古典加密技术中最基本的两种算法是什么

替代算法和置换移位法。

1.替代算法
替代算法指的是明文的字母由其他字母或数字或符号所代替。最着名的替代算法是恺撒密码。凯撒密码的原理很简单,其实就是单字母替换。我们看一个简单的例子:

明文:abcdefghijklmnopq

密文:defghijklmnopqrst

若明文为student,对应的密文则为vwxghqw 。在这个一一对应的算法中,恺撒密码将字母表用了一种顺序替代的方法来进行加密,此时密钥为3,即每个字母顺序推后3个。由于英文字母为26个,因此恺撒密码仅有26个可能的密钥,非常不安全。

为了加强安全性,人们想出了更进一步的方法:替代时不是有规律的,而是随机生成一个对照表。

明文:abcdefghijklmnopqrstuvwxyz

密文:xnyahpogzqwbtsflrcvmuekjdI

此时,若明文为student,对应的密文则为 vmuahsm 。这种情况下,解密函数是上面这个替代对照表的一个逆置换。

不过,有更好的加密手段,就会有更好的解密手段。而且无论怎样的改变字母表中的字母顺序,密码都有可能被人破解。由于英文单词中各字母出现的频度是不一样的,通过对字母频度的统计就可以很容易的对替换密码进行破译。为了抗击字母频度分析,随后产生了以置换移位法为主要加密手段的加密方法。

2.置换移位法
使用置换移位法的最着名的一种密码称为维吉尼亚密码。它以置换移位为基础的周期替换密码。

前面介绍的替代算法中,针对所有的明文字母,密钥要么是一个唯一的数,要么则是完全无规律可寻的。在维吉尼亚密码中,加密密钥是一个可被任意指定的字符串。加密密钥字符依次逐个作用于明文信息字符。明文信息长度往往会大于密钥字符串长度,而明文的每一个字符都需要有一个对应的密钥字符,因此密钥就需要不断循环,直至明文每一个字符都对应一个密钥字符。对密钥字符,我们规定密钥字母a,b,c,d……y,z对应的数字n为:0,1,2,3……24,25。每个明文字符首先找到对应的密钥字符,然后根据英文字母表按照密钥字符对应的数字n向后顺序推后n个字母,即可得到明文字符对应的密文字符。

如果密钥字为deceptive , 明文为 wearediscoveredsaveyourself,则加密的过程为:

明文: wearediscoveredsaveyourself

密钥: deceptivedeceptivedeceptive

密文: zicvtwqngrzgvtwavzhcqyglmgj

对明文中的第一个字符w,对应的密钥字符为d,它对应需要向后推3个字母,w,x,y,z,因此其对应的密文字符为z。上面的加密过程中,可以清晰的看到,密钥deceptive被重复使用。

古典密码体制将数学的方法引入到密码分析和研究中。这为现代加密技术的形成和发展奠定了坚实的基础。

2. 对称密钥算法与非对称密钥算法有何区别各自的优缺点是什么在实际应用中如何发挥两种不同算法的优势

密码学中两种常见的密码算法为对称密码算法(单钥密码算法)和非对称密码算法(公钥密码算法)。

对称密码算法有时又叫传统密码算法,就是加密密钥能够从解密密钥中推算出来,反过来也成立。在大多数对称算法中,加密解密密钥是相同的。这些算法也叫秘密密钥算法或单密钥算法,它要求发送者和接收者在安全通信之前,商定一个密钥。对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都能对消息进行加密解密。只要通信需要保密,密钥就必须保密。对称算法的加密和解密表示为:

Ek(M)=C

Dk(C)=M

对称算法可分为两类。一次只对明文中的单个位(有时对字节)运算的算法称为序列算法或序列密码。另一类算法是对明文的一组位进行运算,这些位组称为分组,相应的算法称为分组算法或分组密码。现代计算机密码算法的典型分组长度为64位――这个长度大到足以防止分析破译,但又小到足以方便作用。

这种算法具有如下的特性:

Dk(Ek(M))=M

常用的采用对称密码术的加密方案有5个组成部分(如图所示)

l)明文:原始信息。

2)加密算法:以密钥为参数,对明文进行多种置换和转换的规则和步骤,变换结果为密文。

3)密钥:加密与解密算法的参数,直接影响对明文进行变换的结果。

4)密文:对明文进行变换的结果。

5)解密算法:加密算法的逆变换,以密文为输入、密钥为参数,变换结果为明文。

对称密码术的优点在于效率高(加/解密速度能达到数十兆/秒或更多),算法简单,系统开销小,适合加密大量数据。

尽管对称密码术有一些很好的特性,但它也存在着明显的缺陷,包括:

l)进行安全通信前需要以安全方式进行密钥交换。这一步骤,在某种情况下是可行的,但在某些情况下会非常困难,甚至无法实现。

2)规模复杂。举例来说,A与B两人之间的密钥必须不同于A和C两人之间的密钥,否则给B的消息的安全性就会受到威胁。在有1000个用户的团体中,A需要保持至少999个密钥(更确切的说是1000个,如果她需要留一个密钥给他自己加密数据)。对于该团体中的其它用户,此种倩况同样存在。这样,这个团体一共需要将近50万个不同的密钥!推而广之,n个用户的团体需要N2/2个不同的密钥。

通过应用基于对称密码的中心服务结构,上述问题有所缓解。在这个体系中,团体中的任何一个用户与中心服务器(通常称作密钥分配中心)共享一个密钥。因而,需要存储的密钥数量基本上和团体的人数差不多,而且中心服务器也可以为以前互相不认识的用户充当“介绍人”。但是,这个与安全密切相关的中心服务器必须随时都是在线的,因为只要服务器一掉线,用户间的通信将不可能进行。这就意味着中心服务器是整个通信成败的关键和受攻击的焦点,也意味着它还是一个庞大组织通信服务的“瓶颈”

非对称密钥算法是指一个加密算法的加密密钥和解密密钥是不一样的,或者说不能由其中一个密钥推导出另一个密钥。1、加解密时采用的密钥的差异:从上述对对称密钥算法和非对称密钥算法的描述中可看出,对称密钥加解密使用的同一个密钥,或者能从加密密钥很容易推出解密密钥;②对称密钥算法具有加密处理简单,加解密速度快,密钥较短,发展历史悠久等特点,非对称密钥算法具有加解密速度慢的特点,密钥尺寸大,发展历史较短等特点。
(部分参考资料:http://tag.csdn.net/Article/904a49c3-84ef-4dd1-b7e0-1accc2dbe91a.html)

3. 世界上各种密码的形式

1、RSA算法密码

RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。RSA算法是一种非对称密码算法,所谓非对称,就是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密。

2、ECC加密法密码

ECC算法也是一个能同时用于加密和数字签名的算法,也易于理解和操作。同RSA算法是一样是非对称密码算法使用其中一个加密,用另一个才能解密。

3、二方密码

二方密码(en:Two-square_cipher)比四方密码用更少的矩阵。

4、四方密码

四方密码用4个5×5的矩阵来加密。每个矩阵都有25个字母(通常会取消Q或将I,J视作同一样,或改进为6×6的矩阵,加入10个数字)。

5、三分密码

首先随意制造一个3个3×3的Polybius方格替代密码,包括26个英文字母和一个符号。然后写出要加密的讯息的三维坐标。讯息和坐标四个一列排起,再顺序取横行的数字,三个一组分开,将这三个数字当成坐标,找出对应的字母,便得到密文。

6、仿射密码

仿射密码是一种替换密码。它是一个字母对一个字母的。

7、埃特巴什码

埃特巴什码是一个系统:最后一个字母代表第一个字母,倒数第二个字母代表第二个字母。

8、栅栏加密法密码

栅栏加密法是一种比较简单快捷的加密方法。栅栏加密法就是把要被加密的文件按照一上一下的写法写出来,再把第二行的文字排列到第一行的后面。

9、针孔加密法密码

这种加密法诞生于近代。由于当时邮费很贵,但是寄送报纸则花费很少。于是人们便在报纸上用针在需要的字下面刺一个孔,等到寄到收信人手里,收信人再把刺有孔的文字依次排列,连成文章。

10、回转轮加密法密码

一种多码加密法,它是用多个回转轮,每个回转轮实现单码加密。这些回转轮可以组合在一起,在每个字母加密后产生一种新的替换模式。

4. 常用的加密算法有哪些

对称密钥加密

对称密钥加密 Symmetric Key Algorithm 又称为对称加密、私钥加密、共享密钥加密:这类算法在加密和解密时使用相同的密钥,或是使用两个可以简单的相互推算的密钥,对称加密的速度一般都很快。

  • 分组密码

  • 分组密码 Block Cipher 又称为“分块加密”或“块加密”,将明文分成多个等长的模块,使用确定的算法和对称密钥对每组分别加密解密。这也就意味着分组密码的一个优点在于可以实现同步加密,因为各分组间可以相对独立。

    与此相对应的是流密码:利用密钥由密钥流发生器产生密钥流,对明文串进行加密。与分组密码的不同之处在于加密输出的结果不仅与单独明文相关,而是与一组明文相关。

  • DES、3DES

  • 数据加密标准 DES Data Encryption Standard 是由IBM在美国国家安全局NSA授权下研制的一种使用56位密钥的分组密码算法,并于1977年被美国国家标准局NBS公布成为美国商用加密标准。但是因为DES固定的密钥长度,渐渐不再符合在开放式网络中的安全要求,已经于1998年被移出商用加密标准,被更安全的AES标准替代。

    DES使用的Feistel Network网络属于对称的密码结构,对信息的加密和解密的过程极为相似或趋同,使得相应的编码量和线路传输的要求也减半。

    DES是块加密算法,将消息分成64位,即16个十六进制数为一组进行加密,加密后返回相同大小的密码块,这样,从数学上来说,64位0或1组合,就有2^64种可能排列。DES密钥的长度同样为64位,但在加密算法中,每逢第8位,相应位会被用于奇偶校验而被算法丢弃,所以DES的密钥强度实为56位。

    3DES Triple DES,使用不同Key重复三次DES加密,加密强度更高,当然速度也就相应的降低。

  • AES

  • 高级加密标准 AES Advanced Encryption Standard 为新一代数据加密标准,速度快,安全级别高。由美国国家标准技术研究所NIST选取Rijndael于2000年成为新一代的数据加密标准。

    AES的区块长度固定为128位,密钥长度可以是128位、192位或256位。AES算法基于Substitution Permutation Network代换置列网络,将明文块和密钥块作为输入,并通过交错的若干轮代换"Substitution"和置换"Permutation"操作产生密文块。

    AES加密过程是在一个4*4的字节矩阵(或称为体State)上运作,初始值为一个明文区块,其中一个元素大小就是明文区块中的一个Byte,加密时,基本上各轮加密循环均包含这四个步骤:

  • ECC

  • ECC即 Elliptic Curve Cryptography 椭圆曲线密码学,是基于椭圆曲线数学建立公开密钥加密的算法。ECC的主要优势是在提供相当的安全等级情况下,密钥长度更小。

    ECC的原理是根据有限域上的椭圆曲线上的点群中的离散对数问题ECDLP,而ECDLP是比因式分解问题更难的问题,是指数级的难度。而ECDLP定义为:给定素数p和椭圆曲线E,对Q=kP,在已知P,Q 的情况下求出小于p的正整数k。可以证明由k和P计算Q比较容易,而由Q和P计算k则比较困难。

  • 数字签名

  • 数字签名 Digital Signature 又称公钥数字签名是一种用来确保数字消息或文档真实性的数学方案。一个有效的数字签名需要给接收者充足的理由来信任消息的可靠来源,而发送者也无法否认这个签名,并且这个消息在传输过程中确保没有发生变动。

    数字签名的原理在于利用公钥加密技术,签名者将消息用私钥加密,然后公布公钥,验证者就使用这个公钥将加密信息解密并对比消息。一般而言,会使用消息的散列值来作为签名对象。

5. 现在密码学采用的算法主要有什么

现代密码学将算法分为具有不同功能的几种
常用的主要有三种:
1.对称密码算法
DES算法——二十世纪七十年代提出,曾经称霸对称加密领域30年
AES算法——二十一世纪初提出用以取代DES算法
IDEA算法——二十世纪九十年代初提出,也是一种流行算法
RC4算法——经典的流密码算法
2.公钥密码算法
D-H算法——用于密钥协商,是第一种使用的公钥算法,基于离散对数难解问题
RSA算法——最常用的公钥算法,功能强大
3.哈希函数(杂凑函数)
MD5——常用算法,用于产生80比特的输出
SHA-1——也是常用算法,用于产生128比特输出
---
这是最经典的若干种算法
说的不对之处请指正

------
个人意见 仅供参考

6. 密码加密的算法有哪些

主要分为 对称加密算法 和 非对称加密算法两类

对称加密算法:使用单个密钥对数据进行加密或解密,其特点是计算量小,加密效率高.
代表 DES 算法

非对称加密算法:此算法均有两个密钥(公用密钥和私有密钥),只有二者搭配使用才能完成加密和解密的全过程.
代表 DSA算法, 数字签名算法(DSA) , MD5算法 , 安全散列算法(SHA)

7. 什么是对称密码和非对密码,分析这两种密码体系的特点和应用领域

一、对称密码

1、定义:采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。

2、特点:算法公开、计算量小、加密速度快、加密效率高。

3、应用领域:由于其速度快,对称性加密通常在消息发送方需要加密大量数据时使用。

二、非对密码

1、定义:非对称密码指的是非对称密码体制中使用的密码。

2、特点:

(1)是加密密钥和解密密钥不同 ,并且难以互推 。

(2)是有一个密钥是公开的 ,即公钥 ,而另一个密钥是保密的 ,即私钥。

3、应用领域:很好的解决了密钥的分发和管理的问题 ,并且它还能够实现数字签名。

(7)两种密码算法扩展阅读

对称加密算法特征

1、加密方和解密方使用同一个密钥;

2、加密解密的速度比较快,适合数据比较长时的使用;

3、密钥传输的过程不安全,且容易被破解,密钥管理也比较麻烦

8. 关于加密、解密算法、密钥,哪位能给我举个形象的例子

加密就像你钥匙深进钥匙孔,逆时针转一下
解密就像你钥匙深进钥匙孔,顺时针转一下
密钥就像你那把钥匙上面的齿
暴力破解就像做了世界上所有可能的齿的钥匙,一把一把试。不可以理解为直接砸开。
就像商场里衣服上有个锁,如果没有钥匙,就算怎么弄开,那件衣服都没法穿了。所以就一定要有钥匙。
所以密钥叫作key(钥匙)

应该很形象了吧。

加密从数学角度就是一个像函数c=E(m,k)
输入:m是消息明文,k是密钥,
输出:c是消息密文

D是E的反函数,m'=D(c',k')
输入:c'是消息密文,k'是密钥,
输出:m'是消息明文

当c=c', k=k'时,一定有m=m'

c,m,k可以看成一个个大整数,比如c=394783579347293479382。
最简单的一个加密就是
E(m,k)=m+k
D(c,k)=c-k

9. 古典密码安全算法有哪些

世界上最早的一种密码产生于公元前两世纪。是由一位希腊人提出的,人们称之为
棋盘密码,原因为该密码将26个字母放在5×5的方格里,i,j放在一个格子里,具体情
况如下表所示

1 2 3 4 5
1 a b c d e
2 f g h i,j k
3 l m n o p
4 q r s t u
5 v w x y z

这样,每个字母就对应了由两个数构成的字符αβ,α是该字母所在行的标号,β是列
标号。如c对应13,s对应43等。如果接收到密文为

43 15 13 45 42 15 32 15 43 43 11 22 15

则对应的明文即为secure message。

另一种具有代表性的密码是凯撒密码。它是将英文字母向前推移k位。如k=5,则密
文字母与明文与如下对应关系

a b c d e f g h i j k l m n o p q r s t u v w x y z
F G H I J K L M N O P Q R S T U V W X Y Z A B C D E

于是对应于明文secure message,可得密文为XJHZWJRJXXFLJ。此时,k就是密钥。为了
传送方便,可以将26个字母一一对应于从0到25的26个整数。如a对1,b对2,……,y对
25,z对0。这样凯撒加密变换实际就是一个同余式

c≡m+k mod 26

其中m是明文字母对应的数,c是与明文对应的密文的数。

随后,为了提高凯撒密码的安全性,人们对凯撒密码进行了改进。选取k,b作为两
个参数,其中要求k与26互素,明文与密文的对应规则为

c≡km+b mod 26

可以看出,k=1就是前面提到的凯撒密码。于是这种加密变换是凯撒野加密变换的
推广,并且其保密程度也比凯撒密码高。

以上介绍的密码体制都属于单表置换。意思是一个明文字母对应的密文字母是确定
的。根据这个特点,利用频率分析可以对这样的密码体制进行有效的攻击。方法是在大
量的书籍、报刊和文章中,统计各个字母出现的频率。例如,e出现的次数最多,其次
是t,a,o,I等等。破译者通过对密文中各字母出现频率的分析,结合自然语言的字母频
率特征,就可以将该密码体制破译。

鉴于单表置换密码体制具有这样的攻击弱点,人们自然就会想办法对其进行改进,
来弥补这个弱点,增加抗攻击能力。法国密码学家维吉尼亚于1586年提出一个种多表式
密码,即一个明文字母可以表示成多个密文字母。其原理是这样的:给出密钥
K=k[1]k[2]…k[n],若明文为M=m[1]m[2]…m[n],则对应的密文为C=c[1]c[2]…c[n]。
其中C[i]=(m[i]+k[i]) mod 26。例如,若明文M为data security,密钥k=best,将明
文分解为长为4的序列data security,对每4个字母,用k=best加密后得密文为

C=EELT TIUN SMLR

从中可以看出,当K为一个字母时,就是凯撒密码。而且容易看出,K越长,保密程
度就越高。显然这样的密码体制比单表置换密码体制具有更强的抗攻击能力,而且其加
密、解密均可用所谓的维吉尼亚方阵来进行,从而在操作上简单易行。该密码可用所谓
的维吉尼亚方阵来进行,从而在操作上简单易行。该密码曾被认为是三百年内破译不了
的密码,因而这种密码在今天仍被使用着。

古典密码的发展已有悠久的历史了。尽管这些密码大都比较简单,但它在今天仍有
其参考价值。

热点内容
u启动iso解压 发布:2024-11-18 22:22:03 浏览:885
oracle存储过程rollback 发布:2024-11-18 22:14:05 浏览:672
c语言学生管理系统课程设计 发布:2024-11-18 22:13:15 浏览:604
怎么在云服务器上挂机手机游戏 发布:2024-11-18 22:03:03 浏览:317
ppp拨号服务器搭建 发布:2024-11-18 22:02:59 浏览:586
幻灵游侠脚本 发布:2024-11-18 21:57:39 浏览:457
node加密 发布:2024-11-18 21:56:13 浏览:978
养女ftp 发布:2024-11-18 21:56:02 浏览:818
请描述如何配置安全的防火墙 发布:2024-11-18 21:53:45 浏览:144
安卓ios怎么选 发布:2024-11-18 21:41:54 浏览:475