当前位置:首页 » 密码管理 » ocmd5加密

ocmd5加密

发布时间: 2022-07-17 06:50:31

Ⅰ MD5的加密是什么意思

MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,经MD2、MD3和MD4发展而来。

Message-Digest泛指字节串(Message)的Hash变换,就是把一个任意长度的字节串变换成一定长的大整数。请注意我使用了"字节串"而不是"字符串"这个词,是因为这种变换只与字节的值有关,与字符集或编码方式无关。

MD5将任意长度的"字节串"变换成一个128bit的大整数,并且它是一个不可逆的字符串变换算法,换句话说就是,即使你看到源程序和算法描述,也无法将一个MD5的值变换回原始的字符串,从数学原理上说,是因为原始的字符串有无穷多个,这有点象不存在反函数的数学函数。

MD5的典型应用是对一段Message(字节串)产生fingerprint(指纹),以防止被"篡改"。举个例子,你将一段话写在一个叫readme.txt文件中,并对这个readme.txt产生一个MD5的值并记录在案,然后你可以传播这个文件给别人,别人如果修改了文件中的任何内容,你对这个文件重新计算MD5时就会发现。如果再有一个第三方的认证机构,用MD5还可以防止文件作者的"抵赖",这就是所谓的数字签名应用。

MD5还广泛用于加密和解密技术上,在很多操作系统中,用户的密码是以MD5值(或类似的其它算法)的方式保存的,用户Login的时候,系统是把用户输入的密码计算成MD5值,然后再去和系统中保存的MD5值进行比较,而系统并不"知道"用户的密码是什么。

一些黑客破获这种密码的方法是一种被称为"跑字典"的方法。有两种方法得到字典,一种是日常搜集的用做密码的字符串表,另一种是用排列组合方法生成的,先用MD5程序计算出这些字典项的MD5值,然后再用目标的MD5值在这个字典中检索。

即使假设密码的最大长度为8,同时密码只能是字母和数字,共26+26+10=62个字符,排列组合出的字典的项数则是P(62,1)+P(62,2)....+P(62,8),那也已经是一个很天文的数字了,存储这个字典就需要TB级的磁盘组,而且这种方法还有一个前提,就是能获得目标账户的密码MD5值的情况下才可以。

在很多电子商务和社区应用中,管理用户的Account是一种最常用的基本功能,尽管很多Application Server提供了这些基本组件,但很多应用开发者为了管理的更大的灵活性还是喜欢采用关系数据库来管理用户,懒惰的做法是用户的密码往往使用明文或简单的变换后直接保存在数据库中,因此这些用户的密码对软件开发者或系统管理员来说可以说毫无保密可言,本文的目的是介绍MD5的java Bean的实现,同时给出用MD5来处理用户的Account密码的例子,这种方法使得管理员和程序设计者都无法看到用户的密码,尽管他们可以初始化它们。但重要的一点是对于用户密码设置习惯的保

Ⅱ MD5加密文件是什么意思

MD5是message-digest
algorithm
5(信息-摘要算法)的缩写,被广泛用于加密和解密技术上,它可以说是文件的"数字指纹"。任何一个文件,无论是可执行程序、图像文件、临时文件或者其他任何类型的文件,也不管它体积多大,都有且只有一个独一无二的MD5信息值,并且如果这个文件被修改过,它的MD5值也将随之改变。因此,我们可以通过对比同一文件的MD5值,来校验这个文件是否被"篡改"过。
MD5到底有什么用?
当我们下载了文件后,如果想知道下载的这个文件和网站的原始文件是否一模一样,就可以给自己下载的文件做个MD5校验。如果得到的MD5值和网站公布的相同,可确认所下载的文件是完整的。如有不同,说明你下载的文件是不完整的:要么就是在网络下载的过程中出现错误,要么就是此文件已被别人修改。为防止他人更改该文件时放入病毒,最好不要使用。一般正规的站点,都会提供文件md5校验码,这是为了双方都方便。
参考资料:http://ke..com/view/7636.htm?fr=ala0_1

