TGViewer
Джун на фронте | IT Dev Log Джун на фронте | IT Dev Log @divatoz · 7.43K subscribers
Post #1344 1.84K
Джун на фронте | IT Dev Log Рабочий дневник: День 117 Делаем чат без WebSocket Короче, хотят P2P-чаты в апку добавить, как в Telegram. Но без центрального сервера и с шифрованием к уже существующим требованиям. Мы подумали: сейчас прикрутим end-to-end — и готово. Но вот проблема:…
Рабочий дневник: День 131
Делаем чат без сервера, часть 2

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

После изучения XMTP мы нашли еще одно интересное решение для P2P — протокол Waku от Status Network.

☝️ Это штука для децентрализованных коммуникаций в Web3, которое не требует привязки к Ethereum кошельку и работает бесплатно, без регистраций.

💡 Основное отличие от XMTP заключается в уровне абстракции этого решения. Если вы читали Таненбаума, то знакомы с сетевой моделью OSI, на которой строится интернет. Она делится на несколько уровней.

XMTP работает на прикладном (7) уровне — это готовое решение для чатов со встроенным шифрованием и идентификацией через ETH адреса.

Waku-же находится на транспортном (4) уровне, что делает его более гибким инструментом для создания своих решений.

⚙️ Если XMTP можно сравнить с готовым WhatsApp, то Waku — это конструктор для создания собственного мессенджера.

Он даёт базовый транспорт сообщений через систему топиков и нод, позволяя разработчикам самим выбирать способы шифрования и авторизации.

⌛ Обмен сообщениями в сети Waku работает следующим образом: создается легкая нода в браузере, которая подключается к P2P сети «тяжелых нод».

Затем сообщения передаются через выбранный топик (канал), и все его участники автоматически получают обновления. Вот как это выглядит в коде c waku/sdk:

const node = await createLightNode()
await node.start()

const chatTopic = `/myapp/${crypto.randomUUID()}`
const encoder = createEncoder({ contentTopic: chatTopic })

// Отправка сообщения
await node.lightPush.send(encoder, {
payload: encryptMessage("Привет, Waku!")
})

// Получение новых сообщений
node.subscribe(chatTopic, message => {
console.log(decryptMessage(message))
})


🛡 В плане безопасности Waku даёт все необходимые инструменты: end-to-end для шифрования, ZKP для анонимных чатов, уведомления, хранение тп и тд…

Но все же самое главное — отсутствие центральной точки отказа, что делает систему устойчивой к цензуре!

📊 #статистика День 1148 == 2430 час в IT
YouTube How to implement Chat App using Waku ⚡ | Latest 🔥 Are you looking to "How to build chat application into you DApp". Here we have Waku protocol one of interesting projects in web3 ecosystem. What is Waku: A family of robust, censorship-resistant communication protocols designed to enable privacy-focused…
  • 🔥 14
  • 👍 3
  • ❤ 2
More from @divatoz
  1. Sep 30, 2026Рабочий дневник: День 568 Как я mcdis.ru верстал 🚬 Сегодня расскажу про процессы, а не пр…
  2. Sep 29, 2026ну в целом, пока что удивительно блеклая презентация. клон Muse/Grok-bot, подписка за $500…
  3. Sep 26, 2026ИИ официально стоит дороже чем марихуана и фентанил, а через два года станет дороже кокаин…
  4. Sep 25, 2026Как я этот пост на год подписки обменял С поста про расшифровку созвонов ко мне пришёл мар…
  5. Sep 18, 2026Как Я/Мы platform-explorer.com релизим 😎 Версия релиза 2.4.0 была хороша, но впереди была…
  6. Sep 16, 2026Помните, мы писали про то, что компании платят авторам контента за рассказы об опасностях…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →