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

  • MysteryGuitarMan

    MysteryGuita

    16 HAZİRAN 2006
  • SRI International

    SRI Internat

    30 NİSAN 2008
  • William Hyde

    William Hyde

    23 HAZİRAN 2008