34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
{
void *pool = objc_autoreleasePoolPush();
id <OFCryptoHash> hash = [class cryptoHash];
size_t digestSize = [class digestSize];
const unsigned char *digest;
char cString[digestSize * 2];
[hash updateWithBuffer: [self UTF8String]
length: [self UTF8StringLength]];
digest = [hash digest];
for (size_t i = 0; i < digestSize; i++) {
uint8_t high, low;
high = digest[i] >> 4;
low = digest[i] & 0x0F;
|
|
|
|
|
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
{
void *pool = objc_autoreleasePoolPush();
id <OFCryptoHash> hash = [class cryptoHash];
size_t digestSize = [class digestSize];
const unsigned char *digest;
char cString[digestSize * 2];
[hash updateWithBuffer: self.UTF8String
length: self.UTF8StringLength];
digest = hash.digest;
for (size_t i = 0; i < digestSize; i++) {
uint8_t high, low;
high = digest[i] >> 4;
low = digest[i] & 0x0F;
|