Browse Source

2024-02-19-23-30

master
bot 10 months ago
parent
commit
37185194a3
  1. 1
      data/pages/gemini_protocol.txt
  2. 19
      data/pages/social_media/kevachat.txt

1
data/pages/gemini_protocol.txt

@ -37,6 +37,7 @@ Gemini - сетевой протокол прикладного уровня, я
Некоторые браузеры поддерживают разметку inline: Некоторые браузеры поддерживают разметку inline:
<code> <code>
``` заголовок неформатируемого блока
*bold* *bold*
_underline_ _underline_
</code> </code>

19
data/pages/social_media/kevachat.txt

@ -17,6 +17,10 @@ KevaChat - приватно-ориентированный, устойчивый
* 1.8 - регистрация пользователей с перманентным реестром логин/bcrypt хеш пароля в блокчейн (namespace _KEVACHAT_USERS_ текущего узла). * 1.8 - регистрация пользователей с перманентным реестром логин/bcrypt хеш пароля в блокчейн (namespace _KEVACHAT_USERS_ текущего узла).
* 1.9 - настройки комиссий за публикации, создание новых комнат и регистрацию аккаунтов. Используется в основном в качестве анти-спама, также может служить в качестве монетизации узла. * 1.9 - настройки комиссий за публикации, создание новых комнат и регистрацию аккаунтов. Используется в основном в качестве анти-спама, также может служить в качестве монетизации узла.
* 1.10 - введена система внутренней экономики: зарегистрированные пользователи теперь имеют собственный счёт, баланс которого могут расходовать на публикации а также получать на него донаты. * 1.10 - введена система внутренней экономики: зарегистрированные пользователи теперь имеют собственный счёт, баланс которого могут расходовать на публикации а также получать на него донаты.
* 1.11 - обновление протокола:
* //ключи// больше не содержат меток времени (в качестве ключа используется только имя пользователя)
* в //значениях// убраны знаки @ для построения дерева вложенности (для идентификации используется только цитируемый txid в начале цитирующей строки)
* время публикации определяется фактическим временем транзакции
==== geminiapp ==== ==== geminiapp ====
@ -42,21 +46,22 @@ KevaChat реализует стандартный протокол KevaCoin и
Тем не менее, для построения цепочки сообщений и социальных функций, используются следующий подход: Тем не менее, для построения цепочки сообщений и социальных функций, используются следующий подход:
* приложение читает все namespace в аккаунте, которые принято считать чат комнатами; * время сообщения соответствует фактическому времени транзакции;
* данные об авторе сообщения сохраняются в значение key, в формате unixtime@username - таким образом, можно открыть например [[ http://kevachat.ygg/room/NgKBKkBAJMtzsuit85TpTpo5Xj6UQUg1wr | официальный блог KevaCoin]], но сообщения в нем прочитаны не будут, поскольку не соответствуют формату чат-приложения. * все namespace в аккаунте принято считать чат комнатами;
* текст сообщений сохраняется в значениях value и поддерживает следующие макросы: * имя автора сообщения сохраняется в значение key;
* @txid в начале сообщения - указывает ссылку на родительский пост, используется в "ответах" (reply) - Web UI скрывает такие ссылки и добавляет вложенность; * текст сообщений сохраняется в значение value и поддерживает следующие макросы:
* txid в начале сообщения - указывает ссылку на родительский пост, используется в "ответах" (reply) - например, webapp скрывает такие ссылки и добавляет вложенность, в то время как geminiapp - добавляет цитату;
* namespace hash - в системе KevaCoin всегда начинается с символа N, такие вхождения заменяются кликабельной ссылкой; * namespace hash - в системе KevaCoin всегда начинается с символа N, такие вхождения заменяются кликабельной ссылкой;
* url - автоматически заменяется на кликабельную ссылку; * url - автоматически заменяется на кликабельную ссылку;
* #теги - на данный момент поиск по тегам не реализован, но уже используется в сообщениях. * #теги - на данный момент поиск по тегам не реализован, но уже используется в сообщениях.
Для базы пользователей используется namespace _KEVACHAT_USERS_, с парой ключ (логин) и значение (хеш пароля bcrypt).\\ Для базы пользователей зарезервирован namespace _KEVACHAT_USERS_, с парой ключ (логин) и значение (хеш пароля bcrypt).\\
Подлинность авторизации обеспечивается подписью узла, на котором осуществлена регистрация. Подлинность авторизации обеспечивается подписью узла, на котором осуществлена регистрация.
В остальном, протокол стремится минимизировать объем сохраняемых данных, а также читаемость в исходном виде.\\ В остальном, протокол стремится минимизировать объем сохраняемых данных, а также читаемость в исходном виде.\\
Любая разметка удаляется приложением, в том числе с целью предотвращения XSS и запросов к внешним ресурсам. Любая разметка обычно фильтруется клиентским приложением, в том числе с целью предотвращения XSS и запросов к внешним ресурсам.
Также не используются обертки JSON и прочие программные слои для расширения возможностей базы данных KevaCoin. Также не используются обертки JSON и прочие программные слои, затрудняющие чтение исходной базы данных.
===== Публикации ===== ===== Публикации =====
Публиковать сообщения можно анонимно (в блокчейне не сохраняется какой либо инфорации об авторе, кроме timestamp и сообщения) Публиковать сообщения можно анонимно (в блокчейне не сохраняется какой либо инфорации об авторе, кроме timestamp и сообщения)

Loading…
Cancel
Save