Ⅲ 什么叫MD5加密

好象已经被山东大学的一个教授破了

Ⅳ ios 怎么使用md5进行加密

ios使用md5进行加密的方法:
1、定义头文件:MyAdditions.h
@interface NSString (MyAdditions)
- (NSString *)md5;
@end

@interface NSData (MyAdditions)
- (NSString*)md5;
@end

2、实现主文件:MyAdditions.m
#import "MyAdditions.h"
#import <CommonCrypto/CommonDigest.h> // Need to import for CC_MD5 access

@implementation NSString (MyAdditions)
- (NSString *)md5
{
const char *cStr = [self UTF8String];
unsigned char result[CC_MD5_DIGEST_LENGTH];
CC_MD5( cStr, (int)strlen(cStr), result ); // This is the md5 call
return [NSString stringWithFormat:
@"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",
result[0], result[1], result[2], result[3],
result[4], result[5], result[6], result[7],
result[8], result[9], result[10], result[11],
result[12], result[13], result[14], result[15]
];
}
@end

@implementation NSData (MyAdditions)
- (NSString*)md5
{
unsigned char result[CC_MD5_DIGEST_LENGTH];
CC_MD5( self.bytes, (int)self.length, result ); // This is the md5 call
return [NSString stringWithFormat:
@"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",
result[0], result[1], result[2], result[3],
result[4], result[5], result[6], result[7],
result[8], result[9], result[10], result[11],
result[12], result[13], result[14], result[15]
];
}
@end

Ⅳ ios md5加密原理是什么意思

