Почему опасно использовать адрес электронной почты в качестве OpenID?

Недавно аналогичный вопрос был размещен на сайте Programmers.SE

  • Почему статический метод main в Java и C #, а не конструктор?

    В поисках окончательного ответа из первичного или вторичного источника, почему (в частности) Java и C # решили использовать статический метод в качестве своей точки входа, а не представлять экземпляр приложения экземпляром класса Application с записью точка является подходящим конструктором?

TL; DR часть принятого ответа:

В Java Причина public static void main(String[] args) заключается в том, что

  1. Гослинг хотел
  2. код, написанный кем-то, имеющим опыт работы в C (не на Java)
  3. для исполняться кем-то, кто привык запускать PostScript в NeWS

http://i.stack.imgur.com/qcmzP.png

& nbsp;
Для C # аргументация транзитивно аналогична , так сказать. Разработчики языка сохранили синтаксис точки входа в программу , знакомый программистам, пришедшим с Java. Как говорит архитектор C # Андерс Хейлсберг ,

... наш подход с C # просто предлагал альтернативу ... программистам на Java ...

...

10
задан Kevin Panko 27 July 2011 в 20:27
поделиться

2 ответа

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

Это также было бы большим изменением для всех библиотек OpenID - URL-адреса их можно обнаружить, вы знаете, куда идти с ними, а адреса электронной почты - нет, поэтому было возмущение в отношении того, что Google в одностороннем порядке сделал это и эффективно разветвил стандарт OpenID под себя.

Другая проблема заключается в фишинге. OpenID очень уязвим для этого, поскольку пользователи доверяют доверяющей стороне перенаправить их к своему провайдеру после обнаружения его через предоставленный OpenID, поэтому «озорная» полагающаяся сторона может перенаправить на фишинговый сайт, который сохраняет OpenID и пароль. В Google OpenID и пароль - это ваша учетная запись Gmail и пароль, поэтому вы не только потеряли контроль над своим OpenID, но и своей учетной записью электронной почты. Конечно, это может быть защищено провайдером - у вас могут быть отдельные пароли электронной почты и пароли OpenID, у вас может быть секретное сообщение для каждого пользователя, которое вы показываете на странице входа OpenID, но, как мы хорошо знаем, пользователи тупой . Они не проверяют URL-адреса в браузере, они слепо нажимают ОК в диалоговых окнах, они просто не думают, что веб-страница может быть подделкой. Используя адрес электронной почты и один и тот же пароль, Google подвергает большинство своих пользователей неприемлемому риску.

21
ответ дан 3 December 2019 в 18:35
поделиться

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

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

У некоторых людей, похоже, есть проблемы с этим. Посмотрите, это довольно просто. Я не сказал, что неочевидное имя пользователя само по себе является достаточной защитой. Отнюдь не. Безопасность через неясность - это вовсе не безопасность.

Однако это чистый здравый смысл, что из:

  1. пароля с неизвестным именем пользователя; и
  2. Тот же пароль с неизвестным именем пользователя.

что (1) в худшем случае одинаково безопасен для (2), а в лучшем случае более безопасен.

Более того, если ваш адрес электронной почты является вашим паролем, то, если вы скомпрометируете чей-то адрес электронной почты, вы потенциально скомпрометируете каждую систему, которая использует его в качестве имени пользователя, легче будет скомпрометировано как на основании «Забыли пароль?» ссылки и тот факт, что пароль, использованный в одном месте, с большей вероятностью будет использоваться в другом.

Извините, но это просто здравый смысл.

0
ответ дан 3 December 2019 в 18:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: