Завершённые
August 26, 2022

[DEPRECATED] Massa | TEST.26.X – UA

Let's Node

Децентралізована мережа, яка має пропускну здатність 10'000 транзакцій/сек. З вересня до 2 кв. 2022 р. проходитиме оплачувана тестова мережа.


Зміст


Інформація про проєкт

Зміст

Джерела інформації:

Опис

Поточні блокчейни, які масштабуються до високої пропускної спроможності транзакцій, централізовані, або небезпечні. Для Massa була розроблена нова архітектура під назвою Blockclique, яка масштабує пропускну спроможність транзакцій до 10'000 транзакцій в секунду без шкоди для децентралізації та безпеки. Ця архітектура заснована на сегментуванні транзакцій у багатопотоковому блоковому графі.

  • Massa поєднує сегментування транзакцій і багатопотокову архітектуру блокового графа, що підтримує паралельні блоки з сумісними транзакціями;
  • Massa поширює правило консенсусу Накамото на випадок паралельних блоків, забезпечуючи безпечний і децентралізований консенсус з використанням Proof-of-Stake;
  • Архітектура Blockclique може обробляти тисячі транзакцій у секунду нарівні з традиційними фінансовими системами.

Q&A

Звідки походить назва «Massa»?

У назви є кілька джерел:

  • Так називалися срібні монети, які використовувалися 2500 років тому в Марсалії (нині Марсель).
  • Марсель — місто, де познайомилися і вчилися засновники проєкту.
  • Від словосполучення «Масове впровадження» («Mass adoption») — мета цієї децентралізованої валюти.

Чим відрізняється Massa від інших проєктів, наприклад, Solana?

Нині блокчейн проєкти, по суті, відмовилися від децентралізації, щоб досягти високої продуктивності.

Ми маємо на меті:

  • Створити децентралізовану мережу;
  • Досягти швидкості 10'000 транзакції за секунду;
  • Зменшити вимоги до апаратного забезпечення до рівня середнього персонального комп'ютера (8 CPU, 16 GB RAM і 1 TB HDD), щоб велика кількість людей могла брати участь у житті мережі.

Що стосується Solana - це цікавий проект, однак у нього є кілька проблем:

Високі вимоги до апаратного забезпечення нод;
У команди та засновників проєкту зосереджена велика кількість токенів, через що коефіцієнт Накамото близько 20, що досить погано.

Коефіцієнт Накамото — підраховує, якою кількістю об'єктів потрібно заволодіти для успішної атаки на важливі елементи мережі.

Які фонди інвестували у ваш проєкт?

На етапі приватного продажу проект зібрав 5.8М$ від 100 невеликих фондів і приватних інвесторів, докладніше в статті. Крім цього, проект отримав два гранти від французького уряду на загальну суму близько 400 тисяч доларів.

Перед запуском основної мережі планується один публічний продаж.

Які види винагород передбачені?

Крім нагородження власників нод ми плануємо нагороджувати активних членів спільноти, а також запустити амбассадорську програму.

Фази

На цьому етапі відомі такі фази:

  • Липень 2021 р. — початок вересня 2021 р. — тестова мережа тільки запустилася і перебуває на ранній фазі;
  • Вересень 2021 р. - 4 квартал 2022 р. — оплачувана тестова мережа;
    4 квартал 2022 р. - запуск основної мережі.

Нагороди

Як звичайно, ніякої точної інформації немає. Система далі розроблятиметься, в тому числі, щоб нагородити кожного учасника в міру виконаних робіт.

Основне зі статті про нагороди:

  1. Тестова мережа буде ділитися на «епізоди» завдовжки приблизно місяць. При цьому даватиметься 3 дні для оновлення ноди перед новим періодом (необхідно зробити резервну копію файлів wallet.dat і node_privkey.key). У кожному епізоді потрібно буде знову просити тестові токени, купувати ROLL'и. Зроблено це для того, щоб було легше відслідковувати досягнення всіх учасників за кожен період.
  2. Нема потреби в володінні більш ніж 1 ROLL-ом (в оригінальній статті наведена формула розрахунку нагород). Відповідно, немає сенсу мати велику кількість ROLL'ів у розраховуючи на більший розмір нагороди.
  3. Будуть додаткові бали за децентралізовану ноду (в географічному розташуванні IP сервера мало інших нод) та за відкриття портів (як це зробити описано в статті) — більш докладна інформація і формула знаходиться в статті.
  4. Щоб уникнути мультиаккаунтів при отриманні нагород (після виходу в основну мережу) необхідною умовою буде проходження KYC. Система наразі невідома.
  5. На нагороди поширюватиметься система вестингу, щоб уникнути великого об'єму продажів.

Вимоги до сервера

Зміст

Рекомендації від команди (VPS/VDS/DS):
4 CPU, 8 GB RAM, 100 GB SSD, Ubuntu 20.04

Як варіант:


Що встановлюється?

Зміст

Проект складається з кількох частин:

  • Нода - створює блоки, запускається сервісним файлом для безперебійної роботи;
  • Клієнт — дозволяє взаємодіяти з гаманцем і мережею за допомогою різних команд. Запускається за потреби під час ноди, що працює.

Запуск

Зміст

Кожен підрозділ — окремий вид установки, потрібно вибрати один із них.

Linux (ручний)

Для початківців

Оновити пакети

sudo apt update && sudo apt upgrade -y

Встановити необхідні пакети

sudo apt install wget jq git build-essential pkg-config libssl-dev -y

Завантажити та розпакувати бінарні файли

massa_version=`wget -qO- https://api.github.com/repos/massalabs/massa/releases/latest | jq -r ".tag_name"`; \
wget -qO $HOME/massa.tar.gz "https://github.com/massalabs/massa/releases/download/${massa_version}/massa_${massa_version}_release_linux.tar.gz"; \
tar -xvf $HOME/massa.tar.gz; \
rm -rf $HOME/massa.tar.gz

Зробити бінарні файли виконуємими

chmod +x $HOME/massa/massa-node/massa-node \ 
$HOME/massa/massa-client/massa-client

Придумати пароль для гаманця і ноди, запустити команду і ввести його, тим самим додати його в систему у вигляді змінної (без спеціальних символів)

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/insert_variable.sh) -n massa_password

Перевірити коректність збереженого пароля

echo "$massa_password"

Якщо пароль некоректний, то додати вручну

sed -i "/ massa_password=/d" $HOME/.bash_profile 
echo 'export massa_password="ВВЕСТИ_ПАРОЛЬ"' >> $HOME/.bash_profile 
. $HOME/.bash_profile

Знову перевірити коректність пароля

Пароль необхідно зберегти у надійному місці, відновити його неможливо.

Додати команди в систему у вигляді змінних:

  • Перегляд логів ноди;
  • Запуск клієнта;
  • Перегляд інформації по ноді;
  • Перегляд інформації по гаманцю;
  • Купівля ROLL'ів.
. <(wget -qO- https://raw.githubusercontent.com/doxe1/Massa/main/insert_variables.sh)

Створити сервісний файл

sudo tee <<EOF >/dev/null /etc/systemd/system/massad.service
[Unit]
Description=Massa Node
After=network-online.target

[Service]
User=$USER
WorkingDirectory=$HOME/massa/massa-node
ExecStart=$HOME/massa/massa-node/massa-node -p "$massa_password"
Restart=on-failure
RestartSec=3
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

Запустити сервісний файл

sudo systemctl daemon-reload
sudo systemctl enable massad
sudo systemctl restart massad

Дочекатися появи напису Successful bootstrap

massa_log

При виникненні помилки нижче, повторити запуск ноди

thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: parsing error : public key bs58_check parsing error

Linux (автоматичний)

Для впевнених користувачів

Запустити скрипт і дочекатися закінчення установки

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/Massa/main/multi_tool.sh)

Замінити та додати в систему у вигляді змінних (українською мовою):

  • Перегляд логів ноди;
  • Запуск клієнта;
  • Перегляд інформації по ноді;
  • Перегляд інформації по гаманцю;
  • Купівля ROLL'ів.
. <(wget -qO- https://raw.githubusercontent.com/doxe1/Massa/main/insert_variables.sh)

Windows

Для шанувальників гострих відчуттів

Більшість аудиторії буду ставити ноду на Linux, тому докладну статтю не наведено. Під час встановлення потрібно користуватися офіційним.

Гаманець

Зміст

Створення

massa_client

Згенерувати новий гаманець (використовувати всередині клієнта)

wallet_generate_secret_key

Нікому не показувати скріншот подібний до того, що нижче

⠀Перевірити адресу створеного гаманця (використовувати всередині клієнта)

wallet_info

Вийти з клієнта командою (використовувати всередині клієнта)

exit

Запит токенів із крана

Приєднатися до Discord серверу, пройти верифікацію та перейти в канал #⌠💸⌡testnet-faucet

Надіслати в канал адрес гаманця. Адрес гаманця можна дізнатись виконавши команду нижче:

massa_wallet_info

Зазвичай токени приходять досить швидко, в окремих випадках протягом 15 хвилин. Якщо з якоїсь причини вони не нарахувалися, необхідно написати в один із каналів: #general, #testnet або адміністраторам в особисті повідомлення.

Перевірити чи отримали ви токени можна командою

massa_wallet_info

Або в експлорері, ввівши в поле пошуку адресу гаманця

Отримувати токени можна кожні 24 години. Команда проєкту каже, що достатньо отримати 100 токенів (1 ROLL), щоб бути учасником тестової мережі. Баланси обнулятимуться кожен епізод, під кінець місяця.

Якщо ви запросили токени з крану на невірну адресу, то виправити це можна в каналах #general, #testnet або через особисті повідомлення з адміністраторами.

Якщо при виклику команди massa_wallet_info показувається нульовий баланс, проте в експлорері токени відображаються, то необхідно перезапустити ноду командою.

sudo systemctl restart massad

Стейкінг

Для участі в тестової мережі необхідно купити як мінімум 1 ROLL і застейкати його. Курс обміну: 1 ROLL = 100 MAS.

Придбати ROLL'и за рахунок всього балансу

massa_buy_rolls -mb

Придбати певну кількість ROLL'ів (необхідно ввести кількість)

massa_buy_rolls

Необхідно почекати 0.5-10 хвилин і перевірити, чи з'явилися придбані ROLL'и командою

massa_wallet_info

Далі необхідно включити можливість стейкінгу для гаманця командою

massa_cli_client -a node_start_staking

Після реєстрації ключа для стейкінгу потрібно почекати близько 1 години 40 хвилин, поки ROLL стане активним, а через деякий час почнуть накопичуватися токени за стейкінг.

Можливість стейкінгу для гаманця включається один раз — при подальшому отриманні токенів і обміні їх на ROLL'и знову включати не потрібно.

Інформацію про ноду можна переглянути командою

massa_node_info

Резервна копія

Зміст

Зробити обов'язково

Якщо раніше не було збережено пароль, то зберегти його в надійному місці

echo "$massa_password"

Крім цього, щоб уникнути втрати нагород, необхідно зробити резервну копію файлів, зберігши їх собі на ПК (команди показують шлях)

echo $HOME/massa/massa-node/config/node_privkey.key 
echo $HOME/massa/massa-client/wallet.dat

Якщо використовувався скрипт для автоматичного встановлення або оновлення, то резервна копія цих файлів розташована по шляху

echo $HOME/massa_backup/

Відкриття портів

Зміст

Команда згадувала вище, що за відкриття портів видаватимуться додаткові нагороди. Для цього необхідно відкрити 31244 і 31245 порти та настроїти файл конфігурації.

Автоматичне

Запустити команду

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/Massa/main/multi_tool.sh) \ 
-op

Перейти до пункту «Перевірка».

Вручну

Зупинити ноду

sudo systemctl stop massad

Відкрити порти

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/miscellaneous/ports_opening.sh) \ 
31244 31245

Записати в файл конфігурації зовнішню IP-адресу

sudo tee <<EOF >/dev/null $HOME/massa/massa-node/config/config.toml
[network]
routable_ip = "`wget -qO- eth0.me`"
EOF

Запустити ноду

sudo systemctl restart massad

Перевірка

Перевірити, чи запустилася нода

massa_log

Перевірити, чи відкрилися порти

ss -tulpn | grep :3124

Якщо нічого не виводить, то порти не відкриті, треба повторити процес відкриття портів ще раз.

Іноді бувають проблеми із запуском ноди через брак нод, які використовуються для завантаження (кількість збільшувалася на початку установки), для допомоги спільноті можна додати свою ноду в список, зробивши PR.

Для цього ніякі додаткові режими включати не потрібно, необхідно тільки в початок списку додати рядок

["YOUR_IP:31245", "NODE_ID"]

Де:

  • YOUR_IP - IP сервера з нодою, яка працює. IP можна дізнатися командою
wget -qO- eth0.me
  • NODE_ID — ID ноди. ID можна дізнатися командою
massa_node_info

Реєстрація ноди

Зміст

Для реєстрації в програмі для отримання винагород потрібно:

1) Приєднатися до Discord серверу і пройти верифікацію через телефон та/або к з допомогою капчі;

2) На Discord сервері перейти до чату #⌠✅⌡testnet-rewards-registration;

3) Написати будь-яке повідомлення і дочекатися, поки бот напише в особисті повідомлення (взаємодія з ботом тільки через них);

Якщо бот відповідає не відразу, треба почекати — швидше за все бот навантажений.

4) Надіслати боту IP сервера та дочекатися відповіді. IP можна дізнатися командою:

wget -qO- eth0.me

Якщо неправильно вказали IP, можна змінити його відправивши новий.

Не звертати увагу на будь-які помилки зі словами Routability test failed for unknown reason

5) На сервері виконати команду та ввести Discord ID, виданий ботом

massa_cli_client -a node_testnet_rewards_program_ownership_proof

Якщо команда для реєстрації зависає і нічого не виводить, необхідно:

  • Вийти із клієнта
exit
  • Перезапустити ноду
sudo systemctl restart massad
  • Через 10 секунд виконати команду реєстрації знову

6) Виведене командою інформацію надіслати боту

7) Упевнитися, що все зроблено правильно (мають бути всі 3 пункти), відправивши ботуinfo


Оновлення

Зміст

Автоматичне

Запустити команду та дочекатися закінчення

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/Massa/main/multi_tool.sh)

Створиться папка з резервною копією необхідних файлів, яку потрібно зберегти собі на ПК, якщо резервна копія ще не зроблена (команда відображає шлях)

echo $HOME/massa_backup/ 

Перевірити версію — має бути TEST.26.X

massa_node_info

Запросити токени з крана, застейкати ROLL'и і пройти реєстрацію в Discord боті.

Вручну

Зробити резервну копію файлів, якщо ще не зроблено (команди відображають шлях)

echo $HOME/massa/massa-node/config/node_privkey.key 
echo $HOME/massa/massa-client/wallet.dat

Зупинити ноду

sudo systemctl stop massad

Видалити ноду

rm -rf $HOME/massa

Запросити токени з крана, застейкати ROLL'и і пройти реєстрацію в Discord боті.


Відновлення ноди

Зміст

Маючи резервну копію у виді збережених раніше файлів, можна відновити ноду. Для цього потрібно:

  • Запустити ноду;
  • Файли з резервної копії помістити в потрібні папки (команди відображають шляхи)
echo $HOME/massa/massa-node/config/node_privkey.key 
echo $HOME/massa/massa-client/wallet.dat
  • Перезапустити ноду
sudo systemctl restart massad
  • Включити можливість стейкінгу для гаманця командою
massa_cli_client -a node_add_staking_secret_keys
  • Перевірити, чи правильно був імпортований гаманець
massa_wallet_info

Видалення

Зміст

Запустити команду і дочекатися закінчення

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/Massa/main/multi_tool.sh) \ 
-un

Директорію з резервною копією необхідних файлів (команда нижче відображає шлях) при необхідності видалити вручну

echo $HOME/massa_backup

FAQ

Зміст

Коли мейннет?

⠀Q4 2022.

Скільки всього епізодів?

Невідомо.

Коли можна приєднатися до тестової мережі?

У будь-якому епізоді, нагороди в основної мережі будуть видані пропорційно сумі зароблених баллів за кожен епізод.

Що потрібно робити у кожному епізоді?

  • Завантажити нову версію бінарних файлів;
  • Перезапустити ноду;
  • Запросити токени з крана;
  • Застейкати ROLL'и;
  • Включити можливість стейкінгу для гаманця;
  • Пройти реєстрацію в Discord;
  • Слідкувати за коректною роботою ноди;
  • Дочекатися закінчення епізоду.

error while loading shared libraries: libssl.so.1.1

Встановити бібліотеку, якої бракує.

wget http://nz2.archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1l-1ubuntu1.6_amd64.deb; \ 
sudo dpkg -i libssl1.1_1.1.1l-1ubuntu1.6_amd64.deb

Нода не запускається

Ймовірно, нода не може запуститися через проблеми із нодами, які використовуються для завантаження, особливо, якщо в логах помилка

thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: parsing error : public key bs58_check parsing error

Для їх оновлення потрібно виконати наступні команди

. <(wget -qO- https://raw.githubusercontent.com/SecorD0/Massa/main/multi_tool.sh) -rb; \ 
systemctl restart massad

Внесок спільноти

Інформація про ноду та мережу в Telegram боті

Анонім

Бот з набором корисних функцій, таких як:

  • Повідомлення про злітання ROLL'ів
  • Інформація про мережу
  • Концентрація серверів поруч із зазначеним IP
  • Багато іншого

Використання:

  • Запустити бота командою /start
  • Додати адресу гаманця в систему для отримання повідомлень про злітання ROLL'ів і про вихід нових версій командою /add ADDRESS
  • ADDRESS - адреса гаманця

Бот може надіслати повідомлення про злетівші ROLL'ах в період 1 годину 40 хвилин після покупки ROLL'ів (коли вони ще не стали активними). Якщо вони стали активними, а повідомлення надходять і надалі — ROLL'и злетіли.

  • Інші корисні команди можна дізнатися на сторінці допомоги за допомогою командою /help

Корисні команди

Зміст

Доступні змінні (при використанні прибрати echo)

echo $massa_wallet_address

Переглянути логи ноди

massa_log sudo journalctl -fn 100 
-u massad

Запустити клієнт

massa_client

Переглянути інформацію по ноді

massa_node_info

Переглянути інформацію про гаманці

massa_wallet_info

Придбати ROLL'и

# На весь баланс
massa_buy_rolls -mb
# Певна кількість (необхідно ввести кількість)
massa_buy_rolls

Використання інших команд модернізованого клієнта

massa_cli_client -a node_add_staking_secret_keys 
massa_cli_client -a node_testnet_rewards_program_ownership_proof

Перезапустити ноду

sudo systemctl restart massad

Корисні посилання

Зміст

Офіційний сайт проекту | Офіційна група Telegram

Канал із анонсами Telegram | Українськомовна група Telegram

Twitter | Discord | GitHub | Офіційний гайд | Explorer


Подяка

Зміст

Команді проєкту Massa — за відмінну роботу над проєктом і з спільнотою.

Усім із розділу «Внесок спільноти»

Merlin - переклад першого (текстового) АМА

Команді Let's Node - Вивчення проєкту, ведення російськомовної і української спільнот

doxe - за написання статті та її локалізацію на українську мову

Команда 1package — вивчення проекту, написання статті, ведення російськомовної спільноти


Висловити подяку