数据类型转换、密码安全加密MD5方法

原创 2015年11月20日 18:11:55

数据类型转换

int转换databyte在转换int

int m = 16;

        NSData *IntToData1 = [NSData dataWithBytes: &m length: sizeof(m)];

        

        

        Byte *byteint = (Byte *)[IntToData1 bytes];

        NSLog(@"byteint:%s",byteint);

        NSMutableArray *tableint = [NSMutableArray array];

        for (int index = 0; index <= [IntToData1 length]; index ++) {

            [tableint addObject:@(byteint[index])];

        }

        NSLog(@"tableint:%@",tableint);

//        Byte *byteintt = [&(16),0,0,0];

        

        [self heightBytesToInt:byteint];



-(int )heightBytesToInt:(Byte[]) byte

{

    int height = 0;

    for (int i = 0; i < [testData length]; i++)

    {

        if (byte[i] >= 0)

        {

            height = height + byte[i];

        } else

        {

            height = height +256 + byte[i];

        }

        height = height * 256;

        if (byte[3] >= 0)

        {

            height = height + byte[3];

        } else

        {

            height = height + 256 + byte[3];

        }

        

    }

    return height;

}

//将低位字节转换为int

//在网络上传输的是以低位字节进行的; htonl,将int转换为网络字节序的intntohl,将网络字节序的int转换回来,-(int) lBytesToInt:(Byte[]) b,将以低位传输的网络字节序bytes数组转换为htonl之后对应的值

-(int) lBytesToInt:(Byte[]) byte

{

    int height = 0;

    for (int i = 0; i < [testData length]; i++)

    {

        if (byte[[testData length]-i] >= 0)

        {

            height = height + byte[[testData length]-i];

        } else

        {

            height = height + 256 + byte[[testData length]-i];

        }

        height = height * 256;

    }

    if (byte[0] >= 0)

    {

        height = height + byte[0];

    } else {

        height = height + 256 + byte[0];

    }

    return height;

}


数据类型转换

//        ByteData

        NSData *dataqdd = [[NSData alloc]initWithBytes:testByte length:4];

        

        NSLog(@"dataqdd:%@",dataqdd);

        NSLog(@"subArray%@",subArray);

//        ByteTOData

//        NSData *data = [[NSData alloc]initWithBytes:(__bridge const void * _Nullable)(subArray) length:subArray.count];

        NSData *data = [[NSData alloc]initWithBytes:testByte length:subArray.count];

        NSLog(@"ByteTOData:%@",data);


//        DataToString

        NSString *string = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];

        NSLog(@"DataToString:%@",string);


Byte定义

    Byte byteintt = {16,0,0,0};




Data拼接在一起的实例:

NSString *da= @"大家好";

        NSData *data1 = [da dataUsingEncoding:CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000)];

        

        NSString *daya = @"请见谅";

        NSData *data2 = [daya dataUsingEncoding:CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000)];

        NSString *daya1 = @"来晚了";

        NSData *data3 = [daya1 dataUsingEncoding:CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000)];

        

        NSMutableData *dataZong = [[NSMutableData alloc]init];

        [dataZong appendData:data1];

        [dataZong appendData:data2];

        [dataZong appendData:data3];

        

        NSRange rang = NSMakeRange(0, [dataZong length]);

        

        NSData *das = [dataZong subdataWithRange:rang];

        

        NSString *stringqq = [dataweb DataWithForStringData:das];

        

        NSLog(@"%@",stringqq);



转换成GB2312编码格式

NSStringEncoding encoding = CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);



密码安全加密MD5方法

+(NSString *) md5: (NSString *) inPutText 

{

    const char *cStr = [inPutText UTF8String];

    unsigned char result[CC_MD5_DIGEST_LENGTH];

    CC_MD5(cStr, strlen(cStr), 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];

}


在使用访问服务器时,若传递的值在请求服务器之前就执行的话,在请求数据结束是使用block,代理,通知等提醒可以使用该数据了(进行传值),公司项目中的判断登陆是否成功和提醒窗口信息

版权声明:本文为博主原创文章,未经博主允许不得转载。

使用commons-beanutils封装请求中的数据与数据类型的转换,web中使用md5和BASE64Encoder加密

1. 日期类型的使用转化package com.heima; import java.text.ParseException; import java.text.SimpleDateFormat; i...

使用phpass对密码进行加密安全度比md5高

前几天在迷渡博客,看到了国外一些牛人在对密码进行加密的时候,都是使用比对哈希值,来验证密码的,当时感觉有点做作,觉得一个密码有必要那么复杂吗? 先说说我平时在公司是怎么样加密的吧。 ...

iOS开发 - 网络数据安全加密(MD5)

提交用户的隐私数据 一定要使用POST请求提交用户的隐私数据 GET请求的所有参数都直接暴露在URL中 请求的URL一般会记录在服务器的访问日志中 服务器的访问日志是黑客攻击的重点对象之一...

【iOS】MD5加密与网络数据安全

在做网络应用程序的时候 , 时时刻刻要保证用户数据的安全 , 因此要加密。 MD5 算法在国内用的很多 .  MD5算法的特点 : * 同样的数据 加密结果是一样 的 . (32 个字...

iOS开发 - 网络数据安全加密(MD5)

提交用户的隐私数据一定要使用POST请求提交用户的隐私数据 GET请求的所有参数都直接暴露在URL中 请求的URL一般会记录在服务器的访问日志中 服务器的访问日志是黑客攻击的重点对象之一用户的隐...

数据安全,MD5、SHA1加密字符串

本地数据存储的原则: 与安全相关的用户信息(明文->密文) 70年代有了巨大的变化.RSA 公钥(公开的), 私钥(各自不同),加密算法是公开的(穷举)原则: 任何应用程序都不能在本地直接存储与...

【iOS】MD5加密与网络数据安全

在做网络应用程序的时候, 时时刻刻要保证用户数据的安全, 因此要加密。 *MD5算法在国内用的很多. *同样的数据加密结果是一样的.(32个字符) *不可逆的.(不能逆向解密) *可用于文件校验/指纹...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:数据类型转换、密码安全加密MD5方法
举报原因:
原因补充:

(最多只允许输入30个字)