diff --git a/CocoaSecurity.xcodeproj/project.xcworkspace/xcuserdata/Kelp.xcuserdatad/UserInterfaceState.xcuserstate b/CocoaSecurity.xcodeproj/project.xcworkspace/xcuserdata/Kelp.xcuserdatad/UserInterfaceState.xcuserstate index ab4b992..f32879d 100644 Binary files a/CocoaSecurity.xcodeproj/project.xcworkspace/xcuserdata/Kelp.xcuserdatad/UserInterfaceState.xcuserstate and b/CocoaSecurity.xcodeproj/project.xcworkspace/xcuserdata/Kelp.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/CocoaSecurity/CocoaSecurity.h b/CocoaSecurity/CocoaSecurity.h index b7ba4d1..3df0847 100644 --- a/CocoaSecurity/CocoaSecurity.h +++ b/CocoaSecurity/CocoaSecurity.h @@ -42,6 +42,9 @@ #pragma mark - CocoaSecurity @interface CocoaSecurity : NSObject +#pragma mark - Init ++ (id)sharedInstance; + #pragma mark - AES Encrypt - (CocoaSecurityResult *)aesEncrypt:(NSString *)data key:(NSString *)key; - (CocoaSecurityResult *)aesEncrypt:(NSString *)data hexKey:(NSString *)key hexIv:(NSString *)iv; diff --git a/CocoaSecurity/CocoaSecurity.m b/CocoaSecurity/CocoaSecurity.m index ebfc0a1..5fd6f46 100644 --- a/CocoaSecurity/CocoaSecurity.m +++ b/CocoaSecurity/CocoaSecurity.m @@ -11,6 +11,17 @@ #pragma mark - CocoaSecurity @implementation CocoaSecurity +static CocoaSecurity *_instance = nil; + +#pragma mark - Init ++ (id)sharedInstance +{ + if (_instance == nil) { + _instance = [self new]; + } + return _instance; +} + #pragma mark - AES Encrypt // default AES Encrypt, key -> SHA384(key).sub(0, 32), iv -> SHA384(key).sub(32, 16) - (CocoaSecurityResult *)aesEncrypt:(NSString *)data key:(NSString *)key diff --git a/CocoaSecurityTests/CocoaSecurityTests.h b/CocoaSecurityTests/CocoaSecurityTests.h index 00fd3dc..e14b071 100644 --- a/CocoaSecurityTests/CocoaSecurityTests.h +++ b/CocoaSecurityTests/CocoaSecurityTests.h @@ -3,7 +3,7 @@ // CocoaSecurityTests // // Created by Kelp on 12/5/13. -// Copyright (c) 2012年 __MyCompanyName__. All rights reserved. +// Copyright (c) 2012 Phate. All rights reserved. // #import diff --git a/CocoaSecurityTests/CocoaSecurityTests.m b/CocoaSecurityTests/CocoaSecurityTests.m index 1150da0..afdcb42 100644 --- a/CocoaSecurityTests/CocoaSecurityTests.m +++ b/CocoaSecurityTests/CocoaSecurityTests.m @@ -3,7 +3,7 @@ // CocoaSecurityTests // // Created by Kelp on 12/5/13. -// Copyright (c) 2012年 __MyCompanyName__. All rights reserved. +// Copyright (c) 2012 Phate. All rights reserved. // #import "CocoaSecurityTests.h" @@ -39,7 +39,7 @@ - (void)testAES { - CocoaSecurity *cs = [[CocoaSecurity alloc] init]; + CocoaSecurity *cs = [CocoaSecurity sharedInstance]; CocoaSecurityDecoder *decoder = [[CocoaSecurityDecoder alloc] init]; // AES128 @@ -78,7 +78,7 @@ - (void)testMD5 { - CocoaSecurity *cs = [[CocoaSecurity alloc] init]; + CocoaSecurity *cs = [CocoaSecurity sharedInstance]; CocoaSecurityResult *md5Result = [cs md5:@"kelp"]; CocoaSecurityResult *hmacMd5Result = [cs hmacMd5:@"kelp" hmacKey:@"key"]; @@ -93,7 +93,7 @@ - (void)testSHA { - CocoaSecurity *cs = [[CocoaSecurity alloc] init]; + CocoaSecurity *cs = [CocoaSecurity sharedInstance]; CocoaSecurityResult *sha1Result = [cs sha1:@"kelp"]; CocoaSecurityResult *sha224Result = [cs sha224:@"kelp"]; CocoaSecurityResult *sha256Result = [cs sha256:@"kelp"];