Этот вопрос действительно следует задавать в Infosec Stackexchange.
Шифрование обычно бессмысленно в качестве защиты от хакеров, поскольку вам необходим доступ к ключу для использования зашифрованной базы данных. Это означает, что вам нужно сохранить его рядом с базой данных. Если ваш сервер будет взломан, то хакер просто расшифрует базу данных с помощью ключа. Конечно, это лучше, чем ничего не делать, потому что возможно (возможно, невероятно), что хакер скомпрометирует только базу данных. Horatiu Jeflea Hovewer упоминает о других важных причинах шифрования базы данных, которые следует особенно учитывать, если вы не работаете над проектом в одиночку.
Хеширование имен пользователей возможно только в том случае, если вам не нужно их отображать, но имена пользователейобычно в любом случае общедоступны, поэтому это очень мало повышает безопасность.
Хеширование электронных писем - интересная проблема. Вы попросили их по причине. Вероятно, вам нужно связаться с вашими пользователями. Если вы их хешируете, вы не сможете это сделать, а если вам не нужно это делать, то вам не нужно (и не нужно) сохранять их в первую очередь. Однако, если они являются только частью процесса аутентификации, то это было бы возможным решением.
Радужные таблицы не могут реально сломать современные алгоритмы хеширования, хотя самое большое смягчение - это вышеупомянутая соль, которая сделает ее НАМНОГО сложнее для большинства атак на хеш. Вы также должны убедиться, что вы не используете уязвимые, такие как md5, но безопасные, такие как sha256 или достаточный bcrypt. Вы должны хешировать пароли с одним из них. Также обратите внимание, что вы можете использовать одну и ту же соль для всех полей хэширования, и соль может даже быть (это немного снизит безопасность) одним из открытых полей (имя пользователя?). Существует очень мало оправданий для того, чтобы не использовать соль.
В заключение: вы не можете их хэшировать, и шифрование, вероятно, не стоит, если вы не можете достаточно изолировать ключ, или вам это нужно из-за чего-то другого, чем внешние хакеры