Это текст моего выступления на 404fest 26 сентября. Слайдов у меня было мало, и по ним одним понять ничего нельзя. Поэтому я решил взять текст (благо всё равно он уже написан) и сделать из него нормальный пост. Также я сделал его немного более техническим и менее ознакомительным.

Предметная область

Несмотря на то, что технология OpenID появилась уже несколько лет назад (2005 год, кажется), она до сих пор страдает от недопонимания того, чем она собственно является по сути. Люди считают, что это средство быстрой регистрации без заполнения форм. Или что это защита от спама или, наоборот, опасная штука, которая даёт спамерам больше свободы. Или вообще чуть ли не технология слежения за людьми.

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

Гарантии протокола

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

В процессе участвуют:

Подтверждение считается факт того, что пользователь может авторизоваться средствами своего сервера на нём же. Интересно посмотреть на этот процесс со стороны консумера и понять, какие гарантии он получает в итоге.

Вообще говоря, не так уж и много:

Получается, что консумеру предлагается принимать у себя пользователей, про которых на самом деле ничего не гарантируется. В общем-то, именно поэтому часто OpenID-пользователи трактуются как второсортные и "опасные" (встречали наверное ЖЖшные дневники, где по OpenID комментировать запрещено?).

Технологии подтверждения

Здесь надо сделать небольшое лирическое отступление.

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

Как это работает? В браузере лежит некая пачка Сертификатов, заверенных Авторитетами Сертификатов, которые проверяют данные, которые пересылает сайт по Защищённому протоколу, на предмет их соответствия другим Сертификатам, выданным Авторитетами сайтам. Это всё прозрачно и тривиально...

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

Доверие

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

Давайте копнём глубже. Здесь кроме производителей браузеров мы на самом деле доверяем ещё и компаниям, которые работают на рынке подтверждения сертификатов. И хоть мы не очень задумываемся над тем, как именно сайты регистрируют эти сертификаты (в конечном счёте — за деньги), и как именно проверяется достоверность сведений о компании (подозреваю, что плохо), мы всё равно продолжаем пользоваться интернетом и доверять этому бэджику. Почему? Потому что помимо доверия производителям браузеров мы ещё видим, что много людей вокруг нас пользуются тем же самым и для них это работает.

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

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

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

Откуда берётся доверие

Это та штука, над которой я думал довольно долго. В итоге пришёл к тому, что всё сводится к трём путям:

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

Кстати интересно, что берётся оно в итоге буквально из ничего! Меня этот факт очень впечатляет :-)

И ещё стоит заметить эти три способа получения доверия универсальны: мы ими пользуемся для всего, независимо от области применения.

Доверие пользователям: один недостающий ингредиент

Вернёмся обратно в интернет.

Чуть раньше я показал, что протокол OpenID не даёт надёжных гарантий относительно доверия новому пользователю на сайте. Но ведь это ничем не отличается от того, как мы регистрируем пользователей сейчас. Когда новый пользователь приходит на сайт, и сайту интересно узнать, можно ли этому человеку доверять, он это может делать только в рамках третьего способа получения доверия: самостоятельного построения. Показывание CAPTCHA, пересылка подтверждающих писем, регистрационные формы, накопление кармы — это всё попытки сайта самостоятельно убедиться в надёжности пользователя.

Чем дотошней проверка, тем дольше и неудобно это для пользователя. Поэтому сайты не могут этим особенно злоупотреблять — иначе юзеры от них просто уйдут. Поэтому эти проверки надёжны только до определённой степени. Но что хуже, они не работают в отношении к юзерам, про которых сайт решает, что они "плохие": юзера можно забанить, но он пойдёт, перерегистрируется и продолжит творить свои тёмные дела дальше.

Выходит так, что сейчас сайты не могут пользоваться двумя первыми способами получения доверия, принимая его от других участников сети, и не могут пользоваться третьим продолжительное время? Причина этому достаточно очевидна: мы не знаем людей, которые к нам приходят. Да, мы даём им собственные nickname'ы. Но "username" на ЖЖ и "username" на Ли.Ру — это разные люди. И в то же время robot1, robot2 и robot120, зарегистрированные на нашем сайте в разное время, могут быть одним и тем же человеком.

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

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

