ios-iOS MD5加密 32位小写 OC代码

问题描述

iOS MD5加密 32位小写 OC代码

OC代码的,MD5加密技术对字符串进行加密,返回32位小写的一串字符串,请问大神代码是怎么样的

解决方案

#import CommonCrypto/CommonDigest.h
+ (NSString *)md5:(NSString *)str
{
const char *cStr = [str UTF8String];
unsigned char result[16];
CC_MD5(cStr, 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]
];
}

解决方案二:

@implementation NSString (MD5)

  - (NSString *)MD5

{
return [NSString MD5ByAStr:self];
}

      + (NSString *)MD5ByAStr:(NSString *)aSourceStr {
const char* cStr = [aSourceStr UTF8String];
unsigned char result[CC_MD5_DIGEST_LENGTH];
CC_MD5(cStr, strlen(cStr), result);

NSMutableString *ret = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH];
for (NSInteger i=0; i<CC_MD5_DIGEST_LENGTH; i++) {
    [ret appendFormat:@"%02x", result[i]];
}

return ret;

}

@end

时间: 2024-08-31 23:56:11

ios-iOS MD5加密 32位小写 OC代码的相关文章

php md5下16位和32位的实现代码_php技巧

复制代码 代码如下: <?php   echo substr(md5("admin"),8,16);  // 16位MD5加密   echo "<hr>";   echo md5("admin");    // 32位MD5加密   ?>      16位的MD5加密用substr函数截取了字符得到实现....  不想深入研究了 :)  要把脑力放到其他关键的地方~~  今天做了个php链接mssql数据库,数据库中的表中

ASP.Net及Asp中的MD5加密-16位32位

asp.net|加密 asp.net引用内容:public string md5(string str,int code){ if(code==16) //16位MD5加密(取32位加密的9~25字符) { return System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str,"MD5").ToLower().Substring(8,16) ; }  else//32位加密 { ret

iOS 11 将抛弃 32 位应用,近 20 万款 App 成牺牲者

此前,苹果已经确认将会在今年的 6 月 5 日举办今年的 WWDC 开发者大会,新一代的苹果手机操作系统 iOS 11 也将会在会上发布.现在,有消息称,iOS 11 将会彻底放弃 32 位应用程序,如果消息属实,将会有近 20 万款 APP 面临无法使用的风险. 在现在的 iOS 10.3 Beta 版当中,苹果已经开始加入提醒弹窗,在用户使用 32 位应用时会提示"打开 32 位应用 iOS 版本不支持".从调研机构 Sensor Tower 公布的数据开看,目前,iOS 系统中仍

VB实现的16位和32位md5加密代码分享_vb

在各种登陆系统中,用户密码的md5加密是不可少的. 这么说吧,即使你通过各种手段看到了用户的登陆密码,但那一串古古怪怪的东西你也不可能知道它是什么,这就是保护. md5加密运算是不可逆的,就是说你不能通过那一串古古怪怪的东西算出它原始的样子. 下面是完整的md5代码,不要去理解算法了,用到时拿去直接调用. Private Const BITS_TO_A_BYTE = 8 Private Const BYTES_TO_A_WORD = 4 Private Const BITS_TO_A_WORD

关于ASP,ASP.NET,VB.NET里的MD5加密函数

asp.net|函数|加密 在ASP中,我们使用过如动网论坛等用的ASP中MD5函数加密出的字符串则如:1165d25d8cd021d5 而在Asp.Net中下面的方法: 代码 System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(password.Text,"MD5") 进行MD5加密出来的结果却是:12C403B91165D25D8CD021D5F9B5BB7F 究其原因,是因为,在AS

iOS中使用MD5加密字符串_IOS

1,新建NSString的分类,记得添加加密所需的头文件#import <CommonCrypto/CommonDigest.h> , NSString+MD5.h: #import <Foundation/Foundation.h> #import <CommonCrypto/CommonDigest.h> @interface NSString (MD5) + (NSString *)md5To32bit:(NSString *)str; @end 2,编写加密方法

java编程下字符串的16位,32位md5加密实现方法_java

如下所示: package cn.sunzn.md5; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class Str2MD5 { public static void main(String[] args) { MD5("sunzn"); } private static String MD5(String sourceStr) { String r

iOS中MD5加密算法的介绍和使用_IOS

前言 软件开发过程中,对数据进行加密是保证数据安全的重要手段,常见的加密有Base64加密和MD5加密.Base64加密是可逆的,MD5加密目前来说一般是不可逆的. MD5生成的是固定的128bit,即128个0和1的二进制位,而在实际应用开发中,通常是以16进制输出的,所以正好就是32位的16进制,说白了也就是32个16进制的数字. MD5主要特点是 不可逆,相同数据的MD5值肯定一样,不同数据的MD5值不一样(也不是绝对的,但基本是不能一样的). MD5算法还具有以下性质:       1.

java,android,MD5加密算法的实现代码(16位,32位)_java

如下所示: import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class Md5 { public static String getMD5(String val) throws NoSuchAlgorithmException{ MessageDigest md5 = MessageDigest.getInstance("MD5"); md5.update