MD5

作者: solozyx | 来源:发表于2016-08-19 17:56 被阅读13次

MD5使用接口
NSString+Hash.h

//
//  NSString+Hash.h
//
//  Created by Tom Corwine on 5/30/12..
//

#import <Foundation/Foundation.h>

@interface NSString (Hash)

@property (readonly) NSString *md5String;
@property (readonly) NSString *sha1String;
@property (readonly) NSString *sha256String;
@property (readonly) NSString *sha512String;

- (NSString *)hmacSHA1StringWithKey:(NSString *)key;
- (NSString *)hmacSHA256StringWithKey:(NSString *)key;
- (NSString *)hmacSHA512StringWithKey:(NSString *)key;

@end

MD5使用
ViewController.m

#import "ViewController.h"

#import "NSString+Hash.h"

#define Salt @"fsdhjkfhjksdhjkfjhkd546783765"

@implementation ViewController

- (void)viewDidLoad{
    [super viewDidLoad];
    
    [self digest4:@"123"];
    [self digest4:@"abc"];
    [self digest4:@"456"];
}

/**
 *  直接用MD5加密
 */
- (NSString *)digest:(NSString *)str{
    NSString *anwen = [str md5String];
    NSLog(@"%@ - %@", str, anwen);
    return anwen;
}

/**
 *  加盐
 */
- (NSString *)digest2:(NSString *)str{
    str = [str stringByAppendingString:Salt];
    NSString *anwen = [str md5String];
    NSLog(@"%@ - %@", str, anwen);
    return anwen;
}

/**
 *  多次MD5
 */
- (NSString *)digest3:(NSString *)str{
    NSString *anwen = [str md5String];
    anwen = [anwen md5String];
    NSLog(@"%@ - %@", str, anwen);
    return anwen;
}

/**
 *  先加密, 后乱序
 */
- (NSString *)digest4:(NSString *)str{
    NSString *anwen = [str md5String];
    NSString *header = [anwen substringToIndex:2];
    NSString *footer = [anwen substringFromIndex:2];
    anwen = [footer stringByAppendingString:header];
    NSLog(@"%@ - %@", str, anwen);
    return anwen;
}

@end

相关文章

  • MD5(MD5 消息摘要算法)

    MD5(MD5 消息摘要算法) MD5 简介 MD5 消息摘要算法(MD5 Message-Digest Algo...

  • MD5介绍

    md5介绍 1. md5简介 md5的全称是md5信息摘要算法(英文:MD5 Message-Digest Alg...

  • iOS中使用的MD5与Base64 (Objective-C)

    一. MD5 MD5数字校验NSString对象 MD5数字校验NSData对象 MD5数字加盐校验NSStrin...

  • 第一篇、MD5算法和SHA-1算法

    目录一、MD5算法 1、MD5算法是什么? 2、MD5算法的优点 3、MD5算法的不足 4、MD5加密的应用场景 ...

  • node功能模块封装

    crypto加密 利用nodejs内置crypto模块,来封装md5功能例:写MD5函数 科普:MD5(MD5 M...

  • 去重效率对比:HashTree与BloomFilter

    一、MD5码原理 1、MD5码简介 MD5讯息摘要演算法(英语:MD5 Message-Digest Algori...

  • MD5加密

    MD5 base64 + MD5

  • MAC HASH

    openssl dgst -md5 XXX.xxx openssl md5 XXX.xxx md5 XXX.xxx...

  • 算法

    MD5 MD5:首先,md5不是加密。md5是摘要算法,主要是用来做认证,利用自身优势(不可逆、低碰撞率)解决公开...

  • 笔记-MD5加密

    MD5:全称Message Digest Algorithm MD5(消息摘要算法5)   每个文件的MD5值都是...

网友评论

      本文标题:MD5

      本文链接:https://www.haomeiwen.com/subject/wyolsttx.html