Гаманець
Гаманець NeuroChain — це фраза відновлення з 24 слів. Усе інше — ключ підпису та адреса .human — обчислюється з неї у вашому браузері й нікуди звідти не виходить.
Способи користуватися гаманцем
Усі вони використовують ті самі ключі й ту саму адресу .human; різниця — де зберігається ключ і хто підписує.
| Спосіб | Де ключ | Хто підписує | Для чого | Сторінка |
|---|---|---|---|---|
| Вебгаманець | Ваш браузер, зашифровано паролем | Ви, у застосунку | Щоденне користування: перекази, стейкінг, голосування, імена, агенти | Ця сторінка |
| Спливне вікно підпису | Ваш браузер (вебгаманець) | Ви, підтверджуючи у спливному вікні | Робота з dApp на іншому сайті без передачі йому фрази | Signer SDK |
| JavaScript SDK | Ваша сторінка чи скрипт | Ваш код, з фразою, яку ви йому дали | dApp або автоматизація з власним гаманцем | JavaScript SDK |
| Сесійний ключ (AI-агент) | Машина агента — окремий обмежений ключ | Агент, у межах дозволених адрес, ліміту витрат і строку | Дати AI-асистенту діяти від вашого імені через MCP | AI-агенти (MCP) |
Платні імена (.node, .vault, .agent, …) | Власного ключа немає | Гаманець .human, якому вони належать | Валідатори, спільні скарбниці, акаунти агентів | Адреси |
.vault керують разом кілька учасників: виплата потребує порогової кількості їхніх підписів.
Створення або імпорт
| Що відбувається | |
|---|---|
| Створити | Браузер генерує 24 слова з 256 біт випадкової ентропії (словник BIP-39 з контрольною сумою). Запишіть їх: їх показують один раз. |
| Імпортувати | Введіть наявну фразу з 24 слів. Спершу перевіряється контрольна сума. |
Зі слів браузер виводить пару ключів ML-DSA-65 і адресу, як описано в розділі Адреси. Та сама фраза завжди дає ту саму адресу на будь-якому пристрої.
Де зберігається ключ
| Що | Де | Захист |
|---|---|---|
| Фраза відновлення | localStorage браузера, ключ nc_ks_<адреса> | Зашифровано паролем: PBKDF2-SHA256 (100 000 ітерацій, випадкова 16-байтна сіль) → AES-256-GCM |
| Ключ підпису | Лише пам'ять відкритої вкладки | Виводиться з фрази заново після розблокування |
| Пароль | Ніде | Лише шифрує й розшифровує фразу |
В одному браузері можна тримати кілька гаманців і перемикатися між ними в застосунку.
Бережіть фразу, а не пароль
Пароль лише відмикає копію в цьому браузері. Якщо ви втратите і фразу, і дані браузера, гаманець втрачено — відновити його ніхто не зможе. Якщо фраза потрапила до когось, той може підписувати від вашого імені; перейдіть на новий ключ через Ідентичність.
Переказ NRO
- Застосунок читає ваш наступний nonce і поточну базову комісію.
- Ставить ціну газу 1,5 × базова комісія (з округленням угору), щоб транзакція лишалася дійсною, якщо базова комісія зросте до включення в блок.
- Браузер локально (WASM) перевіряє баланс, nonce і комісію й показує помилку ще до відправлення.
- Підписує
nc-tx-v2|from|to|value|nonceвашим ключем і надсилає транзакцію разом із публічним ключем. - Нода перевіряє підпис і те, що з вашого публічного ключа виводиться ваша адреса, і ставить транзакцію в чергу.
Переказ самому собі коштує лише комісію; застосунок так його і показує.
Статуси транзакцій
| Статус | Значення |
|---|---|
pending | Прийнято нодою, чекає в mempool. Відкидається, якщо не потрапила в блок за 60 секунд. |
confirmed | В остаточному блоці й застосована. |
failed | В остаточному блоці, але виклик контракту перервався або вичерпав fuel. Сума і зміни сховища відкочені; комісія і nonce витрачені. |
held | Прийнята, але затримана шаром політик Sentinel вимкнено за замовчуванням: сума звільниться автоматично після затримки або чекає вашого підтвердження. |
cancelled | Утримана транзакція, яку ви скасували; сума повернута. |
refunded | Суму повернуто вам — утримана транзакція без підтвердження до терміну або міжшардовий переказ, що не завершився вчасно. |
Підписані операції
Стейкінг, реєстрація імен, голосування та подібні дії — не перекази, але підписуються так само. Гаманець підписує nc-tx-v2|<ви>|<системна ціль>|<сума>|<nonce>, де ціль називає операцію (neuro:system.stake, neuro:system.node, neuro:system.name, neuro:system.governance, …).
Для них nonce — позначка часу в мілісекундах, і нода приймає лише nonce, більший за останній від вашої адреси, — перехоплений запит не можна повторити.
Кран лише тестові мережі
На ноді, запущеній з CHAIN_ENV=testnet, POST /api/v1/faucet нараховує тестові NRO. За CHAIN_ENV=mainnet (за замовчуванням) кран вимкнено.
| Налаштування | За замовчуванням | Змінна |
|---|---|---|
| Сума на запит | 50 NRO | поле запиту amount |
| Максимум на запит | 100 NRO | NEUROCHAIN_FAUCET_MAX_NRO |
| Пауза для адреси | 24 години | NEUROCHAIN_FAUCET_COOLDOWN_SECS (0 — вимкнути) |
curl -s -X POST "$NODE_RPC/api/v1/faucet" \
-H 'Content-Type: application/json' \
-d '{"address":"neuro:<ваша адреса>.human","public_key":"<ваш публічний ключ ML-DSA-65, hex>"}'Під час першого нарахування кран прив'язує надісланий публічний ключ до адреси.
Гаманець командного рядка
У репозиторії ноди ще є старий гаманець командного рядка neurowallet. Він створений до поточної схеми адрес (NC_KDF_v3) і не підписує ML-DSA-65, тож поточна мережа не приймає його адреси й транзакції. Користуйтеся вебгаманцем або JavaScript SDK.