SlideShare ist ein Scribd-Unternehmen logo
1 von 41
Downloaden Sie, um offline zu lesen
Открытые протоколы - основа распеределеннх
            социальных сетей.

             Александр Загацкий



                    lvee
11 апреля - судный день




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
SkyNet Goes Online




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
11 апреля




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
11 апреля




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
foursquare - down
     социальная сеть с функцией геопозиционирования




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
hotsuite - down
     "панель управления" социальными сервисами




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
quora - down
     социальный сервис обмена знаниями




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
reddit - down
     социальный новостной сайт




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
FriendFeed - down

     агрегатор информации из различных социальных сетей




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Тут были мои заметки




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Так сохранился сайт в кэше




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Интернет не работает



     В ожидании когда заработает Internet




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Сервисы могут быть куплены

     Письмо от Yahoo! о продаже Delicious




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Сервисы могут неожиданно закрыться




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Распределенные сети



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




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Протоколы и форматы



     О чем пойдет речь:
            Atom/RSS
            WebFinder
            OpenID/OAuth
            Pubsubhubbub
            ActivityStreams
            Salmon
            XMPP
            Portable Contacts




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Atom




     Формат синдикации Atom позволяет описывать наборы
     веб-ресурсов
            основан на XML и расширяем
            современная замена RSS
            является контейнером для других форматов



Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Пример Atom

           §                                                                 ¤
               1   <?xml version="1.0" encoding="utf-8"?>
               2     <feed xmlns="http://www.w3.org/2005/Atom">
               3       <title>Example Feed</title>
               4       <link href="http://example.org/"/>
               5       <updated>2003-12-13T18:30:02Z</updated>
               6       <author>
               7         <name>John Doe</name>
               8       </author>
               9       <id>urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6</
                            id>
             10        <entry>
             11          <title>Atom-Powered Robots Run Amok</title>
             12          <link href="http://example.org/2003/12/13/atom03"
                              />
             13          <id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a
                              </id>
             14          <updated>2003-12-13T18:30:02Z</updated>
             15          <summary>Some text.</summary>
             16        </entry>
             17      </feed>
           ¦                                                                 ¥

Открытые протоколы - основа распеределеннх социальных сетей.          Александр Загацкий
ActivityStreams - cоциальная активность




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Иван Васильевич меняет профессию




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
WebFinger




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
WebFinger - набор технологий и форматов


     The Hammer Stack




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Webfinger - цель профиль пользователя




     LRRD - Link-based Resource Descriptor Discovery protocol
     Начнем с адреса:

         zag@status.net


     Определяем LRRD адрес:

            http://status.net/.well-known/host-meta




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Webfinger - цель профиль пользователя


     curl http://status.net/.well-known/host-meta
           §                                                                ¤
               1   <?xml version="1.0" encoding="UTF-8"?>
               2   <XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0"
               3   xmlns:hm="http://host-meta.net/xrd/1.0">
               4     <hm:Host>status.net</hm:Host>
               5     <Link rel="lrdd" template="http://status.net/xrd?uri
                          ={uri}">
               6       <Title>Resource Descriptor</Title>
               7     </Link>
               8   </XRD>
           ¦                                                                ¥

     Интерес представляет:

         http://status.net/xrd?uri={uri}




Открытые протоколы - основа распеределеннх социальных сетей.           Александр Загацкий
Webfinger - цель профиль пользователя


     Берем:

         zag@status.net


     Добавляем acct:

         acct:zag@status.net


     Адрес для запроса XRD:

         http://status.net/xrd?uri=acct:zag@status.net




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Extensible Resource Descriptor (XRD)
     curl http://status.net/xrd?uri=acct:zag@status.net
           §                                                                 ¤
               1   <?xml version="1.0" encoding="UTF-8"?>
               2   <XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0">
               3     <Subject>acct:zag@status.net</Subject>
               4     <Link rel="http://webfinger.net/rel/profile-page"
               5     type="text/html" href="http://zag.status.net/zag"/>
               6     <Link rel="http://microformats.org/profile/hcard"
               7     type="text/html" href="http://zag.status.net/hcard"/>
               8     <Link rel="salmon" href="http://zag.status.net/main/
                          salmon/user/1"/>
               9     <Link rel="http://salmon-protocol.org/ns/salmon-
                          replies"
             10      href="http://zag.status.net/main/salmon/user/1"/>
             11      <Link rel="magic-public-key"
             12      href="data:application/magic-public-key,RSA.(...)c=.
                          AQAB"/>
             13      <Link rel="http://ostatus.org/schema/1.0/subscribe"
             14      template="http://zag.status.net/main/ostatussub?
                          profile={uri}"/>
             15      <Link rel="http://specs.openid.net/auth/2.0/provider"
             16      href="http://zag.status.net/zag"/>
             17    </XRD>
           ¦                                                                 ¥
