2016-01-25 3 views
1

Я хочу зашифровать пароль, отправленный с клиентской стороны. Я нашел крипто-js, который обеспечивает реализацию AES. Мой вопрос в том, что если я использую «кодовую фразу» для шифрования, может ли кто-нибудь, кто может просматривать исходный код страницы, также увидеть мою «кодовую фразу»? Если у меня неправильная концепция, пожалуйста, помогите мне это очистить.Шифровать пароль с клиентской стороны с помощью AES?

+3

У вас почти наверняка есть неправильная концепция. Пароли обычно хэшируются, а не зашифрованы. Зачем вам нужно знать пароль в виде обычного текста? Также да на ваш вопрос. – SmokeDispenser

+1

Имейте чтение: [Криптография Javascript считается вредной] (https://www.nccgroup.trust/us/about-us/newsroom-and-events/blog/2011/august/javascript-cryptography-considered-harmful/) –

+1

Как всегда ... вы говорите: «Я хочу ...» ... Я говорю: «Почему ты хочешь?» –

ответ

1

Нет, вы не можете просто прочитать пароль, если он не хранится в JavaScript.

Однако, практически в любом случае, когда код JavaScript может быть прочитан, код JavaScript также можно изменить. И если вы не можете доверять коду, тогда все ставки неактивны - пароль может быть отправлен или получен из любого места.

Возьмем, к примеру, интернет-кафе. Вы подключаетесь к «coffeeplace.com», но вы действительно входите в службу обмана. В этом случае любое незащищенное соединение может быть изменено. Если служба мистификации получила мошеннический сертификат ЦС, то это верно и для HTTPS-соединений.

Если вы хотите защитить пароль, вы должны отправить его по HTTPS-соединению. Если вам нужна защита уровня приложения поверх безопасности транспорта HTTPS, вы можете зашифровать пароль с помощью открытого ключа; Затем сервер может затем расшифровать его с помощью закрытого ключа.

Безопасность на уровне приложений полезна, если вы хотите хранить пароль (хэш) на своих серверах, например. Затем вы можете обработать зашифрованный пароль, используя службу в фоновом режиме.

0

Чтобы ответить на ваш реальный вопрос: да, каждый увидит кодовую фразу.

Но на самом деле, сделать некоторые исследования:

  • хэширования паролей: Вы действительно должны знать обычный текст паролей пользователя?
  • почему использование javascript для crypto является действительно плохой идеей практически во всех случаях использования.
  • Информационная безопасность в это целое

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

+0

это неинтересно .. –