IV "должен" быть случайной строкой данных, вы можете извлечь данные / dev / random для простоты.Это в основном случайная соль, которая встряхивает шифрование.http://en.wikipedia.org/wiki/Initialization_vector имеет больше информации о том, что конкретно является IV.Следите за своим iv с вашим ключом, потому что он также используется в расшифровке.
NSString *key = @"password";
NSString *iv = @"randomstringofcharactersfromdevrandom"
NSData *cipherstream = [ EncryptionLibrary encryptData: data key: key iv: iv ];
NSData *cleartext = [ EncryptionLibrary decryptData: cipherstream key: key iv: iv ];
Ваш вектор инициализации должен быть случайным для каждого экземпляра приложения, но ваш ключ обычно постоянен или получен из сертификата SSL.
Я рекомендую взглянуть на Руководство по программированию преобразований безопасности , которое использует SSL-сертификаты для шифрования и дешифрования, векторы инициализации находятся в фоновом режиме, потому что обычно они низкого уровня и должны просматриваться свысокий уровень управления ключами, а не IV.