Открытые протоколы - основа распеределеннх социальных сетей.           Александр Загацкий
XRD




     XRD содержит много полезной информации о пользователе:
            адрес openid сервера
            публичный ключ
            данные для других протоколов




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
OpenID/OAuth - протоколы аутентификации и авторизации



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




     Пример openid адреса:
     http://zag.myopenid.com/




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Адрес OpenID сервера в профиле XRD

           §                                                                 ¤
               1   <?xml version="1.0" encoding="UTF-8"?>
               2   <XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0">
               3     <Subject>acct:zag@status.net</Subject>
               4     <Link rel="http://microformats.org/profile/hcard"
               5     type="text/html" href="http://zag.status.net/hcard"/>
               6     <Link rel="salmon" href="http://zag.status.net/main/
                          salmon/user/1"/>
               7     <Link rel="http://salmon-protocol.org/ns/salmon-
                          replies"
               8     href="http://zag.status.net/main/salmon/user/1"/>
               9     <Link rel="http://specs.openid.net/auth/2.0/provider"
             10      href="http://zag.status.net/zag"/>
             11    </XRD>
           ¦                                                                 ¥

     Адрес OpenID сервера:
           §                                                                 ¤
               1    <Link rel="http://specs.openid.net/auth/2.0/provider"
               2    href="http://zag.status.net/zag"/>
           ¦                                                                 ¥

Открытые протоколы - основа распеределеннх социальных сетей.           Александр Загацкий
Простой способ ввода OpenID




     Из исходного:

         zag@status.net


     Получили адрес OpenID сервера:
     http://zag.status.net/zag




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
pubsubhubbub - протокол подписки/публикации обновлений




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Опрос ресурсов для обновлений

     Обычная структура




     Недостаток: излишняя нагрузка на источник

Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Снижение нагрузки на исходный сайт


     Уведомления о новых записях




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Возможные схемы распределенных структур




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Salmon protocol




     Salmon - протокол обмена сообщениями с проверкой
     подлинности отправителя




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Определение salmon-endpoint


     Atom/RSS ссылка:
           §                                                                ¤
               1      <link rel="salmon" href="http://example.org/salmon-
                           endpoint"/>
           ¦                                                                ¥

     XRD:
           §                                                                ¤
               1    <Link rel="salmon" href="http://zag.status.net/main/
                         salmon/user/1"/>
               2    <Link rel="http://salmon-protocol.org/ns/salmon-
                         replies"
               3    href="http://zag.status.net/main/salmon/user/1"/>
           ¦                                                                ¥




Открытые протоколы - основа распеределеннх социальных сетей.          Александр Загацкий
Salmon - алгоритм взаимодействия




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
XMPP и Portable Contacts




     Также:
            XMPP
     Выступает в качестве транспорта
            Portable Contacts
     Сервис доступа к адресной книге ( OAuth )




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Открытые распределенные сети



     С чего начать знакомство ?
            StatusNet
     Платформа для микроблоггинга StatusNet. http://status.net/
            Diaspora
     Социальная сеть Diaspora. http://www.joindiaspora.com/
            OneSocialWeb
     Социальная сеть OneSocialWeb, построенная на основе
     протокола XMPP. http://onesocialweb.org/




Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий
Вопросы

     Вопросы ?




            The Hammer Stack http://hueniverse.com/2009/11/the-
            discovery-protocol-stack-redux/
            "Социальные API и протоколы". Загацкий А.
            http://writeat.com/zag/social-book/
            home page, mail http://zag.ru, zag(at)cpan.org

Открытые протоколы - основа распеределеннх социальных сетей.   Александр Загацкий

Weitere ähnliche Inhalte

Ähnlich wie Open protocols as base for social distributed networks

МАИ, Сети ЭВМ, Лекция №7
МАИ, Сети ЭВМ, Лекция №7МАИ, Сети ЭВМ, Лекция №7
МАИ, Сети ЭВМ, Лекция №7Dima Dzuba
 
Web осень 2013 лекция 3
Web осень 2013 лекция 3Web осень 2013 лекция 3
Web осень 2013 лекция 3Technopark
 
