Bitsocial і ActivityPub
ActivityPub — стандарт W3C, на якому працює Fediverse. Користувачі обирають сервер, який називають інстансом і який розміщує їхній обліковий запис, а сервери обмінюються дописами між собою. Mastodon — найвідоміше мікроблогове програмне забезпечення Fediverse; Lemmy — агрегатор посилань і форум у стилі Reddit, побудований із тематичних спільнот, що робить його найближчим відповідником у Fediverse для застосунків Bitsocial, як-от Seedit.
Як працює ActivityPub
- Вхідні та вихідні скриньки. Кожен обліковий запис має вхідну й вихідну скриньку. Сервери доставляють активності у вхідні скриньки на інших серверах, і кожен сервер-одержувач зберігає власну копію того, на що підписані його користувачі.
- Ідентичність, що належить серверу. Ідентифікатори облікових записів і дописів — це HTTPS-адреси
на домені сервера-джерела. Адреса в Mastodon має вигляд
@user@domainі визначається через WebFinger, а сервер підписує федеративні повідомлення від імені користувача. - Клієнти. Застосунки й браузери спілкуються лише з власним сервером користувача через API цього сервера.
- Спільноти Lemmy. Спільнота — це груповий актор, розміщений на одному інстансі. Користувачі надсилають дописи до спільноти, а вона ретранслює їх своїм підписникам; за спільним стандартом форумів (FEP-1b12) спільнота може спершу перевіряти дописи, аж до ручного схвалення модераторами.
- Модерація. Модерація локальна для кожного сервера. Адміністратори можуть призупиняти облікові записи, блокувати цілі сервери або федеруватися лише за списком дозволених; у Lemmy також є модератори для кожної спільноти.
- Захист від спаму. ActivityPub не визначає жодного антиспам-механізму. Mastodon і Lemmy обмежують реєстрацію схваленням, запрошеннями, анкетними питаннями, капчами та перевіркою електронної пошти, а далі покладаються на обмеження частоти, скарги й модерацію.
Чим вони відрізняються
Ідентичність належить домену
Обліковий запис у Fediverse належить домену свого сервера. Mastodon може перенаправити підписників на новий обліковий запис, але дописи не переносяться, перенесення має починатися зі старого сервера, і діє 30-денний період очікування. У Bitsocial профілі та спільноти — це пари ключів, тож зміна хоста чи застосунку не змінює ідентичності. Див. Ідентичність і власність спільноти.
Де живе спільнота
Спільнота Lemmy структурно близька до спільноти Bitsocial: дописи надходять до спільноти, яка може перевірити їх перед ретрансляцією. Різниця в тому, де вона живе. Спільноту Lemmy можна створити лише на домашньому інстансі її творця, адміністратор інстансу має повний контроль над нею, і задокументованого способу перенести її на інший інстанс немає. Спільнота Bitsocial — це власна пара ключів: власник може запускати її вузол будь-де, і над нею не стоїть жоден адміністратор сервера.
Захист від спаму
Сервери Fediverse здебільшого зупиняють спам на етапі реєстрації, а потім модерують. Спільнота Bitsocial проводить перевірку для кожного допису, перш ніж його прийняти, і кожна спільнота обирає власну: капчу, список дозволених, оплату чи будь-який інший код. Див. Спеціальні виклики захисту від спаму.
Утримання інфраструктури
Утримувати інстанс означає тримати постійно ввімкнений сервер із доменом, TLS та електронною поштою.
Mastodon також потребує PostgreSQL, Redis і фонових обробників; Lemmy легший — за власними даними,
близько 150 МБ оперативної пам’яті. Кожен інстанс зберігає копії віддаленого вмісту, на який підписані
його користувачі. Вузлу спільноти Bitsocial не потрібні ні домен, ні сертифікат, і він працює з
десктопного застосунку або bitsocial-cli.
Що сервери дають натомість
Сервери Fediverse зберігають повну історію та надійно її віддають, а Mastodon має зрілі інструменти модерації, напрацьовані роками. Bitsocial не гарантує збереження старого вмісту назавжди, а його інструменти модерації живуть у кожному застосунку.
Порівняння
| Питання | ActivityPub (Mastodon, Lemmy) | Bitsocial |
|---|---|---|
| Категорія | Федеративні сервери | Однорангова мережа спільнот |
| Ідентичність | Обліковий запис на домені сервера, підписаний сервером | Пари ключів Ed25519 для користувачів і спільнот |
| Де зберігаються дописи | Сервер-джерело плюс копії на кожному сервері, що підписаний | Вузол власника спільноти та вузли, які її читають і роздають |
| Хто тримає це онлайн | Адміністратори інстансів | Вузол власника спільноти плюс допоміжні сідери |
| Спільноти | Спільноти Lemmy, розміщені на одному інстансі | Повноцінні об’єкти, чий вузол приймає або відхиляє дописи |
| Захист від спаму | Бар’єри під час реєстрації, обмеження частоти, скарги та модерація | Антиспам-перевірка кожної спільноти перед прийняттям допису |
| Модерація | Адміністратори серверів і модератори спільнот, локально на кожному сервері | Власники спільнот модерують свої спільноти; застосунки вирішують, що показувати |
| Імена | Адреси @user@domain і !community@domain | Імена .bso і .eth, які вказують на ключі |
| Браузер | Клієнт власного сервера користувача | Одноранговий вузол у звичайній вкладці браузера |
| Головний компроміс | Надійна історія та зріла модерація, але ідентичність і спільноти належать серверу | Не потрібні ні сервер, ні домен, але старий вміст не гарантований назавжди |