Шифрование RSA в Objective-C (Mac)

Я копаюсь в вещах, которые требует шифрования RSA, и у меня есть код, который выглядит следующим образом:

- (NSData *)RSAEncryptData:(NSData *)data {

    NSMutableData * encrypted = [NSMutableData dataWithLength:256];

    RSA * rsa = RSA_new();
    rsa->n = BN_bin2bn(modulus.bytes, modulus.length, NULL);
    rsa->e = BN_bin2bn(exponent.bytes, exponent.length, NULL);

    RSA_public_encrypt(data.length, data.bytes, encrypted.mutableBytes, rsa, RSA_PKCS1_OAEP_PADDING);
    RSA_free(rsa);
    return encrypted;

}

Где модуль и экспонента — это объекты NSData

Это прекрасно работает, если не считать всех Методы RSA заставляют компилятор жаловаться на то, что они устарели в Mac OS 10.7.

Есть ли более современный способ сделать это? Я гуглил в течение нескольких часов и смог найти только те материалы для iOS, которые недоступны на Mac ( SecKeyEncryptи т. д.).

Чтобы быть абсолютно ясным, я не ищу решение для iOS, я ищу решение для Mac OS.

5
задан Tom Irving 28 May 2012 в 02:33
поделиться

0 ответов