精华内容
下载资源
问答
  • 2019-01-10 14:34:46

    对称加密

    指加密和解密使用相同密钥的加密算法。对称加密算法的优点在于加解密的高速度和使用长密钥时的难破解性。

    假设两个用户需要使用对称加密方法加密然后交换数据,则用户最少需要2个密钥并交换使用,如果企业内用户有n个,则整个企业共需要n×(n-1) 个密钥,密钥的生成和分发将成为企业信息部门的恶梦。

    对称加密算法的安全性取决于加密密钥的保存情况,但要求企业中每一个持有密钥的人都保守秘密是不可能的,他们通常会有意无意的把密钥泄漏出去——如果一个用户使用的密钥被入侵者所获得,入侵者便可以读取该用户密钥加密的所有文档,如果整个企业共用一个加密密钥,那整个企业文档的保密性便无从谈起。

    常见的对称加密算法:DES、3DES、DESX、Blowfish、IDEA、RC4、RC5、RC6和AES

    非对称加密

    指加密和解密使用不同密钥的加密算法,也称为公私钥加密。假设两个用户要加密交换数据,双方交换公钥,使用时一方用对方的公钥加密,另一方即可用自己的私钥解密。

    如果企业中有n个用户,企业需要生成n对密钥,并分发n个公钥。由于公钥是可以公开的,用户只要保管好自己的私钥即可,因此加密密钥的分发将变得十分简单。同时,由于每个用户的私钥是唯一的,其他用户除了可以可以通过信息发送者的公钥来验证信息的来源是否真实,还可以确保发送者无法否认曾发送过该信息。

    非对称加密的缺点是加解密速度要远远慢于对称加密,在某些极端情况下,甚至能比非对称加密慢上1000倍。

    常见的非对称加密算法:RSA、ECC(移动设备用)、Diffie-Hellman、El Gamal、DSA(数字签名用)

    Hash算法

    Hash算法特别的地方在于它是一种单向算法,用户可以通过Hash算法对目标信息生成一段特定长度的唯一的Hash值,却不能通过这个Hash值重新获得目标信息。因此Hash算法常用在不可还原的密码存储、信息完整性校验等。

    常见的Hash算法:MD2、MD4、MD5、HAVAL、SHA、SHA-1、HMAC、HMAC-MD5、HMAC-SHA1

    加密算法的效能通常可以按照算法本身的复杂程度、密钥长度(密钥越长越安全)、加解密速度等来衡量。上述的算法中,除了DES密钥长度不够、MD2速度较慢已逐渐被淘汰外,其他算法仍在目前的加密系统产品中使用。

    加密算法的选择

    前面的章节已经介绍了对称解密算法和非对称加密算法,有很多人疑惑:那我们在实际使用的过程中究竟该使用哪一种比较好呢?

    我们应该根据自己的使用特点来确定,由于非对称加密算法的运行速度比对称加密算法的速度慢很多,当我们需要加密大量的数据时,建议采用对称加密算法,提高加解密速度。

    对称加密算法不能实现签名,因此签名只能非对称算法。

    由于对称加密算法的密钥管理是一个复杂的过程,密钥的管理直接决定着他的安全性,因此当数据量很小时,我们可以考虑采用非对称加密算法。

    在实际的操作过程中,我们通常采用的方式是:采用非对称加密算法管理对称算法的密钥,然后用对称加密算法加密数据,这样我们就集成了两类加密算法的优点,既实现了加密速度快的优点,又实现了安全方便管理密钥的优点。

    如果在选定了加密算法后,那采用多少位的密钥呢?一般来说,密钥越长,运行的速度就越慢,应该根据的我们实际需要的安全级别来选择,一般来说,RSA建议采用1024位的数字,ECC建议采用160位,AES采用128为即可。

    对称加密算法
    对称加密算法用来对敏感数据等信息进行加密,常用的算法包括:

    DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合;

    3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高;

    AES(Advanced Encryption Standard):高级加密标准,是下一代的加密算法标准,速度快,安全级别高。

    非对称算法
    RSA:由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的;

    DSA(Digital Signature Algorithm):数字签名算法,是一种标准的 DSS(数字签名标准);

    ECC(Elliptic Curves Cryptography):椭圆曲线密码编码学。

    ECC和RSA相比,在许多方面都有对绝对的优势,主要体现在以下方面:

    抗攻击性强。相同的密钥长度,其抗攻击性要强很多倍。

    计算量小,处理速度快。ECC总的速度比RSA、DSA要快得多。

    存储空间占用小。ECC的密钥尺寸和系统参数与RSA、DSA相比要小得多,意味着它所占的存贮空间要小得多。这对于加密算法在IC卡上的应用具有特别重要的意义。

    带宽要求低。当对长消息进行加解密时,三类密码系统有相同的带宽要求,但应用于短消息时ECC带宽要求却低得多。带宽要求低使ECC在无线网络领域具有广泛的应用前景。

    散列算法
    散列是信息的提炼,通常其长度要比信息小得多,且为一个固定长度。加密性强的散列一定是不可逆的,这就意味着通过散列结果,无法推出任何部分的原始信息。任何输入信息的变化,哪怕仅一位,都将导致散列结果的明显变化,这称之为雪崩效应。散列还应该是防冲突的,即找不出具有相同散列结果的两条信息。具有这些特性的散列结果就可以用于验证信息是否被修改。

    单向散列函数一般用于产生消息摘要,密钥加密等,常见的有:

    MD5(Message Digest Algorithm 5):是RSA数据安全公司开发的一种单向散列算法,非可逆,相同的明文产生相同的密文;

    SHA(Secure Hash Algorithm):可以对任意长度的数据运算生成一个160位的数值。

    SHA-1与MD5的比较:

    因为二者均由MD4导出,SHA-1和MD5彼此很相似。相应的,他们的强度和其他特性也是相似,但还有以下几点不同:

    对强行供给的安全性:最显著和最重要的区别是SHA-1摘要比MD5摘要长32 位。使用强行技术,产生任何一个报文使其摘要等于给定报摘要的难度对MD5是2128数量级的操作,而对SHA-1则是2160数量级的操作。这样,SHA-1对强行攻击有更大的强度;

    对密码分析的安全性:由于MD5的设计,易受密码分析的攻击,SHA-1显得不易受这样的攻击;

    速度:在相同的硬件上,SHA-1的运行速度比MD5慢。

    对称与非对称算法比较
    以上综述了两种加密方法的原理,总体来说主要有下面几个方面的不同:

    在管理方面:公钥密码算法只需要较少的资源就可以实现目的,在密钥的分配上,两者之间相差一个指数级别(一个是n一个是n2)。所以私钥密码算法不适应广域网的使用,而且更重要的一点是它不支持数字签名;

    在安全方面:由于公钥密码算法基于未解决的数学难题,在破解上几乎不可能。对于私钥密码算法,到了AES虽说从理论来说是不可能破解的,但从计算机的发展角度来看。公钥更具有优越性;

    从速度上来看:AES的软件实现速度已经达到了每秒数兆或数十兆比特。是公钥的100倍,如果用硬件来实现的话这个比值将扩大到1000倍。
    了解更多

    更多相关内容
  • DES:数据加密标准,速度较快,适用于加密大量数据的场合。 3DES:是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高。 AES:高级加密标准,是下一代的加密算法标准,速度快,安全级别高。 常见的非...

    常用加密算法有两类:对称加密算法和非对称加密算法(公开密钥加密)。对称加密算法用来对敏感数据等信息进行加密,常用的算法包括:

    DES:数据加密标准,速度较快,适用于加密大量数据的场合。

    3DES:是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高。

    AES:高级加密标准,是下一代的加密算法标准,速度快,安全级别高。

    常见的非对称加密算法如下:

    RSA:由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的。

    ECC:椭圆曲线密码编码学。

    对称密钥密码体制的原理和特点

    对称密钥密码体制,对于大多数算法,解密算法是加密算法的逆运算,加密密钥和解密密钥相同,同属一类的加密体制。它保密强度高但开放性差,要求发送者和接收者在安全通信之前,需要有可靠的密钥信道传递密钥,而此密钥也必须妥善保管。

    DES算法

    算法思想

    DES是对称密码算法,是美国数据加密标准,对称加密就是加密秘钥和解密秘钥相同的加密算法,DES算法的基本思想是对明文进行分组,然后利用用户秘钥对明文分组进行16轮的移位和循环移位、置换、扩展、压缩、异或等位运算,利用复杂运算把明文编码彻底打乱,从而使得加密后的密文无法破解。 

    DES加密算法优点是密钥较短,加密处理简单,加解密速度快,适用于加密大量数据的场合。缺点对称算法的安全性依赖于密钥,泄漏密钥就意味着任何人都能对消息进行加密解密,因此秘钥的管理与分发存在缺陷。

    加解密过程

    DES算法是一个分组加密算法,它以64位分组对数据进行加密,其初始密钥也是64位,它的加密过程可以描述如下:

    ①64位密钥经子密钥产生算法产生出16个子密钥:K1,K2,…K16,分别供第一次,第二次, …,第十六次加密迭代使用。

    ②64位明文经初始置换IP,将数据打乱重排并分成左右两半。左边为L0,右边为R0: X=L0R0=IP(x)。

    ③16轮轮变换,每轮(第i轮)操作如下:在轮子密钥Ki的控制下,由轮函数f对当前轮输入数据的右半部分Ri-1进行加密:第一步,将Ri-1经过E盒置换扩展成48位,第二步,将Ri-1与48位的轮子密钥Ki逐比特异或,第三步,对Ri-1进行S盒压缩代换,将其压缩为32位,第四步,对Ri-1进行P盒置换。然后,将Ri-1与当前轮输入的左半部分Li-1进行逐比特异或,将该运算结果作为当前轮(第i轮)右半部份的输出Ri=Li-1⊕f(Ri-1,Ki);将本轮输入的右半部分数据作为本轮输出的左半部分数据:Li=Ri-1。

    ④16轮变换结束后,交换输出数据的左右两部分:X=R16L16。

    ⑤经过逆初始变换IP-1输出密文。对于DES算法来说,其解密过程与加密过程是同一过程,只不过使用子密钥的顺序相反。

    RSA算法

    算法思想

    RSA算法安全性基于大数分解的难度。将两个大素数相乘容易,但要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。从一个公开密钥和密文中恢复出明文的难度等价于分解两个大素数的乘积。为提高保密强度,RSA密钥至少为500位长,一般推荐使用1024位,目前商用RSA算法密钥长度2048位。

    RSA算法的安全性要优于对称加密算法,但因算法复杂度较高,其加密处理效率不如对称加密算法。故在网络传输重要信息时,常将两种加密算法混合使用。

    例:

    RSA算法中,选择p=7,q=17,e=13,计算其公钥与私钥,并采用快速模乘(反复平方乘)方法,加密明文m=

    解:①密钥的生成:

    模数n=p×q=7×17=119,f(n)=(p-1)×(q-1)=6×16=96

    因为加密指数e和私密钥d满足:ed mod f(n) =1,所以d=e-1mod f(n) ,私钥d的计算过程如下

    Q

    A1

    A2

    A3

    B1

    B2

    B3

    ——

    1

                  0

    96

    0

    1

    13

    7

    0

    1

    13

    1

    -7

    5

    2

    1

    -7

    5

    -2

    15

    3

    1

    -2

    15

    3

    3

    -22

    2

    1

    3

    -22

    2

    -5

    37

    1

    由以上计算可知私密钥d=37。

    公钥为(e,n)=(13,119),私钥为的d=37

    ②使用以上密钥对,采用反复平方乘方法加密明文m=1910,计算过程如下:

    采用RSA算法加密明文,密文c=me  mod n=1913 mod 119

    将加密指数e=13用二进制表示:(11012,则有

    k

    bi

    d

    3

    1

    ((12   mod 119) ×19)mod119  = 19

    2

    1

    ((192   mod 119) ×19)   mod 119 = 76

    1

    0

                             (76)2 mod 119   = 64

    0

    1

    ((64)2   mod 119) ×19)   mod 119 = 117

    由以上计算可知,密文为(117)10

    换位密码

    换位密码(列换位)加密技术是将明文按固定长m(秘钥长度)分组,即每行m个字母,在密钥控制下排列成矩阵,最后根据秘钥的字典序按列优先的顺序依次读出,即为密文。

    例:

    1.试利用换位加密技术将明文“i will go back by train tomorrow”用密钥“cable”加密,写出密文,字符之间不用空格。

    2.这种加密方式有什么缺陷。

    解:

    1. 密文:wobioibynrigkamwlcroolattr  
    2. 缺陷:加密算法简单,易于破解;算法的安全性在于密钥的安全性,一旦密钥丢失,算法再没有价值。

     替换密码

    替换密码定义:A和B是有 n 个字母的字母表,定义一个由A到B的映射:f:A→B

    f(ai )= bi=aj

    j=i+k mod n

    即用明文字母在字母表中后面第 k 个字母来代替。

    例:

    当 K=3 时是著名的凯撒密码,恺撒密码是古罗马恺撒大帝在营救西塞罗战役时用来保护重要军情的加密系统(《高卢战记》),凯撒密码是历史上第一个密码技术。

    1.请将短语“if you do not leave me i will by your side until the life end”使用凯撒密码加密,写出密文,字符之间不留空格。

    2.你能再对其进行简单改进吗?写出你的算法和密文。

    解:

    1. 加密后的密文:librxgrqrwohdyhphlzlooebbrxuvlghxqwlowkholihhqg 
    2. 简单改进:使密文倒序,转变为新的密文:gqhhilohkwolwqxhglvuxrbbeoolzlhphydhowrqrgxrbil
    展开全文
  • 国际数据加密算法(IDEA)简介

    千次阅读 2020-07-19 13:22:48
    国际数据加密算法(International Data Encryption Algorithm,IDEA)是最强大的加密算法之一。 尽管IDEA很强大,但不想DES那么普及,原因有两个:第一,IDEA受专利的保护,而DES不受专利的保护,IDEA要先获得许可证...
    1. 背景与历史

    国际数据加密算法(International Data Encryption Algorithm,IDEA)是最强大的加密算法之一。
    尽管IDEA很强大,但不想DES那么普及,原因有两个:第一,IDEA受专利的保护,而DES不受专利的保护,IDEA要先获得许可证之后才能在商业应用程序中使用;第二,DES比IDEA具有更长的历史和跟踪记录。

    2. IDEA的工作原理

    2.1 基本原理
    IDEA是块加密,与DES一样,IDEA也处理64位明文块。但是,其密钥更长,共128位。和DES一样,IDEA是可逆的,即可以用相同的算法加密和解密。IDEA也用扩展与混淆进行加密。下图显示了IDEA的工作方法:
    在这里插入图片描述
    64位输入明文块分成4个部分(各16块)P1~ P4。P1~ P4是算法的第一轮输入,共8轮。密钥为128位,每一轮从原先的密钥产生6个子密钥,各位16位。这个6个子密钥作用于4个输入块P1~ P4。第一轮,有6个密钥K1~ K6;第二轮,有6个密钥K7~ K12;最后,第8轮,有6个密钥K43~ K48。最后一步是输出变换,只用4个子密钥(K49~ K52)。产生的最后输出是输出变换的输出,为4个密文块C1~ C4(各为16位),从而构成64位密文块。
    2.2 轮次
    IDEA中有8轮,每一轮位6个密钥对4个数据块的一系列操作。广义上看这些步骤如下图所示:
    在这里插入图片描述
    我们对上图进行符号化,描述的步骤与前面一样,输入块表示为P1~ P4,子密码表示为K1~ K6,这个步骤的输出表示为R1~ R4,而不是C1~ C4,因为这不是最终密文,只是中间输出,要在后面的各轮和输出变换中处理。其示意图如下:
    在这里插入图片描述
    注意,在Add和Multiply后面加上星号,使其变成Add ∗ * 和Multiply ∗ * ,因为这不只是加和乘,而是加后用 2 16 2^{16} 216求模,乘后用 2 16 + 1 2^{16}+1 216+1求模。IDEA采用求模算法,保证即使两个16位数加或者相乘的结果超过17位,也能缩减到16位。
    2.3 子密钥生成
    IDEA每一轮需要6个子密钥(因此8轮共需要48个子密钥),最后输出变换使用4个子密钥(共需要52个子密钥)。从128位的输入密钥得到52位子密钥,其前两轮的做法如下(根据前两轮的做法,可以得到后面各轮的子密钥表):

    • 第一轮
      原始密钥为128位,可以产生第一轮的6个子密钥K1~ K6。由于K1~ K6各为16位,因此用到128位中的前96位(6个子密钥,各为16位)。这样,第一轮结束时,97~ 128位密钥还没有使用,如下图所示:
      在这里插入图片描述
    • 第二轮
      第二轮首先使用第一轮没有使用过的32位(97~ 128位)密钥,我们一共需要96位密钥,因此IDEA采用了密钥移位技术,在这个阶段,原始密钥循环左移25位,即原始密钥的第26位移到第1位,称为移位后的第1位,原始密钥的第25位移到最后一位,称为移位后的第128位。其整个过程如下图所示:
      在这里插入图片描述
      可以看到,第二轮使用了第一轮的97~ 128位,以及经过25位移位后的1~ 64位。然后,第三轮其余的部分,即65~ 128位(总共64位)。再次进行25位的移位,移位后,在第三轮使用1~32位,以此类推,如下表所示:
    轮次子密钥生成过程
    1使用原始128位密钥的1~ 96位,从而在第一轮中有6个子密钥K1~ K6。97~ 128位留给下一轮用
    2第一轮未用的97~ 128位用作本轮的K1和K2。原始密钥进行25位移位,如上面所述。移位后,前64位用作本轮的子密钥K3~ K6。剩下的65~ 128位留给下一轮用
    3上一轮未用的65~ 128位用作本轮的K1~ K4。密钥用完后,再进行一次25位移位,移位后的密钥的1~ 32位用作本轮的子密钥K5和K6。剩下的33~ 128位留给下一轮用
    4上一轮未用的33~ 128位正好用作本轮的6个子密钥。此时没有未用的位了。然后,对当前密钥再进行移位
    5本轮类似于第一轮。本轮使用当前密钥的1~ 96位。97~ 128 位留给下一轮用
    6上一轮未用的97~ 128位用作本轮的K1和K2。原始密钥进行25位移位,如上面所述。移位后,前64位用作本轮的子密钥K3~ K6。剩下的65~ 128位留给下一轮用
    7上一轮未用的65~ 128位用作本轮的K1~ K4。密钥用完后,再进行一次25位移位,移位后的密钥的1~ 32位用作本轮的子密钥K5和K6。剩下的33~ 128位留给下一轮用
    8上一轮未用的33~ 128位正好用作本轮的6个子密钥。此时没有未用的位了。然后,对当前密钥再进行移位,用作输出变换

    2.4 输出变换
    输出变换只进行一次,在第8轮结束时发生。当然输出变换的输入是第8轮的输出。64位值分为四个子块(R1~ R4,各16位),另外,这里采用四个子密钥,而不是六个。其过程如下图所示:
    在这里插入图片描述
    对上图进行符号化,可以得到输出变换的框图,如下图所示:
    在这里插入图片描述
    这个过程得到最终的64位密文,是由4个密文块C1~ C4组合而成的。
    2.5 输出变换的子密钥生成过程
    输出变换的子密钥生成过程与上面8轮的密钥生成过程差不多。第8轮结束时,刚好用完密钥,因此输出变换过程首先要对密钥进行25位循环左移。第8轮的结束位为125,经过25位移位后,新的开始位置位23,结束位置为22。由于输出变换过程只要四个密钥,各16位,共64位,因此使用23到86位。其余的87~ 128和1~ 22位不用,将其放弃。
    2.6 IDEA解密
    解密过程与加密过程完全相同,只是子密钥的生成与模式有所不同。解密子密钥实际上是加密子密钥的逆。
    2.7 IDEA的强度
    IDEA使用128位密钥,是DES密钥长度的两倍,因此破译IDEA,纪要进行 2 128 2^{128} 2128次加密运算,去的正确的密钥只要平均搜索一半的密钥空间,每微秒执行一次IDEA加密的计算机也要5 400 000 000 000 000 000 000 000年才能破解IDEA。

    展开全文
  • 数据加密 数据加密技术是最基本的安全技术,被誉为信息安全的核心,最初主要用于保证数据在存储和传输过程中的保密性。它通过变换和置换等各种方法将被保护信息置换成密文,然后再进行信息的存储或传输,即使加密...

    数据加密

    数据加密技术是最基本的安全技术,被誉为信息安全的核心,最初主要用于保证数据在存储和传输过程中的保密性。它通过变换和置换等各种方法将被保护信息置换成密文,然后再进行信息的存储或传输,即使加密信息在存储或者传输过程为非授权人员所获得,也可以保证这些信息不为其认知,从而达到保护信息的目的。该方法的保密性直接取决于所采用的密码算法密钥长度。

    根据密钥类型不同可以将现代密码技术分为两类:对称加密算法私钥密码体系)和非对称加密算法(公钥密码体系)。在对称加密算法中,数据加密和解密采用的都是同一个密钥,因而其安全性依赖于所持有密钥的安全性。对称加密算法的主要优点是加密和解密速度快,加密强度高,且算法公开,但其最大的缺点是实现密钥的秘密分发困难,在大量用户的情况下密钥管理复杂,而且无法完成身份认证等功能,不便于应用在网络开放的环境中。目前最著名的对称加密算法数据加密标准DES和欧洲数据加密标准IDEA等,目前加密强度最高的对称加密算法高级加密标准AES。

    对称加密算法非对称加密算法不可逆加密算法可以分别应用于数据加密、身份认证数据安全传输。

    对称加密算法

     对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,若想解读原文,则需要使用加密用过的密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。在对称加密算法中,使用的密钥只有一个,发收信双方都使用这个密钥对数据进行加密和解密,这就要求解密方事先必须知道加密密钥。对称加密算法的特点是算法公开、计算量小、加密速度快、加密效率高。不足之处是,交易双方都使用同样钥匙,安全性得不到保证。此外,每对用户每次使用对称加密算法时,都需要使用其他人不知道的惟一钥匙,这会使得发收信双方所拥有的钥匙数量成几何级数增长,密钥管理成为用户的负担。对称加密算法在分布式网络系统上使用较为困难,主要是因为密钥管理困难,使用成本较高。在计算机专网系统中广泛使用的对称加密算法DESIDEAAES

    传统的DES由于只有56位的密钥,因此已经不适应当今分布式开放网络对数据加密安全性的要求。1997年RSA数据安全公司发起了一项“DES挑战赛”的活动,志愿者四次分别用四个月、41天、56个小时和22个小时破解了其用56位密钥DES算法加密的密文。即DES加密算法在计算机速度提升后的今天被认为是不安全的。

    AES是美国联邦政府采用的商业及政府数据加密标准,预计将在未来几十年里代替DES在各个领域中得到广泛应用。AES提供128位密钥,因此,128位AES的加密强度是56位DES加密强度的1021倍还多。假设可以制造一部可以在1秒内破解DES密码的机器,那么使用这台机器破解一个128位AES密码需要大约149亿万年的时间。(更深一步比较而言,宇宙一般被认为存在了还不到200亿年)因此可以预计,美国国家标准局倡导的AES即将作为新标准取代DES。

    不对称加密算法

     不对称加密算法使用两把完全不同但又是完全匹配的一对钥匙—公钥私钥。在使用不对称加密算法加密文件时,只有使用匹配的一对公钥私钥,才能完成对明文的加密和解密过程。加密明文时采用公钥加密,解密密文时使用私钥才能完成,而且发信方(加密者)知道收信方的公钥,只有收信方(解密者)才是唯一知道自己私钥的人。不对称加密算法的基本原理是,如果发信方想发送只有收信方才能解读的加密信息,发信方必须首先知道收信方的公钥,然后利用收信方的公钥来加密原文;收信方收到加密密文后,使用自己的私钥才能解密密文。显然,采用不对称加密算法,收发信双方在通信之前,收信方必须将自己早已随机生成的公钥送给发信方,而自己保留私钥。由于不对称算法拥有两个密钥,因而特别适用于分布式系统中的数据加密。广泛应用的不对称加密算法有RSA算法和美国国家标准局提出的DSA。以不对称加密算法为基础的加密技术应用非常广泛。

    非对称加密系统使用对方的公开密钥进行加密,只有对应的私密密钥才能够破解加密后的密文。下图是非对称加密系统的一个简单示意过程:

    非对称加密系统能够达到秘密性和完整性:

    u 只有指定的接收者才能解开密文

    u 经过加密解密的过程中,不会改变明文

    u 每个人都能传送密文,但是不知道是谁传送的

    展开全文
  • 数据加密技术和数据加密算法

    千次阅读 2019-04-15 10:16:26
    数据加密技术 现代社会对信息安全的需求大部分可以通过密码技术来实现。密码技术是信息安全技术中的核心技术,它主要由密码编码技术和密码分析技术两个分支组成。密码编码技术的主要任务是寻求产生安全性高的有效...
  • 网络安全-数据加密算法详解

    千次阅读 2017-01-19 14:03:44
    DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合。 3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高。 AES(Advanced Encryption ...
  • 数据加密 加密原理: 把一帧需要发送的数据按位加上密码的每个字节,并且对密码字节做循环,然后保存回这一帧的数据包里面 示意图 代码实现 /****************************************************** * Function ...
  • 常见数据加密解密算法(特征值)

    千次阅读 2021-11-23 16:35:50
    TEA加密/解密算法(特征值9e3779b9) 加密核心函数 void EncryptTEA(unsigned int *firstChunk, unsigned int *secondChunk, unsigned int* key) { unsigned int y = *firstChunk; unsigned int z = *secondChunk...
  • 几种常见的加密算法

    千次阅读 2020-01-13 14:43:39
    数据加密的基本过程就是对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的一段代码为“密文”,使其只能在输入相应的密钥之后才能显示出原容,通过这样的途径来达到保护数据不被非法人窃取、阅读的...
  • 常见加密算法知识总结

    千次阅读 2019-07-02 10:46:19
    数据传输的过程中,首先把密码类数据经过MD5加密算法加密,然后再在外面使用可逆的加密方式加密一次,这样在数据传输的过程中,即便数据被截获了,但是想要完全破解,还是很难的。 Hash算法特别...
  • 加密算法及应用总结

    千次阅读 2020-09-01 13:03:22
    加密算法 使用密码学可以达到以下目的: 保密性:防止用户的标识或数据被读取。 数据完整性:防止数据被更改。 身份验证:确保数据发自特定的一方。 在加密中,应该保密的仅仅是明文和密钥。也就是说我们通常假设...
  • 常见的加密算法分类及介绍

    千次阅读 2021-03-04 14:20:00
    1.加密算法的分类 根本不考虑解密问题; 私用密钥加密技术:对称式加密(Symmetric Key Encryption):对称式加密方式对加密和解密使用相同的密钥。通常,这种加密方式在应用中难以实施,因为用同一种安全方式共享...
  • 数据交互的加密算法

    千次阅读 2017-07-13 11:05:28
    加密算法分类 加密算法介绍和应用 在项目中的使用讨论加密算法分类 不可逆加密算法 Hash算法(SHA-1、SHA-256、MD5) 对称加密算法(DES、3DES、AES(AES-128|AES-256) 非对称加密算法(RSA、DSA) 不可逆加密SHA...
  • 浅谈常见的七种加密算法及实现

    千次阅读 2021-02-22 18:00:07
    数字签名、信息加密是前后端开发都经常需要使用到的技术,应用场景包括了用户登入、交易、信息通讯、oauth等等,不同的应用场景也会需要使用到不同的签名加密算法,或者需要搭配不一样的签名加密算法来达到业务目标...
  • 常见的加密算法及详解都在这里!

    千次阅读 多人点赞 2019-12-20 00:06:39
    首先,大家要知道加密算法能干什么,利用加密算法来对数据通信的过程进行加密传输是一种最常见的安全手段。利用该手段能够达到一下三个目的: 1、数据保密性,防止用户数据被窃取或泄露; 2、数据完整性,防止用户...
  • 3DES三重数据加密算法

    千次阅读 2017-03-02 09:56:37
    3DES(或称为Triple DES)是三重数据加密算法(TDEA,Triple Data Encryption Algorithm)块密码的通称。它相当于是对每个数据块应用三次DES加密算法。   3DES算法是指使用双长度(16字节)密钥K=(KL||KR)将8字节...
  • 常见对称加密算法

    千次阅读 2019-04-10 09:13:49
    数据加密的本质就是对原始信息内容进行混淆和隐藏,使其难于理解,或难遇反向解密,或者利用现有的技术无法在短时间内破解,从而达到保障信息不被泄露的目的。目前在后台架构中,常用的有对称加密算法和飞对称加密...
  • PHP加密算法

    千次阅读 2021-09-18 23:34:12
    随后,CSDN"密码外泄门"持续发酵,天涯、世纪佳缘等网站相继被曝用户数据遭泄密。泄密就算了,更让人无语的是密码等信息都是...Md5()加密算法 Crypt()加密算法 Sha1()加密算法 URL编码加密技术 Base64编码加密技术 ...
  • iOS常用数据加密算法介绍和比较

    千次阅读 2016-04-14 09:49:05
    DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合。 3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高。 AES(Advanced Encryption ...
  • 加密算法有哪些?

    千次阅读 2021-04-20 12:10:25
    一、对称加密算法 1、DES 已破解,不再安全,基本没有企业在用了。 是对称加密算法的基石,具有学习价值。 密钥长度56(JDK)、56 / 64(BC) 2、DESede(三重DES) 早于 AES 出现来替代 DES 。 计算密钥时间...
  • 对称加密算法

    千次阅读 2020-05-21 09:58:03
    在密码学中,用于数据加密的算法主要有两种,分别是对称加密算法(Symmetric-key Algorithms)和非对称加密算法(Asymmetrical Cryptography)。 对称加密算法 一般是通过一个算法和一个密钥(secret key)对明文...
  • 国际数据加密算法IDEA

    千次阅读 2016-07-28 21:18:41
    1. IDEA加密算法是一种分组加密算法,IDEA利用128位的密钥对64位明文分组,经过连续加密产生64位的密文分组 2. IDEA算法的混淆特性:  i. 以位为单位的异或,以fun1来表示  ii. 定义在模2^16的模加法运算,其...
  • Java Language——数据加密算法和编码方式

    千次阅读 多人点赞 2016-05-23 11:14:46
    数据加密是计算机系统对信息进行保护的一种最可靠的办法。它利用密码技术对信息进行加密,实现信息隐蔽,...本文主要介绍了几种常见的数据加密算法(对称密码算法/非对称密码算法)的 Java 实现和常见编码方式的使用。
  • DES加密算法详解

    万次阅读 2019-06-14 23:06:27
    DES还是一种分组加密算法,该算法每次处理固定长度的数据段,称之为分组。DES分组的大小是64位,如果加密的数据长度不是64位的倍数,可以按照某种具体的规则来填充位。从本质上来说,DES的安全性依赖于虚假表象,从...
  • 通信加密算法

    千次阅读 2018-03-10 23:39:41
    对于对称性加密算法,信息接收双方都需事先知道密匙和加解密算法且其密匙是相同的,之后便是对数据进行加解密了。非对称算法与之不同,发送双方A,B事先均生成一堆密匙,然后A将自己的公有密匙发送给B,B将自己的公有...
  • 开发平台的对外几种加密算法对比

    千次阅读 2022-02-17 23:41:08
    信息加密与密钥管理 单向散列加密--MD5和SHA 对称加密--DES算法 非对称加密--RSA算法 ...秘钥:加密解密使用同一个密钥、数据的机密性双向保证、加密效率高、适合加密于大数据大文件、加密
  • 浅谈常见的七种加密算法及实现(附代码)

    万次阅读 多人点赞 2018-12-28 22:01:23
    数字签名、信息加密 是前后端开发都经常需要使用到的技术,应用场景包括了用户登入、交易、信息通讯、oauth 等等,不同的应用场景也会需要使用到不同的签名加密算法,或者需要搭配不一样的 签名加密算法来达到...
  • 3DES加密算法源码

    2015-01-21 18:38:23
    最早的定义了该算法的标准(ANS X9.52,1998年发布)将其描述为“三重数据加密算法(TDEA)”— 即为ANSI X3.92中定义的数据加密算法(DEA)的三次重复操作— 而完全没有使用术语“3DES”或“DES”。FIPS PUB 46-3...
  • MD5加密算法

    千次阅读 2021-09-29 09:29:30
    对称性加密算法,发送和接收端双方都知道秘钥和加密算法且秘钥都是相同的,之后便是对数据的加密和解密过程。非对称加密算法 :发送之前A B事先生成一对秘钥,A将秘钥发送给B,B将秘钥发送给 A,A先用B的秘钥加密...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 276,934
精华内容 110,773
关键字:

数据加密算法

友情链接: img_Copy.rar