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

  • iMasterful

    iMasterful

    11 EYLÜL 2009
  • pleated-jeans

    pleated-jean

    6 HAZİRAN 2013
  • RyanXLT

    RyanXLT

    22 Ocak 2011