Подходит ли OpenID

Собственно, OpenID — это как раз и есть глобальный идентификатор. И хотя мы разобрались, что этот протокол не обесечивает проверки идентичности пользователя в случаях, когда пользователь активно хочет вас обмануть, но зато он позволяет это пользователям, которые хотят. А вот с этим уже можно жить. Смотрите как.

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

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

Над этим стоит немного подумать. Получается, что нам достаточно протокола подтверждения идентификатора, работающего только при наличии пользователей, которые хотят следить за своей "кредитной историей". Просто потому что остальные пользователи (боты и спамеры) нам по умолчанию не интересны, и мы не даём им особенной свободы.

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

Практическое применение в Cicero

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

Вот как я пользуюсь этим у себя на форуме.

Бонус: фишки глобальной идентификации

Кроме передачи и построения доверия у глобальной идентификации есть и другие применения. Вот пара моих мыслей на эту тему.

Что дальше

Нетрудно заметить, что всей этой красоты в живом интернете почти нет. Причин тому много. Технология ещё довольно молодая, поэтому менеджеры и маркетинг не очень представляют, как её использовать, программисты не очень представляют, как правильно писать библиотеки, юзабилисты ещё не отточили интерфейсы, а архитекторы ещё не допридумывали достаточно протоколов.

В частности, нам нужны протоколы передачи доверия. Я упомянул в примере whitelist, который реализует передачу доверия, но он на самом деле довольно слаб. Никакой большой сайт не сможет им воспользоваться, потому что публиковать список из десятков или сотен тысяч пользователей очевидно непрактично. Вместо этого можно подумать вот над чем:

Вот этими вещами мне хочется позаниматься в ближайшее время. А вы что думаете?

