2015-08-20 5 views
0

Я использую devess для auth. Я хотел бы зашифровать все данные, которые вводит пользователь, прежде чем отправлять их в db.Как зашифровать данные перед отправкой в ​​db?

Возможно ли это?

Я нашел это gem, но я не уверен, как я мог бы решить проблему.

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

, чтобы сделать его еще более ясно:

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

Я слишком амбициозен по этому поводу?

+0

Tekina это правильно. Вы не должны позволять своим пользователям обращаться к базе данных, например, по ряду причин, некоторые из которых были упомянуты в этом ответе. Вы должны это сделать. Возьмите их имя пользователя и пароль и объедините его с солью. Храните соль в виде обычного текста, личные данные, зашифрованные * вашим * ключом, и их учетные данные для входа в систему хэшируются. Таким образом, в случае компрометации сервера никто не может использовать идентификаторы пользователей или пароли. Вы никогда не сравниваете свои обычные текстовые учетные данные. Сравните хеш с хешем. Затем, если их хэши совпадают, вы являетесь привратником и предоставляете свою личную информацию. – WDS

ответ

1

Я не думаю, что использование пароля пользователя для шифрования данных - лучший подход, так как вам придется постоянно запрашивать у пользователя пароль, что было бы очень плохо UX. Если вы собираетесь как-то упорствовать, вы подвергаете его другим видам атак. Кроме того, пароли, как правило, зашифровываются с использованием одностороннего хэша, поэтому удача пытается шифровать/расшифровывать что-либо с паролями пользователей.

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

+0

Твердый, попробуем этот камень. –

Смежные вопросы