IOS中把字符串加密/IOS中怎么樣MD5加密/IOS中NSString分類的實現
看完過后,你會學到:
1學習IOS開發中的分類實現,
2以及類方法的書寫,
3以及字符串的MD5加密/解密.
---------------------------wolfhous------------------
[1]新建工程,新建分類
[2]分類的命名方式以及類的選擇
[3]書寫NSString分類的類方法,以及實現類方法,以及MD5如何加密
[4]測試加密結果
[5]解密:直接百度MD5解密,隨便點歌網站進去,輸入解密KEY,在我這個Demo中,
wolfhous 正常加密 44bf025d27eea66336e5c1133c3827f7
wolfhous 牛逼加密 44fb461963aae22772a18557787c63b3
-------------------------wolfhous-----------------------
可見,牛逼加密普通網站無法解密,建議開發中,用戶在注冊時輸入密碼時,使用該加密.當然,牛逼加密方式N多種,我這只列出一種簡單的方式,下面放源碼
#import "NSString+md5String.h"
// 引入必要頭文件
#import <CommonCrypto/CommonDigest.h>
@implementation NSString (md5String)
/** md5 一般加密 */
+ ( NSString *)md5String:( NSString *)str
{
const char *myPasswd = [str UTF8String ];
unsigned char mdc[ 16 ];
CC_MD5 (myPasswd, ( CC_LONG ) strlen (myPasswd), mdc);
NSMutableString *md5String = [ NSMutableString string ];
for ( int i = 0 ; i< 16 ; i++) {
[md5String appendFormat : @"%02x" ,mdc[i]];
}
return md5String;
}
/** md5 NB( 牛逼的意思 ) 加密 */
+ ( NSString *)md5StringNB:( NSString *)str
{
const char *myPasswd = [str UTF8String ];
unsigned char mdc[ 16 ];
CC_MD5 (myPasswd, ( CC_LONG ) strlen (myPasswd), mdc);
NSMutableString *md5String = [ NSMutableString string ];
[md5String appendFormat : @"%02x" ,mdc[ 0 ]];
for ( int i = 1 ; i< 16 ; i++) {
[md5String appendFormat : @"%02x" ,mdc[i]^mdc[ 0 ]];
}
return md5String;
}
@end