Open Data for Government and University
Open Data for Government and UniversityOpen Data for Government and University
Open Data for Government and UniversityIrina Radchenko
 
Что надо знать о HTTP/2
Что надо знать о HTTP/2Что надо знать о HTTP/2
Что надо знать о HTTP/2Badoo Development
 
DUMP-2013 Наука и жизнь - Практические применения семантических вычислений - ...
DUMP-2013 Наука и жизнь - Практические применения семантических вычислений - ...DUMP-2013 Наука и жизнь - Практические применения семантических вычислений - ...
DUMP-2013 Наука и жизнь - Практические применения семантических вычислений - ...it-people
 
JavaScript Базовый. Занятие 08.
JavaScript Базовый. Занятие 08.JavaScript Базовый. Занятие 08.
JavaScript Базовый. Занятие 08.Igor Shkulipa
 
Миграция Web-проекта в облако. И.Гальцев.
Миграция Web-проекта в облако. И.Гальцев.Миграция Web-проекта в облако. И.Гальцев.
Миграция Web-проекта в облако. И.Гальцев.Clouds NN
 
Доставка данных в реальном времени.
Доставка данных в реальном времени. Доставка данных в реальном времени.
Доставка данных в реальном времени. beshkenadze
 
07 - Web-технологии. Web-сервера
07 - Web-технологии. Web-сервера07 - Web-технологии. Web-сервера
07 - Web-технологии. Web-сервераRoman Brovko
 
MIPT Course - DAC and MAC
MIPT Course - DAC and MACMIPT Course - DAC and MAC
MIPT Course - DAC and MACAlexey Vasyukov
 
Михаил Давыдов "Масштабируемые JavaScript-приложения"
Михаил Давыдов "Масштабируемые JavaScript-приложения"Михаил Давыдов "Масштабируемые JavaScript-приложения"
Михаил Давыдов "Масштабируемые JavaScript-приложения"Yandex
 
Опенсорс-инструменты на страже безопасности бэкенда — Петр Волков
Опенсорс-инструменты на страже безопасности бэкенда — Петр ВолковОпенсорс-инструменты на страже безопасности бэкенда — Петр Волков
Опенсорс-инструменты на страже безопасности бэкенда — Петр ВолковYandex
 
Пост-эксплуатация веб-приложений в тестах на проникновение
Пост-эксплуатация веб-приложений в тестах на проникновениеПост-эксплуатация веб-приложений в тестах на проникновение
Пост-эксплуатация веб-приложений в тестах на проникновениеbeched
 
Этичный хакинг или пентестинг в действии
Этичный хакинг или пентестинг в действииЭтичный хакинг или пентестинг в действии
Этичный хакинг или пентестинг в действииSQALab
 
Open stack в 2ГИС
Open stack в 2ГИСOpen stack в 2ГИС
Open stack в 2ГИСDenis Honig
 
Phalcon - самый быстрый PHP Framework
Phalcon - самый быстрый PHP FrameworkPhalcon - самый быстрый PHP Framework
Phalcon - самый быстрый PHP FrameworkOleksandr Torosh
 

Ähnlich wie Open protocols as base for social distributed networks (20)

МАИ, Сети ЭВМ, Лекция №7
МАИ, Сети ЭВМ, Лекция №7МАИ, Сети ЭВМ, Лекция №7
МАИ, Сети ЭВМ, Лекция №7
 
Web осень 2013 лекция 3
Web осень 2013 лекция 3Web осень 2013 лекция 3
Web осень 2013 лекция 3
 
Open Data for Government and University
Open Data for Government and UniversityOpen Data for Government and University
Open Data for Government and University
 
Что надо знать о HTTP/2
Что надо знать о HTTP/2Что надо знать о HTTP/2
Что надо знать о HTTP/2
 
DUMP-2013 Наука и жизнь - Практические применения семантических вычислений - ...
DUMP-2013 Наука и жизнь - Практические применения семантических вычислений - ...DUMP-2013 Наука и жизнь - Практические применения семантических вычислений - ...
DUMP-2013 Наука и жизнь - Практические применения семантических вычислений - ...
 
JavaScript Базовый. Занятие 08.
JavaScript Базовый. Занятие 08.JavaScript Базовый. Занятие 08.
JavaScript Базовый. Занятие 08.
 
Миграция Web-проекта в облако. И.Гальцев.
Миграция Web-проекта в облако. И.Гальцев.Миграция Web-проекта в облако. И.Гальцев.
Миграция Web-проекта в облако. И.Гальцев.
 
