导航:首页 > 文档加密 > 数据加密性算法

数据加密性算法

发布时间:2022-02-25 18:27:02

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

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

㈡ 常用的加密算法有哪些

对称密钥加密

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

㈢ 数据加密原理和算法是什么

拜托,数据加密本身是一门很大的学问,不可能只用一两句话说清楚的。
数据加密的算法多种多样,而且随着科技的发展不断推陈出新。目前PC上最常用的是rijndael算法,该算法已被美国政府采纳为标准加密算法,简称AES。在此之前,美国政府采用的是另一种算法,称为DES,近年来随着解密技术的不断进步,DES已逐渐被淘汰。
加密的原理呢,不同的算法也各有不同,一般都包括异或、移位、替换等操作。加密算法大体上分为流水加密和块式加密两大类,PC上采用的都是块式加密,就是把原文分成相同长度的数据块,例如每32字节分为一块,然后对每一块单独进行加密。
其他的太多了,说不完,而且我也不完全懂,想学的话你自己买书去看吧。

㈣ 几种常用数据加密算法的比较

几种对称性加密算法:AES,DES,3DES
DES是一种分组数据加密技术(先将数据分成固定长度的小数据块,之后进行加密),速度较快,适用于大量数据加密,而3DES是一种基于DES的加密算法,使用3个不同密匙对同一个分组数据块进行3次加密,如此以使得密文强度更高。
相较于DES和3DES算法而言,AES算法有着更高的速度和资源使用效率,安全级别也较之更高了,被称为下一代加密标准。
几种非对称性加密算法:RSA,DSA,ECC
RSA和DSA的安全性及其它各方面性能都差不多,而ECC较之则有着很多的性能优越,包括处理速度,带宽要求,存储空间等等。
几种线性散列算法(签名算法):MD5,SHA1,HMAC
这几种算法只生成一串不可逆的密文,经常用其效验数据传输过程中是否经过修改,因为相同的生成算法对于同一明文只会生成唯一的密文,若相同算法生成的密文不同,则证明传输数据进行过了修改。通常在数据传说过程前,使用MD5和SHA1算法均需要发送和接收数据双方在数据传送之前就知道密匙生成算法,而HMAC与之不同的是需要生成一个密匙,发送方用此密匙对数据进行摘要处理(生成密文),接收方再利用此密匙对接收到的数据进行摘要处理,再判断生成的密文是否相同。
对于各种加密算法的选用:
由于对称加密算法的密钥管理是一个复杂的过程,密钥的管理直接决定着他的安全性,因此当数据量很小时,我们可以考虑采用非对称加密算法。
在实际的操作过程中,我们通常采用的方式是:采用非对称加密算法管理对称算法的密钥,然后用对称加密算法加密数据,这样我们就集成了两类加密算法的优点,既实现了加密速度快的优点,又实现了安全方便管理密钥的优点。
如果在选定了加密算法后,那采用多少位的密钥呢?一般来说,密钥越长,运行的速度就越慢,应该根据的我们实际需要的安全级别来选择,一般来说,RSA建议采用1024位的数字,ECC建议采用160位,AES采用128为即可。

㈤ 数据加密算法有哪些

DES加密算法,AES加密算法,RSA加密算法,Base64加密算法,MD5加密算法,SHA1加密算法。
由于计算机软件的非法复制,通信的泄密、数据安全受到威胁,解密及盗版问题日益严重,甚至引发国际争端,所以在信息安全技术中,加密技术占有不可替代的位置,因此对信息加密技术和加密手段的研究与开发,受到各国计算机界的重视,发展日新月异。

㈥ 现在常用的数据加密算法主要有哪些

