Как сохранить CFUUID в связке ключей

Я разрабатываю приложение для iPhone.
Приложение обращается к некоторому веб-сервису, который помимо всего прочего должен распознавать идентификатор устройства.

Поскольку UDID устарел, мне нужно вызвать CFUUIDCreate, чтобы сгенерировать для этой цели собственный UUID.

Идентификатор чувствителен к безопасности: все мои сетевые соединения зашифрованы, и я не хочу, чтобы никто, кроме моего сервера, аутентифицированного сертификатом, знал этот UUID.
Кроме того, я хочу, чтобы этот идентификатор сохранялся при переустановке.
Использование связки ключей для хранения этого UUID кажется очевидным решением.

Как мне это сделать?

В Интернете есть несколько примеров того, как хранить имя пользователя и пароль в связке ключей. У меня нет ни пользователя, ни пароля, только 16-байтовый UUID (или один NSString).

Какой kSecClass мне нужно использовать?
Какие атрибуты мне нужно установить и получить?
Какие атрибуты являются необязательными, а какие обязательными?

Какой заголовок/фреймворк определяет CSSM_ALGORITHMS?
В документе упоминается cssmtype.h, автодополнение xcode имеет ‹Security/cssmtype.h›, однако компилятор xcode говорит, что «файл не найден».

Исходя из здравого смысла, «Идентичность» должна подойти лучше всего. Однако в документах говорится, что «идентификация - это комбинация закрытого ключа и сертификата», у меня нет ни того, ни другого. Кроме того, я не вижу атрибут «ключевые байты».

Заранее спасибо!


person Soonts    schedule 21.11.2011    source источник


Ответы (1)


Вы можете использовать оболочку SSKeychain. Также ознакомьтесь с ответом на этот вопрос для некоторых основных материалов по использованию: Как выбрать значения аккаунта и сервиса для SSKeychain

person Jakob W    schedule 21.11.2011