Методы шифрования документов, хранящихся в iCloud - PullRequest
1 голос
/ 01 февраля 2012

Моя программа просит пользователя создать 4-значный код доступа (очень похоже на экран разблокировки, встроенный в iPhone).Программа сохранит код доступа и проверит его по паролю, введенному позднее, и запретит или предоставит доступ к представлению таблицы документов.Мне также нужно сохранить пароль в iCloud, если другое устройство хочет использовать ту же базу данных документов.Мне не нужно хранить информацию об имени пользователя.

Я читал об использовании цепочки для ключей, но это кажется излишним для моей цели.Я новичок в безопасности и понятия не имею, что делать, а что НЕ делать.Может ли кто-нибудь указать мне правильное направление для того, какие документы или учебные пособия я мог бы прочитать, которые будут соответствовать моему заявлению?Спасибо за помощь.

ОБНОВЛЕНИЕ

примечание об использовании цепочки для ключей в ответ на ответы ниже:

Если бы я былЯ использую связку ключей из документов Apple, что у меня нет возможности хранить пароль в iCloud.Это представляет интересную проблему, потому что хранение документов в iCloud является важным поведением моего приложения, так как пользователям требуется доступ к одному и тому же набору документов, которые защищены паролем на нескольких устройствах.Как мне подойти к этой проблеме?Есть ли известный безопасный способ обойти это, или мне придется полностью отказаться от использования цепочки для ключей все вместе?

Ответы [ 2 ]

2 голосов
/ 01 февраля 2012

Я думаю, что SHA1 хорош для ваших целей просто не забудьте добавить немного соли в строку Я сделал это на iPhone App Obj-C 2 года назад, должно быть просто этот пост может помочь Цель C: SHA1 :) надеюсь, это поможет

2 голосов
/ 01 февраля 2012

Вы намереваетесь провести простое сравнение строк как притворную меру безопасности или вы действительно шифруете личные данные и просто используете намеренно слабый ключ?

Оба подхода верны, но я предполагаю, что ваши пользователи ожидают последнего.(Будут ли они расстроены, если кто-то прочитает их данные в виде обычного текста прямо из резервных копий телефона ?)

Если вы фактически шифруете их данные намеренно слабым ключом, то выопределенно следует использовать внутреннюю связку ключей и, вероятно, использовать PBKDF2 , чтобы создать полезный ключ , основанный на очень небольшом количестве секретных данных, доступных вам.Любой другой подход, вероятно, настраивает вас на смущающие ситуации или откровенно враждебных пользователей.Позвольте Apple управлять настолько, насколько они могут.( Не сохраняйте ключ в iCloud .)

Обратите внимание, что использование цепочки для ключей и PBKDF2 все еще оставит данные вашего пользователя открытыми для довольно простого подбора ключа.но этого следует ожидать с такими короткими клавишами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...