Где вы храните свой секретный ключ в веб-приложении Java? [закрыто]

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

РЕДАКТИРОВАТЬ :

позвольте мне указать контекст, чтобы сделать вопрос менее широким:

здесь Java веб-приложение адресованоболее конкретно используется пружинный каркас версии 3Spring Security 3.1 используется для защиты приложениябаза данных mysql5 доступнасервер приложений - Tomcat6 или Tomcat7серверный компьютерне под моим контролем

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

Здесь я должен защитить пароль электронной почты (который будет храниться в БД). Я считаю эту информацию средней важности.

Что я'ищу здесь, это лучшее решение с разумными усилиями.

Так что вопрос очень понятен:где бы вы хранили эту информацию?

Вы храните это в базе данных? Поэтому он должен быть зашифрован, и для этого требуется другой ключ (и где вы храните этот второй ключ?)Вы храните это внутри.war пакет? Как вы предотвращаете несанкционированный доступ к источникам?вы принимаете другую стратегию?

Мотивации для вашей стратегии будут оценены. благодарю вас

Ответы на вопрос(3)

Ваш ответ на вопрос