iOS 9.2.1, Xcode 7.2.1, ARC включена
base64EncodedString, dataFromBase64String: устарело после iOS 7.0
Обновленное решение:
Кодирование в строку:
id<nscoding> obj;
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:obj];
NSString *string = [data base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithLineFeed];
Декодирование к данным:
NSString *string;
NSData *data = [[NSData alloc] initWithBase64EncodedString:string options:(NSDataBase64DecodingIgnoreUnknownCharacters)];
id<nscoding> obj = [NSKeyedUnarchiver unarchiveObjectWithData:data];
Примечание. Это очень полезно при работе с цепочкой для ключей для сохранения словаря пар ключ / значение в kSecValueData.
Надеюсь, это кому-нибудь поможет! Приветствия.