iOS md5 32位加密(区分大小写)

#import "NSString+change.h"
#import <CommonCrypto/CommonDigest.h>
@implementation NSString (change)
- (NSString*)md532BitLower
{
    const char *cStr = [self UTF8String];
    unsigned char result[16];
    
    NSNumber *num = [NSNumber numberWithUnsignedLong:strlen(cStr)];
    CC_MD5( cStr,[num intValue], result );
    
    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]
             ] lowercaseString];
}
- (NSString*)md532BitUpper
{
    const char *cStr = [self UTF8String];
    unsigned char result[16];
    
    NSNumber *num = [NSNumber numberWithUnsignedLong:strlen(cStr)];
    CC_MD5( cStr,[num intValue], result );
    
    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]
             ] uppercaseString];
}
@end
时间: 2024-10-13 17:33:05

iOS md5 32位加密(区分大小写)的相关文章

iOS关于md5 32位加密

导入头文件: #import <CommonCrypto/CommonDigest.h> //32位MD5加密方式 //md5 32位 加密 (小写)- (NSString *)md5:(NSString *)str {                const char *cStr = [str UTF8String];                unsigned char result[32];                CC_MD5( cStr, strlen(cStr), re

原创:MD5 32位加密软件

网站后台数据库切勿使用明文保存密码,否则一旦黑客拿下你的Webshell,后果不堪设想. 网站后台密码加密大多数采用的就是MD5算法加密.今天给大家送一个本人用c#简单编写的MD5 32位加密程序,虽然没有什么技术含量,但保证没有后门. 程序截图: 开放源码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing;

md5 32位 加密原理 Java实现md5加密

md5 32位 加密原理 简单概括起来,MD5 算法的过程分为四步:处理原文,设置初始值,循环加工,拼接结果. 第一步:处理原文 首先,我们计算出原文长度(bit)对 512 求余的结果,如果不等于 448,就需要填充原文使得原文对 512 求余的结果等于 448.填充的方法是第一位填充 1,其余位填充 0.填充完后,信息的长度就是 512*N+448. 之后,用剩余的位置(512-448=64 位)记录原文的真正长度,把长度的二进制值补在最后.这样处理后的信息长度就是 512*(N+1). 第

C# MD5 32位加密 UTF-8编码

项目开发过程中需要用到MD5加密,最开始的使用使用加密方法: public static string GetMD5(string str) { byte[] b = System.Text.Encoding.Default.GetBytes(str); b = new System.Security.Cryptography.MD5CryptoServiceProvider().ComputeHash(b); string ret = ""; for (int i = 0; i &l

C#MD5 32位加密

using System.Security.Cryptography; public static string En32(string str) { string pwd = ""; MD5 md5 = MD5.Create();//实例化一个md5对像 // 加密后是一个字节类型的数组,这里要注意编码UTF8/Unicode等的选择 byte[] s = md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(str)); // 通过使

C# DM5 32位加密

using System.Security.Cryptography;using System.Text; public static string StringToMD5Hash(string inputString)        {            MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();            byte[] encryptedBytes = md5.ComputeHash(Encod

C# 字符串md5加密成16位和32位

#region md5加密 /// <summary> /// MD5 16位加密 加密后密码为小写 /// </summary> /// <param name="ConvertString"></param> /// <returns></returns> private string GetMd5Str16(string ConvertString) { try { using (MD5CryptoServi

16位的MD5加密和32位MD5加密的区别

16位的MD5加密和32位MD5加密的区别 MD5加密后所得到的通常是32位的编码,而在不少地方会用到16位的编码它们有什么区别呢?16位加密就是从32位MD5散列中把中间16位提取出来!其实破解16位MD5散列要比破解32位MD5散列还慢因为他多了一个步骤,就是使用32位加密后再把中间16位提取出来, 然后再进行对比而破解32位的则不需要,加密后直接对比就可以了 admin 的加密代码:16位加密:7a57a5a743894a0e32位加密:21232f297a57a5a743894a0e4a

32位小写MD5加密js和sha256哈希js

两段加密JS  方便他人方便自己 32位小写MD5 js var hexcase = 0; var b64pad  = ""; var chrsz   = 8; function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));} function b64_md5(s){ return binl2b64(core_md5(str2binl(s), s.length * chrsz));} func