Доставка данных в реальном времени.
Доставка данных в реальном времени. Доставка данных в реальном времени.
Доставка данных в реальном времени.
 
The Best Portlet
The Best PortletThe Best Portlet
The Best Portlet
 
HTTP протокол
HTTP протоколHTTP протокол
HTTP протокол
 
07 - Web-технологии. Web-сервера
07 - Web-технологии. Web-сервера07 - Web-технологии. Web-сервера
07 - Web-технологии. Web-сервера
 
MIPT Course - DAC and MAC
MIPT Course - DAC and MACMIPT Course - DAC and MAC
MIPT Course - DAC and MAC
 
Михаил Давыдов "Масштабируемые JavaScript-приложения"
Михаил Давыдов "Масштабируемые JavaScript-приложения"Михаил Давыдов "Масштабируемые JavaScript-приложения"
Михаил Давыдов "Масштабируемые JavaScript-приложения"
 
Опенсорс-инструменты на страже безопасности бэкенда — Петр Волков
Опенсорс-инструменты на страже безопасности бэкенда — Петр ВолковОпенсорс-инструменты на страже безопасности бэкенда — Петр Волков
Опенсорс-инструменты на страже безопасности бэкенда — Петр Волков
 
Internet Explorer 8
Internet Explorer 8Internet Explorer 8
Internet Explorer 8
 
Пост-эксплуатация веб-приложений в тестах на проникновение
Пост-эксплуатация веб-приложений в тестах на проникновениеПост-эксплуатация веб-приложений в тестах на проникновение
Пост-эксплуатация веб-приложений в тестах на проникновение
 
Этичный хакинг или пентестинг в действии
Этичный хакинг или пентестинг в действииЭтичный хакинг или пентестинг в действии
Этичный хакинг или пентестинг в действии
 
Open stack в 2ГИС
Open stack в 2ГИСOpen stack в 2ГИС
Open stack в 2ГИС
 
Dapper + QueryObject
Dapper + QueryObjectDapper + QueryObject
Dapper + QueryObject
 
Phalcon - самый быстрый PHP Framework
Phalcon - самый быстрый PHP FrameworkPhalcon - самый быстрый PHP Framework
Phalcon - самый быстрый PHP Framework
 

Mehr von Транслируем.бел

Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)Транслируем.бел
 
Корпоративный новый год онлайн
Корпоративный новый год онлайнКорпоративный новый год онлайн
Корпоративный новый год онлайнТранслируем.бел
 
Руководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решенийРуководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решенийТранслируем.бел
 
Онлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетяхОнлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетяхТранслируем.бел
 
Как организовать трансляцию в Facebook
Как организовать трансляцию в FacebookКак организовать трансляцию в Facebook
Как организовать трансляцию в FacebookТранслируем.бел
 
Что сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделыватьЧто сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделыватьТранслируем.бел
 
Когда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений КравченкоКогда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений КравченкоТранслируем.бел
 
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособиеSMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособиеТранслируем.бел
 
методы монетизации интернет проектов
методы монетизации интернет проектовметоды монетизации интернет проектов
методы монетизации интернет проектовТранслируем.бел
 

Mehr von Транслируем.бел (20)

Медицинские трансляции
Медицинские трансляцииМедицинские трансляции
Медицинские трансляции
 
Vinteo
VinteoVinteo
Vinteo
 
Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)Руководство по видео, трансляциям и премьерам (Youtube 2020)
Руководство по видео, трансляциям и премьерам (Youtube 2020)
 
Корпоративный новый год онлайн
Корпоративный новый год онлайнКорпоративный новый год онлайн
Корпоративный новый год онлайн
 
Unofficial guide to vmix by streamgeeks
Unofficial guide to vmix by streamgeeksUnofficial guide to vmix by streamgeeks
Unofficial guide to vmix by streamgeeks
 
Руководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решенийРуководство для малого и среднего бизнеса по использованию цифровых решений
Руководство для малого и среднего бизнеса по использованию цифровых решений
 
Sennheiser ew100 g2
Sennheiser ew100 g2Sennheiser ew100 g2
Sennheiser ew100 g2
 
Sony mcs 8m
Sony mcs 8mSony mcs 8m
Sony mcs 8m
 
Сравнение поколений Y и Z
Сравнение поколений Y и ZСравнение поколений Y и Z
Сравнение поколений Y и Z
 
Онлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетяхОнлайн-трансляции в соцсетях
Онлайн-трансляции в соцсетях
 
Как организовать трансляцию в Facebook
Как организовать трансляцию в FacebookКак организовать трансляцию в Facebook
Как организовать трансляцию в Facebook
 
The ultimate guide to facebook live for your event
The ultimate guide to facebook live for your eventThe ultimate guide to facebook live for your event
The ultimate guide to facebook live for your event
 
Guide to facebook live
Guide to facebook liveGuide to facebook live
Guide to facebook live
 
Comdi player
Comdi playerComdi player
Comdi player
 
Что сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделыватьЧто сделать, чтобы сто раз все не переделывать
Что сделать, чтобы сто раз все не переделывать
 
Когда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений КравченкоКогда сказать нет. Арсений Кравченко
Когда сказать нет. Арсений Кравченко
 
Marketing Essentials for Startup Teams
Marketing Essentials for Startup TeamsMarketing Essentials for Startup Teams
Marketing Essentials for Startup Teams
 
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособиеSMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
SMM учебник. Как продвигать банк в социальных сетях. Наглядное пособие
 
методы монетизации интернет проектов
методы монетизации интернет проектовметоды монетизации интернет проектов
методы монетизации интернет проектов
 
Belarus internet users discovery
Belarus internet users discoveryBelarus internet users discovery
Belarus internet users discovery
 

