Giter Site home page Giter Site logo

nostr's Introduction

Библиотека основана на ресурсах сообщества и поддерживается основателями проектов 21 идея и Биткоин абстракцион.

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

@Tony - npub10awzknjg5r5lajnr53438ndcyjylgqsrnrtq5grs495v42qc6awsj45ys7

@almoo - npub1zvvv8fm7w2ngwdyszg3y6zgp6vwqlht8zrr8wcmjaxjecrvpjfwsd0zs7w

Все, что нужно знать о Биткоине: https://21ideas.org/

Оглавление:

  1. Что такое Nostr?
  2. Ключи
  3. Менеджмент ключей Nostr
  4. Клиенты
  5. Обозреватели релеев
  6. Генераторы Vanity адресов
  7. Инструменты
  8. Дополнительные ресурсы
  9. Создание и настройка профиля Nostr
  1. Биткоин-онли ресурсы
  2. Поддержать проект

Nostriches everywhere Изображение украдено у Егора Петрова (публичный ключ: npub1z4m7gkva6yxgvdyclc7zp0vz4ta0s2d9jh8g83w03tp5vdf3kzdsxana6p)



🧐 Что такое Nostr?

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

  • Он не зависит от какого-либо доверенного центрального сервера, поэтому он устойчив к цензуре.
  • Он основан на криптографических ключах и подписях, поэтому он устойчив к взлому.

Конструкция nostr очень проста

  • Есть два компонента: клиенты и релеи (ретрансляторы). Каждый пользователь запускает клиент. Любой пользователь может управлять ретранслятором.
  • Каждый пользователь идентифицируется с помощью открытого ключа. Каждое сообщение подписывается. Каждый клиент проверяет эти подписи.
  • Клиенты получают данные от выбранных ими релеев и публикуют данные другим релеям на свой выбор. Релеи не общаются с другими релеями, только напрямую с пользователями.

Чтобы использовать nostr, вам потребуется ключ и клиент

  • Каждый использует свой клиент. Это может быть нативный клиент, веб-клиент и т.д.
  • Чтобы опубликовать что-то, вы пишете сообщение, подписываете его своим ключом и отправляете на несколько релеев (серверов, размещенных кем-то другим или вами).
  • Чтобы получить обновления от других людей, вы спрашиваете у нескольких релеев, знают ли они что-нибудь об активности этих пользователей в сети.
  • Любой желающий может управлять релеем. Релей очень прост и даже глуп. Он не делает ничего, кроме как принимает сообщения от одних пользователей и пересылает их другим.
  • Релеи не требуют доверия. Подписи проверяются на стороне клиента.

🗝️ Ключи

Ваши ключи – это ваша личность. Вы можете считать свой открытый ключ (npub...) своим именем пользователя, а свой закрытый ключ (nsec...) – своим паролем.

⚠️ Не вставляйте свой закрытый ключ в поля на веб-сайтах ⚠️

🔒 Храните ключи в безопасном месте и не делитесь своим закрытым ключом 🔒

