导航:首页 > 文档加密 > 加密算法的数学知识

加密算法的数学知识

发布时间:2022-03-04 02:50:17

‘壹’ DES加密算法的数学基础是什么

去着看看吧,会对你有帮助!

‘贰’ 常用的加密算法有哪些

对称密钥加密

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

‘叁’ 对称加密算法的加密算法主要有哪些

1、3DES算法

3DES(即Triple DES)是DES向AES过渡的加密算法(1999年,NIST将3-DES指定为过渡的加密标准),加密算法,其具体实现如下:设Ek()和Dk()代表DES算法的加密和解密过程,K代表DES算法使用的密钥,M代表明文,C代表密文,这样:

3DES加密过程为:C=Ek3(Dk2(Ek1(M)))

3DES解密过程为:M=Dk1(EK2(Dk3(C)))

2、Blowfish算法

BlowFish算法用来加密64Bit长度的字符串。

BlowFish算法使用两个“盒”——unsignedlongpbox[18]和unsignedlongsbox[4,256]。

BlowFish算法中,有一个核心加密函数:BF_En(后文详细介绍)。该函数输入64位信息,运算后,以64位密文的形式输出。用BlowFish算法加密信息,需要两个过程:密钥预处理和信息加密。

分别说明如下:

密钥预处理:

BlowFish算法的源密钥——pbox和sbox是固定的。我们要加密一个信息,需要自己选择一个key,用这个key对pbox和sbox进行变换,得到下一步信息加密所要用的key_pbox和key_sbox。具体的变化算法如下:

1)用sbox填充key_sbox

2)用自己选择的key8个一组地去异或pbox,用异或的结果填充key_pbox。key可以循环使用。

比如说:选的key是"abcdefghijklmn"。则异或过程为:

key_pbox[0]=pbox[0]abcdefgh;

key_pbox[1]=pbox[1]ijklmnab;

…………

…………

如此循环,直到key_pbox填充完毕。

3)用BF_En加密一个全0的64位信息,用输出的结果替换key_pbox[0]和key_pbox[1],i=0;

4)用BF_En加密替换后的key_pbox,key_pbox[i+1],用输出替代key_pbox[i+2]和key_pbox[i+3];

5)i+2,继续第4步,直到key_pbox全部被替换;

6)用key_pbox[16]和key_pbox[17]做首次输入(相当于上面的全0的输入),用类似的方法,替换key_sbox信息加密。

信息加密就是用函数把待加密信息x分成32位的两部分:xL,xRBF_En对输入信息进行变换。

3、RC5算法

RC5是种比较新的算法,Rivest设计了RC5的一种特殊的实现方式,因此RC5算法有一个面向字的结构:RC5-w/r/b,这里w是字长其值可以是16、32或64对于不同的字长明文和密文块的分组长度为2w位,r是加密轮数,b是密钥字节长度。

(3)加密算法的数学知识扩展阅读:

普遍而言,有3个独立密钥的3DES(密钥选项1)的密钥长度为168位(三个56位的DES密钥),但由于中途相遇攻击,它的有效安全性仅为112位。密钥选项2将密钥长度缩短到了112位,但该选项对特定的选择明文攻击和已知明文攻击的强度较弱,因此NIST认定它只有80位的安全性。

对密钥选项1的已知最佳攻击需要约2组已知明文,2部,2次DES加密以及2位内存(该论文提到了时间和内存的其它分配方案)。

这在现在是不现实的,因此NIST认为密钥选项1可以使用到2030年。若攻击者试图在一些可能的(而不是全部的)密钥中找到正确的,有一种在内存效率上较高的攻击方法可以用每个密钥对应的少数选择明文和约2次加密操作找到2个目标密钥中的一个。

‘肆’ 网络数据的加密算法

如上所言,加密解密以及算法都是专业课程,需要相当的数学知识和计算机低层的一些知识.并且有些加密算法本身就是不可破解的,如DES等.
如果实在有这方面的兴趣,可以结合自身情况进行自学,国内这方面最经典的论坛是看雪论坛

‘伍’ 加密算法有哪些

SHA算法,

‘陆’ 加密算法和密钥的作用

