25 lines
596 B
Objective-C
Executable File
25 lines
596 B
Objective-C
Executable File
|
|
#import "NSString+Sha1.h"
|
|
|
|
@implementation NSString (Sha1)
|
|
|
|
- (NSString *)sha1
|
|
{
|
|
// see http://www.makebetterthings.com/iphone/how-to-get-md5-and-sha1-in-objective-c-ios-sdk/
|
|
NSData *data = [self dataUsingEncoding:NSUTF8StringEncoding];
|
|
uint8_t digest[CC_SHA1_DIGEST_LENGTH];
|
|
|
|
CC_SHA1(data.bytes, (CC_LONG)data.length, digest);
|
|
|
|
NSMutableString *output = [NSMutableString stringWithCapacity:CC_SHA1_DIGEST_LENGTH * 2];
|
|
|
|
for (int i = 0; i < CC_SHA1_DIGEST_LENGTH; i++) {
|
|
[output appendFormat:@"%02x", digest[i]];
|
|
}
|
|
|
|
return output;
|
|
}
|
|
|
|
|
|
@end
|