SORU
6 EKİM 2009, Salı


Amaç MD5 algoritması C

Nasıl objektif C MD5 hesaplamak için ?

CEVAP
3 Ocak 2010, Pazar


md5 iPhone ve NSString NSData aşağıdaki gibi ıe için bir ilave olarak eklenebilir.

MyAdditions.h

@interface NSString (MyAdditions)
- (NSString *)md5;
@end

@interface NSData (MyAdditions)
- (NSString*)md5;
@end

MyAdditions.m

#import "MyAdditions.h"
#import <CommonCrypto/CommonDigest.h> // Need to import for CC_MD5 access

@implementation NSString (MyAdditions)
- (NSString *)md5
{
    const char *cStr = [self UTF8String];
    unsigned char result[CC_MD5_DIGEST_LENGTH];
    CC_MD5( cStr, (int)strlen(cStr), result ); // This is the md5 call
    return [NSString stringWithFormat:
        @"xxxxxxxxxxxxxxxx",
        result[0], result[1], result[2], result[3], 
        result[4], result[5], result[6], result[7],
        result[8], result[9], result[10], result[11],
        result[12], result[13], result[14], result[15]
        ];  
}
@end

@implementation NSData (MyAdditions)
- (NSString*)md5
{
    unsigned char result[CC_MD5_DIGEST_LENGTH];
    CC_MD5( self.bytes, (int)self.length, result ); // This is the md5 call
    return [NSString stringWithFormat:
        @"xxxxxxxxxxxxxxxx",
        result[0], result[1], result[2], result[3], 
        result[4], result[5], result[6], result[7],
        result[8], result[9], result[10], result[11],
        result[12], result[13], result[14], result[15]
        ];  
}
@end

EDİT

Kendim ihtiyacım vardı ve bu küçük Pasajı kurtarmak için iyi bir yer olduğunu düşündüm, çünkü eklenen bilimsel deneyler bazen büyük md5...

Bu yöntemler HAYATİ MD5 test vektörleri kullanılarak doğrulanır http://www.nsrl.nist.gov/testdata/

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • khloe brooks

    khloe brooks

    25 Temmuz 2011
  • Mindy

    Mindy

    20 NİSAN 2006
  • Trevor Eckhart

    Trevor Eckha

    19 Aralık 2009