用数据库做的md5映射,所以只要他的数据库里有就轻松的破解了,其实你这个问题我在以前就解决了 你可以在md5的结果里再自己做一下简单的变换,比如做一次反转之类的变化 实现起来也很简单,这样当人家不知道你在md5上加了反转 就直接去破解是破不出来的 我写了一段程序,希望对你有点帮助 import java.security.*; import java.io.*; import java.util.*; import sun.misc.BASE64Encoder; public class MD5 { public static String creatPassword(String password)throws Exception { MessageDigest md = MessageDigest.getInstance("MD5"); md.update(password.getBytes("UTF8")); byte[] digest = md.digest(); /*在这里随便做点什么变换就可以了,可以自由发挥了,你也可以写一个反转什么的,我这里就简单点写了,注意为了保证md5的碰撞困难,最好不要改变原有的字符集,就是说最好只交换某些字符的位置,不要改变原有的值 还有你在验证的时候也要按照你发挥的方法写*/ byte tt=digest[0];digest[0]=digest[7];digest[7]=tt; String outp; outp = new BASE64Encoder().encode(digest); /*顺便说一下采用BASE64Encoder编码后原本是16位的字符变成了24位,其中前22位是有效位,不是我们常见的16位了 这里也和我们用的数据库破解也不同,变换的过程其实是吧8位的byte只取6位,然后通过加字符长度来实现*/ return outp; } public static void main(String args[])throws Exception{ String md=new MD5().creatPassword("message for test"); System.out.println(md); } } 再给你一段代码,这段代码中用到的是一种比较安全的方式,理论是使破解不出来的,因为它使用了随机盐对密码加密,对同样一段密文加密的两次结果是不一样的,但是又同样能做登录认证,这样就没办法做数据库去匹配了,有兴趣的话可以研究一下,还有,加密结果是40位 import java.security.*; import java.io.*; import java.util.*; import sun.misc.*; public class MD { //加密 public static String creatPassword(String password)throws Exception { SecureRandom random = new SecureRandom(); byte[] salt = new byte[12]; random.nextBytes(salt); MessageDigest md = MessageDigest.getInstance("MD5"); md.update(salt); md.update(password.getBytes("UTF8")); byte[] digest = md.digest(); String outp=new BASE64Encoder().encode(salt); outp = outp + new BASE64Encoder().encode(digest); return outp; } //认证,gavingPassword是客户输入的密码明文,password是存放的密码的密文 public static boolean authenticatePassword(String gavingPassword,String password ) throws Exception { String saltString = password.substring(0,16); byte[] salt = new BASE64Decoder().decodeBuffer(saltString); String digest1=password.substring(16); MessageDigest md = MessageDigest.getInstance("MD5"); md.update(salt); md.update(gavingPassword.getBytes("UTF8")); byte[] digest = md.digest(); String digest2 = new BASE64Encoder().encode(digest); if(digest1.equals(digest2)) return true; else return false; } }

㈦ 数据加密算法:

密码算法是加密算法和解密算法的统称,它是密码体制的核心。密码算法可以看成一些交换的组合。当输入为明文时,经过这些变换,输出就为密文。这是加密交换的过程,此时密码算法称为加密算法。反之,当输入为密文时,经过密码变换,输出为明文,这就 是解密交换的过程,此时密码算法称为解密算法。常用加密算法为:AES 、 RSA/ECC 、Diffie-hellman 、 SHA-1/SHA-256 。

㈧ 数据加密算法的数据加密标准DES

DES的原始思想可以参照二战德国的恩尼格玛机,其基本思想大致相同。传统的密码加密都是由古代的循环移位思想而来,恩尼格玛机在这个基础之上进行了扩散模糊。但是本质原理都是一样的。现代DES在二进制级别做着同样的事:替代模糊,增加分析的难度。 攻击 DES 的主要形式被称为蛮力的或穷举,即重复尝试各种密钥直到有一个符合为止。如果 DES 使用 56 位的密钥,则可能的密钥数量是 2 的 56 次方个。随着计算机系统能力的不断发展,DES 的安全性比它刚出现时会弱得多,然而从非关键性质的实际出发,仍可以认为它是足够的。不过 ,DES 现在仅用于旧系统的鉴定,而更多地选择新的加密标准 — 高级加密标准(Advanced Encryption Standard,AES)。
新的分析方法有差分分析法和线性分析法两种 本期Crackme用到MD5及DES两种加密算法,难度适中。这次我们重点来看一下DES的加密过程及注册算法过程。用调试器载入程序,下GegDlgItemTextA断点,可以定位到下面代码,我们先来看一下整个crackme的注册过程:
由于代码分析太长,故收录到光盘中,请大家对照着分析(请见光盘“code1.doc”)
从上面分析可以看出,注册过程是类似:f(机器码,注册码)式的两元运算。机器码是经过md5算法得到的中间16位值,注册码是经过DES解密过程取得16位注册码,然后两者比较,如相等,则注册成功。机器码的运算过程可以参照上一期的MD5算法来理解。下面重点来说一下注册码DES的运算过程。
1、密钥处理过程:一般进行加解密过程都要初始化密钥处理。我们可以跟进004023FA CALL Crackme1.00401A40这个call,可以看到如下代码:
…(省略)...
00401A4D LEA ECX,DWORD PTR DS:[ECX]
00401A50 /MOV EDX,EAX
00401A52 |SHR EDX,3
00401A55 |MOV DL,BYTE PTR DS:[EDX+ESI]
00401A58 |MOV CL,AL
00401A5A |AND CL,7
00401A5D |SAR DL,CL
00401A5F |AND DL,1
00401A62 |MOV BYTE PTR DS:[EAX+417DA0],DL
00401A68 |INC EAX
00401A69 |CMP EAX,40这里比较是否小于64
00401A6C JL SHORT Crackme1.00401A50
以上过程就是去掉密钥各第八位奇偶位。
…(省略)...
00401AB0 |MOV DL,BYTE PTR DS:[ECX+417D9F]
00401AB6 |MOV BYTE PTR DS:[EAX+417BA3],DL
00401ABC |ADD EAX,4
00401ABF |CMP EAX,38这里进行密钥变换
…(省略)...
00401BFF ||MOVSX ECX,BYTE PTR DS:[EAX+412215]
00401C06 ||MOV CL,BYTE PTR DS:[ECX+417D9F]
00401C0C ||MOV BYTE PTR DS:[EAX+417BA5],CL
00401C12 ||ADD EAX,6
00401C15 ||CMP EAX,30这里产生48位的子密钥
00401C18 |JL SHORT Crackme1.00401BA0
00401C1A |MOV EAX,DWORD PTR SS:[ESP+14]
00401C1E |MOV EDI,EAX
00401C20 |MOV ECX,0C
00401C25 |MOV ESI,Crackme1.00417BA0
00401C2A |REP MOVS DWORD PTR ES:[EDI],DWORD PTR D>
00401C2C |MOV EDI,DWORD PTR SS:[ESP+10]
00401C30 |ADD EAX,30下一组子密钥
00401C33 |INC EDI
00401C34 |CMP EAX,Crackme1.00417B90这里进行16次的生成子密钥过程
00401C39 |MOV DWORD PTR SS:[ESP+10],EDI
…(省略)...
可以看到8位密钥为:1,9,8,0,9,1,7,0
2、对数据处理的过程,跟进004024C7 CALL Crackme1.00402050,到如下代码:
00402072 |MOV BYTE PTR DS:[EAX+417E30],DL
00402078 |INC EAX
00402079 |CMP EAX,40这里取得64位数据
0040207C JL SHORT Crackme1.00402060
…(省略)...
004020C6 |MOV BYTE PTR DS:[EAX+417BA3],DL
004020CC |ADD EAX,4
004020CF |CMP EAX,40进行第一次变换
004020D2 JL SHORT Crackme1.00402080
004020D4 MOV AL,BYTE PTR SS:[ESP+20]
004020D8 TEST AL,AL
004020DA MOV ECX,10
…(省略)...
00402191 MOV EBP,DWORD PTR DS:[415094] ; Crackme1.00417E30
00402197 SUB EAX,EBP这里对变换后的数据分为两部分
00402199 MOV DWORD PTR SS:[ESP+10],EAX
0040219D MOV DWORD PTR SS:[ESP+20],Crackme1.00417B60
004021A5 /MOV EAX,DWORD PTR SS:[ESP+20]
004021A9 |MOV ECX,8
004021AE |MOV ESI,EBP
004021B0 |MOV EDI,Crackme1.00417E10
004021B5 |PUSH EAX这里用上面生成的子密钥来解密数据
004021B6 |MOV EBX,EBP
…(省略)...
004021FF |SUB EAX,30下一个子密钥
00402202 |CMP EAX,Crackme1.00417890这里将循环16次,典型的DES加解密过程
00402207 |MOV ECX,8
0040220C |MOV ESI,Crackme1.00417E10
00402211 |REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS:[ESI>
…(省略)...
0040225A |MOV BYTE PTR DS:[EAX+417BA2],DL
00402260 |MOV DL,BYTE PTR DS:[ECX+417E2F]
00402266 |MOV BYTE PTR DS:[EAX+417BA3],DL
0040226C |ADD EAX,4
0040226F |CMP EAX,40这里是未置换
00402272 JL SHORT Crackme1.00402220
00402274 MOV EBP,DWORD PTR SS:[ESP+18]
00402278 MOV ECX,10
0040227D MOV ESI,Crackme1.00417BA0
…(省略)...
有兴趣的读者可以参考DES算法来理解上面的过程。 一.安全性比较高的一种算法,目前只有一种方法可以破解该算法,那就是穷举法.
二.采用64位密钥技术,实际只有56位有效,8位用来校验的.譬如,有这样的一台PC机器,它能每秒计算一百万次,那么256位空间它要穷举的时间为2285年.所以这种算法还是比较安全的一种算法.
TripleDES。该算法被用来解决使用 DES 技术的 56 位时密钥日益减弱的强度,其方法是:使用两个独立密钥对明文运行 DES 算法三次,从而得到 112 位有效密钥强度。TripleDES 有时称为 DESede(表示加密、解密和加密这三个阶段)。

㈨ 常用的数据加密算法有哪些

想要加密电脑内重要文件数据,可以直接使用加密软件来保护,方法简单便捷安全。据了解现在市面上的加密软件都是采用的透明加密,可以对文件进行受控加密,在内部环境是可以正常打开使用的,脱离内部环境则打不开或者乱码,可以设置禁止拷贝、复制、修改、截屏等。文件外发需要授权,未授权解密无论以任何形式发出都是无法正常打开使用的。还可设置文件外发的浏览次数与打开时间。

㈩ 解释一下数据加密,目前的数据加密算法介绍一下

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

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

RC2和 RC4:用变长密钥对大量数据进行加密,比 DES 快;

IDEA(International Data Encryption Algorithm)国际数据加密算法,使用 128 位密钥提供非常强的安全性;

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

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

AES(Advanced Encryption Standard):高级加密标准,是下一代的加密算法标准,速度快,安全级别高,目前 AES 标准的一个实现是 Rijndael 算法;

BLOWFISH,它使用变长的密钥,长度可达448位,运行速度很快;

其它算法,如ElGamal、Deffie-Hellman、新型椭圆曲线算法ECC等。

阅读全文

与数据加密性算法相关的资料

热点内容
短信删除助手文件夹 浏览:688
java办公自动化 浏览:340
php中超链接 浏览:253
linux默认路由设置 浏览:36
linux如何挂载iso 浏览:432
vs程序换文件夹后不能编译 浏览:557
安卓源码编译输入脚本没反应 浏览:47
phpmysql自增 浏览:167
把ppt保存为pdf 浏览:533
汽车密封件加密配件 浏览:887
黑马程序员15天基础班 浏览:560
java调整格式 浏览:521
香港云服务器租用价 浏览:78
linuxsublime3 浏览:560
imac混合硬盘命令 浏览:278
沈阳用什么app租房车 浏览:857
00后高中生都用什么app 浏览:239
戴尔塔式服务器怎么打开独立显卡 浏览:807
医疗程序员招聘 浏览:598
住宿app可砍价是什么意思 浏览:133