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

  • FattySpins's channel

    FattySpins's

    17 Mayıs 2009
  • Juan Carlos Candela Bordera

    Juan Carlos

    4 Mart 2009
  • PUSHER

    PUSHER

    11 HAZİRAN 2014