Комментарии: 34

  1. glader.livejournal.com

    Ваня, спасибо за статью. Несколько соображений.

    1. Крупные сайты не будут делиться своим белым списком, потому что с таким трудом/временем собранная ими статистика (юзер хороший/нехороший) будет нахаляву уплывать к другим. Обрати внимание, мало кто из больших соцсетей разрешает писать пользователям openid.

    2. "сервер может присылать циферку или флажок о том, что "и кстати, он хороший"." Такому серверу доверять будет сложно, потому что спамер может завести свой сервер, отвечающий "да, он хороший" по любому запросу. Разве что завести список серверов, которым мы доверяем :)

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

    4. Рискованно собирать и хранить свою "кредитную историю" на каком-то одном сервере. Если он накроется, придется делать все заново (не кладем все яйца в одну корзину).

  2. mike.ozornin

    Как-то так повелось, что у каждого гика полно разных OpenID, и важно выбрать какой-то один, и использовать его чаще, иначе теряется смысл самого OpenID. Опять же как-то сложилось, что я использую Яндексовый. В очередной раз я убедился, что не зря.
    Ведь именно в Яндексе работает главный, по моему скромному мнению, специалист по OpenID. Не только по технологиям, но и по его сути.

    Мне кажется, главное, что даст сильный пинок использованию OpenID, это понимание того, что это не замена регистрации, и если OpenID-провайдер не поделился email'ом, его можно и нужно спросить (и даже, пускай, с подтверждением).
    Что нужно перестать бояться, что посетитель не будет регистрироваться на этом сайте и таким образом не нагонит базу, а надо радоваться, что если он предоставил OpenID (особенно OpenID как-то подтверждённый), то это живой человек, а не робот, сумевший разобрать CAPTCHу.

    Технологически OpenIDу не хватает разве что whitelist'ов, остальное всё лежит за рамками технологий.

    Спасибо за интересный пост. Идеи использования OpenID (например подарки до регистрации) — просто изумительны.

  3. Andy

    По-моему как раз основной смысл OpenID остался нераскрытым или раскрытым неявно.
    Консумер вообще говоря получает гарантию. Одну единственную: что он будет отдавать личные данные данного пользователя только тому (тем), кому данный пользователь их сам доверил (вместе с паролем от Identity Provider, либо введя OpenID не требующий авторизации).

    То есть OpenID на 100% и без оговорок (вроде того, что нужно нкопить историю доверия) годится в случаях, когда цель авторизации на сайте не в том, чтоб защитить сайт от неправомерных действий пользователя, а в том, чтоб оградить пользователя от неправомерных (с точки зрения пользователя) действий других пользователей с его данными.

    Т.е. регистрируясь с OpenID мы подписываемя, что доверяем всем, кто сможет авторизоваться с тм же OpenID, но это никак не должно положительно вляиять на доверие сайта к нам.

  4. Vii

    Крупные сайты не будут делиться своим белым списком, потому что с таким трудом/временем собранная ими статистика (юзер хороший/нехороший) будет нахаляву уплывать к другим.

    Думаю это справедливо, до тех пор пока количество таких сайтов мало. Как и с любой «wow-фенечкой» необходимо просто немного времени, чтобы прижилось.
    Тем более, что делиться со всеми подряд никто не заставляет. Партнёрские программы — достаточно протоптанная идея в плане обмена ссылками, баннерам, и пр.

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

    Так ведь чем больше социальности будет в вебе, тем будет сложнее. Это ведь всё равно, что перенести действие в общежитие, где все у всех на виду.

  5. Николай

    К сожалению, если говорить о децентрализованной системе обмена доверием, то здесь нужен ещё один гугл с ещё одним PageRank’ом.

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

    И это сопряжено с теми же техническими сложностями и технологиями, с теми же ограничениями.

    Однако хочется верить, что можно придумать что-то иное, что будет работать. Возможно стоит отказаться от столь милой сердцу идеи децентрализации и доверять только избранным провайдерам white-list’ов/сертификатов?

    Кстати, идея с сертификатами и подписями здесь мне кажется многообещающей. Пользователь предоставляет свои документы со сторонних серверов, которые консьюмер может быстро проверить, благо такое мы делать умеем.

  6. Nonexistent

    Мысли очень понравились.
    Сам ковырял OpenId с удовольствием. Не хватает, конечно, стандартизации. Да и протокол для whitelist'ов - был бы кстати.

    Глобальный вопрос - как эту технологию продвигать? Уж как-то все небыстро пока.

    Ждем реализацию плюшек в Яндексе?

  7. Roman Cheplyaka

    Спасибо, интересные мысли. Хочется, чтобы это быстрее превратилось в реальность :)

    Пользователи смогут банально узнавать интернет-знаменитостей именно по
    OpenID. Человек, подписавшийся в форуме "tema" — это кто угодно. А
    человек, с проверенным OpenID "tema.livejournal.com" — это вполне
    конкретный Тёма.

    Тут всплывает еще один момент — доверие пользователей сайту (OpenID-консьюмеру). Например, чтобы подписаться в каком-то блоке как tema.livejournal.com, не обязательно взламывать livejournal.com — достаточно найти уязвимость в этом самом блоге (который может оказаться каким-нибудь дырявеньким вордпрессом). Если бы еще к OpenID как-то ненапряжно прикрутить электронную подпись... на одну гарантию могло бы быть больше.

  8. oleg.butko

    Замечательная технология. Потенциал огромный. Да.
    Но жаль пользовательей, на которых будут эту технологию обкатывать. В смысле обычных пользователей, у которых один пароль (12345) для десятка сайтов. В будущем значит будет этот пароль хранится в одном месте. Хакерам будет проще, открыв один
    замок - сразу много дверей уже открыто.

    Мысль в том что к этой технологии нужно обязательно ввести какое-то обучение (просвещение) для пользователей. С разъяснением потенциальных проблем.
    Имхо проблемы с безопастностью в Интернете таковы, что весь Интернет постепенно теряет доверие.

  9. boolock

    Технология open-id может лишь подтвердить, что логинится человек, ранее уже совершавший под этим логином определенные действия (чем завоевал определенный авторитет).
    Вот, есть признанные авторитеты, люди с (мировым) именем независимо от интернета. Как сопоставить имя с open-id, если человек не ведет LJ, как Тема? Справку с работы прислать в Яндекс?
    Авторитет бывает разный, даже на одном и том же сайте - скажем, плохо парень волочет в сабже, но вообще душа-человек, приятно почитать, да. Это же не кредитная история, где вернул деньги - молодец, а нет, так прохвост. И потом, придется вести рейтинги белых списков - для домохозяек, для театральных деятелей?
    Доверие толпе. Мы не можем доверять мнению неавторитетных источников, если в этом мнении их сходится достаточно много. Интернет разросся, много дилетантов, границы ценностей размыты - и вот, Интернет теряет доверие. Думаю, ценно оригинальное мнение, свежие идеи, индивидуальность. А толпа кричала "распни его" еще в начале времен.
    Доверие себе. Ну тут ничего не скажешь, хотя мне лично стыдно за некоторые комментарии, которые я оставлял, будучи в упадке духа (вот и сейчас:). Есть места, куда я хожу достаточно редко (вот и сода:), я не веду блог и не сижу на хабре. Но ты же дашь мне написать комментарий? А, обладая авторитетом я получу золотую рамочку вокруг него?
    Не авторитет это, а популярность.

  10. Google user

    Во-первых, спасибо за статью. Твои посты заставляют думать.

    Во-вторых, уголок буквоеда.

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

    Это экономия процессора на проверке?
    Я хорошо понимаю, что с человеческой точки зрения, ты оформил некоторые отношения между собой и этим пользователем. Но дело в том, что не ты проверяешь на спам, а машина. То есть пользователь не может ощутить твоего доверия. (Может в whitelist, это отдельный разговор) Пример: ты работаешь на почте. Старый друг приносит бандероль. В бандероли бомба/наркотики/что-то-страшное. Он не хулиган, правда старый хороший друг. Но у него могут быть разные причины для своих поступков. Должен ли ты не проверив содержимое отправить бандероль? По-моему нет.

  11. Google user

    В-третьих, по существу поднятого вопроса. Мне кажется, Макс выразил очень существенную мысль:

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

    То есть, допустим мы сделали протокол обмена списками OpenID. Вести один список на сайте быстро станет недостаточно.

    По-моему, нужно каждому пользователю (у которого может быть много OpenID) присваивать некоторые характеристики. Такие как "приятно пообщаться", "знает английский", и т.д. Мы эти характеристики активно используем в жизни. Что ты можешь сказать про того-то? Он хорошо знает это, неплохо может то, и т.д. То есть к характеристикам нужно еще некоторое качественное выражение "насколько".

    Одной из таких характеристик может быть "спамер". Список, составленный из всех известных OpenID с условием, что хозяин "не спамер", это и будет твой whitelist.

    Другим аттрибутом пользователя является его список OpenID. То есть, я зареген на одном сервисе, указал там свой список урлов. И, зарегистрировавшись на другом сервисе, магически, я могу туда зайти под любым своим урлом. Есть проблема параноиков - кому доверять свой список. Оставим параноиков со своими проблемами. Юзеру удобно не терять своей электронной личности, в случае, если один из провайдеров упадёт.

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

    P.S.: готов присоединиться к обсуждению формальной спецификации Протокола :)

  12. Михаил

    А если рассмотреть такой сценрий: сервер перестает доверять юзеру и удаляет его, а консумера пользователь вполне устраивал. В итоге консумер лешается полного контроля над своей пользовательской базой.

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

  13. Дмитрий

    У OpenID есть еще один важный недостаток для пользователя, но не для того, кто пользуется OpenID, а для того, кто будет читать сообщения на форуме, блоге и т.д.

    Вот например для написания комментария выше Сергей Шепелев использовал свой Google Account, а что мешает мне зарегистрировать подобный Google Account и назвать себя Сергей Шепелев? Да - строка url будет отличаться, но разве простой посетитель может уловить эту разницу в ID?

    С точки зрения посетителя этого блога будет два одинаковых человека (конечно можно перейти по ссылке, которую предоставил OpenID, но посмотрите к чему это приведет у Google Account), соответственно будет трудно разобрать кто есть кто.

    В результате будут появляться сообщения (комментарии) от другого имени - вот это я считаю БОЛЬШОЙ проблемой.

    P.S. Сергей Шепелев - заранее прошу прощения за употребление в этом комментарии Вашего имени.

  14. Тормоз

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

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

    А "кредитная история" — это вообще тупик. Кармадрочка никогда не приводит ни к чему хорошему: посмотрите, например, во что превратился Хабр. Раньше там могли быть альтернативные мнения, а сейчас уже нет.

  15. Google user

    Дмитрий, машина может с полной уверенностью отличить один URL от другого.

    С человеками, действительно, всё сложнее. Например, я уверен, что ссылка должна вести не на XML id, а на мой публичный профиль http://www.google.com/profiles/temotor , но Wordpress с OpenID урлом ничего кроме подстановки в HTML не делает. Можно рисовать разные аватарки, как на форуме Ивана (пример здесь http://softwaremaniacs.org/forum/test/5447/ ). Можно отправлять подозрительные совпадения на модерацию. В общем, это не столько технологический, сколько интерфейсный вопрос. Машина может, осталось довести это до человека.

    В устаревшем :) случае имя-пароль опознать подмену может только человек (подозрительные совпадения на модерацию или никак).

  16. Ivan Sagalaev

    Пока я собираюсь написать отдельный пост со своими комментариями на комментарии, вот коротенький ответ на:

    Да - строка url будет отличаться, но разве простой посетитель может уловить эту разницу в ID?

    и

    Машина может, осталось довести это до человека.

    Тут суть в том, что Google'овый OpenID просто не задуман как публичный. Это тоже валидный подход, он полезен пользователю этого OpenID для того, чтобы он мог управлять собственными данными на сервере (например редактировать свои посты на форуме). Публично их можно показывать например так же, как анонимных юзеров.

  17. Дмитрий

    Дмитрий, машина может с полной уверенностью отличить один URL от другого.

    C этим я полностью согласен. Но как всегда есть несколько проблем:

    Можно рисовать разные аватарки.

    Это самый простой подход, но ведь вся "соль" OpenID - это мой один профиль на разных сайтах (моя аватарка, мой сайт, мой блог и т.д.) Смысл в том чтоб на разных сайтах меня всегда узнавали :)

    Можно отправлять подозрительные совпадения на модерацию.

    А как быть с форумами? Но вообще проблема глубже - нужна система, которая гарантирует, что я это я - чтобы сайт мог это сам проверить и подтвердить автоматически для пользователя. Например как PGP-ключи.

    Google'овый OpenID просто не задуман как публичный.

    Возможно. Но другие OpenID сервера (Например: myopenid.com), работают так же, только тут я могу САМ указать любой профиль, даже если он не мой.

  18. Дмитрий

    Безусловно, OpenID очень полезная технология, когда пользователь хочет скрыть свой профиль или свои личные данные.

    Я же говорю об обратной ситуации, когда я хочу сказать - Вот он Я! Не он, не ты - именно Я.

  19. boolock

    Списки можно не вести локально, а создать нечто вроде публичных сайтов по типу сервисов закладок. Там же можно будет выйти на все комментарии/посты данного id.
    Потом, хотелось бы, чтоб сервер сообщал не просто белый/черный, а отдавал некую статистику - в общем случае, активный или нет (сообщений в год), наличие спама (процентов от общего количества сообщений), категория по ненормативной лексике (типа как категория граватара).

  20. Дамир Курбангулов

    А что если для получения доверия сделать так: пользователь обращается в Центр Авторизации (ЦА) для получения id (высылает свои паспортные данные), а ЦА высылает пользователю заказным письмом пароль(ключ). Если я не ошибаюсь, то заказное письмо может получить только тот кому оно адресовано предъявив удостоверение личности. Таким образом получаем точные и проверенные данные в ЦА. Конечно, будут небольшие накладные расходы, но ведь и за бумажный паспорт приходится платить.

  21. Grey3

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

    Вот отправляю это вам безо всякого OpenID. И рекомендую сделать всё же для комментов в блоге регистрацию/логин отдельно. Типа, сначала зарегился (по опенид или иначе), потом пиши, зато коммент появится сразу. Не появился - значит блог не работает, чётко и ясно! А не как сейчас, пишешь на деревню дедушке, не зная дойдёт текст или пропадёт по дороге...

    Так что ОпенИд не будет распространён пока не будет отшлифован, включая стандарты - что когда кому передавать, что где у кого брать, или хоть дать пользователю возможность самому указывать что где, а не как сейчас в зависимомти от настроения программистов! Причём обоих, отдельно программиста клиента(консумера), отдельно программиста сервера!

  22. Grey3

    Ага, а вот сейчас при отправке без всякого OpenID (URL), коммент появился в блоге сразу. И в чём тут дело?!

  23. Ivan Sagalaev

    Уважаемый Grey3, вы путаете две вещи: протокол OpenID как таковой и устаревший плагин для WP на этом блоге. Последний не знает ничего ни про какие белые списки, неверно задуман и криво работает (хотя это утверждение и задевает Андрея Черезова). Возможно у меня дойдут когда-то руки до того, чтобы это починить, но пока не дошли.

    Скажу однако, что регистрации тут конечно не будет. За ненадобностью: всю жизнь комментировать тут можно без регистрации. Иногда комментарий проходит премодерацию, иногда сразу появляется. Но это мелочь.

    Так что, не списывайте со счетов всю технолгию только на том основании, что у меня в блоге она работает криво :-).

  24. ARSolog

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

  25. Серхио

    На самом деле это ужасно :) У меня начинается паранойя и глаз начинает дергаться как только речь заходит о глобальных идентификаторах, карме, определении доверия на основании общественного мнения и построении системы прав на основе этих данных. На мой взгляд это очень дурно пахнет для меня как для пользователя.
    Меня честно говоря тошнит от новомодных соц.сетей/твиттеров/хабро/гугловолн... Система кармы - это просто убийца индивидуальности, потому что человек обладающий мнением отличным от общепринятого сразу уходит с кармой в минус (в различного рода социальных сетях это хорошо видно), и автоматически получает ограниченные права, такой hi-tech изгой. О свободе выражать свое мнение в сети можно забыть, во всяком случае с оглядкой на карму и свои права построенные на основе кармы никто высовываться не будет если не решит покинуть интернет :) Но ведь такие глобализаторские идеи не остановятся на интернете, скоро будем иметь возможность голосовать там и т.д. и т.п., ведь как удобно, да еще можно отсеить всяких экстремистов по ID и "карме". Просто замечательно, золотой век цивилизации.. Сиди не поднимая зада из кресла, делай свою работу, будь сырой мышью, будешь хорошо работать - станешь золотой и получишь позолоченное кресло со встроенным гидровисломасложором и унитазом. Но черт побери, если ты скотина такая имеешь свое собственное мнение - ты изгой и жить тебе на обочине цивилизации с бомжами.. общественное мнение превыше всего, репутация это все что у тебя есть, ты больше не человек, ты сеть сtмантических связей на сервере гугла... «Arbeit macht frei»!
    Эпилог:

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

  26. Нурдин

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

  27. Ivan Sagalaev

    Простите, какая практика? Я не видел ничего такого, реализованного для email'а.

  28. Нурдин

    имел ввиду историческая практика, в том смысле, что e-mail'ы существовали, и подобное и раньше могло быть реализовано, но не было. Что наверное говорит о нецелесообразности.
    Вообще я тут после уже подумал, а может и вправду e-mail может быть таким же удостоверяющим добропорядочность идентификатором, почему нет? Также как и URL. Но в каких-то частных случаях между конкретными сайтами. В глобальном смысле все-таки мне до сих пор это кажется лишним.
    P.S.: я не айтишник вообще, но интересуюсь, и благодаря Вашему сайту просвещаюсь. Спасибо Вам!

  29. Нурдин

    Иван, Вы правы, социальные связи в интернете можно сравнить с обычным общением людей. Но в обычной жизни ведь нету удостоверяющих порядочность людей центров и авторитетов, белых списков. В частном порядке мы можем принимать во внимание мнения тех или иных людей относительно порядочности какого-то гражданина, но и то, не всегда доверяем стороннему мнению. И это очень правильно! Иначе мы бы постоянно ошибались и жили бы в постоянном страхе, боясь доносов.
    Кредитные истории - это слишком узкая сфера (вопрос просто дать деньги в долг, и информация среди банков), её можно рассматривать как частный случай.
    А вот это очень правильно:"Расширение OpenID, когда вместе с подтверждением "да, это мой юзер", сервер может присылать циферку или флажок о том, что "и кстати, он хороший"."

    Еще для меня как пользователя хорошо было бы, если бы я мог связать раз и навсегда (или до тех пор, пока не скажу обратное) все свои URL'ы, e-mail'ы, аккаунты в соцсетях, и чтоб я указав любой свой имэйл или url был узнаваем как конкретный Нурдин Саякбаев. Если мой идентификатор расскажет обо мне как о конкретном человеке, который имеет друзей, живет в таком-то городе, и к которому, если постараться, можно предъявить судебный иск, то ко мне будет больше доверия. При этом, конечно на других сайтах я должен иметь возможность и спрятаться за никнеймом, т.к. тайну личной жизни еще никто не отменял )))

  30. Нурдин

    Извиняйте, у меня тут мыслительный процесс приторможен в силу непрофессионализма :)Но зато, могу надеяться, что это свежий взгляд. В принципе протокол, о котором Вы говорили, когда опрашивается любой сайт на предмет, известен ли ему данный URL, как раз так и работает.
    Т.е. OpenID сервер может отдавать не только свою оценку доверия, но и связанные URL’ы. А консумер потом опросит эти связанные URL’ы и получит их оценку доверия. Среди этих OpenID-серверов может быть и, к примеру, webmoney, который не выдаст номер паспорта, но своей оценкой доверия скажет, что паспорт у человека есть, и паспорт OpenID-серверу известен (а это уже очень многое, т.к. позволит привлечь к юридической ответственности), или же социальная сеть, которая уровнем доверия скажет, что профиль пользователя заполнен полностью, и у него есть друзья.
    Эх! Если бы еще OpenID-серверы могли сами обмениваться связанными URL’ами, и если бы пользователь мог на любом OpenID-сервере контролировать процесс и выключать из связки URL’ы, которые хочет скрыть. Цены бы не было!

  31. Bers

    Автор остановился в одном шаге, который отделил бы его от формулировки "Доверие", так часто упоминаемой в статье и привёл бы к очевидному термину "Закон".

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

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

    Мне когда-то лет пять назад помогла вот эта статься разобраться окончательно: http://unixwiz.net/techtips/iguide-crypto-hashes.html

    Так же с того же сайта и иных источников стоит предварительно наесться терминологии и определений о синхронных/асинхронных алгоритмах, их названиях, различной математике, истории атак и разновидностями.

  32. Ivan Sagalaev

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

    Всегда забавно, когда меня упрекают в незнании тривиальных основ :-).

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

    А насчёт закона... По-моему, история XIX-XX веков достаточно очевидно уже показала, что это ужасно неэффективное средство управления обществом.

  33. Bers

    Какой-то Вы странный, сами выше признались в некомпетентности, тем самым постулировав свои доводы:

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

    Доверяют не механизмам, а людям, которые разбираются в той или иной области, тем самым "доверие" зелёненькой надписи в браузере - это доверие его разработчикам знатокам закона, незнание которого не освобождает пользователя от ответственности, которую он делегирует разработчикам. Поэтому вся тема укладывается в простое утверждение: "Специалисты не должны рассуждать с технологиями на уровне доверия, и таким специалистам будут доверять люди".

    Вторую странность, которую Вы допустили - это принимание слова тривиальность на свой счёт. В предыдущем комментарии, я скорее обращался к гипотетическому читателю, там были два персонажа "Автор" и "Вы".

    Нисколько не сомневаюсь в вашей компетентности, и даже с лёгкостью могу списать "утверждение о сложности системы сертификации" на простой художественный оборот.

Добавить комментарий