Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
alessandro
6 лет назад

Авторизация по паролю должна умереть

У каждого из нас есть примерно 100500 учетных записей на самых разных сайтах. Почта, блоги, платежные системы... Предполагается, что наши пароли и прочие данные надежно хранятся. Но наверно нет ни одного популярного сервиса, который бы хоть раз не взломали. И что толку в сложных паролях, если злоумышленники получают их на блюдечке из-за очередной обнаруженной дыры в безопасности?

Конечно же любой солидный сервис держит админа, а то и не одного, в чьих обязанностях своевременно обновлять софт и закрывать уязвимости. Но такое впечатление, что порочна сама система. Это бесконечное соревнование брони и снаряда, в котором нельзя победить. А в проигрыше остаемся мы - пользователи. С нас требуют надежно хранить свои пароли, а сами сохранить их не могут.

Есть ли другой путь? Конечно.

Конфиденциальная информация не должна покидать компьютер пользователя.

В действительности, ни одному веб-сервису наш пароль нафиг не нужен. От него одни хлопоты: проверять надежность, хранить, обеспечивать безопасность... зачем это всё? На самом деле им нужна гарантия, что любое значимое действие, будь то комментарий или перевод денег, совершаем именно мы. Вход по паролю - традиционный способ обеспечить такую гарантию. Но не единственный и не самый лучший.

Им нужен не наш пароль, им нужна наша подпись

Давайте, чтобы не ходить долго вокруг да около, я сразу предложу сценарий как это должно быть.

Регистрация и верификация

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

Дальше сайт может хранить ваш ключ хоть открытым текстом, на то он и публичный.

Аутенфикация

Теперь предположим, что вам нужно зайти на сайт. Не нужно вводить ни имя пользователя, ни пароль, ни даже мэйл. На сайте единственная кнопка Login. Что происходит когда вы на нее нажимаете?
Сайт генерирует случайное число и выполняет переадресацию на адрес вида http://localhost:xxxx/sign?callback=url.

Как вариант можно предусмотреть специальный протокол, который будет поддерживаться браузером, типа chrome://sign?callback=url

Локальный сервер на вашем компе (или непосредственно браузер) выводит вам форму для ввода пароля, подписывает сгенерированное сайтом случайное число нашим приватным ключом, добавляет e-mail и делает переадресацию обратно, на указанный url. Сайт проверяет подпись с помощью публичного ключа и убеждается что вы - это действительно вы. Всё.

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

Когда-нибудь, в далеком светлом будущем эту процедуру вообще можно будет заложить непосредственно в протокол который придет на смену HTTP.

Бонус

100500 паролей не нужно, можно обойтись одним.

Почему авторизация не проводится вот так, если это просто?

Потому что сразу не подумали. Если б подумали - заложили бы прямо в протокол HTTP, и все браузеры поддерживали бы эту функцию без каких-то дополнительных локальных серверов.
А так нужно быть уверенным что пользователь не круглый идиот и у него запущен локальный сервер с приложением для аутенфикации. Или хотя бы что он в силах его запустить. Вы много таких знаете?

Или убедить всех разработчиков браузеров выработать единый стандарт.

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

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

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

0
0.025 GOLOS
На Golos с October 2017
Комментарии (0)
Сортировать по:
Сначала старые