一、加密算法:将原有的明文信息转化为看似无规律的密文。收信方需要对应的解密密钥,采用对应的解密方法将密文还原为明文(能看懂有意义的信息)。
二、密钥分为加密密钥和解密密钥,对于“对称加密算法”,这两者是一样的;而“非对称加密算法”的密钥分为“公开密钥”和“私有密钥”,用公开密钥加密,则需要私有密钥解密;反之用私有密钥加密,则需要公开密钥解密,是可以互换的。
三、现代的计算机加密算法比较复杂,要弄懂是需要离散数学、高等代数等知识,不可能在这里讲明白。
四、以“凯撒移位密码”这种最古来的简单密码来讲解什么是加密算法和密钥:
4.1)“凯撒密码”在《恺撒传》中有记载,凯撒密码是将每一个字母用字母表中的该字母后的第三个字母代替。尽管历史记载的凯撒密码只用了3个位置的移位,但显然从1到25个位置的移位我们都可以使用, 因此,为了使密码有更高的安全性,单字母替换密码就出现了。
若用每个字母的后11位替换当前字母,可以认为密钥=11。
如此得到的密码表为:
明码表 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(即26个字母表)
密码表 L M N O P Q R S T U V W X Y Z A B C D E F G H I J K
加密的方法很简单,就是讲明码字母换成对应的密码表字母。
如:明文 I LOVE YOU
密文 T WZGP JZF
在当时,这样简单的密码就足够起到保密作用;但到近代都已经很容易被破解了,更不用说现代有计算机秒破了!
4.2)其他加密算法
有兴趣可以了解更复杂的加密算法:如近代的“维吉尼亚算法”,还属于字母位移加密,好懂!而现代计算机文件深度加密常用的“AES加密算法”,原理很复杂,需要高等数学等知识才能读懂。

‘柒’ 一直在研究加密与解密的知识,可是对里面复杂的公式一筹莫展

加密与解密中的知识是以《数论》和《代数学》为基础的。《数论》应该不太难,《代数学》就有些变态了(个人感觉)

加密与解密跟伪随机数发生器密切相关,建议先研究研究这个,它也是以上面两门知识为基础了,也许会相对简单些。

‘捌’ 数据加密算法可以分为几大类型,个举一例说明

分为三类:
1、对称加密;
2、不对称加密;
3、不可逆加密。
对称加密是指加密密钥和解密密钥相同;
不对称加密算法使用不同的加密密钥和解密密钥;
不可逆加密算法的特征是加密过程不需要密钥,并且经过加密的数据无法被解密,只有同样输入的输入数据经过同样的不可逆算法才能得到同样的加密数据。

‘玖’ 密码中的数学

