Как зашифровать в javascript - PullRequest
       1

Как зашифровать в javascript

1 голос
/ 07 апреля 2020

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

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

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

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

login. js

var app = new Vue({
    el: "#app",  
    data: {      
        url: "https://********",
        user: "",
        password: ""
    },
    methods: {
        login: function () { 

            //I want to encrypt it here.

            axios.post(this.url, {
                user: this.user,
                password: this.password
            })
                .then(function (response) {
                    // alert('OK');
                    // alert(response);
                    console.log(response);
                })
                .catch(function (error) {
                    alert('NO');
                    // alert(error);
                });
        }
    }
})

Ответы [ 2 ]

4 голосов
/ 07 апреля 2020

Нет смысла отправлять ваш пароль в зашифрованном виде, если вы уже используете HTTPS, данные уже будут хорошо зашифрованы. Вы просто добавите дополнительные издержки.

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

  1. Хранит ли он где-нибудь пароли в виде простого текста? Если да, прекрати это делать. Вместо этого следует хранить хешированные пароли (хешированные, не зашифрованные).
  2. Возможно ли, что из-за какой-либо ошибки пароль виден в журналах ошибок? Если да, исправьте это.
  3. Достаточно ли безопасен ваш сервер? Злоумышленники, вероятно, будут использовать уязвимость сервера для захвата ваших данных вместо того, чтобы пытаться перехватить и расшифровать HTTPS-соединение.
  4. Правильно ли настроена ваша HTTPS? (Используйте https://www.ssllabs.com/ssltest/, пока не получите оценку A)
3 голосов
/ 07 апреля 2020

Ответ Элиаса здесь правильный (я проголосовал за него). Но только для тех, кто может найти этот вопрос позже, исходя из его названия, Javascript может сделать безопасное шифрование.

Если вы ищете его, я бы порекомендовал npm пакет "bcrypt", так как он является своего рода отраслевым стандартом для шифрования в JS (например, это то, что вы будете использовать, если вы следуете совету Элиаса на сервере Express и хотите иметь sh ваши пароли).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...