Ключи существуют в двух форматах – шестнадцатеричном hex и вышеупомянутом npub/nsec. Для преобразования между этими двумя форматами можно использовать [инструмент конвертации ключей](damus.io/key](https://damus.io/key/).


🔐 Менеджмент ключей Nostr

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

  • Nos2x — расширение от @fiatjaf, создателя протокола Nostr
  • Alby — расширение для браузерных Lightning платежей с встроенной поддержкой Nostr

Расширения работают локально, так что генерируйте свой ключ, отключив интернет, и сохраняйте физический бэкап вашей пары.


📱 Клиенты

Клиенты – это просто приложения, через которые вы можете взаимодействовать с протоколом Nostr. Подобно тому, как вы можете скачать разные приложения для взаимодействия с Telegram или Twitter. Периодически заглядывайте на nostr.net, где хранится список клиентов, а также обратите внимание на сравнительную таблицу клиентов.

Web

Android

iOS


📥 Обозреватели релеев

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


🧮 Генераторы Vanity адресов

Генераторы Vanity адресов позволяют создать публичный ключ Nostr, который будет начинаться c выбранных вами символов (или заканчиваться ими). Такая утилита позволяет добавить немного персонализации вашему адресу. Учтите, что чем больше символов вы хотите указать, тем больше времени займет Proof-of-Work генерация такого адреса (зависит от мощности вашего компьютера).

Например, поиск

Одного символа может занять до 0.1 секунды

Двух - до 1 секунды

Трех - до 30 секунд

Четырех - до 10 минут

Пяти - до часа

Хотите подобрать шесть символов? Несите огнетушитель и да поможет вам бог!

  • hitony.com — bech32 генератор (npub1)
  • nostr.rest — генератор адресов через хеширование

🛠️ Инструменты

Nostr не ограничивается социальными сетями, ведь он способен на многое.

  • Sendstr - буфер обмена между устройствами через Nostr
  • Nosbin - pastebin через Nostr

📚 Дополнительные ресурсы

Больше информации о протоколе Nostr можно узнать здесь:


🦤 Cоздание и настройка профиля Nostr

Создание и настройка профиля Nostr от генерации ключей, до настройки верификации NIP-05.

В этом гиде "по существу" пройдем все шаги настройки вместе. Приступим!

Генерация ключей

Ключи Nostr можно сгенерировать в (практически) любом клиенте. Если вы выбираете нативный клиент для iOS или Android, то генерируйте свою пару ключей внутри клиентов. В редких случаях возможность генерации в клиенте может отсутствовать, тогда генерируйте свою пару с помощью расширений Alby или Nos2x.

Nos2x-pic Интерфейс Nos2x. Напротив поля private key: нажимаем клавижу generate

Не забывайте выключать интернет при генерации ключа, а так же делайте физический бэкап.

Выбор клиента

На выбор есть 2 вида клиентов: нативные и веб-клиенты, запускаемые через браузер. Используйте любой, какой будет удобен именно вам.

Список клиентов доступен выше

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

Подключение к релеям

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

Если добавить слишком мало релеев, то вы мало что увидите. Если добавить слишком много, то клиент будет «сжирать» весь ваш трафик и перенагружать вашу сеть. В идеале, рекомендуется подключаться к 10-15 наиболее популярным релеям.

Где их взять?

nostr-watch-screen

Выбирайте релеи с высоким параметром Uptime и с низкой задержкой Avg. Latency

Чтобы скопировать адрес для подключения, зайдите на страницу конкретного релея и скопируйте адрес, начинающийся с wss://

К примеру, адрес первого релея из списка на скриншоте выше будет выглядеть следующим образом: wss://nostr.handyjunky.com — по этому адресу и происходит подключение к релею.

Чтобы сделать все еще проще, можете использовать несколько из отобранных мной адресов:

  • wss://brb.io

  • wss://eden.nostr.land

  • wss://no.str.cr

  • wss://relayer.fiatjaf.com

  • wss://rsslay.fiatjaf.com

  • wss://expensive-relay.fiatjaf.com

  • wss://nostr.zebeedee.cloud

  • wss://nostr-2.zebeedee.cloud

  • wss://nostr.bitcoiner.social

  • wss://nostr.mom

  • wss://nostr.orangepill.dev

  • wss://nostr.rocks

  • wss://relay.damus.io

  • wss://nostr.walletofsatoshi.com

  • wss://relay.nostr.info

  • wss://relay.snort.social

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

Relays-list На странице пользователя можно найти релеи, к которым он подключен

На скриншоте выше показаны релеи, к которым подключен @almoo. Подписывайтесь и смотрите, а так же пишите ваши вопросы по гиду нам в личные сообщения.

Наши публичные ключи:

@almoo - npub1zvvv8fm7w2ngwdyszg3y6zgp6vwqlht8zrr8wcmjaxjecrvpjfwsd0zs7w

@Tony - npub10awzknjg5r5lajnr53438ndcyjylgqsrnrtq5grs495v42qc6awsj45ys7

Настройка профиля

Profile-Damus Страница настройки профиля в клиенте Damus

В качестве примера возьмем клиент Damus, как показано на скриншоте выше.

  • Your name: Ваше имя, которое будет указываться в профиле

  • Username: ваш @username

  • Profile picture: Сюда вставляем прямой URL на изображение, которое будет выступать в качестве аватара.

  • Banner Image: Сюда вставляем прямой URL на изображение, которое будет отображаться как баннер профиля (на месте страусов, на картинке выше)

  • Website: Ссылка на ваш сайт для отображения в профиле (опционально)

  • About me: Тут все понятно — ваше био. Тоже опционально.

  • Bitcoin Lightning Tips: Сюда вставляем ваш Lightning Address (подробнее о них - в этом посте) или LNURL адрес, который будет отображаться в профиле иконкой ⚡️, и на который любой желающий сможет отправить саты. Получить Lightning адрес можно, к примеру, на getalby.com при создании аккаунта. К слову, если получить LN адрес в Alby, то вы одним выстрелом убьете 2х зайцев. Какой второй заяц? Читайте далее.

Не вставляйте в это поле ончейн-адреса или lightning инвойсы. Они не будут работать. После того как вы внесли адрес в графу, попробуйте отправить пару сатош самому себе через страницу профиля, чтобы убедиться, что все работает.

LN-Temptation

  • NIP-05 Verification: Эту графу добавим позже, после настройки NIP-05 верификации.

Загрузка изображений

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

Если вы хотите загрузить картинку в свой профиль или прикрепить её к посту, необходимо получить прямой URL-адрес картинки, который будет оканчиваться расширением файла. К примеру "mywebsite.com/моя_картинка.jpg" — как видите, в конце находится расширение файла, значит он будет отображаться в клиенте Nostr.

nostr-build-screen Сайт nostr.build для загрузки ваших изображений

Вы можете загружать фото абсолютно на любой сервис, но для начала можете воспользоваться сайтом nostr.build — он не только позволяет загрузить ваше фото с устройства или через ссылку из интернета, но так же удаляет все метаданные из файла. Вы можете загрузить файлы формата jpg, png, gif и др.

NIP-05 Верификация

NIP-05-id Так выглядит верификация nip-05

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

Еще одним преимуществом верификации NIP-05 является то, что благодаря ней другим пользователям будет значительно проще вас найти. NIP-05 верификация (грубо говоря) работает как email адрес. К примеру, на скриншоте выше вы видите, что у моего профиля стоит верификация на домене nostr.21ideas.org, что значит, что меня можно найти в поиске через [email protected] (работает не во всех клиентах) — согласитесь, это значительно легче, чем искать публичный ключ человека.

*Где получить?

nostr.21ideas.org — чтобы получить nip-05 identifier 21 идеи, пишите Тони в личные сообщения.

Его публичный ключ: npub10awzknjg5r5lajnr53438ndcyjylgqsrnrtq5grs495v42qc6awsj45ys7.

Мы верефицируем пользователей бесплатно, но вы можете сделать добровольное пожертвование. Это самый простой способ для новичков, но пока в ручном режиме. К тому же, это первый русскоязычный проект, предоставляющий такую возможность!

Вот еще несколько сервисов, предоставляющих NIP-05 верификацию. Я расположил их в порядке возрастания от самого простого (stacker.news) до сложного (nostrplebs.com), но честно говоря, это всего лишь условность — все эти сервисы позволяют добавить NIP-05 в считаные минуты.

Возьмем в пример сервис lnmarkets.com. Все, что вам нужно, - это создать аккаунт на LNmarkets удобным вам способом, зайти в настройки и спуститься в раздел Integrations, как показано на скриншоте ниже:

LNmarkets-NIP-05 Интеграция Nostr NIP-05 в lnmarkets.com

Ну а дальше все просто: вы вставляете в соответствующее поле свой публичный ключ Nostr, а сайт подскажет вам, какой identifier нужно будет указать в профиле Nostr. У меня это [email protected].

Точно так же работает добавление NIP-05 и на stacker.news. Вы регистрируете аккаунт (если у вас его ещё нет), заходите в настройки и видите следующее поле:

Stacker-NIP-05 stacker.news nip-05

Вставляете ваш публичный ключ Nostr в поле pubkey и все готово! Разница лишь в том, что здесь не указан идентификатор. Он будет выглядеть следующим образом: username@stacker.news где username — ваш ник на stacker.news.

Alby-NIP-05 Получить nip-05 можно так же в настройках аккаунта Alby

Ну и последний пример, это Alby — расширение, которое мы с вами использовали в начале для генерации пары ключей и (возможно) для создания Lightning адреса. Создайте ваш аккаунт на getalby.com (если не создали ранее) и в настройках профиля внесите ваш публичный ключ. Ваш идентификатор будет соответствовать вашему lightning адресу. К примеру, у меня это [email protected] — можете отправить на него пару сатош, а можете найти по нему мой профиль в Nostr! Вот вам, кстати, и второй заяц!

Поиск людей

Осталось только найти людей, на которых вы хотите подписаться. Найти пользователей, на которых вы подписаны в Twitter можно через сайт nostr.directory. Nostr-dir nostr.directory

Введите в поиске @username человека из Twitter и если тот связывал свой публичный ключ Nostr с Twitter-аккаунтом на nostr.directory, то он появится в результатах поиска. Вы так же можете добавить свой аккаунт на nostr.directory, чтобы ваши подписчики смогли найти ваш публичный ключ в будущем. Но это опционально.


💡 Биткоин-онли ресурсы

Не забывай, что Nostr активно поддерживает Биткоин, и в протокол уже внедрена сеть Молния⚡️. Поэтому обрати внимание на ресурсы ниже:


🍩 Поддержи проект

Материал оказался полезен? Купи нам пару банок пива 🍻 через сеть Lightning⚡️

ОТСКАНИРУЙ QR-КОД И УКАЖИ СУММУ (В САТАХ), КОТОРУЮ ХОЧЕШЬ ЗАДОНАТИТЬ

LNURL_QR

ИЛИ СКОПИРУЙ ЭТОТ LNURL В СВОЙ КОШЕЛЕК

LNURL1DP68GURN8GHJ7MR9VAJKUEPWD3HXY6T5WVHXXMMD9AKXUATJD3CZ7MTZ0958X7SPWSK7T

ИЛИ ОТПРАВЬ САТЫ НА ЛН-АДРЕС

⚡️[email protected]

Об ЛН-адресах можно узнать из этого Телеграм-поста спойлер: очень удобная штука


purple_bitcoin

nostr's People

Contributors

bitcoin21ideas avatar

Stargazers

Petr Korolev avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.