密码是一种用来混淆的技术,它希望将正常的(可识别的)信息转变为无法识别的信息。当然,对一小部分人来说,这种无法识别的信息是可以再加工并恢复的。密码在中文里是“口令”的通称。登录网站、电子邮箱和银行取款时输入的“密码”其实严格来讲应该仅被称作“口令”,因为它不是本来意义上的“加密代码”,但是也可以称为秘密的号码。主要限定于个别人理解(如一则电文)的符号系统。如密码电报、密码式打字机。
“加密代码”的加密与解密都离不开数学的支持,随着数学的发展,密码的加密方式以及解密难度也随之直线上升。
加密方法
RSA算法
RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。RSA算法是一种非对称密码算法,所谓非对称,就是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密。
RSA的算法涉及三个参数,n、e1.e2。其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。e1和e2是一对相关的值,e1可以任意取,但要求e1与(p-1)*(q-1)互质(互质:两个正整数只有公约数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
ECC加密法
ECC算法也是一个能同时用于加密和数字签名的算法,也易于理解和操作。同RSA算法是一样是非对称密码算法使用其中一个加密,用另一个才能解密。
公开密钥算法总是要基于一个数学上的难题。比如RSA 依据的是:给定两个素数p、q 很容易相乘得到n,而对n进行因式分解却相对困难。那椭圆曲线上有什么难题呢?
考虑如下等式 :
K=kG [其中 K,G为Ep(a,b)上的点,k为小于n(n是点G的阶)的整数]
不难发现,给定k和G,根据乘法法则,计算K很容易;但给定K和G,求k就相对困难了。这就是椭圆曲线加密算法采用的难题。我们把点G称为基点(base point),k(k<n,n为基点G的阶)称为私有密钥(privte key),K称为公开密钥(public key)。
ECC的功能比RSA强。而令人感兴趣的是点和点的过程,这也是其功能之来源。
二方密码
二方密码比四方密码用更少的矩阵。得出加密矩阵的方法和四方密码一样。
这种加密法的弱点是若两个字同列,便采用原来的字母,例如he便加密作HE。约有二成的内容都因此而暴露。
四方密码
四方密码用4个5×5的矩阵来加密。每个矩阵都有25个字母(通常会取消Q或将I,J视作同一样,或改进为6×6的矩阵,加入10个数字)。
替换加密法:用一个字符替换另一个字符的加密方法。
换位加密法:重新排列明文中的字母位置的加密法。
回转轮加密法:一种多码加密法,它是用多个回转轮,每个回转轮实现单码加密。这些回转轮可以组合在一起,在每个字母加密后产生一种新的替换模式。
多码加密法:
一种加密法,其替换形式是:可以用多个字母来替换明文中的一个字母。
夹带法:通过隐藏消息的存在来隐藏消息的方法。
三分密码
首先随意制造一个3个3×3的Polybius方格替代密码,包括26个英文字母和一个符号。然后写出要加密的讯息的三维坐标。讯息和坐标四个一列排起,再顺序取横行的数字,三个一组分开,将这三个数字当成坐标,找出对应的字母,便得到密文。
仿射密码
仿射密码是一种替换密码。它是一个字母对一个字母的。它的加密函数是e(x)=ax+b(mod m),其中 a和m互质。m是字母的数目。
译码函数是d(x)=a^(x-b)(mod m),其中a^是a在M群的乘法逆元。
波雷费密码
希尔密码
维热纳尔方阵
着名的维热纳尔方阵由密码学家维热纳尔编制,大体与凯撒加密法类似。即二人相约好一个密钥(单词),然后把加密后内容给对方,之后对方即可按密码表译出明文。密钥一般为一个单词,加密时依次按照密钥的每个字母对照明码行加密。
由维热纳尔方阵加密的密码,在没有密钥的情况下给破译带来了不小的困难。维热纳尔方阵很完美的避开了概率算法(按每个语种中每个字母出现的概率推算。例如英语中最多的是e),使当时的密码破译师必须重新找到新方法破译。
埃特巴什码
埃特巴什码是一个系统:最后一个字母代表第一个字母,倒数第二个字母代表第二个字母。
栅栏加密法
栅栏加密法是一种比较简单快捷的加密方法。栅栏加密法就是把要被加密的文件按照一上一下的写法写出来,再把第二行的文字排列到第一行的后面。相应的破译方法就是把文字从中间分开,分成2行,然后插入。栅栏加密法一般配合其他方法进行加密。
针孔加密法
这种加密法诞生于近代。由于当时邮费很贵,但是寄送报纸则花费很少。于是人们便在报纸上用针在需要的字下面刺一个孔,等到寄到收信人手里,收信人再把刺有孔的文字依次排列,连成文章。人们已经很少使用这种加密了。
猪圈加密法
在18世纪时,Freemasons为了使让其他的人看不懂他所写而发明的,猪圈密码属于替换密码流,但它不是用一个字母替代另一个字母,而是用一个符号来代替一个字母, 把26个字母写进下四个表格中,然后加密时用这个字母所挨着表格的那部分来代替。
对称加密算法
DES:数据加密标准,速度较快,适用于加密大量数据的场合(块加密法);
3DES:是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高(块加密法);
RC2和 RC4:用变长密钥对大量数据进行加密,比 DES 快(流加密法);
IDEA国际数据加密算法,使用 128 位密钥提供非常强的安全性(块加密法);
AES:高级加密标准,是下一代的加密算法标准,速度快,安全级别高, AES 标准的一个实现是 Rijndael 算法(块加密法);
BLOWFISH,它使用变长的密钥,长度可达448位,运行速度很快,而经过改进后就是TWOFISH,AES的候选者之一(块加密法)。

‘拾’ 给出一种答卷编号加密解密的数学公式方法

有个很简单的方法
就是比如编号是18,加密后就是1118(意义为一个1,一个8)
再比如332,加密后就是2312(也就是指两个3,一个2)
还原也很简单
比如2413还原后就是编号443

阅读全文

与加密算法的数学知识相关的资料

热点内容
剪辑app怎么写长篇文字 浏览:396
app专属流量过月租怎么不更新 浏览:654
王者程序员都有谁 浏览:73
给牛换脚掌解压 浏览:386
围棋有多少种算法 浏览:600
unity资源包在哪个文件夹 浏览:704
阿里云服务器远程链接不成功 浏览:482
文件系统pdf 浏览:762
原神安卓区服什么意思 浏览:34
贝壳app怎么线上发布 浏览:157
如何挑选安卓系统机顶盒 浏览:53
安卓快充使用有什么注意事项 浏览:909
黑马程序员的云计算网课 浏览:946
endnotestyle文件夹怎么导入 浏览:460
讲解少儿编程演讲会开头 浏览:424
思科交换机基础命令 浏览:497
便签可以设置加密吗 浏览:341
免费漫画app怎么看书 浏览:27
华为笔记本电脑怎么安装抖音app 浏览:412
阿里云国际版试用的服务器怎么搞 浏览:895