1MD5
Create an MD5 class
#import
@interface CJMD5 : NSObject+(NSString *)md5HexDigest:(NSString *)input;@end
# Import CJMD5.h # import
@ Implementation CJMD5 + (NSString *) md5HexDigest :( NSString *) input {const char * str = [input UTF8String]; unsigned char result [CC_MD5_DIGEST_LENGTH]; CC_MD5 (str, strlen (str), result); NSMutableString * ret = [NSMutableString stringWithCapacity: CC_MD5_DIGEST_LENGTH]; for (int I = 0; I
MD5 is irreversible only when encryption is not used for decryption:
NSString * userName = @ cerastes; NSString * password = @ hello Word; // MD5 encrypted NSString * md5 = [CJMD5 md5HexDigest: password]; NSLog (@ % @, md5 );
2AES Encryption
AES-encrypted open-source git
Https://github.com/Gurpartap/AESCrypt-ObjC
Usage
// AES encrypted NSString * encryptedData = [AESCrypt encrypt: userName password: password]; // encrypted NSString * message = [AESCrypt decrypt: encryptedData password: password]; // decrypt NSLog (@ encryption result =%@, encryptedData); NSLog (@ decryption result =%@, message );
3 BASE64 Encryption
Https://code.google.com/p/google-toolbox-for-mac/source/browse/trunk/Foundation? R = 87
Add the following method:
. H
+ (NSString*)encodeBase64String:(NSString *)input;+ (NSString*)decodeBase64String:(NSString *)input;+ (NSString*)encodeBase64Data:(NSData *)data;+ (NSString*)decodeBase64Data:(NSData *)data;
. M
+ (NSString*)encodeBase64String:(NSString * )input { NSData *data = [input dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES]; data = [GTMBase64 encodeData:data]; NSString *base64String = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; return base64String;}+ (NSString*)decodeBase64String:(NSString * )input { NSData *data = [input dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES]; data = [GTMBase64 decodeData:data]; NSString *base64String = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; return base64String;}+ (NSString*)encodeBase64Data:(NSData *)data { data = [GTMBase64 encodeData:data]; NSString *base64String = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; return base64String;}+ (NSString*)decodeBase64Data:(NSData *)data { data = [GTMBase64 decodeData:data]; NSString *base64String = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; return base64String;}
Usage
// BASE64 encrypted NSString * baseEncodeString = [GTMBase64 encodeBase64String: password]; NSString * baseDecodeString = [GTMBase64 decodeBase64String: baseEncodeString]; NSLog (@ baseEncodeString = % @, baseEncodeString ); NSLog (@ baseDecodeString =%@, baseDecodeString );