NSString+MD5.h
<code class="hljs java has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;"><span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//</span> <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">// NSString+MD5.h</span> <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">// Spread</span> <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//</span> <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">// Created by 邱学伟 on 16/4/26.</span> <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">// Copyright © 2016年 邱学伟. All rights reserved.</span> <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">//</span> #<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">import</span> <Foundation/Foundation.h> <span class="hljs-annotation" style="color: rgb(155, 133, 157); box-sizing: border-box;">@interface</span> NSString (MD5) <span class="hljs-javadoc" style="color: rgb(136, 0, 0); box-sizing: border-box;">/** 将字符串经MD5加密 */</span> +(NSString *)MD5:(NSString *)str; <span class="hljs-annotation" style="color: rgb(155, 133, 157); box-sizing: border-box;">@end</span> </code><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li></ul><ul class="pre-numbering" style="box-sizing: border-box; position: absolute; width: 50px; top: 0px; left: 0px; margin: 0px; padding: 6px 0px 40px; border-right-width: 1px; border-right-style: solid; border-right-color: rgb(221, 221, 221); list-style: none; text-align: right; background-color: rgb(238, 238, 238);"><li style="box-sizing: border-box; padding: 0px 5px;">1</li><li style="box-sizing: border-box; padding: 0px 5px;">2</li><li style="box-sizing: border-box; padding: 0px 5px;">3</li><li style="box-sizing: border-box; padding: 0px 5px;">4</li><li style="box-sizing: border-box; padding: 0px 5px;">5</li><li style="box-sizing: border-box; padding: 0px 5px;">6</li><li style="box-sizing: border-box; padding: 0px 5px;">7</li><li style="box-sizing: border-box; padding: 0px 5px;">8</li><li style="box-sizing: border-box; padding: 0px 5px;">9</li><li style="box-sizing: border-box; padding: 0px 5px;">10</li><li style="box-sizing: border-box; padding: 0px 5px;">11</li><li style="box-sizing: border-box; padding: 0px 5px;">12</li><li style="box-sizing: border-box; padding: 0px 5px;">13</li><li style="box-sizing: border-box; padding: 0px 5px;">14</li><li style="box-sizing: border-box; padding: 0px 5px;">15</li></ul>
NSString+MD5.m
<code class="hljs perl has-numbering" style="display: block; padding: 0px; color: inherit; box-sizing: border-box; font-family: 'Source Code Pro', monospace;font-size:undefined; white-space: pre; border-radius: 0px; word-wrap: normal; background: transparent;">// <span class="hljs-regexp" style="color: rgb(0, 136, 0); box-sizing: border-box;">//</span> NSString+MD5.<span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">m</span> // Spread // <span class="hljs-regexp" style="color: rgb(0, 136, 0); box-sizing: border-box;">//</span> Created by 邱学伟 on <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">16</span>/<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4</span>/<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">26</span>. // Copyright © <span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2016</span>年 邱学伟. All rights reserved. // <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#import "NSString+MD5.h"</span> <span class="hljs-comment" style="color: rgb(136, 0, 0); box-sizing: border-box;">#import <CommonCrypto/CommonDigest.h></span> <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">@implementation</span> NSString (MD5) /<span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">**</span> 将字符串经MD5加密 <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">*/</span> +(NSString <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">*)</span>MD5:(NSString <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">*)</span>str{ const char <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">*cStr</span> = [str UTF8String]; unsigned char result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">16</span>]; CC_MD5(cStr, strlen(cStr), result); <span class="hljs-regexp" style="color: rgb(0, 136, 0); box-sizing: border-box;">//</span> This is the md5 call NSLog(<span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">@"</span>MD5->>>>>><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%@</span><span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">",[NSString stringWithFormat: <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">@"</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span>"</span>, result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">0</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">1</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">2</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">3</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">4</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">5</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">6</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">7</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">8</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">9</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">10</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">11</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">12</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">13</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">14</span>], result[<span class="hljs-number" style="color: rgb(0, 102, 102); box-sizing: border-box;">15</span>] ]); <span class="hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">return</span> [NSString stringWithFormat: <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">@"</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">%02x</span><span class="hljs-string" style="color: rgb(0, 136, 0); box-sizing: border-box;">", 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] ]; } <span class="hljs-variable" style="color: rgb(102, 0, 102); box-sizing: border-box;">@end</span></span></code>