Безопасность и взлом базы данных SQLite
Я просто хотел сделать быструю проверку работоспособности с помощью Stackru, чтобы подтвердить мое подозрение. Я создаю приложение, и у меня возникло желание использовать FMDB в Swift для хранения некоторых данных. Я отношусь к этим данным как к общедоступным в том смысле, что я предполагаю, что они могут быть подделаны (и, следовательно, не заслуживают доверия). Это потому, что, в конце концов, в отличие от веб-приложения, это приложение работает на устройстве пользователя и, таким образом, оно может получить доступ к файлу.sql и изменить базу данных.
Если я хотел сохранить информацию, например, если пользователь купил что-то, разблокировал определенное оружие или другие данные, которые я не хочу никоим образом изменять, я не должен использовать локальную базу данных на устройстве пользователя.
Вы сказали бы, что это правильно и безопасно действовать в этом предположении? Если бы я искал возможность использовать базу данных для сохранения чего-то важного, что имело место, какой подход был бы хорошим? шифрование с помощью ключа в приложении, или, может быть, хэш или что-то?
1 ответ
Если вы хотите защитить свою базу данных, FMDB включает в себя хуки для SQLCipher, которые вы должны получить отдельно. Ознакомьтесь с различными методами шифрования FMDB, которые вы можете использовать, если в ваш проект включен SQLCipher.