MD5加密算法原理MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L. Rivest开发出来,经MD2、MD3和MD4发展而来。它的作用是让大容量信息在用数字签名软件签署私人密匙前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数)。不管是MD2、MD4还是MD5,它们都需要获得一个随机长度的信息并产生一个128位的信息摘要。虽然这些算法的结构或多或少有些相似,但MD2的设计与MD4和MD5完全不同,那是因为MD2是为8位机器做过设计优化的,而MD4和MD5却是面向32位的电脑。这三个算法的描述和C语言源代码在Internet RFCs 1321中有详细的描述( http://www.ietf.org/rfc/rfc1321.txt),这是一份最权威的文档,由Ronald L. Rivest在1992年8月向IEFT提交。. .

Ⅵ md5加密java oc通用吗

首先,Java端的DES加密的实现方式,代码如下:

1 public class DES {
2 private static byte[] iv = { 1, 2, 3, 4, 5, 6, 7, 8 };
3
4 public static String encryptDES(String encryptString, String encryptKey)
5 throws Exception {
6 IvParameterSpec zeroIv = new IvParameterSpec(iv);
7 SecretKeySpec key = new SecretKeySpec(encryptKey.getBytes(), "DES");
8 Cipher cipher = Cipher.getInstance("DES/CBC/PKCS5Padding");
9 cipher.init(Cipher.ENCRYPT_MODE, key, zeroIv);
10 byte[] encryptedData = cipher.doFinal(encryptString.getBytes());
11 return Base64.encode(encryptedData);
12 }
13 }

上述代码用到了一个Base64的编码类,其代码的实现方式如下:

1 public class Base64 {
2 private static final char[] legalChars = "+/"
3 .toCharArray();
4
5 /**
6 * data[]进行编码
7 *
8 * @param data
9 * @return
10 */
11 public static String encode(byte[] data) {
12 int start = 0;
13 int len = data.length;
14 StringBuffer buf = new StringBuffer(data.length * 3 / 2);
15
16 int end = len - 3;
17 int i = start;
18 int n = 0;
19
20 while (i <= end) {
21 int d = ((((int) data[i]) & 0x0ff) << 16)
22 | ((((int) data[i + 1]) & 0x0ff) << 8)
23 | (((int) data[i + 2]) & 0x0ff);
24
25 buf.append(legalChars[(d >> 18) & 63]);
26 buf.append(legalChars[(d >> 12) & 63]);
27 buf.append(legalChars[(d >> 6) & 63]);
28 buf.append(legalChars[d & 63]);
29
30 i += 3;
31
32 if (n++ >= 14) {
33 n = 0;
34 buf.append(" ");
35 }
36 }
37
38 if (i == start + len - 2) {
39 int d = ((((int) data[i]) & 0x0ff) << 16)
40 | ((((int) data[i + 1]) & 255) << 8);
41
42 buf.append(legalChars[(d >> 18) & 63]);
43 buf.append(legalChars[(d >> 12) & 63]);
44 buf.append(legalChars[(d >> 6) & 63]);
45 buf.append("=");
46 } else if (i == start + len - 1) {
47 int d = (((int) data[i]) & 0x0ff) << 16;
48
49 buf.append(legalChars[(d >> 18) & 63]);
50 buf.append(legalChars[(d >> 12) & 63]);
51 buf.append("==");
52 }
53
54 return buf.toString();
55 }
56 }

以上便是Java端的DES加密方法的全部实现过程。

Ⅶ md5加密的方法!在线等!

你有ASP
MD5加密文件么?如果有,请打开该文件,看看它提供加密的函数名是什么,一般为:function
md5()....
找到之后,在需要MD5加密的页面中先引入该MD5类库件<!--#include
file="md5.asp"-->
然后对需要加密的字符进行加密:
如:md5(var)

Ⅷ 如何将iOS字符串使用MD5进行加密

刚刚使用了MD5对字符串进行MD5加密,总结如下:
<1>将<CommonCrypto/CommonDigest.h>头文件引入,其中包含了进行MD5加密的函数
<2>你可以写一个类,当然也可以写一个方法,觉得怎样便捷可以怎样写。
-(NSString *)encryptStringWithMD5:(NSString *)inputStr{
const char *newStr = [inputStr UTF8String];
unsigned char result[CC_MD5_DIGEST_LENGTH];
CC_MD5(str,(unsigned int)strlen(str),result);
NSMutableString *outStr = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH];
for(int i = 0;i<CC_MD5_DIGEST_LENGTH;i++){
[ret appendFormat:@"%02X",result[i]];//注意:这边如果是x则输出32位小写加密字符串,如果是X则输出32位大写字符串
}
return outStr;
}
<3>大功告成,使用这个函数对你的字符串进行MD5加密就可以了.

Ⅸ MD5的加密方法是什么,我不知该如何加密啊!!急!!1

什么意思?MD5加密的具体算法么?这个很复杂,MD5就是输入一个字符串通过加密输出一个字符串,并且不可逆,也就是说判断密钥是否正确只有通过再次计算才能得到,你要得到MD5加密码,就用网上提供的,难道想自己写一个么?

Ⅹ MD5是怎么加密的

1、要有md5加密函数
2、使用这个函数
比如b/s程序 md5一般都是一个文件
需要用到md5的函数的时候 include这个文件
还是 md5(password,16) 就是调用这个函数 password是 变量名16 加密长度

热点内容
汇编从编译到执行 发布:2025-05-11 09:09:04 浏览:256
安卓系统低版本如何升级 发布:2025-05-11 09:04:44 浏览:251
认证类型加密算法 发布:2025-05-11 08:58:35 浏览:561
android停靠 发布:2025-05-11 08:42:23 浏览:645
超时代加密 发布:2025-05-11 08:41:29 浏览:780
为什么还要输入支取密码 发布:2025-05-11 08:32:24 浏览:362
数据库课程设计案例 发布:2025-05-11 08:15:33 浏览:51
为什么安卓不能通过蓝牙传东西 发布:2025-05-11 08:15:27 浏览:717
tomcat下载linux 发布:2025-05-11 07:47:06 浏览:792
phpcookie设置时间 发布:2025-05-11 07:36:15 浏览:111