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

  • AverageBroTV

    AverageBroTV

    20 Mart 2013
  • brokenbellsVEVO

    brokenbellsV

    11 EYLÜL 2009
  • Valdorsha

    Valdorsha

    8 Mayıs 2006