2012-08-30 4 views
5

ich einen Java-Code wie dieses:Iphone: Wie toValidate Message Authentication Code (Mac)

public static byte[] generateMac(byte[] key, byte[] cipherText,int offset,int length,int mac_size_bits) 
{ 
    byte[] result = null; 
    KeyParameter keyParam = null; 
    try { 
     keyParam = new KeyParameter(key); 
     CBCBlockCipherMac blockCipherMac = new CBCBlockCipherMac(new AESEngine(),mac_size_bits); 
     result = new byte[blockCipherMac.getMacSize()]; 
     blockCipherMac.init(keyParam); 
     blockCipherMac.update(cipherText, offset, length); 
     blockCipherMac.doFinal(result, 0); 
    } catch (Exception e) { 
     // System.out.println(e); 
     return null; 
    } finally { 
     keyParam = null; 
    } 
    return result; 
} 

Auf dem iPhone ich so bin kritzeln:

- (NSData *)generateMac:(NSData *)key cipherText:(NSData *)cipherText offset:(int)offset length:(int)length mac_size_bits:(int)mac_size_bits

Meine Frage ist, welche Methode sollte ich für CBCBlockCipherMac, keyparameters im iPhone verwenden kann mir bitte jemand helfen?

+0

Welche Sicherheit Alog ist, dass in iPhone/Objective c, libKrypto und wenn sein AES, dann seine Open Source, die Sie verwenden können ... – Amitg2k12

+0

seine commoncrypto ich benutze – 012346

Antwort

1

seine MAC-Verschlüsselung - AFAIK gibt es keine One-Shot-Ersatz/Äquivalent auf IOS

siehe Original-Dokumente docs und wikipedia wiki

wie die algo Werke lernen und es dann CommonCrypto mit replizieren

--sorry keine bessere Idee