Оглавление
Участники сети Messor
Алгоритмы сети Messor
Типы передаваемых данных
Типы упаковок данных
Описание протокола общения между peer и server
-
peer_status
Запрос,чтобы сообщить серверу что peer online и узнать актуальную информацию.
-
peer_sync
Синхронизация с сервером - отправка собранных данных.
-
peer_echo
Работает только для серверов работающих в debug_mode ,возвращает в ответ отправленные данные.
-
peer_register
Регистрация нового пира.
-
peer_password_reset
Запрос на смену или восстановления пароля.
-
peer_verify
Верификация email/dns/phone/mail
-
peer_edit_data
Запрос на редактирование данных о peer.
-
peer_info
Возвращают полную информацию о peer ,хранящуюся на сервере.
-
peer_upgrade
Получить обновление файлов для клиента.
-
peer_get_server_list
Запрос актуального списка серверов.
-
peer_get_peer_list
Запрос на получение списка пиров с актуальной базой данных. Для участников сети Premium список состоит из подконтрольных сети серверов.
-
peer_download_database
Этот запрос могут принимать любые peer/server и выдавать базу дынных.
Описание протокола общения peer -> peer
- Таблица кодов ошибок
Описание протокола общения
Общение в сети Messor происходит по средствам протокола HTTP/HTTPS методом POST.
Протокол легко адаптировать на другие транспортные протоколы ,например tcp/ip.
Данные передаются в
своем формате.
Передаваемые данные зашифрованные (поддерживается несколько
алгоритмов на выбор клиента) ,ключ шифрования устанавливается во время установки.
Ключ знает только клиент и сервер.
Пароль ,в данном случае, лишь мера предосторожности от brutforce и прочих атак на сервер.
Запрос состоит из двух частей.
Первая часть запроса (header).
Содержит в себе:
action - тип запроса
network_id - уникальный идентификатор
network_password - пароль
client_version - версию ПО
Исключениям являются запросы регистрации и восстановления пароля, они могут не содержать идентификатор (network_id) и пароль (network_password).
Также запросы внутри сети между peer осуществляется без пароля (network_password).
Вторая часть запроса: (data) содержит данные в виде строки в base64.
Разделитель - Данная строка разделяет запрос на две части и описывает
тип возвращаемых данных.
Ответ от server/peer
В ответ вы получаете данные в таком же формате ,что и запрос.
Ответ выдается между специальных меток (--- BEGIN MESSOR ---/--- END MESSOR ---) ,что позволяет использовать протокол даже на бесплатном хостинге или в других местах,
где помимо ответа может быть другой контент.
Ответ разбит на две части.
Первая- заголовки ответ (header)
Содержит в себе:
status - Статус ответа при успехе ok или error (таблица кодов ошибок)
server_version - Версия ПО сервера
Вторая часть запроса (data) содержит данные в виде строки в base64.
Разделитель - Данная строка разделяет запрос на две части (header and data) и описывает
тип возвращаемых данных.
Пример запроса status от peer server
action=peer_status
network_id=60550fc3c7eeae570fb9a8d4198b6c9c
network_password=123
client_version=0.4a
data_encr_array
ZiUYyp2YWHtqaXM5igk55I0MXIGQdu1k4S4TAq7Rvx7/Cau/9K0xvUGVCVBqZcU9fNdoHGbhfkAJic88EH2RO4/+4q3gIChCsFVX1rpnya+HfT4YvJF202srargAPq5/fdvsptgwl8WA7thoX515COzopaCmhOy8xJVqgAV1QQqrm61DKBjpGX9mvbBzdjZu3NkeTkP6ztav/7E4oNmKN+VipFnyYUdlaOpoFRT8y8Ljn87S8I6kvgvL6uqSJw==
Пример ответа от server peer
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_encr_array
dSwU3ayfc2x7bnNtlQJhpqlMT/6HY6Q1iSwMDpTJrjP6BbaioPBp30iKDghWNpQrfodvWjaJahNMm58yTyKROOCitfjtcntAtgRdhblinf3XeDtAu8Uth2sjbexWO/4jdtm8qY43ksS6+49+SJ5ubua07rbLwrj6j8VjjA9zEwit9e4eO160WBlu5vM2H3A5zJNAEUvxz4P7ruBsrY+MNuNp9QjxMxRjbbpiQByjyMPnycrUpYLx61Sb6LyUHs8DxsjjE5sZA47DQkQgarkDk4NER0oqAi4=
--- END MESSOR ---
Пример запроса ping от peer к peer
client_version=0.4a
data_plaint_string
Пример ответа от peer
--- BEGIN MESSOR ---
status=ok
version=0.4a
data_plaint_string
SGk=
--- END MESSOR ---
Peer
Это участник сети - любой сайт/сервер ,на котором установлен Messor-client
Задачи peer:
- Собирают данные об атаках.
- Отправлять собранные данные на сервера сети Messor.
- Получать и раздавать актуальную базу данных заблокированных IP адресов
Premium peer
Это премиальные участники сети ,которые оплачивают подписки.
Задачи peer:
- Блокировать атаки
- Собирают данные об атаках.
- Отправлять собранные данные на сервера сети Messor.
Отличия от обычных peer:
- Скачивает базу данных напрямую с сервера Messor
- Получает дополнительные услуги в соответствии со своим тарифом.
При проектировании сети messor был учтён момент с содержанием серверов для поддержание работы сети.
В сети Messor предусмотрена монетизация ,как один из органов развития и поддержки сети !
Server
Каждый участник сети ,на котором установлен Messor-server ,адрес которого внесен в
server list
Отвечает за:
- Маршрутизация сети
- Регистрация новых peer
- Верифицирует и хранит информацию о peer
- Принимает данные от peer
- Синхронизирует базу данных с другими серверами
- Собирает статистику о работе сети
- Генерирует базу данных
Trust response - система определения верных ответов
При синхронизации peer запрашивает все сервера из списка
server list и сравнивает хэш суммы ответов сервера.
Далее сравнивает количество одинаковых ответов и всегда считает верными те ответы ,которые встречаются чаше других.
Таким образом, если один или несколько серверов в сети выйдут из строя или будут выдавать фейковые данные (атака на сеть) ,это никак не затронет сеть,
так как их ответам никто не будет доверять.
Peer trust - система доверия к данным от peer
При генерации базы данных используются данные полученные от peer.
Чем выше trust у этого peer ,тем больше доверия к полученным данным.
Trust определяется количеством верификаций
(таблица типов верификаций) умноженным на время работы peer.
Это сделано для того, чтобы фейковые peer не могли засорять сервера фальшивыми данными.
Внимание, при проектировании сетей на основе Messor учтите ,что пока сеть небольшая и у вас мало peer, Вы должны следить за уровнем их trust и наполнить сеть подконтрольными peer.
Messor.Network Постоянно добавляет своих peer с расширенными ловушками для сканирования, что гарантирует стабильную работу сети.
Server List - система распространения и хранения информации о серверах сети
Список серверов хранится в простом текстовом виде у каждого peer и server.
При обновлении списка серверов в качестве версии используется hash sum sha256 файла.
Список серверов обновляется с помощью запроса к серверу
peer_get_server_list.
В случае падения всех серверов в сети ,у каждого peer хранятся последние известные 100 - 300 адресов других peer в сети. Для восстановления server list можно использовать запрос
peer_get_server_list для того ,чтобы получить server list с других peer.
Как только первый peer установит рабочий server list ,он начнет распространятся по сети.
Также вы можете получать актуальные списки серверов вручную, например, на официальных сайтах сети.
Format: Формат записи в строчку через \t
0 - полный url сервера
1 - GEO код страны сервера или комментарий к серверу одной строкой
Пример списка серверов:
https://main.messor.network/messor/ MAIN
https://de.messor.network/messor/ DE
https://ru.messor.network/messor/ RU
https://nl.messor.network/messor/ NL
https://us.messor.network/messor/ US
https://th.messor.network/messor/ TH
https://cn.messor.network/messor/ CN
https://backup1.messor.network/messor/ BACKUP_SERVER1
https://backup2.messor.network/messor/ BACKUP_SERVER2
Messor.Network
Позаботился о защите сети. Сервера будут устанавливаться во всех доступных странах по мере роста сети, сервера круглосуточно мониторятся службой поддержки.
Выход из строя всех серверов разом в сети
Messor.Network практически невозможен!
Внимание, при проектировании сетей на основе Messor учтите, что пока сеть не большая и у вас мало серверов, в случае если они все разом упадут и кто-либо из злонамеренных peer подменит serer list на свой ,то он получит полный контроль над сетью.
Database
Версия базы данных состоит из двух частей , разделенных символом _
Первая часть циферное обозначение даты создания базы состоящие из день+месяц+год,
затем контрольная сумма файла базы данных в sha256.
Получается ,что имя содержит и версию и контрольную сумму этого файла.
Format name: [date]_[sha256_check_sum]
Example file name: 200420_c38e529ab7e40133a757c8714d3d6601d33c7ce299ebffec5bf7a4ba586e1b75
Содержимое базы данных:
Строка 0 Версия базы данных, дата публикации, комментарии;
Строка 1 Регулярное выражение для блокирования по UserAgent (base64);
Строка 2 Правила для .htaccess для обнаружения сканирования (base64);
Строка 3 Регулярные выражения для анализа GET POST данных и блокирования атак (base64);
Строка 4 Далее заблокированные ip адреса в строчку.
Data types
Данные всегда предоставляет из себя строку в base64
В зависимость от типа она может содержать зашифрованные данные или открытый текст, массив данных или строку
формирование строки типа данных: data_[encryption]_[type]
data_ - перфикс
encryption - шифрование (encr - зашифрованное plaint - открытый текст)
_ - разделитель
type - тип (string - строка данных array - массив данных)
Таблица возможных типов данных
Data type string |
Description |
data_encr_array |
Зашифрованный массив данных |
data_encr_string |
Зашифрованная строка данных |
data_plaint_array |
Не зашифрованный массив данных |
data_plaint_string |
Не зашифрованный строка данных |
Тип Array
Каждая строка содержит ключ и значения разделенные знаком "=".
Значенимя (value) кодированы в формате url (urlencode).
Пример (raw):
key=value
other_key=123
text=Hello+World
Parsed (raw):
Array
(
[key] => value
[other_key] => 123
[text] => Hello World
)
Тип String
Строка с данными
Пример:
long string long string long string long string long string long string long string long string long string
long string long string long string long string long string
Pack Encr
Зашифрованная строка в base64
Пример:
R(�ӏfac;o>�k��M�y�
Внимание, алгоритм RC4 считается устаревшим.
Используется для максимальной совместимости, так как работает без дополнительных библиотек.
Рекомендованные для использования алгоритмы AES128, Blowfish
Таблица поддерживаемых алгоритмов шифрования
Alg |
key |
key size |
RC4 |
rc4 |
40–2048 |
AES-128 |
aes128 |
128 |
AES-256 |
aes256 |
256 |
Blowfish |
bf |
64 |
Pack Plaint
Данные в виде открытого текста упакованы только в base64
Описание протокола Peer->Server
peer_status
Запрос к серверу содержит информацию о текущей версии базы дынных, версии клиента и версии server list
В ответ сервер возвращает информацию об актуальных версиях ПО, Базы данных, списка серверов
Data description:client_version - Версия установленного клиента
database_version - Текущая версия базы данных
server_list_version - sha256 checksum списка серверов
Request:
Data type string: data_encr_array
,
Data type: array ,
Data encrypt: encr
Request (raw)
( show )action=peer_status
network_id=c730d4a95f625911687bbd487afbc0e7
network_password=sadsf334erfd3e24er
client_version=0.4a
data_encr_array
8zXIEzk3I9anYoKjE4GQO//YBEwAAo9b3A/i4S7MMY9Ue6VH0ITA4LiJ71VkJWtyP6tzMjJcoDnD7/s=
Data (parsed/decrypted):
Array
(
[action] => peer_status
[network_id] => c730d4a95f625911687bbd487afbc0e7
[network_password] => sadsf334erfd3e24er
[client_version] => 0.4a
)
Array
(
[client_version] => 0.4a
[database_version] => 220420_f0b6ffb312a1ba5180fcc9b3c647b1c3e1aaf2a09b3bf41f08cde5ebbc2963ce
[server_list_version] => 0ebf8724e8db4b48e53d972bb16053535302f5cd41a8a6ead5a705e7401d3409
)
Response:
Data type string: data_encr_array ,
Data encrypt: encr ,
Data type: array
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_encr_array
4DzEBAgwCMG2ZYL3DIrIeduYFzMXF8YKtA397RTUIKJRd7hahOHduPrRvkYxLWN1KpZkJCVwvzPfoZhEowRI2ERDzt51ijmHz1v244hcVLl7TlInaZybm4CD61vYlEtQpL2dZ31s/xvt500v1uqJIkanOVeN9ChBKy+tjSwOLcFLB68ASfC0M6fHpAOdFncFQujLyh83b11nXsALOdxCWt3N6046XVLRZ7d4eAzTMQjWs0UyGAwPDD2up0q5X4uwadl3qYFouzrKRFvKMykFsqLzHS5RuQQ=
--- END MESSOR ---
Response (parsed/decrypted):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[server_version] => 0.4a
)
[data] => Array
(
[peer_status] => peer
[trust] => 0
[client_version] => 0.4a
[database_version] => 220420_f0b6ffb312a1ba5180fcc9b3c647b1c3e1aaf2a09b3bf41f08cde5ebbc2963ce
[server_list_version] => 0ebf8724e8db4b48e53d972bb16053535302f5cd41a8a6ead5a705e7401d3409
)
)
peer_echo
Эхо запрос может содержать произвольный массив данных или строку данных.
В ответ сервер возвращает переданные ему данные.
Предназначен для тестирования и работает только на серверах в debug_mode
Data description:message - Сообщение
Request:
Data type string: data_encr_array
,
Data type: array ,
Data encrypt: encr
Request (raw)
( show )action=peer_echo
network_id=c730d4a95f625911687bbd487afbc0e7
network_password=sadsf334erfd3e24er
client_version=0.4a
data_encr_array
/TzSBTYkGZ2KdZ2mE8/aZKOAAWhu
Data (parsed/decrypted):
Array
(
[action] => peer_echo
[network_id] => c730d4a95f625911687bbd487afbc0e7
[network_password] => sadsf334erfd3e24er
[client_version] => 0.4a
)
Array
(
[message] => Hello world.
)
Response:
Data type string: data_encr_array ,
Data encrypt: encr ,
Data type: array
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_encr_array
/TzSBTYkGZ2KdZ2mE8TaZKOAAWhu
--- END MESSOR ---
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[server_version] => 0.4a
)
[data] => Array
(
[message] => Hello world.
)
)
peer_register
Запрос регистрации нового peer
Peer высылает все данные необходимые для регистрации.
В ответ в случае успеха сервер возвращает информацию о peer или ошибку.
Внимание, на этом этапе данные передаются в не зашифрованном виде!
Такие операции рекомендовано делать исключительно по протоколу https, иначе данные будут передаваться в открытом виде!
При проектировании сетей на основе Messor, не забудьте об этом.
Передаваемые данные
Key |
Rules |
Example |
Description |
version |
1.21a |
1-12 az09. |
Версия клиента |
network_password |
min 6 max 32 |
1dj83&^hge76%$ |
Пароль для подключения к сети |
domain |
|
example.com |
Домен |
ip |
127.0.0.1 |
ipv4 |
IP адрес |
url |
full http/https url on messor |
http://example.com/path/messor.php |
Url адрес пира |
name |
A-z0-9 5-32 |
John Doe |
Полное имя |
company |
A-z0-9 5-128 |
International company |
Название компании |
email |
email address |
admin@example.com |
Email адрес веб мастера |
phone |
0-9 5 - 24 |
+79034562389 |
Телефон |
about |
A-z0-9 5-256 |
My super company. |
Описание компании |
country |
|
Russia |
Страна компании |
lang |
|
RU |
Язык |
encryption_alg |
|
rc4 |
Алгоритм шифрования |
client_version |
|
0.4a |
Версия клиента |
os |
|
Linux |
OS сервера |
web_server |
|
Apache2 |
Web server |
php_version |
|
7.2 |
PHP Version |
random_data |
|
grdf43g34 |
random data for generate random encryption key |
cms |
|
Wordpress |
Установленная CMS |
cms_version |
|
Wordpress 3.4.3 |
Версия CMS |
plugin_version |
|
1.4 |
Версия плагина Messor |
Request:
Data type string: data_plaint_array
,
Data type: array ,
Data encrypt: plaint
Request (raw)
( show )action=peer_register
client_version=0.4a
data_plaint_array
dmVyc2lvbj0wLjRhCm5ldHdvcmtfcGFzc3dvcmQ9MWRqODMzOSZeJWRoZ3M3Ngpkb21haW49ZXhhbXBsZS5jb20KaXA9MTI3LjAuMC4xCnVybD1odHRwOi8vZXhhbXBsZS5jb20vcGF0aC9tZXNzb3IucGhwCm5hbWU9Sm9obiBEb2UKY29tcGFueT1Sb2dhQ29waXRhIGNvbXBhbnkKZW1haWw9YWRtaW5AZXhhbXBsZS5jb20KcGhvbmU9Kzc5MDM0NTYyMzg5CmFib3V0PU15IHN1cGVyIGNvbXBhbnkuCmNvdW50cnk9UnVzc2lhCmxhbmc9UlUKZW5jcnlwdGlvbl9hbGc9cmM0CmNsaWVudF92ZXJzaW9uPTAuNGEKb3M9TGludXgKd2ViX3NlcnZlcj1BcGFjaGUyCnBocF92ZXJzaW9uPTcuMi4yNC0wdWJ1bnR1MC4xOS4wNC4yCmNtcz1Xb3JkcHJlc3MKY21zX3ZlcnNpb249V29yZHByZXNzIDMuNC4zCnJhbmRvbV9kYXRhPXJhbmRvbSBkYXRhIGZvciBnZW5lcmF0ZSByYW5kb20gZW5jcnlwdGlvbiBrZXkKcGx1Z2luX3ZlcnNpb249MS40Cg==
Data (parsed/decrypted):
Array
(
[action] => peer_register
[client_version] => 0.4a
)
Array
(
[version] => 0.4a
[network_password] => 1dj8339&^%dhgs76
[domain] => example.com
[ip] => 127.0.0.1
[url] => http://example.com/path/messor.php
[name] => John Doe
[company] => RogaCopita company
[email] => admin@example.com
[phone] => +79034562389
[about] => My super company.
[country] => Russia
[lang] => RU
[encryption_alg] => rc4
[client_version] => 0.4a
[os] => Linux
[web_server] => Apache2
[php_version] => 7.2.24-0ubuntu0.19.04.2
[cms] => Wordpress
[cms_version] => Wordpress 3.4.3
[random_data] => random data for generate random encryption key
[plugin_version] => 1.4
)
Response:
Data type string: data_plaint_string ,
Data encrypt: plaint ,
Data type: string
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_plaint_string
ZW1wdHkgcmVnaXN0ZXIgbmV0d29ya19wYXNzd29yZA==
--- END MESSOR ---
Response (parsed/decrypted):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[server_version] => 0.4a
)
[data] => Array
(
[network_id] => 8b22bb2ee088f381a2c0c4176e3be8e5
[status] => peer
[trust] => 0
[speed] => 1
[network_password] => 68961e925d3ebe75dc6d59a99568a063b8f0a0216ca23219e4062853241b2bc4
[database_version] =>
[version] => 0.4a
[encryption_alg] => rc4
[encryption_key] => 773b62d83ce581f0ff54c2d1c6189bbc24f2e032
[domain] => example.com
[ip] => 94.25.163.171
[url] => http://example.com/path/messor.php
[name] => messor
[company] => My company
[email] => admin@example.com
[phone] => 79034562389
[about] => admin@example.com
[country] => Ru
[lang] => RU
[register_date] => 1587645025
[last_online] => 1587645025
[last_data] => 0
[confirm_email] => 0
[confirm_dns] => 0
[confirm_phone] => 0
[confirm_sms] => 0
[confirm_mail] => 0
[confirm_docs] => 0
[confirm_manual] => 0
[os] => Linux
[web_server] => Apache2
[php_version] => 7.4.4
[cms] =>
[cms_version] =>
[plugin_version] =>
[data] =>
[comment] =>
)
)
peer_password_reset
Запрос на восстановление утерянного пароля или network_id
Peer выбирает один из типов верификации и высылает данные для подтверждения.
Например, тип верификации email
Значение admin@example.com
В ответ сервер отвечает текстом в формате html с дальнейшими инструкциями по восстановлению данных.
Внимание, на этом этапе данные передаются в не зашифрованном виде!
Такие операции рекомендовано делать исключительно по протоколу https иначе данные будут передаваться в открытом виде!
При проектировании сетей на основе Messor не забудьте об этом.
type |
value |
example |
description |
email |
email |
admin@example.com |
Запрос кода верификации на email |
email_confirm |
number |
123456 |
Отправка кода подтверждения email |
sms |
phone number |
+79037678790 |
Запрос кода верификации на телефон по sms |
sms_confirm |
number |
123456 |
Отправка кода подтверждения из sms |
phone |
phone number |
+79037678790 |
Запрос телефонного звонка - вам продиктуют код |
phone_confirm |
number |
123456 |
Отправка кода подтверждения полученного по телефону |
dns |
host name |
example.com |
Получить инструкции для верификации через dns |
dns_confirm |
|
|
Отправка запроса на проверку верификации через dns |
mail |
address |
134 пример почтового адреса в международном формате |
Отправить запрос на получение письма с кодом на почтовый адрес. |
mail_confirm |
number |
123456 |
Отправка кода верификации из письма |
docs |
Country |
Russia |
Получить инструкции для верификации через реальную встречу и предоставления документов |
docs_confirm |
|
|
Отправка запроса на верификацию при помощи проверки документов |
Data description:confirm - Тип верификации для восстановления пароля.
value - передаваемое значение
Request:
Data type string: data_plaint_array
,
Data type: array ,
Data encrypt: plaint
Request (raw)
( show )action=peer_password_reset
client_version=0.4a
data_plaint_array
Y29uZmlybT1lbWFpbAp2YWx1ZT1hZG1pbkBleGFtcGxlLmNvbQo=
Data (parsed/decrypted):
Array
(
[action] => peer_password_reset
[client_version] => 0.4a
)
Array
(
[confirm] => email
[value] => admin@example.com
)
Response:
Data type string: data_plaint_string ,
Data encrypt: plaint ,
Data type: string
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_plaint_string
Rm9yIHJlc2V0IHlvdXIgcGFzc3dvcmQgdXNlIHdlYiBzaXRlLg==
--- END MESSOR ---
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[server_version] => 0.4a
)
[data] => For reset your password use web site.
)
peer_verify
Запрос для подтверждения кода верификации
Например, Peer отправляет запрос на получение кода верификации на email.
Сервер высылает код подтверждения на указанный адрес email
Peer делает запрос кодом подтверждения на сервер.
Сервер верифицирует указанный email.
Verify types - таблица типов верификации
type |
value |
example |
description |
email |
email |
admin@example.com |
Запрос кода верификации на email |
email_confirm |
number |
123456 |
Отправка кода подтверждения email |
sms |
phone number |
+79037678790 |
Запрос кода верификации на телефон по sms |
sms_confirm |
number |
123456 |
Отправка кода подтверждения из sms |
phone |
phone number |
+79037678790 |
Запрос телефонного звонка - вам продиктуют код |
dns |
host name |
example.com |
Получить инструкции для верификации через dns |
dns_confirm |
|
|
Отправка запроса на проверку верификации через dns |
mail |
address |
134 пример почтового адреса международного формата |
Отправить запрос на получение письма с кодом на почтовый адрес |
mail_confirm |
number |
123456 |
Отправка кода верификации из письма |
docs_confirm |
|
|
Отправка запроса на проверку верификации через отправку сканов документов на email |
Data description:type - тип верификации см таблицу типов верификации.
value - передаваемое значение
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[server_version] => 0.4a
)
[data] => Waiting for call on your phone
)
peer_verify confirm
Пример отправки кода верификации
Data description:type - тип верификации см таблицу типов верификации.
value - передаваемое значение
Request:
Data type string: data_encr_array
,
Data type: array ,
Data encrypt: encr
Request (raw)
( show )action=peer_verify
network_id=c730d4a95f625911687bbd487afbc0e7
network_password=sadsf334erfd3e24er
client_version=0.4a
data_encr_array
5CDRE2ozFM+sdfu8HYPYbuzHUn9UUMwMiVamtkKw
Data (parsed/decrypted):
Array
(
[action] => peer_verify
[network_id] => c730d4a95f625911687bbd487afbc0e7
[network_password] => sadsf334erfd3e24er
[client_version] => 0.4a
)
Array
(
[type] => phone
[value] => +79037678723
)
Response:
Data type string: data_encr_string ,
Data encrypt: encr ,
Data type: string
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_encr_string
xzjIAj4tG4Ckf4PqH47BZ/GDC2YdDI5Inh756x/f
--- END MESSOR ---
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[server_version] => 0.4a
)
[data] => verify success.
)
peer_edit_data
Запрос на изменения данных о peer хранящихся на сервер.
Peer высылает название изменяемого поля и его новые значения.
Например, запрос на смену телефонного номера:
Название phone
Значение +79033453425
Data description:key - Имя изменяемого поля
value - передаваемое значение
Request:
Data type string: data_encr_array
,
Data type: array ,
Data encrypt: encr
Request (raw)
( show )action=peer_edit_data
network_id=c730d4a95f625911687bbd487afbc0e7
network_password=sadsf334erfd3e24er
client_version=0.4a
data_encr_array
+zzYSycrE86nGoerEJrINvrbXHZXUM8PjVqjsXs=
Data (parsed/decrypted):
Array
(
[action] => peer_edit_data
[network_id] => c730d4a95f625911687bbd487afbc0e7
[network_password] => sadsf334erfd3e24er
[client_version] => 0.4a
)
Array
(
[key] => phone
[value] => +79033453425
)
Response:
Data type string: data_encr_string ,
Data encrypt: encr ,
Data type: string
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_encr_string
2TfHGXc2DMSjZJTqD5rOaLSfFmc=
--- END MESSOR ---
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[server_version] => 0.4a
)
[data] => Info update success!
)
peer_info
Запросить полную актуальную информацию о peer, хранящуюся на сервер.
В ответ сервер возвращает массив данных с информацией о peer.
Request:
Data type string: data_encr_string
,
Data type: string ,
Data encrypt: encr
Request (raw)
( show )action=peer_info
network_id=c730d4a95f625911687bbd487afbc0e7
network_password=sadsf334erfd3e24er
client_version=0.4a
data_encr_string
Data (parsed/decrypted):
Array
(
[action] => peer_info
[network_id] => c730d4a95f625911687bbd487afbc0e7
[network_password] => sadsf334erfd3e24er
[client_version] => 0.4a
)
Response:
Data type string: data_encr_array ,
Data encrypt: encr ,
Data type: array
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_encr_array
4y3AAiIwQdCndYPAEorZfL6eDhkNB8ZZiV2h4EXbbchBJPgc1L+Cs/LI6EVffTo2KpJnNHBK/lzZoIRYuQRB5mgBnYMg0WrvkwOw4YtcEe8XWQVsIpSWzIXsrFucg0Fd+OGeLSo8zBu74FozkarXKxDLPgzaqGpEfUPw13IOcJhCYbMGWuq5LovfxxmZdDhRHqmWkF87OF9+XvpNKIhPVJHb/Qg/L0OCRKN9DVWLYlCJvUsgWB8LeDOotw/kSci2F9Z368oxryzcFEijaX5R46eCFHgQo29r1ZRat/o3qmVpZ4eHmvoMorBATaXhvAGRJtqTQPkSjkDH0XSvJ0ejxyHqcmhJAa9zo6hLwJLkzjwQh3W7j0U80MsxFVg3QSDrrTXYppBAMudypkG1SaY13dKMQ0c6fD1ArRm4kt23FeCvajHw3H125bligqORMpxiW0nqbSPQs/FZgpVbKDS7VnmoIczB7WYMBcSWEZzTx11uPRs1UIm9opWfRKXjqpqJzb397EpkQQbm//iAwrc9bfzxCgVQD159YsJb7LR3T2M97+ekHfKJcOinRQQPLeK8eede8uk7vwhCk/NDJvruCTx95dnPWPNMuMJZi1nZTcf3u2wJ7cl4Mr4BxP/LZerP63stcJ17Oj7fvWUforcxR6PtomhEeTSODnFlUkXsgPQmWnBxr2P7nTEBgk2qRfKiiFWpyDzFI1qlAhaMwDp5R244d3TvI+rPhcX95bUYYepfIaP6OcTMoP7d1zgv8iwJSfwyJ4APxFIUSmbe1z1yY/1NofPwBl+vXEqvCihBEY8ZS+0QYsSEoHuChHuH6fgIIuDgmJBny4uqtIq20YUSNWQYGRgPX5vVgqowXybBon6yQ/n+fnLiRKoJCetxAlM6FcEoGy+ZixduTtk8+Q==
--- END MESSOR ---
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[server_version] => 0.4a
)
[data] => Array
(
[status] => peer
[network_id] => b92c8753e1cc2666244309dbae90e180
[trust] => 0
[speed] => 1
[database_version] => 220420_f0b6ffb312a1ba5180fcc9b3c647b1c3e1aaf2a09b3bf41f08cde5ebbc2963ce
[version] => 0.4a
[encryption_alg] => aes128
[domain] => messor.lock
[ip] => 94.25.163.171
[url] => http://messor.lock/mess/messor.php
[name] => UserDoc
[company] => documentation
[email] => admin@email.com
[phone] => 79034562389
[about] =>
[country] => AT
[lang] => ru
[register_date] => 1587644358
[last_online] => 1587645025
[last_data] => 0
[confirm_email] => 0
[confirm_dns] => 0
[confirm_phone] => 2
[confirm_sms] => 0
[confirm_mail] => 0
[confirm_docs] => 0
[confirm_manual] => 0
[os] =>
[web_server] => Apache/2.4.41 (Unix) PHP/7.4.4
[php_version] => 7.4.4
[cms] => other
[plugin_versio] =>
)
)
peer_upgrade
Peer запрашивает текст актуальных файлов библиотеки Messor для обновления.
Сервер возвращает массив данных с текстом файлов и их названиями.
Request:
Data type string: data_encr_string
,
Data type: string ,
Data encrypt: encr
Request (raw)
( show )action=peer_upgrade
network_id=c730d4a95f625911687bbd487afbc0e7
network_password=sadsf334erfd3e24er
client_version=0.4a
data_encr_string
Data (parsed/decrypted):
Array
(
[action] => peer_upgrade
[network_id] => c730d4a95f625911687bbd487afbc0e7
[network_password] => sadsf334erfd3e24er
[client_version] => 0.4a
)
Response:
Data type string: data_encr_string ,
Data encrypt: encr ,
Data type: string
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_encr_string
yTbUVj8iCsXifJC5CM/bbqOfDCkKQ5ZfzR3+9l/ZOJRCfL4=
--- END MESSOR ---
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[server_version] => 0.4a
)
[data] => You have last version messor.client
)
peer_get_server_list
Peer запрашивает актуальный server list.
В ответ сервер возвращает текст актуального server list и его версию (hash sum sha256 от текста server list)
Request:
Data type string: data_encr_string
,
Data type: string ,
Data encrypt: encr
Request (raw)
( show )action=peer_get_server_list
network_id=c730d4a95f625911687bbd487afbc0e7
network_password=sadsf334erfd3e24er
client_version=0.4a
data_encr_string
Data (parsed/decrypted):
Array
(
[action] => peer_get_server_list
[network_id] => c730d4a95f625911687bbd487afbc0e7
[network_password] => sadsf334erfd3e24er
[client_version] => 0.4a
)
Response:
Data type string: data_encr_array ,
Data encrypt: encr ,
Data type: array
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_encr_array
4zzTADIxI8yrY4X3FJvZe6LJVgdBUb0fjCj14V/XMY5UfbgHg+vH8qWN4QIJD29kOIdqJWUdj3Od67ZOv1QQgmJUyKJh3BqNgxa088wOI696aUUsF4+MjNWDqU2BggZc86jZbGw240yT7k05krHMYUzSelCEx21UOiD11hUMcZMcZoMWTuvsJcqc/UDaKjlQVqPAwxI8OFsxC8EPadFFDNyc60xtWlCGMOUsKA/WZVfR7UY2HQIPWGar/B/oD9u9ZYMn/oxs7Ag=
--- END MESSOR ---
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[server_version] => 0.4a
)
[data] => Array
(
[server_list] => https://de.messor.network/messor/ Frankfurt,DE
https://gb.messor.network/messor/ London,GB
https://sg.messor.net/messor/ Singapore,SG
https://ru.messor.net/messor/ Moscow,RU
[check_sum] => 0ebf8724e8db4b48e53d972bb16053535302f5cd41a8a6ead5a705e7401d3409
)
)
peer_get_peer_list
Peer запрашивает у server список других peer в сети, у которых есть версия запрошенной базы данных.
В запросе peer указывает нужную версию базы данных.
В ответ сервер отвечает массивом данных со списком нужных peer.
Как правило, этот запрос используется для обновления своей базы данных до текущей версии
Data description:database_version - Текущая версия базы данных
Request:
Data type string: data_encr_array
,
Data type: array ,
Data encrypt: encr
Request (raw)
( show )action=peer_get_peer_list
network_id=c730d4a95f625911687bbd487afbc0e7
network_password=sadsf334erfd3e24er
client_version=0.4a
data_encr_array
9DjVFzUiD8WdZpS4D4bCZezeVRlUUplbilmgvRKCZJ8RdK8Q3L/RtfPO6xBYeTcwecBnYXRKrDPOt8gd+VxB1XhBzd4himODzlr0tY1cAet9G1Z8Ww==
Data (parsed/decrypted):
Array
(
[action] => peer_get_peer_list
[network_id] => c730d4a95f625911687bbd487afbc0e7
[network_password] => sadsf334erfd3e24er
[client_version] => 0.4a
)
Array
(
[database_version] => 20_01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b
)
Response:
Data type string: data_encr_array ,
Data encrypt: encr ,
Data type: array
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_encr_array
4DzEBAgvFdO2LZm+CJ/eLuKtQHQiRsl82gu/6RTJJ5JVPKRMmfnc96HauGFWLHFyJIYgZQYK+RfFpoVbvhxCrT5DvsN2qimQ2Q+h85pSEKQmShRpPo+Sh4qgt1udg0dAs+7oCXo8sh+34lsvvqjbNg39MA6ArCx4e3+siXkNe85GP78EWrDicpmZ9EiIKzhYVarHkxVpaV0xXZRba90XBIHK6Bo4WQCIMeB4e1jUZ1OD7BFgTQ4OClQ=
--- END MESSOR ---
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[server_version] => 0.4a
)
[data] => Array
(
[peer_list] => https://de.messor.network/messor/
https://sg.messor.network/messor/
https://gb.messor.network/messor/
https://ru.messor.network/messor/
http://messor.lock/mess/messor.php
[database_version] => 220420_f0b6ffb312a1ba5180fcc9b3c647b1c3e1aaf2a09b3bf41f08cde5ebbc2963ce
)
)
peer_download_database
Peer запрашивает текст указанной базы дынных,
В ответ сервер или peer возвращает текст базы данных.
Прямое скачивание базы данных с сервера доступно только
premium peer
Обычно этот запрос используется для получения базы данных у других peer, смотри (описание передачи данных между peer).
Data description:database_version - Текущая версия базы данных
Request:
Data type string: data_encr_array
,
Data type: array ,
Data encrypt: encr
Request (raw)
( show )action=peer_download_database
network_id=c730d4a95f625911687bbd487afbc0e7
network_password=sadsf334erfd3e24er
client_version=0.4a
data_encr_array
9DjVFzUiD8WdZpS4D4bCZezeVRlUUplbilmgvRKCZJ8RdK8Q3L/RtfPO6xBYeTcwecBnYXRKrDPOt8gd+VxB1XhBzd4himODzlr0tY1cAet9G1Z8Ww==
Data (parsed/decrypted):
Array
(
[action] => peer_download_database
[network_id] => c730d4a95f625911687bbd487afbc0e7
[network_password] => sadsf334erfd3e24er
[client_version] => 0.4a
)
Array
(
[database_version] => 20_01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b
)
Response:
Data type string: data_encr_array ,
Data encrypt: encr ,
Data type: array
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_encr_array
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
--- END MESSOR ---
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[server_version] => 0.4a
)
[data] => Array
(
[database] => # Messor main database. Generated at 22.04.2020
dzNhZnxzcWxtYXB8bm1hcHxuaWt0b3xabUV1fHNjcmlwdApjdXJsfHB5dGhvbnx3Z2V0fFt3V11nZXR8cGhwfGxpYnd3d3xodHRwdW5pdHxudXRjaHxwaHBjcmF3bHxGQVNULVdlYkNyYXdsZXIKR29vZ2xlfGZhY2Vib29rfHlhbmRleHxHb29nbGVib3R8QWRzQm90fGJpbmdib3R8bWljcm9zb2Z0XC5jb218U2x1cnB8TGlua2VkSW5Cb3R8bXNuYm90fGp5eG9ib3R8aWNoaXJvfEJhaWR1c3BpZGVyfFlvdWRhb0JvdHxzb2dvdXxCTEVYQm90fEFocmVmc0JvdApib3R8aHR0cHx3d3dcLnxcLmNvbXxcLnBocHxcLmh0bXxiYWlkdXxzbHVycHxiaW5ncHxhcmNoaXxzcGlkZXJ8Y3Jhd2x8c2VhcmNofGFub255bXxlbmdpbmV8bnV0Y2h8bGlid3d3fGxpYmN1cmx8dXJsbGlifHdnZXR8cmVxdWVzdHxqYXZhLzFcLnx2ZXJpZnxjaGVja3xzcGVlZHx0cmFuc2xhfGFwaXxkYXVtb2F8cGhhbnRvbXxpbnRlcm5ldHxjb250cm9sfHdpbmRvd3MgbnQgOVwuMHxhY2Nvb25hfGlhX2FyY2hpdmVyfGplZXZlc3xjdXJsfGVsdGFpbmRleGVyfGNyYXdsZXJ8dzNjX3ZhbGlkYXRvcnx3ZWJhbHRhfHlhaG9vfHJhbWJsZXJ8YXNrfHR1cnRsZXxuaWdtYXxyb2JvdHxwcm94aW1pY3xtYXNzY2FufHB1ZmZpbnxjZm5ldHdvcmt8d2ViZGF2fGlvcHVzfGN1YW1hdGNofHNjYW5uZXJ8c3VzaWV8MDA4L3xhNi1pbmRleGVyfGFzcHJveHl8YWJvbnRpfGFib3VuZGV4fGFja3xhY3Rpb24gY29tbSB1c2VyfGFsZXhhfGFueWV2ZW50LWh0dHB8YXBlcmNpdGV8YXBvcnR3b3JtfGFwcGVuZ2luZS1nb29nbGV8YXJhY2hub3BoaWxpYXxhdXRvcGFnZXJ8YmlkdWJyb3dzZXJ8YnViaW5nfGJhZC1uZWlnaGJvcmhvb2R8YmFkYXxiZWd1bmFkdmVydGlzaW5nfGJlbmRlcnxiaXRhY2xlfGJsb2dzd2FybXxibG9nbGluZXN8YnV0dGVyZmx5fGNqbmV0d29ya3F1YWxpdHl8Y21udGRmfGNweXRob258Y2hhcmxvdHRlfGNoZWNrc2l0ZXxjaGVja2VyfGNoaWxrYXR8Y2hpbXV8Y2l0aXN0cmVldHxjbG91ZGZsYXJlfGNvbGxhcHNhcndlYnxjb25mbHVlbmNlfGNvbnRpa2l8Y29yYWx3ZWJwcngvfGNvc3RpbmVzdGl8Y3Jhd2xmaXJlfGNyb3dzbmVzdHxkZnRiYXxkYWx2aWt8ZGF0YWZvdW50YWluc3xkYXRhcGFya3NlYXJjaHxkYXRhcHJvdmlkZXJ8ZGV0ZWN0b3J8ZGV1c3V8ZGV2cnV0ZXJ8ZGlyYnVzdGVyfGRqYW5nb3xkb2NvbW98ZG9tYWluYXBwZW5kZXJ8ZG9tYWlubW9uaXRvcnxkb3NzaWVyfGRvd25sb2FkLXRpcHB8ZHJ1cGFsfGR1Y2tkdWNrcHJldmlld3xlYXJ0aGNvbXxlYXN5LXRodW1ifGVhc3liaWJ8ZWRpdG9yfGVtYmVkZGVkd2J8ZW1iZWRseXxlbWVyYWxkc2hpZWxkfGV4cGxvcmF0b2RvfGZhaXJzaGFyZXxmYXZlZW98ZmVlZCBwYXJzZXJ8ZmVlZGJ1Y2tldHxmZWVkYnVybmVyfGZlZWRmZXRjaGVyLWdvb2dsZXxmZWVkbHlhcHB8ZmVlZHNwb3R8ZmVsaXh8ZmlsYW5neXxmaWxlY3JvcHxmaXJlYmF0fGZsaXBib2FyZGJyb3dzZXJwcm94eXxmbGlwYm9hcmRwcm94eXxmcmFuY2lzfGZyZWV3ZWJtb25pdG9yaW5nfGZyb3V0ZXxnYzNwcm8rZGlyK2NsZHxndGI3fGdlY2tvIG1pcm98Z2VuZXJhdG9yfGdlbmllb3xnZW50bGVzb3VyY2V8Z2xvYmVsfGdvZHppbGxhfGdvb2dsZSBhcHBzdmlld2VyfGdvb2dsZSBkZXNrdG9wfGdvb2dsZS1zdHJ1Y3R1cmVkLWRhdGEtdGVzdGluZy10b29sfGdvb2dsZWRvY3N8Z29vZ2xlcHJvZHVjZXJ8Z3JhbW1hcmx5fGdyZWV0aW5nc3xncm91cGhpZ2h8aHR0cHJlcXVlc3R8aGF0ZW5hfGhlYXJ0cmFpbHN8aGVybWl0IHNlYXJjaHxob3N0dHJhY2tlcnxodHRwY29uZHVpdGRvd25sb2FkZXJ8aHVicGFnZXN8aHVic3BvdHxpY2kgYXJnZW50aW5hfGlkd2hvaXN8aW5mb21pbmV8aWNvbnN1cmZ8aWx0cm92YXRvcmUtc2V0YWNjaW98aW5hZ2lzdHxpbmJvdW5kc2NvcmV8aW5mb2hlbGZlcnxpbnN0YXBhcGVyfGpzLWtpdHxqZXRicmFpbnN8am9ib3xqb2Jib2Vyc2V8anl4b3Rvb2xiYXJ8ay1tZWxlb258a2V2aW58a21sLWdvb2dsZXxrb2hhbmF8a3Vyd29za3J5cHR8bGFpZXNrZW58bHNzcm9ja2V0Y3Jhd2xlcnxseWNvc2F8bHl0XC5zcnxsaWJlcnR5d3xsaWZlcmVhfGxpbmtjaGVja2VyfGxpbmttYXxsaW5rbWFufGxpbmtzdGFzaHxsaW5rd2Fsa2V8bGlua2VlfGxpbmtzfGxpcHBlcmhleXxsb2FkaW1wYWN0cGFnZWFuYWx5emVyfGxvYWRpbXBhY3RybG9hZHxsb3ZlbHxtYXh0aG9ufG1jNjgwMCdzfG1yc3B1dG5pa3xtcy1ydGMgbG18bXh0L251dGNofG1hZ3BpZXJzc3xtYW1tb3RofG1jYWZlZXxtZWNoYW5pemV8bWVnYWluZGV4fG1lbmVhbWV8bWVyZ2VmbG93fG1lc3NlbmdlcnNoYXJlfG1vYmlsZXN1cmZ8bW9yZW92ZXJ8bW96aWxsYS80XC42fG1vemlsbGEvNFwuN3xtb3ppbGxhLzRcLjcyfG11bm96aWxsYS81XC4wfG5ldGx5emVyfG5ldHJlc2VhcmNoc2VydmVyfG5ldGNyYWZ0c3VydmV5YWdlbnR8bmV0dmliZXN8bmV3c3JvYnxuaW50ZW5kb3xubWFwIHNjcmlwdGluZ3xvZmZpY2VsaXZlY29ubmVjdG9yfG9uZXRzenVrYWp8b3Bwb3xvcHRpbWl6ZWRpZTh8b3dsaW4gZmVlZGZpbmRlcnxwcm9qZWN0IGhpIXxwYWdlMnJzc3xwYWdlcGVla2VyfHBhZ2VzaW52ZW50b3J5fHBhdGhkZWZlbmRlcnxwYXR0ZXJufHBoYW50b21qc3xwaG9uZWZhdnN8cGhvbmlmaWVyfHBpbnRlcmVzdHxwbGF5c3RhdGlvbnxwbHVra2llfHByLW5hdmktaW5ub3ZhdGlvbnxwcmxvZ3xweXRob24tdXJsbGlifHFxZG93bmxvYWR8cWlyaW5hIGh1cmRsZXJ8cXdhbnRpZnl8ciZkIHByb2plY3R8cnNzIGFwaXxyYWRpb2NsaWNrZXJ8cmVhZGFiaWxpdHl8cmVhcGVyfHJlYmVsbW91c2V8cmVkaXJlY3RjaGVja2VyfHJldmlwfHJldmVyc2VnZXR8cmlkZGxlcnxyb2JvY3Jhd2x8cm9ja21lbHRlbWJlZHNlcnZpY2V8cm9ja21lbHRlbWJlZGRlcnxzYmlkZXJ8c2JzZWFyY2h8c2VvLXZpc3VhbHN8c2Vvc29mdHxzam4gXC4gZGllfHNhZmFyaWJvb2ttYXJrY2hlY2tlcnxzY3JhcHl8c2NyZWVuc2hvb3R8c2NyZWVuc2hvdHxzY3JpYmRyZWFkZXJ8c2NydWJieXxzZWFtb25rZXl8c2VtYW50aWNzfHNlbnNcLmF8c2V6bmFtfHNpbXBsZWJyb3dzZXJ8c2l0ZS1zaG90fHNpdGUtdmlzdWFsaXplcnxzaXRlY2hlY2t8c2l0ZWV4cGxvcmVyfHNpeHhzfHNseXNlYXJjaHxzbmFja3Rvcnl8c29uaWN8c29wZWx8c291cmNlIHZpZXdlcnxzcGlubjNyfHNweWRlcnxzcXVhbGxubnxzc2NyZWVuc2hvdC1nZW5lcmF0b3J8c3RlZWxlcnxzdHVkaW9mYWNhfHN1bW1pZnl8dGFsa3JvIHdlYi1zaG90fHRhcmdldHNlZWt8dGVzc2VyYWN0fHRlc3RcLmJ1enp6fHRlc3Rpbmd8dGV4dHVhbHx0aHVtYnNuaXBlcnx0aHVtYnNob3R8dGltZXdlfHRpbmV5ZXx0aXB0b3B8dG9waGF0ZW5hcnx0b3BvZGlhfHRyb3ZlfHR1bGlwY2hhaW58dHdpY2VsZXJ8dHdpa2xlfHR5Y29vbnx0eXBob2V1c3x1bml2ZXJzYWxmZWVkcGFyc2VyfHVua25vd258dW53aW5kZmV0Y2hvcnx2YWdhYm9uZG98dmFsaWRhdG9yfHZpc2l0ZWR8dzNjfHczYy1tb2JpbGV8d3BkYXNoLXVwY2hyb25pY3x3c2V8d2F6enVwfHdic3JjaHx3ZXNlZXx3ZWItc25pZmZlcnx3ZWJjb29raWVzfHdlYm1hc3RlcmFpZHx3ZWJzZWFyY2h8d2VidGh1bWJuYWlsfHdlYmF1c2t1bmZ0fHdlYm1hc3RlcmNvZmZlZXx3ZWJzY291dHx3ZWVjaGF0fHdob2lzMzY1fHdpa2ljcmF3bHx3aWxsaWV8d2luIDl4IDRcLjkwfHdpbmRvd3Mgc2VydmljZXN8d29yZHByZXNzfHgtY2FkLXNlfHg2LTAwXC4xfHhibWN8eG1iLWV4dHJlbWUtbWVzc2FnZS1ib2FyZHx4Ym94fHlvdXJsc3x5ZXRpfHphb3x6aXBjb21tYW5kZXJ8enlib3JnfGFiYnl8YWZmLWtpbmdzb2Z0LWNpYmF8YW5kcm9pZC1hc3luYy1odHRwfGFubm90YXRlZ29vZ2x8YXJjaGl2ZXJ8YmV0YXNlYXJjaHxib2l0aG98Y29jY29jfGNvbXBsZXhuZXR3b3JrZ3JvdXB8Y29zbW9zfGRwZGV2fGVnb3Rob3J8ZW5kby8xXC4wfGZhY2Vib29rZXh0ZXJuYWxoaXR8ZmluZGxpbmtzfGdvbnpvMnB8Z29vYmxvZ3xncm9tb3RldXJ8Z3J1Yi1jbGllbnR8aGVyaXRyaXh8aHR0cDovL3xpdGhlbWVzfGljaGlyb3xpbmRvbmVzaWFuY29kZXJ8aXNrYW5pZXxrdWx0dXJhcnczfGx0eDcxfG1mYzJ8bW9iaWxpemVyfG1vbml0b3Jpbmcgc2VydmljZXxtb3dzZXJ8bW96aWxsYS8xXC4wfHBhZ2Ugc2NvcmVyfHBhZ2V2ZXJpZmllcnxwYXJzaWpvb3xxaW5nZGFvfHNjLWRvd25sb2FkZXJ8c2NhbjRtYWlsfHNwZWNpYWxhcmNoaXZlcnxzcWxtYXB8dmJzZW98dmlldHRlbHx2a3NoYXJlfHdlYm51bWJyZmV0Y2hlcnx3bXRpcHN8d3NjaGVja3x3c3Jpc2luZ3x4cGNvbXZpZXdlcnxvcGVuYnNkfGZyZWVic2R8bmV0YnNk
L215c3FsX2FkbWluKj8kCi9teXNxbGFkbWluKgovc3FsYWRtaW4qPyQKL3NxbC8/JAovYWRtaW4vPyQKL215c3FsKj8kCi9waHBteWFkbWluKj8kCi93cC1hZG1pbio/JApeLiphZG1pbi8uKj8kCl5vbGQvLio/JApeYmFja3VwLio/JApeaW5zdGFsbC8/JApeaVwucGhwPyQKXnBocGluZm9cLiokCl4xMjM0NVwucGhwPyQKXnhcLnBocD8k
KHVuaW9ufHNlbGVjdHxjcmVhdGV8cmVuYW1lfHRydW5jYXRlfGxvYWR8YWx0ZXJ8ZGVsZXRlfHVwZGF0ZXxpbnNlcnR8ZGVzY3xncm91cF98Y29uY2F0fGNoYXJ8bG9hZF9maWxlKQooZGVmaW5lfGV2YWx8ZmlsZV9nZXRfY29udGVudHN8aW5jbHVkZXxyZXF1aXJlfHJlcXVpcmVfb25jZXxzZXR8c2hlbGxfZXhlY3xwaHBpbmZvfHN5c3RlbXxwYXNzdGhydXxwcmVnX1x3K3xleGVjdXRlKQ==
3.121.227.3
5.101.0.209
37.9.113.37
37.239.205.36
41.57.124.37
41.144.86.205
45.148.121.2
45.252.249.240
46.37.172.123
46.101.144.52
[database_version] => 220420_f0b6ffb312a1ba5180fcc9b3c647b1c3e1aaf2a09b3bf41f08cde5ebbc2963ce
)
)
invalid_action
Пример неверного запроса от peer к server
В ответ на неверно сформированные запросы, сервер выдает сообщения об ошибке.
Request:
Data type string: data_encr_string
,
Data type: string ,
Data encrypt: encr
Request (raw)
( show )action=invalid_action
network_id=c730d4a95f625911687bbd487afbc0e7
network_password=sadsf334erfd3e24er
client_version=0.4a
data_encr_string
Data (parsed/decrypted):
Array
(
[action] => invalid_action
[network_id] => c730d4a95f625911687bbd487afbc0e7
[network_password] => sadsf334erfd3e24er
[client_version] => 0.4a
)
Response:
Data type string: data_plaint_string ,
Data encrypt: plaint ,
Data type: string
Response(raw)
( show )
--- BEGIN MESSOR ---
status=error_req
server_version=0.4a
data_plaint_string
aW52YWxpZCBoZWFkZXIgYWN0aW9u
--- END MESSOR ---
Response (parsed):
Array
(
[status] => error_req
[header] => Array
(
[status] => error_req
[server_version] => 0.4a
)
[data] => invalid header action
)
Описание протокола общения Peer -> Peer
peer_ping
Запрос для проверки работоспособности peer
Peer отправляет другому peer запрос ping,а в ответ получает короткое сообщение(Hi).
Request:
Data type string: data_plaint_string
,
Data type: string ,
Data encrypt: plaint
Request (raw)
( show )action=peer_ping
network_id=c730d4a95f625911687bbd487afbc0e7
client_version=0.4a
data_plaint_string
Data (parsed/decrypted):
Array
(
[action] => peer_ping
[network_id] => c730d4a95f625911687bbd487afbc0e7
[client_version] => 0.4a
)
Response:
Data type string: data_plaint_string ,
Data encrypt: plaint ,
Data type: string
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
version=0.4a
data_plaint_string
SGk=
--- END MESSOR ---
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[version] => 0.4a
)
[data] => Hi
)
peer_get_server_list
Peer запрашивает актуальный server list у другого peer.
В ответ peer возвращает текст актуального server list и его версию (hash sum sha256 от текста server list)
Запрос для резервного восcтановления сети в случае падения всех серверов сети.
Внимание, по умолчанию алгоритм резервного восcтановления с peer
должен быть отключен и включается только по требованию пользователя.
Подробнее можно ознакомится тут
peer_get_server_list
Request:
Data type string: data_plaint_string
,
Data type: string ,
Data encrypt: plaint
Request (raw)
( show )action=peer_get_server_list
network_id=c730d4a95f625911687bbd487afbc0e7
client_version=0.4a
data_plaint_string
Data (parsed/decrypted):
Array
(
[action] => peer_get_server_list
[network_id] => c730d4a95f625911687bbd487afbc0e7
[client_version] => 0.4a
)
Response:
Data type string: data_plaint_array ,
Data encrypt: plaint ,
Data type: array
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
version=0.4a
data_plaint_array
c2VydmVyX2xpc3Q9aHR0cHMlM0ElMkYlMkZydS5tZXNzb3IubmV0d29yayUyRm1lc3NvciUyRiUwOVJ1c3NpYW4lMEQlMEFodHRwcyUzQSUyRiUyRmRlLm1lc3Nvci5uZXR3b3JrJTJGbWVzc29yJTJGJTA5R2VybWFueSUwRCUwQWh0dHAlM0ElMkYlMkZsb2NhbGhvc3QlMkZzZXJ2ZXIlMkZtZXNzb3IlMkYlMDlsb2NhbApjaGVja19zdW09ZWM3ZGQwOGEwODM5ZDIwMTYwMmI5NzBmNmQ2YzU1ZDU3Njk1MjVjM2NlNjcyM2I4OTVlMjUxMzE5YmNmZTBjZQo=
--- END MESSOR ---
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[version] => 0.4a
)
[data] => Array
(
[server_list] => https://de.messor.network/messor/ Frankfurt,DE
https://gb.messor.network/messor/ London,GB
https://sg.messor.net/messor/ Singapore,SG
https://ru.messor.net/messor/ Moscow,RU
[check_sum] => 0ebf8724e8db4b48e53d972bb16053535302f5cd41a8a6ead5a705e7401d3409
)
)
peer_get_peer_list
Peer запрашивает у peer список других peer в сети, у которых есть версия запрошенной базы данных.
В запросе peer указывает нужную версию базы данных.
В ответ сервер отвечает массивом данных со списком нужных peer.
Как правило, этот запрос используется для обновления своей базы данных до текущей версии
Data description:database_version - Текущая версия базы данных
Request:
Data type string: data_plaint_array
,
Data type: array ,
Data encrypt: plaint
Request (raw)
( show )action=peer_get_peer_list
network_id=c730d4a95f625911687bbd487afbc0e7
client_version=0.4a
data_plaint_array
ZGF0YWJhc2VfdmVyc2lvbj0yMF8wMWJhNDcxOWM4MGI2ZmU5MTFiMDkxYTdjMDUxMjRiNjRlZWVjZTk2NGUwOWMwNThlZjhmOTgwNWRhY2E1NDZiCg==
Data (parsed/decrypted):
Array
(
[action] => peer_get_peer_list
[network_id] => c730d4a95f625911687bbd487afbc0e7
[client_version] => 0.4a
)
Array
(
[database_version] => 20_01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b
)
Response:
Data type string: data_plaint_string ,
Data encrypt: plaint ,
Data type: string
Response(raw)
( show )
--- BEGIN MESSOR ---
status=ok
server_version=0.4a
data_plaint_string
ZW1wdHkgbmV0d29ya19pZA==
--- END MESSOR ---
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[version] => 0.4a
)
[data] => Array
(
[peer_list] => http://messor.lock/mess/messor.php
[database_version] => 200420_c38e529ab7e40133a757c8714d3d6601d33c7ce299ebffec5bf7a4ba586e1b75
)
)
peer_download_database
Peer запрашивает текст указанной базы дынных,
В ответ сервер или peer возвращает текст базы данных.
Прямое скачивание базы данных с сервера доступно только
premium peer
Обычно этот запрос используется для получения базы данных у других peer, смотри (описание передачи данных между peer).
Data description:database_version - Текущая версия базы данных
Request:
Data type string: data_encr_array
,
Data type: array ,
Data encrypt: encr
Request (raw)
( show )action=peer_download_database
network_id=c730d4a95f625911687bbd487afbc0e7
network_password=sadsf334erfd3e24er
client_version=0.4a
data_encr_array
9DjVFzUiD8WdZpS4D4bCZezeVRlUUplbilmgvRKCZJ8RdK8Q3L/RtfPO6xBYeTcwecBnYXRKrDPOt8gd+VxB1XhBzd4himODzlr0tY1cAet9G1Z8Ww==
Data (parsed/decrypted):
Array
(
[action] => peer_download_database
[network_id] => c730d4a95f625911687bbd487afbc0e7
[network_password] => sadsf334erfd3e24er
[client_version] => 0.4a
)
Array
(
[database_version] => 20_01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b
)
Response (parsed):
Array
(
[status] => ok
[header] => Array
(
[status] => ok
[version] => 0.4a
)
[data] => Array
(
[database] => # Messor main database. Generated at 20.04.2020
dzNhZnxzcWxtYXB8bm1hcHxuaWt0b3xabUV1fHNjcmlwdApjdXJsfHB5dGhvbnx3Z2V0fFt3V11nZXR8cGhwfGxpYnd3d3xodHRwdW5pdHxudXRjaHxwaHBjcmF3bHxGQVNULVdlYkNyYXdsZXIKR29vZ2xlfGZhY2Vib29rfHlhbmRleHxHb29nbGVib3R8QWRzQm90fGJpbmdib3R8bWljcm9zb2Z0XC5jb218U2x1cnB8TGlua2VkSW5Cb3R8bXNuYm90fGp5eG9ib3R8aWNoaXJvfEJhaWR1c3BpZGVyfFlvdWRhb0JvdHxzb2dvdXxCTEVYQm90fEFocmVmc0JvdApib3R8aHR0cHx3d3dcLnxcLmNvbXxcLnBocHxcLmh0bXxiYWlkdXxzbHVycHxiaW5ncHxhcmNoaXxzcGlkZXJ8Y3Jhd2x8c2VhcmNofGFub255bXxlbmdpbmV8bnV0Y2h8bGlid3d3fGxpYmN1cmx8dXJsbGlifHdnZXR8cmVxdWVzdHxqYXZhLzFcLnx2ZXJpZnxjaGVja3xzcGVlZHx0cmFuc2xhfGFwaXxkYXVtb2F8cGhhbnRvbXxpbnRlcm5ldHxjb250cm9sfHdpbmRvd3MgbnQgOVwuMHxhY2Nvb25hfGlhX2FyY2hpdmVyfGplZXZlc3xjdXJsfGVsdGFpbmRleGVyfGNyYXdsZXJ8dzNjX3ZhbGlkYXRvcnx3ZWJhbHRhfHlhaG9vfHJhbWJsZXJ8YXNrfHR1cnRsZXxuaWdtYXxyb2JvdHxwcm94aW1pY3xtYXNzY2FufHB1ZmZpbnxjZm5ldHdvcmt8d2ViZGF2fGlvcHVzfGN1YW1hdGNofHNjYW5uZXJ8c3VzaWV8MDA4L3xhNi1pbmRleGVyfGFzcHJveHl8YWJvbnRpfGFib3VuZGV4fGFja3xhY3Rpb24gY29tbSB1c2VyfGFsZXhhfGFueWV2ZW50LWh0dHB8YXBlcmNpdGV8YXBvcnR3b3JtfGFwcGVuZ2luZS1nb29nbGV8YXJhY2hub3BoaWxpYXxhdXRvcGFnZXJ8YmlkdWJyb3dzZXJ8YnViaW5nfGJhZC1uZWlnaGJvcmhvb2R8YmFkYXxiZWd1bmFkdmVydGlzaW5nfGJlbmRlcnxiaXRhY2xlfGJsb2dzd2FybXxibG9nbGluZXN8YnV0dGVyZmx5fGNqbmV0d29ya3F1YWxpdHl8Y21udGRmfGNweXRob258Y2hhcmxvdHRlfGNoZWNrc2l0ZXxjaGVja2VyfGNoaWxrYXR8Y2hpbXV8Y2l0aXN0cmVldHxjbG91ZGZsYXJlfGNvbGxhcHNhcndlYnxjb25mbHVlbmNlfGNvbnRpa2l8Y29yYWx3ZWJwcngvfGNvc3RpbmVzdGl8Y3Jhd2xmaXJlfGNyb3dzbmVzdHxkZnRiYXxkYWx2aWt8ZGF0YWZvdW50YWluc3xkYXRhcGFya3NlYXJjaHxkYXRhcHJvdmlkZXJ8ZGV0ZWN0b3J8ZGV1c3V8ZGV2cnV0ZXJ8ZGlyYnVzdGVyfGRqYW5nb3xkb2NvbW98ZG9tYWluYXBwZW5kZXJ8ZG9tYWlubW9uaXRvcnxkb3NzaWVyfGRvd25sb2FkLXRpcHB8ZHJ1cGFsfGR1Y2tkdWNrcHJldmlld3xlYXJ0aGNvbXxlYXN5LXRodW1ifGVhc3liaWJ8ZWRpdG9yfGVtYmVkZGVkd2J8ZW1iZWRseXxlbWVyYWxkc2hpZWxkfGV4cGxvcmF0b2RvfGZhaXJzaGFyZXxmYXZlZW98ZmVlZCBwYXJzZXJ8ZmVlZGJ1Y2tldHxmZWVkYnVybmVyfGZlZWRmZXRjaGVyLWdvb2dsZXxmZWVkbHlhcHB8ZmVlZHNwb3R8ZmVsaXh8ZmlsYW5neXxmaWxlY3JvcHxmaXJlYmF0fGZsaXBib2FyZGJyb3dzZXJwcm94eXxmbGlwYm9hcmRwcm94eXxmcmFuY2lzfGZyZWV3ZWJtb25pdG9yaW5nfGZyb3V0ZXxnYzNwcm8rZGlyK2NsZHxndGI3fGdlY2tvIG1pcm98Z2VuZXJhdG9yfGdlbmllb3xnZW50bGVzb3VyY2V8Z2xvYmVsfGdvZHppbGxhfGdvb2dsZSBhcHBzdmlld2VyfGdvb2dsZSBkZXNrdG9wfGdvb2dsZS1zdHJ1Y3R1cmVkLWRhdGEtdGVzdGluZy10b29sfGdvb2dsZWRvY3N8Z29vZ2xlcHJvZHVjZXJ8Z3JhbW1hcmx5fGdyZWV0aW5nc3xncm91cGhpZ2h8aHR0cHJlcXVlc3R8aGF0ZW5hfGhlYXJ0cmFpbHN8aGVybWl0IHNlYXJjaHxob3N0dHJhY2tlcnxodHRwY29uZHVpdGRvd25sb2FkZXJ8aHVicGFnZXN8aHVic3BvdHxpY2kgYXJnZW50aW5hfGlkd2hvaXN8aW5mb21pbmV8aWNvbnN1cmZ8aWx0cm92YXRvcmUtc2V0YWNjaW98aW5hZ2lzdHxpbmJvdW5kc2NvcmV8aW5mb2hlbGZlcnxpbnN0YXBhcGVyfGpzLWtpdHxqZXRicmFpbnN8am9ib3xqb2Jib2Vyc2V8anl4b3Rvb2xiYXJ8ay1tZWxlb258a2V2aW58a21sLWdvb2dsZXxrb2hhbmF8a3Vyd29za3J5cHR8bGFpZXNrZW58bHNzcm9ja2V0Y3Jhd2xlcnxseWNvc2F8bHl0XC5zcnxsaWJlcnR5d3xsaWZlcmVhfGxpbmtjaGVja2VyfGxpbmttYXxsaW5rbWFufGxpbmtzdGFzaHxsaW5rd2Fsa2V8bGlua2VlfGxpbmtzfGxpcHBlcmhleXxsb2FkaW1wYWN0cGFnZWFuYWx5emVyfGxvYWRpbXBhY3RybG9hZHxsb3ZlbHxtYXh0aG9ufG1jNjgwMCdzfG1yc3B1dG5pa3xtcy1ydGMgbG18bXh0L251dGNofG1hZ3BpZXJzc3xtYW1tb3RofG1jYWZlZXxtZWNoYW5pemV8bWVnYWluZGV4fG1lbmVhbWV8bWVyZ2VmbG93fG1lc3NlbmdlcnNoYXJlfG1vYmlsZXN1cmZ8bW9yZW92ZXJ8bW96aWxsYS80XC42fG1vemlsbGEvNFwuN3xtb3ppbGxhLzRcLjcyfG11bm96aWxsYS81XC4wfG5ldGx5emVyfG5ldHJlc2VhcmNoc2VydmVyfG5ldGNyYWZ0c3VydmV5YWdlbnR8bmV0dmliZXN8bmV3c3JvYnxuaW50ZW5kb3xubWFwIHNjcmlwdGluZ3xvZmZpY2VsaXZlY29ubmVjdG9yfG9uZXRzenVrYWp8b3Bwb3xvcHRpbWl6ZWRpZTh8b3dsaW4gZmVlZGZpbmRlcnxwcm9qZWN0IGhpIXxwYWdlMnJzc3xwYWdlcGVla2VyfHBhZ2VzaW52ZW50b3J5fHBhdGhkZWZlbmRlcnxwYXR0ZXJufHBoYW50b21qc3xwaG9uZWZhdnN8cGhvbmlmaWVyfHBpbnRlcmVzdHxwbGF5c3RhdGlvbnxwbHVra2llfHByLW5hdmktaW5ub3ZhdGlvbnxwcmxvZ3xweXRob24tdXJsbGlifHFxZG93bmxvYWR8cWlyaW5hIGh1cmRsZXJ8cXdhbnRpZnl8ciZkIHByb2plY3R8cnNzIGFwaXxyYWRpb2NsaWNrZXJ8cmVhZGFiaWxpdHl8cmVhcGVyfHJlYmVsbW91c2V8cmVkaXJlY3RjaGVja2VyfHJldmlwfHJldmVyc2VnZXR8cmlkZGxlcnxyb2JvY3Jhd2x8cm9ja21lbHRlbWJlZHNlcnZpY2V8cm9ja21lbHRlbWJlZGRlcnxzYmlkZXJ8c2JzZWFyY2h8c2VvLXZpc3VhbHN8c2Vvc29mdHxzam4gXC4gZGllfHNhZmFyaWJvb2ttYXJrY2hlY2tlcnxzY3JhcHl8c2NyZWVuc2hvb3R8c2NyZWVuc2hvdHxzY3JpYmRyZWFkZXJ8c2NydWJieXxzZWFtb25rZXl8c2VtYW50aWNzfHNlbnNcLmF8c2V6bmFtfHNpbXBsZWJyb3dzZXJ8c2l0ZS1zaG90fHNpdGUtdmlzdWFsaXplcnxzaXRlY2hlY2t8c2l0ZWV4cGxvcmVyfHNpeHhzfHNseXNlYXJjaHxzbmFja3Rvcnl8c29uaWN8c29wZWx8c291cmNlIHZpZXdlcnxzcGlubjNyfHNweWRlcnxzcXVhbGxubnxzc2NyZWVuc2hvdC1nZW5lcmF0b3J8c3RlZWxlcnxzdHVkaW9mYWNhfHN1bW1pZnl8dGFsa3JvIHdlYi1zaG90fHRhcmdldHNlZWt8dGVzc2VyYWN0fHRlc3RcLmJ1enp6fHRlc3Rpbmd8dGV4dHVhbHx0aHVtYnNuaXBlcnx0aHVtYnNob3R8dGltZXdlfHRpbmV5ZXx0aXB0b3B8dG9waGF0ZW5hcnx0b3BvZGlhfHRyb3ZlfHR1bGlwY2hhaW58dHdpY2VsZXJ8dHdpa2xlfHR5Y29vbnx0eXBob2V1c3x1bml2ZXJzYWxmZWVkcGFyc2VyfHVua25vd258dW53aW5kZmV0Y2hvcnx2YWdhYm9uZG98dmFsaWRhdG9yfHZpc2l0ZWR8dzNjfHczYy1tb2JpbGV8d3BkYXNoLXVwY2hyb25pY3x3c2V8d2F6enVwfHdic3JjaHx3ZXNlZXx3ZWItc25pZmZlcnx3ZWJjb29raWVzfHdlYm1hc3RlcmFpZHx3ZWJzZWFyY2h8d2VidGh1bWJuYWlsfHdlYmF1c2t1bmZ0fHdlYm1hc3RlcmNvZmZlZXx3ZWJzY291dHx3ZWVjaGF0fHdob2lzMzY1fHdpa2ljcmF3bHx3aWxsaWV8d2luIDl4IDRcLjkwfHdpbmRvd3Mgc2VydmljZXN8d29yZHByZXNzfHgtY2FkLXNlfHg2LTAwXC4xfHhibWN8eG1iLWV4dHJlbWUtbWVzc2FnZS1ib2FyZHx4Ym94fHlvdXJsc3x5ZXRpfHphb3x6aXBjb21tYW5kZXJ8enlib3JnfGFiYnl8YWZmLWtpbmdzb2Z0LWNpYmF8YW5kcm9pZC1hc3luYy1odHRwfGFubm90YXRlZ29vZ2x8YXJjaGl2ZXJ8YmV0YXNlYXJjaHxib2l0aG98Y29jY29jfGNvbXBsZXhuZXR3b3JrZ3JvdXB8Y29zbW9zfGRwZGV2fGVnb3Rob3J8ZW5kby8xXC4wfGZhY2Vib29rZXh0ZXJuYWxoaXR8ZmluZGxpbmtzfGdvbnpvMnB8Z29vYmxvZ3xncm9tb3RldXJ8Z3J1Yi1jbGllbnR8aGVyaXRyaXh8aHR0cDovL3xpdGhlbWVzfGljaGlyb3xpbmRvbmVzaWFuY29kZXJ8aXNrYW5pZXxrdWx0dXJhcnczfGx0eDcxfG1mYzJ8bW9iaWxpemVyfG1vbml0b3Jpbmcgc2VydmljZXxtb3dzZXJ8bW96aWxsYS8xXC4wfHBhZ2Ugc2NvcmVyfHBhZ2V2ZXJpZmllcnxwYXJzaWpvb3xxaW5nZGFvfHNjLWRvd25sb2FkZXJ8c2NhbjRtYWlsfHNwZWNpYWxhcmNoaXZlcnxzcWxtYXB8dmJzZW98dmlldHRlbHx2a3NoYXJlfHdlYm51bWJyZmV0Y2hlcnx3bXRpcHN8d3NjaGVja3x3c3Jpc2luZ3x4cGNvbXZpZXdlcnxvcGVuYnNkfGZyZWVic2R8bmV0YnNk
L215c3FsX2FkbWluKj8kCi9teXNxbGFkbWluKgovc3FsYWRtaW4qPyQKL3NxbC8/JAovYWRtaW4vPyQKL215c3FsKj8kCi9waHBteWFkbWluKj8kCi93cC1hZG1pbio/JApeLiphZG1pbi8uKj8kCl5vbGQvLio/JApeYmFja3VwLio/JApeaW5zdGFsbC8/JApeaVwucGhwPyQKXnBocGluZm9cLiokCl4xMjM0NVwucGhwPyQKXnhcLnBocD8k
KHVuaW9ufHNlbGVjdHxjcmVhdGV8cmVuYW1lfHRydW5jYXRlfGxvYWR8YWx0ZXJ8ZGVsZXRlfHVwZGF0ZXxpbnNlcnR8ZGVzY3xncm91cF98Y29uY2F0fGNoYXJ8bG9hZF9maWxlKQooZGVmaW5lfGV2YWx8ZmlsZV9nZXRfY29udGVudHN8aW5jbHVkZXxyZXF1aXJlfHJlcXVpcmVfb25jZXxzZXR8c2hlbGxfZXhlY3xwaHBpbmZvfHN5c3RlbXxwYXNzdGhydXxwcmVnX1x3K3xleGVjdXRlKQ==
111.229.57.229
5.101.0.209
171.67.70.85
175.34.62.127
80.128.103.38
121.54.189.12
220.130.193.45
3.121.227.3
123.207.210.64
111.230.248.96
132.232.37.105
103.40.242.250
46.242.17.108
93.174.93.91
171.214.245.128
216.244.66.236
[database_version] => 200420_c38e529ab7e40133a757c8714d3d6601d33c7ce299ebffec5bf7a4ba586e1b75
)
)
Error code table
Таблица описания возможных кодов ошибок в ответах peer/server в поле status
Error code |
Description |
error_req |
неверный запрос (ошибка в формировании запроса или неверные параметры в заголовках) |
error_auth |
ошибки при прохождении авторизации на сервере |
error_parse |
ошибки парсинга ответа от сервера |
error_server |
ошибки сервера |
error_connect |
ошибки при соединении с сервером |
error |
все остальные ошибки |