Подтвердить что ты не робот

Windows Phone 7 - SQLite с шифрованием

Я использовал System.Data.SQLite для SQLite в Windows Mobile. Он имеет встроенную поддержку шифрования. Я нашел много реализаций SQLite для Windows Phone 7. Но ни у кого из них нет встроенной поддержки шифрования. Кто-нибудь знает любую реализацию SQLite для Windows Phone 7, которая поддерживает шифрование?

4b9b3361

Ответ 2

В Windows Phone 7, похоже, нет API, который позволит вам шифровать/дешифровать данные на основе учетных данных пользователя, подобных DPAPI, поэтому вам нужно сделать это самостоятельно. Документация позволяет предположить, что на Windows Phone 7 доступны следующие алгоритмы:

  • AES
  • HMACSHA1
  • HMACSHA256
  • Rfc2898DeriveBytes
  • RSA
  • SHA1
  • SHA256

Эти алгоритмы должны дать все, что вам нужно для создания достойной схемы шифрования, и должно быть достаточно хорошо, чтобы вы шифровали чувствительные столбцы в схеме базы данных, а не всю базу данных.

Единственная проблема тогда - посмотреть, какой ключ использовать. Если можно запросить у пользователя пароль (это очень зависит от того, какой тип приложения вы создаете), вы можете использовать Rfc2898DerivedBytes для получения пароля с пользовательского ввода. В противном случае вы можете создать ключ из некоторых данных устройства. (см. Как получить симметричный ключ в Windows Phone 7?. После получения ключа вы можете использовать AES для шифрования.

Я знаю, что это именно то, что вы хотели, но по крайней мере должно указывать на вас в правильном направлении.