Crypto.m 589 B

12345678910111213141516171819202122232425262728
  1. //
  2. // Crypto.m
  3. // RileyLink
  4. //
  5. // Created by Nate Racklyeft on 9/13/16.
  6. // Copyright © 2016 Pete Schwamb. All rights reserved.
  7. //
  8. #import "Crypto.h"
  9. #import <CommonCrypto/CommonDigest.h>
  10. #import "NSData+Conversion.h"
  11. @implementation NSString (Crypto)
  12. - (NSString *)sha1
  13. {
  14. NSData *data = [self dataUsingEncoding:NSUTF8StringEncoding];
  15. uint8_t outbytes[CC_SHA1_DIGEST_LENGTH];
  16. CC_SHA1(data.bytes, (CC_LONG)data.length, outbytes);
  17. NSData *outdata = [[NSData alloc] initWithBytes:outbytes length:CC_SHA1_DIGEST_LENGTH];
  18. return outdata.hexadecimalString;
  19. }
  20. @end