Open protocols as base for social distributed networks

  • 1. Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий lvee
  • 2. 11 апреля - судный день Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 3. SkyNet Goes Online Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 4. 11 апреля Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 5. 11 апреля Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 6. foursquare - down социальная сеть с функцией геопозиционирования Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 7. hotsuite - down "панель управления" социальными сервисами Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 8. quora - down социальный сервис обмена знаниями Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 9. reddit - down социальный новостной сайт Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 10. FriendFeed - down агрегатор информации из различных социальных сетей Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 11. Тут были мои заметки Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 12. Так сохранился сайт в кэше Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 13. Интернет не работает В ожидании когда заработает Internet Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 14. Сервисы могут быть куплены Письмо от Yahoo! о продаже Delicious Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 15. Сервисы могут неожиданно закрыться Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 16. Распределенные сети Основные черты программное обспечение установлено на доверенном сервере контроль над распространением информации безопасный обмен информацией между узлами данные сохраняются на персональном сервере собственные группы пользователей и политика распространения информации никаких пользовательских соглашений. Ваша информация остается вашей :-) Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 17. Протоколы и форматы О чем пойдет речь: Atom/RSS WebFinder OpenID/OAuth Pubsubhubbub ActivityStreams Salmon XMPP Portable Contacts Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 18. Atom Формат синдикации Atom позволяет описывать наборы веб-ресурсов основан на XML и расширяем современная замена RSS является контейнером для других форматов Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 19. Пример Atom § ¤ 1 <?xml version="1.0" encoding="utf-8"?> 2 <feed xmlns="http://www.w3.org/2005/Atom"> 3 <title>Example Feed</title> 4 <link href="http://example.org/"/> 5 <updated>2003-12-13T18:30:02Z</updated> 6 <author> 7 <name>John Doe</name> 8 </author> 9 <id>urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6</ id> 10 <entry> 11 <title>Atom-Powered Robots Run Amok</title> 12 <link href="http://example.org/2003/12/13/atom03" /> 13 <id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a </id> 14 <updated>2003-12-13T18:30:02Z</updated> 15 <summary>Some text.</summary> 16 </entry> 17 </feed> ¦ ¥ Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 20. ActivityStreams - cоциальная активность Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 21. Иван Васильевич меняет профессию Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 22. WebFinger Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 23. WebFinger - набор технологий и форматов The Hammer Stack Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 24. Webfinger - цель профиль пользователя LRRD - Link-based Resource Descriptor Discovery protocol Начнем с адреса: zag@status.net Определяем LRRD адрес: http://status.net/.well-known/host-meta Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 25. Webfinger - цель профиль пользователя curl http://status.net/.well-known/host-meta § ¤ 1 <?xml version="1.0" encoding="UTF-8"?> 2 <XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0" 3 xmlns:hm="http://host-meta.net/xrd/1.0"> 4 <hm:Host>status.net</hm:Host> 5 <Link rel="lrdd" template="http://status.net/xrd?uri ={uri}"> 6 <Title>Resource Descriptor</Title> 7 </Link> 8 </XRD> ¦ ¥ Интерес представляет: http://status.net/xrd?uri={uri} Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 26. Webfinger - цель профиль пользователя Берем: zag@status.net Добавляем acct: acct:zag@status.net Адрес для запроса XRD: http://status.net/xrd?uri=acct:zag@status.net Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 27. Extensible Resource Descriptor (XRD) curl http://status.net/xrd?uri=acct:zag@status.net § ¤ 1 <?xml version="1.0" encoding="UTF-8"?> 2 <XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0"> 3 <Subject>acct:zag@status.net</Subject> 4 <Link rel="http://webfinger.net/rel/profile-page" 5 type="text/html" href="http://zag.status.net/zag"/> 6 <Link rel="http://microformats.org/profile/hcard" 7 type="text/html" href="http://zag.status.net/hcard"/> 8 <Link rel="salmon" href="http://zag.status.net/main/ salmon/user/1"/> 9 <Link rel="http://salmon-protocol.org/ns/salmon- replies" 10 href="http://zag.status.net/main/salmon/user/1"/> 11 <Link rel="magic-public-key" 12 href="data:application/magic-public-key,RSA.(...)c=. AQAB"/> 13 <Link rel="http://ostatus.org/schema/1.0/subscribe" 14 template="http://zag.status.net/main/ostatussub? profile={uri}"/> 15 <Link rel="http://specs.openid.net/auth/2.0/provider" 16 href="http://zag.status.net/zag"/> 17 </XRD> ¦ ¥ Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 28. XRD XRD содержит много полезной информации о пользователе: адрес openid сервера публичный ключ данные для других протоколов Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 29. OpenID/OAuth - протоколы аутентификации и авторизации Позволяют повысить безопасность при взаимодействии нескольких независимых сервисов. Пример openid адреса: http://zag.myopenid.com/ Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 30. Адрес OpenID сервера в профиле XRD § ¤ 1 <?xml version="1.0" encoding="UTF-8"?> 2 <XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0"> 3 <Subject>acct:zag@status.net</Subject> 4 <Link rel="http://microformats.org/profile/hcard" 5 type="text/html" href="http://zag.status.net/hcard"/> 6 <Link rel="salmon" href="http://zag.status.net/main/ salmon/user/1"/> 7 <Link rel="http://salmon-protocol.org/ns/salmon- replies" 8 href="http://zag.status.net/main/salmon/user/1"/> 9 <Link rel="http://specs.openid.net/auth/2.0/provider" 10 href="http://zag.status.net/zag"/> 11 </XRD> ¦ ¥ Адрес OpenID сервера: § ¤ 1 <Link rel="http://specs.openid.net/auth/2.0/provider" 2 href="http://zag.status.net/zag"/> ¦ ¥ Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 31. Простой способ ввода OpenID Из исходного: zag@status.net Получили адрес OpenID сервера: http://zag.status.net/zag Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 32. pubsubhubbub - протокол подписки/публикации обновлений Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 33. Опрос ресурсов для обновлений Обычная структура Недостаток: излишняя нагрузка на источник Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 34. Снижение нагрузки на исходный сайт Уведомления о новых записях Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 35. Возможные схемы распределенных структур Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 36. Salmon protocol Salmon - протокол обмена сообщениями с проверкой подлинности отправителя Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 37. Определение salmon-endpoint Atom/RSS ссылка: § ¤ 1 <link rel="salmon" href="http://example.org/salmon- endpoint"/> ¦ ¥ XRD: § ¤ 1 <Link rel="salmon" href="http://zag.status.net/main/ salmon/user/1"/> 2 <Link rel="http://salmon-protocol.org/ns/salmon- replies" 3 href="http://zag.status.net/main/salmon/user/1"/> ¦ ¥ Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 38. Salmon - алгоритм взаимодействия Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 39. XMPP и Portable Contacts Также: XMPP Выступает в качестве транспорта Portable Contacts Сервис доступа к адресной книге ( OAuth ) Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 40. Открытые распределенные сети С чего начать знакомство ? StatusNet Платформа для микроблоггинга StatusNet. http://status.net/ Diaspora Социальная сеть Diaspora. http://www.joindiaspora.com/ OneSocialWeb Социальная сеть OneSocialWeb, построенная на основе протокола XMPP. http://onesocialweb.org/ Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
  • 41. Вопросы Вопросы ? The Hammer Stack http://hueniverse.com/2009/11/the- discovery-protocol-stack-redux/ "Социальные API и протоколы". Загацкий А. http://writeat.com/zag/social-book/ home page, mail http://zag.ru, zag(at)cpan.org Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий