Швидкий старт

Початок роботи

Швидкий старт

Цей посібник проведе вас від нової організації BroSettlement до активного testnet-гаманця: ви створите окремий API-ключ, запустите Co-Signer у власній інфраструктурі, ініціалізуєте MPC та створите перший гаманець.

text
Встанови обидва BroSettlement Agent Skills з https://github.com/BroLabel/brosettlement-agent-skills.

Клонуй або завантаж репозиторій і перевір обидва файли `SKILL.md` та вбудовані scripts. Запитай мене, який каталог skills підтримує цей AI-агент, потім встанови `brosettlement-onboarding` і `brosettlement-api` як сусідні папки без перезапису наявних skills. Перевір, що доступні обидва skills, потім активуй `$brosettlement-onboarding` і проведи мене через налаштування нової testnet-організації BroSettlement. Якщо автоматична інсталяція не підтримується, назви точний каталог призначення та наступну дію замість повідомлення про успіх.

Передумови

Перед початком підготуйте:

  • організацію BroSettlement на плані Free/Testnet;
  • Linux- або macOS-сервер із вихідним HTTPS-доступом;
  • Git;
  • Go 1.24 або новішу версію;
  • OpenSSL;
  • захищене місце для приватного API-ключа, ключа шифрування частки та зашифрованих файлів MPC-часток.

1. Створіть пару Ed25519-ключів

Створіть ключі на власному комп’ютері або сервері:

bash
openssl genpkey -algorithm ED25519 -out private.pem
openssl pkey -in private.pem -pubout -out public.pem
chmod 600 private.pem

BroSettlement потрібен лише public.pem. Зберігайте private.pem у власній інфраструктурі. Не завантажуйте його в BroSettlement, не надсилайте підтримці та не додавайте до Git.

Виведіть вміст public.pem і скопіюйте весь блок разом з обома граничними рядками:

bash
cat public.pem

2. Створіть API-ключ для Co-Signer

Це ручний крок користувача. Onboarding Agent Skill надає інструкції, але ніколи не відкриває й не керує розділом API Keys у Console та не створює, не змінює, не ротатує і не відкликає API-ключі.

У BroSettlement Console:

  1. Відкрийте API Keys.
  2. Натисніть Create API key.
  3. Вкажіть зрозумілу назву, наприклад Testnet Co-Signer.
  4. Вставте повний PEM-блок публічного ключа в поле Public key (PEM) разом із рядками BEGIN PUBLIC KEY та END PUBLIC KEY.
  5. Заповніть IP whitelist (CIDR). Для тимчасового staging/testnet-онбордингу можна вказати

0.0.0.0/0: це дозволить запити з будь-якої IPv4-адреси та фактично вимкне IP-обмеження на час тестування. Це навмисно надто широке налаштування. Ніколи не використовуйте 0.0.0.0/0 у production; перед активацією production API key вкажіть правильну вузьку публічну вихідну IP-адресу або CIDR сервера, на якому працює Co-Signer чи API client.

  1. Розгорніть групу дозволів MPC.
  2. Виберіть усі три обов’язкові дозволи: Initialize MPC, Read MPC та Raw MPC co-signer.
  3. Створіть ключ і безпечно збережіть його API Key ID.

3. Встановіть і запустіть Co-Signer

Клонуйте та зберіть відкритий Co-Signer:

bash
git clone https://github.com/BroLabel/brosettlement-mpc-co-signer.git
cd brosettlement-mpc-co-signer
go mod download
go test ./...
go build -o ./bin/co-signer ./cmd/co-signer

Створіть захищене постійне сховище та окремий secret для шифрування:

bash
mkdir -p ./data/shares
chmod 700 ./data/shares
openssl rand -base64 32 > share-encryption.key
chmod 600 share-encryption.key

Для staging Console використовуйте staging URL BroSettlement API без додаткового запиту Monolith URL та запустіть сервіс:

bash
export CO_SIGNER_MONOLITH_URL="https://brosettlement-staging-api.brolabel.io/"
export CO_SIGNER_API_KEY_ID="<API_KEY_ID>"
export CO_SIGNER_API_PRIVATE_KEY="$(cat /secure/path/private.pem)"
export CO_SIGNER_SHARE_ENCRYPTION_KEY="$(cat /secure/path/share-encryption.key)"
export CO_SIGNER_SHARES_DIR="./data/shares"
export CO_SIGNER_HTTP_ADDR="127.0.0.1:8081"

./bin/co-signer

Не зупиняйте процес. Для постійного розгортання передавайте secrets через service manager або платформу керування secrets, а не через shell profile чи .env у репозиторії.

4. Перевірте Co-Signer

Перевірте локальний health endpoint на сервері Co-Signer:

bash
curl --fail http://127.0.0.1:8081/health

Готовий сервіс повертає HTTP 200:

json
{
  "status": "ok",
  "ready": true,
  "version": "0.1.0",
  "capabilities": {
"dkg": true,
"sign": true
  }
}

Поверніться до BroSettlement Console та переконайтеся, що статус Co-Signer змінився на Online.

5. Ініціалізуйте MPC

  1. Відкрийте Multi-Party Computation у BroSettlement Console.
  2. Переконайтеся, що Co-Signer має статус Online.
  3. Натисніть Initialize MPC і підтвердьте запит.
  4. Не вимикайте Co-Signer до завершення DKG.

Під час ініціалізації не перезапускайте Co-Signer, не змінюйте його API-ключ або ключ шифрування частки та не видаляйте каталог часток.

Ініціалізацію завершено, коли:

  • MPC-ключ має статус Active або Ready;
  • Co-Signer має статус Online;
  • необхідні testnet-мережі мають статус Ready.

6. Створіть перший гаманець

Після готовності MPC:

  1. Відкрийте Accounts і створіть рахунок операційного журналу.
  2. Відкрийте Wallets і натисніть Create wallet.
  3. Виберіть новий рахунок.
  4. Виберіть testnet-мережу, наприклад TRON Nile.
  5. Створіть гаманець і переконайтеся, що він має статус Active.

Коли цей навчальний сценарій виконує Agent Skill, початковий запит на onboarding уже дозволяє створення одного staging/testnet-рахунку операційного журналу та одного пов’язаного гаманця, тому skill не запитує зайве підтвердження перед кожною операцією. Він повторно читає кожен ресурс за ID, повідомляє про успішне створення та повертає безпечні деталі API-відповіді. Повні списки можна отримати пізніше командами:

text
@brosettlement api GET '/api/v1/ledger/accounts'
@brosettlement api GET '/api/v1/wallets'
@brosettlement api GET '/api/v1/ledger/accounts/<accountId>/wallets'

Ті самі ресурси доступні в BroSettlement Console у розділах Accounts і Wallets.

Тепер адресу можна поповнити підтримуваним testnet-активом і перевірити депозит. Для TRON Nile:

Перед запитом перевірте, що актив зараз підтримується. У faucet потрібно вводити лише публічну адресу гаманця в мережі TRON Nile. Faucet ніколи не потребує seed phrase або приватного ключа; не надсилайте mainnet-активи на testnet-адресу. Виведення тестуйте окремо після підтвердження потрібних API scopes і за умови, що Co-Signer залишається онлайн.

Наступні кроки

Co-SignerНалаштуйте secrets, резервні копії, моніторинг та відновлення.ЗвіркаПоєднайте testnet-події гаманця із записами журналу та внутрішніми балансами.