Ark-0 · Веб-кошелёк
Руководство по кошельку
Шаг за шагом: от открытия кошелька до отправки транзакции. Ark-0 — тестовая сеть для экспериментов. Она может быть сброшена в любой момент.
Где открыть кошелёк
Кошелёк — это веб-страница, устанавливать ничего не нужно. Он открывается в браузерах на компьютерах и телефонах, а также во встроенных браузерах приложений-кошельков:
- Компьютер: откройте wallet.ark0.si в Chrome, Edge, Firefox или Safari.
- Телефон: откройте тот же адрес в стандартном браузере телефона, в Chrome или в Safari.
- Приложение-кошелёк: в MetaMask, TokenPocket, imToken, OKX, Bitget и других приложениях-кошельках есть встроенный браузер, обычно на вкладке «Браузер», «Обзор» или «DApp». Введите wallet.ark0.si в его адресную строку.
Кошелёк Ark-0 не просит ваше приложение-кошелёк подключиться, что-либо подписать или одобрить. Вход через приложение-кошелёк (Войти через кошелёк) отключён с 2026-10-14 (см. ниже): страница, которая просит подписать текст в приложении-кошельке, чтобы открыть кошелёк Ark-0, — не наша, не подписывайте; тот, кто получит эту подпись, сможет тратить монеты кошелька, в который вы раньше входили через приложение-кошелёк. Кран никогда не просит подписи, одобрения или оплаты: страница, которая требует чего-то из этого, прежде чем выдать вам монеты Ark-0, — тоже не наша. Открыв страницу, проверьте адресную строку: там должно быть wallet.ark0.si.
Ключи созданного вами кошелька создаются случайным образом в этом браузере и никак не связаны с вашим приложением-кошельком.
Если браузер слишком старый
Кошельку нужен Safari 15.4 или новее (на iPhone и iPad — iOS или iPadOS 15.4 или новее), Chrome или Edge 83 или новее либо Firefox 96 или новее. На Android встроенный браузер приложения-кошелька обычно использует системный WebView. Если через 10–15 секунд на странице всё ещё видно Проверяем сеть… или появилось сообщение, что браузер слишком старый, обновите систему телефона и браузер или откройте кошелёк в другом браузере. На Android можно также обновить Android System WebView в магазине приложений.
И ещё два момента
- Не используйте приватное окно или режим инкогнито: когда вы его закроете, браузер удалит кошелёк.
- Если ссылка не открывается в мессенджере или там заблокирована, откройте меню в правом верхнем углу и выберите открытие страницы в браузере.
Шаг 1: откройте кошелёк
Откройте кошелёк. Если вверху страницы видны тестовая сеть Ark-0 и текущая вершина цепочки, страница подключена к сети. В первый раз нажмите Создать кошелёк. Ключи создаются случайным образом в этом браузере, и открыть кошелёк где-либо ещё можно только с резервным кодом.
Страница создаёт адреса, которые начинаются с tb1z:
- Адрес Schnorr: монеты с него тратятся с подписью Schnorr.
- Адрес ML-DSA-44: монеты с него тратятся с подписью ML-DSA-44, которую проверяет OP_CHECKMLDSA44 — экспериментальный опкод этой тестовой сети. Он не входит в BIP-360. Блоки авторизуются классическими подписями, а с высоты 20000 им нужна ещё и подпись блока ML-DSA-44 по правилу M2. Страница показывает этот адрес, когда цепочка окажется на шесть блоков выше высоты, с которой действует M1.
- Смешанный адрес: один выход с двумя листьями, оба версии 0xe0 (листья с растяжкой — экспериментальная версия листа этой тестовой сети, не входящая в BIP-360); один тратится с подписью Schnorr, другой — с подписью ML-DSA-44. Оператор срывает учебную растяжку в объявленное время: до этого траты идут через лист Schnorr, а после кошелёк сам переходит на лист ML-DSA-44, так что монеты по-прежнему можно потратить, но с гораздо большей комиссией. Страница показывает этот адрес, когда цепочка окажется на шесть блоков выше высоты, с которой действует M3.
- Адрес SLH1: один выход с двумя листьями на глубине один, оба версии 0xc0: один тратится с подписью SLH-DSA-SHA2-128s, которую проверяет OP_CHECKSLHDSA128S — экспериментальный опкод этой тестовой сети, не входящий в BIP-360; второй — OP_RETURN, и его никогда нельзя потратить. Страница показывает этот адрес, когда цепочка окажется на шесть блоков выше высоты, с которой действует M4-S; если цепочка откатывается ниже (например, после реорганизации) или состояние M4-S не удаётся прочитать, страница убирает адрес, а его монеты помечаются как Приостановлено: они учитываются в балансе, но не тратятся. Трата с него содержит по одной подписи SLH-DSA-SHA2-128s (7856 байт) на каждую монету; подписи создаются в фоновом режиме, каждая за несколько секунд, на старых телефонах дольше, и страница показывает ход подписания. У каждого кошелька только один адрес SLH1: платежи на него можно связать друг с другом в цепочке, а в одну трату могут войти сразу несколько его монет. У кошелька, в который вы входили через приложение-кошелёк, этот адрес, как и адрес ML-DSA-44 и смешанный адрес, не защищён постквантовой подписью (см. ниже). Ark-0 — тестовая сеть только для экспериментов, она может быть сброшена в любой момент. Отправляйте на этот адрес только монеты, на которых хотите попробовать M4-S.
Страница различает их четырьмя метками: Классическая подпись, Постквантовая подпись · M1, Классическая + постквантовая · M3 и Постквантовая подпись · M4-S; чем они отличаются, объясняет блок Зачем несколько адресов? над адресами.
Все они принадлежат этому кошельку и восстанавливаются одним и тем же резервным кодом. Если у вас уже есть резервный код, не создавайте новый кошелёк, а восстановите свой: см. «Другое устройство или браузер».
Кошелёк, в который вы входили через приложение-кошелёк, не защищён постквантовой подписью
Вход через приложение-кошелёк (Войти через кошелёк) отключён с 2026-10-14. У кошелька, открытого так, сид получен из подписи вашего аккаунта под фиксированным текстом. Если аккаунт хоть раз отправлял транзакцию в какой-либо сети, его открытый ключ уже известен; тот, кто сможет вычислить закрытый ключ по открытому, сможет заново создать ту же подпись и получить все ключи этого кошелька, в том числе ключи ML-DSA-44 и SLH-DSA. Поэтому такой кошелёк всегда считается не защищённым постквантовой подписью. Если браузер его хранит, он открывается, как раньше, а страница кошелька это отмечает. Больше не подписывайте этот текст ни на каком сайте: тот, кто получит подпись, сможет тратить монеты этого кошелька.
Чтобы перейти на кошелёк со своим случайным сидом:
- Запишите резервный код этого кошелька: вход отключён, и теперь открыть этот кошелёк снова можно только по резервному коду. Если вы подписали этим кошельком декларацию о готовности к миграции, сначала отзовите подпись: на странице подписи нажмите Отозвать подпись, а подпишите заново уже новым кошельком.
- Нажмите Забыть этот кошелёк и Удалить ключи, затем Создать кошелёк и запишите резервный код нового кошелька.
- Под любым из адресов нового кошелька нажмите Получить тестовые монеты.
- Если хотите перенести и монеты старого кошелька: скопируйте адрес ML-DSA-44 или смешанный адрес нового кошелька и забудьте новый кошелёк; восстановите старый по его резервному коду и отправьте монеты с каждого его адреса на скопированный адрес (по одной отправке с каждого адреса, отметив Отправить всё); когда эти транзакции подтвердятся и баланс станет нулевым, забудьте старый кошелёк и восстановите новый по его резервному коду.
Шаг 2: запишите резервный код
Запишите резервный код — неважно, создали вы кошелёк или вошли в него. Когда кошелёк открыт, напоминание вверху страницы предлагает сделать резервную копию. В разделе Резервная копия внизу страницы нажмите Показать резервный код. Резервный код начинается с ark0w1-. Запишите его на бумаге или нажмите Скопировать и сохраните в месте, которому доверяете, например в менеджере паролей.
Ключи хранятся только в этом браузере. На нашем сервере копии нет, и вернуть ключи мы не сможем. Кошелёк может исчезнуть, если очистить данные сайтов в браузере, очистить кеш приложения-кошелька, удалить браузер или приложение или сменить телефон; кроме того, браузеры на iPhone могут удалять данные сайта, который давно не открывали. Тогда вернуть кошелёк можно только резервным кодом.
Резервный код — это и есть кошелёк: любой, у кого он есть, может потратить монеты. Никому его не отправляйте, даже тем, кто представляется сотрудником поддержки или администратором.
Шаг 3: получите тестовые монеты
Под любым из адресов нажмите Получить тестовые монеты. Откроется кран с уже вписанным адресом: пройдите проверку на человека и нажмите Получить монеты. Каждый адрес может получать монеты раз в 24 часа. Затем нажмите Назад в кошелёк на странице крана, чтобы вернуться в кошелёк.
Чтобы попробовать M1, получите монеты на адрес ML-DSA-44 и потратьте их с него на шаге 5: подпись этой транзакции проверит OP_CHECKMLDSA44.
Если проверка на человека так и не загружается, нажмите Скопировать рядом с адресом в кошельке, затем откройте кран в другом браузере, например в стандартном браузере телефона, и вставьте адрес там. Монеты придут на тот же адрес.
Шаг 4: убедитесь, что монеты пришли
Через несколько секунд после того, как кран отправит монеты, кошелёк покажет транзакцию в разделе Активность как ожидающую подтверждения, а рядом с балансом — сумму, которая ещё ждёт подтверждения: транзакция уже в мемпуле, но ещё не в блоке. Следующий блок подтвердит её, обычно в течение двух минут, и тогда сумма появится в строке Подтверждённый баланс этого адреса. Кошелёк обновляется каждые 30 секунд, а пока транзакция ждёт — каждые 10; можно также нажать Обновить.
Нажмите Открыть в обозревателе, чтобы увидеть непотраченные монеты этого адреса в обозревателе блоков. Прошлые транзакции адреса обозреватель не показывает; транзакцию можно найти по её ID.
Шаг 5: отправьте монеты
- В разделе Отправить выберите адрес, с которого тратить.
- Введите адрес получателя. Чтобы просто попробовать, нажмите Другой мой адрес: монеты уйдут на другой ваш адрес.
- Введите сумму или отметьте Отправить всё.
- Нажмите Проверить и проверьте сеть, адрес, сумму и комиссию.
- Нажмите Подтвердить и отправить. Страница по очереди покажет проверку, подпись и отправку в сеть; Отправлено означает, что транзакция ушла. Затем она появится в разделе Активность как ожидающая подтверждения, а балансы изменятся, когда её подтвердит следующий блок. Кнопка Открыть транзакцию покажет её в обозревателе блоков.
Комиссия — 2 сатоши за виртуальный байт (2 sat/vB); слишком мелкая сдача, которую нет смысла возвращать отдельным выходом, добавляется к комиссии. Подпись ML-DSA-44 намного больше подписи Schnorr, поэтому трата с адреса ML-DSA-44 платит намного большую комиссию. После нажатия Проверить будут показаны фактическая комиссия и ставка.
Адрес получателя должен быть адресом Ark-0, то есть начинаться с tb1q, tb1p или tb1z. Адреса tb1 используют и другие тестовые сети, а кошелёк не может определить, относится ли адрес к Ark-0, поэтому проверьте его перед отправкой. Адреса из MetaMask и похожих приложений (0x…) и адреса основной сети Bitcoin не могут принимать монеты Ark-0.
Другое устройство или браузер
Откройте кошелёк в другом браузере или на другом устройстве, вставьте резервный код в разделе Восстановление и нажмите Восстановить кошелёк. Адреса и монеты на них вернутся. Кошелёк, в который вы входили через приложение-кошелёк, теперь тоже возвращается только так. Если в том браузере уже есть кошелёк, раздел Восстановление не показывается: убедитесь, что для того кошелька есть резервная копия или что его монеты переведены в другое место, нажмите Забыть этот кошелёк, а затем восстановите кошелёк.
Один и тот же кошелёк можно восстановить в нескольких браузерах, но отправляйте монеты только из одного: если два браузера потратят одни и те же монеты, подтвердиться сможет только одна из транзакций.
Чтобы перестать пользоваться кошельком на устройстве, нажмите Забыть этот кошелёк, а затем Удалить ключи. Перед этим убедитесь, что резервный код у вас есть или что монеты переведены в другое место.
Кошелёк для компьютера и Android
Ark-0 Wallet — кошелёк, который устанавливается на Windows, macOS, Linux и Android и работает в той же тестовой сети Ark-0, что и этот веб-кошелёк. Его ключи выводятся из 24 слов для восстановления и хранятся на устройстве в файле, зашифрованном вашим паролем; подпись тоже выполняется на устройстве. Каждый перевод вы сначала проверяете в кошельке, затем подтверждаете в диалоговом окне операционной системы. Балансы и статусы транзакций кошелёк запрашивает и у wallet.ark0.si, и у wallet2.ark0.si и сверяет ответы; перевод окончательно подтверждён после 6 блоков, когда кошелёк сам проверил подписи этих блоков.
- Откройте страницу загрузки и скачайте файл для своей системы. Там для каждого файла указаны размер и SHA-256 и описана установка; те же файлы есть на странице выпуска на GitHub.
- Перед установкой проверьте файл, как показано на странице загрузки:
SHA256SUMSподписан ключом выпусков Ark-0 — тем же, которым подписываются выпуски узла. - Установите программу и откройте кошелёк. Создайте новый кошелёк и запишите его 24 слова для восстановления; или выберите «Restore a wallet» и введите слова либо вставьте резервный код этого веб-кошелька — восстановятся те же адреса, что были в веб-кошельке.
Слова для восстановления — как резервный код: кто их знает, тот может распоряжаться монетами кошелька, а мы никогда их не попросим. Они работают только в Ark-0 Wallet: другие кошельки не выводят из них те же ключи. Ark-0 Wallet — экспериментальная программа, и сторонний аудит она не проходила.
Подпишите декларацию о готовности к миграции
Декларация о готовности к миграции — это одно предложение. Ниже — его перевод для справки; подписывается текст на китайском и английском:
Я поддерживаю подготовку Bitcoin к постквантовой миграции уже сейчас: иметь наготове пути миграции, инструменты и учения до того, как появится проверяемый квантовый прогресс, и публиковать доказательства каждого шага.
Если вы с ней согласны, можете подписать её своим кошельком Ark-0. Все подписи публичны; пока у вас есть кошелёк или его резервный код, свою подпись можно отозвать в любой момент. Подписываете вы или нет, ни на какие права это не влияет.
- Откройте страницу подписи. Она находится на сайте стандартного кошелька; на сайте версии Lattice подписать нельзя. Если в этом браузере ещё нет кошелька Ark-0, а у вас он есть (в том числе на старом адресе), сначала перенесите его сюда по резервному коду (Восстановить кошелёк) на странице кошелька; если кошелька у вас нет — нажмите Создать кошелёк. Затем вернитесь на страницу подписи.
- Прочитайте пункты в разделе Перед подписанием, затем нажмите Проверить публичный реестр. Страница скачает весь публичный реестр и сверит его прямо в вашем браузере, а не будет спрашивать сервер о ваших ключах декларации по одному.
- Нажмите Подписать декларацию. Страница получит задание от сервера, выполнит немного вычислительной работы, подпишет текст ключом декларации и отправит подпись. Работа обычно занимает несколько секунд; держите страницу на переднем плане. Эта работа нужна, чтобы массовое подписание обходилось дорого. Когда страница сообщит, что декларация подписана, и покажет, когда сервер принял подпись, — готово.
- Чтобы отозвать подпись, вернитесь на страницу подписи и нажмите Отозвать подпись.
Что стоит знать перед подписанием
- Приложение-кошелёк не участвует, монеты не тратятся. Декларация подписывается ключом, который кошелёк Ark-0 вычисляет в вашем браузере только для этой цели (ключ декларации, ML-DSA-44). Ни подписание, ни отзыв не заставят MetaMask, TokenPocket или другое приложение-кошелёк запросить подпись или одобрение: ничто не подключается к приложению-кошельку, не одобряет контракты и не платит комиссию. Если на странице подписи приложение-кошелёк просит вас что-то подписать или одобрить, этот запрос не от нас: отклоните его.
- Подпись действительна только для этого предложения. Вы подписываете предложение на двух языках — китайском и английском; на странице подписи показаны оба текста и их хеш. Измените любой символ — и подпись перестанет проходить проверку. Это не транзакция: она не попадает в цепочку, ничего не может перевести и не служит разрешением ни на что другое.
- Закрытый ключ не покидает ваш браузер. Сервер получает открытый ключ, подпись, действие и результат работы (и, как любой сайт, видит ваш IP-адрес), но никогда не получает сид кошелька, резервный код или закрытые ключи. Ключи декларации вычисляются отдельно от ключей, на которые приходят монеты: по одному только публичному реестру нельзя понять, какому адресу кошелька принадлежит ключ декларации.
- Что публикуется. Открытый ключ, подпись, действие (подписание или отзыв), время, когда сервер принял запрос (с точностью до часа), а также задание и nonce, по которым любой может проверить работу, — всё это попадает в публичный реестр declaration.json, который любой может скачать и проверить офлайн. Ваш IP-адрес и адреса вашего кошелька мы не публикуем.
- Анонимность не гарантируется. Оператор и промежуточные сетевые сервисы могут связать запрос на подпись с действиями кошелька в том же браузере.
- Тот же риск, что и на странице кошелька. Страница подписи и кошелёк — один сайт, поэтому скрипт этого сайта может получить доступ к сиду кошелька. Сайт загружает только собственные скрипты: никаких сторонних скриптов и никакой аналитики.
- Подпись можно отозвать. Для отзыва нужен кошелёк Ark-0, которым вы подписывали, или его резервный код. Отозванный ключ больше не учитывается, а история в реестре сохраняется. Если позже захотите подписать снова, кошелёк возьмёт новый ключ декларации.
- Число — это не число людей. Страница подписи показывает, у скольких открытых ключей есть действительная подпись. Один человек может создать много ключей, и оператор тоже может подписывать собственными ключами. Пожалуйста, подписывайте только один раз.
Подписывайте только на wallet.ark0.si. Мы никогда не просим в личных сообщениях что-либо подписать и никогда не просим резервный код: тот, у кого есть ваш резервный код, может потратить монеты этого кошелька Ark-0.
Запустите свой узел и наблюдайте за учениями
Узел — это запущенное у вас ПО Ark-0, которое само проверяет каждый блок. Когда 30 октября мы сорвём учебную растяжку, ваш узел сам применит опубликованные правила, и доверять нашим сайтам не придётся. Чем больше людей наблюдает за учениями, тем достовернее отчёт о них.
Что понадобится: компьютер с Windows, Mac или Linux, подключённый к интернету. Узел небольшой: программа вместе с данными цепочки занимает меньше 200 МБ, памяти нужно меньше 100 МБ, а первая синхронизация обычно длится несколько минут. Проще всего — Ark-0 Witness: небольшая программа, внутри которой узел Ark-0 для вашей системы. Она запускается из распакованной папки, ничего не устанавливая, и показывает в браузере, что видит ваш узел. Все команды, чтобы запустить узел самостоятельно, включая сборку из исходного кода, есть в JOIN.md (на английском); ниже для каждой системы сказано, как это сделать, и команды совпадают с JOIN.md.
Ark-0 Witness мы запускали на Windows, на Mac с чипом Apple (на нём же через Rosetta — и версию для Intel) и на Linux на x86_64, где также сами, один за другим, проверили шаги для Linux ниже (они совпадают с JOIN.md). Версия для Linux на ARM пока запускалась только в эмуляторе. Шаги для WSL и Docker написаны по официальным инструкциям Microsoft и Docker, и сами мы их не проверяли; если что-то не получится, пожалуйста, сообщите нам.
Сначала о безопасности. Узел сам подключается к нашему публичному узлу node.ark0.si, но не принимает входящих подключений, так что открывать порт на роутере не нужно. Скачав программу, сначала проверьте подпись и хеши — это есть в шагах ниже. Держите узел в отдельном каталоге и не смешивайте его с узлом Bitcoin, если он у вас уже есть; кошельки на этом компьютере узлу Ark-0 тоже не нужны. Наш узел видит IP-адреса подключившихся узлов (так устроен любой узел Bitcoin); мы только считаем, сколько узлов подключилось, и адреса не публикуем. Чтобы прекратить, остановите узел и удалите его каталог.
Windows
Для Ark-0 Witness нужна 64-разрядная Windows 10 или 11 на процессоре Intel или AMD. Дважды щёлкните программу — она запустит узел в фоне, вводить команды не нужно.
- Скачайте ark0-witness-0.3.0-win64.zip (около 10 МБ). Чтобы проверить файл, откройте PowerShell в папке загрузок и выполните
Get-FileHash .\ark0-witness-0.3.0-win64.zip; должно получитьсяD6656931BEA2EE9EE2659C3D89107C5FD5A146B070B6DC5812274AC151BE606F— то же значение, что и в подписанном SHA256SUMS на странице выпуска. - Щёлкните архив правой кнопкой, выберите «Извлечь все», откройте распакованную папку (и папку с тем же именем внутри неё, если она есть) и дважды щёлкните
Ark0Witness.exe. Не запускайте его прямо из архива: тогда программа не найдёт рядомbitcoind.exeи попросит сначала распаковать архив. Распакуйте архив на внутренний диск компьютера: если программа лежит на диске FAT32 или exFAT (такой формат у многих USB-флешек), она покажет в окне ошибку Windows, например «Параметр задан неверно.» или «The parameter is incorrect.», и узел не запустится. - У программы нет подписи кода, поэтому Windows может показать окно «Система Windows защитила ваш компьютер»: нажмите «Подробнее», затем «Выполнить в любом случае». Если Windows блокирует программу и такой кнопки нет (включено «Интеллектуальное управление приложениями»), на этом компьютере Ark-0 Witness не запустится; воспользуйтесь WSL, как описано ниже.
- Откроется окно консоли, а в браузере — страница состояния. Не закрывайте окно: если его закрыть, узел остановится; он остановится и тогда, когда компьютер уйдёт в сон. Первая синхронизация начинается с нуля и обычно занимает несколько минут, в зависимости от соединения.
- Страница показывает, до какого блока синхронизировался узел и к скольким узлам он подключён; совпадает ли хеш блока 1264 с Ark-0; по достижении блока 30000 (с которого действует M3) — хеш этого блока на вашем узле и ссылку, чтобы сверить его в обозревателе блоков; состояние двух растяжек и то, принимаются ли ещё начиная со следующего блока подписи на эллиптических кривых в листьях версии 0xe0. Вставьте сырую транзакцию в разделе «Проверить транзакцию» и нажмите «Проверить» — ваш узел вынесет решение; транзакция только проверяется и никуда не отправляется. В разделе «Отчёт наблюдателя» кнопка «Копировать» даёт текст, который можно опубликовать в сообществе или в issue на GitHub; в нём нет ни IP-адреса, ни названий папок. Время на странице везде указано в UTC.
- Чтобы удалить программу, закройте окно консоли, подождите несколько секунд, удалите распакованную папку, а затем удалите папку
%LOCALAPPDATA%\Ark0Witness(чтобы найти её, вставьте%LOCALAPPDATA%в адресную строку Проводника и нажмите Enter). Больше никуда программа файлы не пишет и ничего не устанавливает.
Другой способ: WSL. Можно также запустить программу для Linux во встроенной в Windows среде Linux (WSL). Подходят Windows 10 (версия 2004 и новее) и Windows 11; на компьютере с Windows на процессоре ARM (например, Snapdragon) узел не запустится.
- Найдите PowerShell в меню «Пуск», щёлкните по нему правой кнопкой мыши и выберите «Запуск от имени администратора». Введите строку ниже и нажмите Enter; после установки перезагрузите компьютер, когда появится запрос:
Если появится сообщение, что нужно включить виртуализацию, сначала включите её в BIOS компьютера. Если Ubuntu 24.04 уже установлена, пропустите этот шаг.wsl --install -d Ubuntu-24.04 - После перезагрузки откройте Ubuntu из меню «Пуск» (в названии есть 24.04). При первом запуске нужно задать имя пользователя и пароль; запомните пароль: он понадобится для sudo.
- В этом окне Ubuntu выполните шаги 1–5 из раздела «Linux» ниже, в точности как написано.
- Узел работает в фоне, но оставьте открытым одно окно Ubuntu (можно свернуть): когда все окна Ubuntu закрыты, Windows может остановить всю среду Linux, а вместе с ней и узел. Когда компьютер уходит в сон, узел тоже останавливается.
Чтобы удалить узел, сделайте в Ubuntu то, что описано в последнем абзаце раздела «Linux» ниже. Если эту Ubuntu вы ставили только ради узла Ark-0 и других ваших данных в ней нет, можно также выполнить в PowerShell wsl --unregister Ubuntu-24.04: это удалит её целиком, вместе со всем содержимым.
Mac
Ark-0 Witness работает на macOS 14 (Sonoma) и новее — как на Mac с чипом Apple, так и на Mac с процессором Intel.
- Скачайте ark0-witness-0.3.0-macos.zip (около 19 МБ). Safari сам распакует архив в папку «Загрузки»; в другом браузере дважды щёлкните zip-файл. Чтобы проверить файлы, выполните в «Терминале»
shasum -a 256 ~/Downloads/ark0-witness-0.3.0-macos/*: строки дляArk0Witnessиbitcoindдолжны совпасть с подписанным SHA256SUMS на странице выпуска. - Дважды щёлкните
Ark0Witnessв папкеark0-witness-0.3.0-macos. Программа не заверена Apple, поэтому при первом запуске macOS сообщит, что не может её проверить: нажмите «Готово» (в macOS 14 — «Отменить»), а не «Переместить в Корзину». Откройте «Системные настройки», затем «Конфиденциальность и безопасность», прокрутите вниз до сообщения о том, что Ark0Witness заблокирован, нажмите «Все равно открыть» (в macOS 14 — «Подтвердить вход») и подтвердите паролем. Снова дважды щёлкнитеArk0Witnessи нажмите «Все равно открыть» (в macOS 14 — «Открыть»). macOS может также спросить, разрешить ли «Терминалу» доступ к файлам в папке «Загрузки»: нажмите «Разрешить». Узел, который лежит рядом, ничего не спросит: программа сама проверяет его и запускает собственную копию. - Откроется окно «Терминала», а в браузере — страница состояния, как и на Windows (см. выше). Не закрывайте окно: если его закрыть, узел остановится («Терминал» сначала спросит — нажмите «Прервать»); он остановится и тогда, когда Mac уйдёт в сон. Команда
caffeinate -iв другом окне «Терминала» не даёт Mac уснуть, пока она работает, но если закрыть крышку, Mac всё равно уснёт. - Чтобы удалить программу, закройте окно «Терминала», подождите минуту, пока узел остановится, затем удалите папку
ark0-witness-0.3.0-macosи папку~/Library/Application Support/Ark0Witness(в Finder выберите «Переход», затем «Переход к папке» и вставьте этот путь). Больше никуда программа файлы не пишет и ничего не устанавливает.
Можно и в «Терминале». Файл, скачанный через curl, не помечается как полученный из интернета, поэтому macOS ничего не спрашивает. Эти строки скачивают zip, проверяют его, распаковывают и запускают программу; Ctrl+C или закрытие окна её останавливают:
cd ~/Downloads &&
curl -LO https://github.com/duncan0k/bitcoin-p2mr-patches/releases/download/ark0-witness-0.3.0/ark0-witness-0.3.0-macos.zip &&
echo "61a7e1e3070a34e79a596e0e4343c21fccd164e7d4549026b9eb0d1c72d10c98 ark0-witness-0.3.0-macos.zip" | shasum -a 256 -c &&
unzip -q ark0-witness-0.3.0-macos.zip &&
./ark0-witness-0.3.0-macos/Ark0Witness
Другой способ: Docker. Если хотите действовать по JOIN.md, запустите в Docker Desktop опубликованный нами образ контейнера. Образ собран для процессоров x86, таких как Intel и AMD; на Mac с чипами Apple серии M он работает через трансляцию Rosetta.
- Скачайте Docker Desktop с docker.com (версию для Apple Silicon или для Intel, в зависимости от чипа), установите и запустите его. На Mac с чипом Apple найдите в настройках Docker Desktop пункт «Use Rosetta for x86_64/amd64 emulation on Apple Silicon» и убедитесь, что он отмечен.
- Откройте «Терминал» и скачайте файлы подписи:
Для проверки подписи нужен gpg. Если у вас установлен Homebrew, выполните:mkdir -p ~/ark0 && cd ~/ark0 R=https://github.com/duncan0k/bitcoin-p2mr-patches curl -fsSL --remote-name-all $R/releases/download/ark0-node-m4r/SHA256SUMS $R/releases/download/ark0-node-m4r/SHA256SUMS.asc https://raw.githubusercontent.com/duncan0k/bitcoin-p2mr-patches/ark0-node-m4r/ark0/release-signing-key.asc
Если Homebrew нет, проверьте подпись с помощью gpg внутри Docker:brew install gnupg gpg --import release-signing-key.asc gpg --verify SHA256SUMS.asc SHA256SUMS
Как читать результат, см. шаг 2 в разделе «Linux» ниже.docker run --rm -v "$HOME/ark0:/w" -w /w debian:13 sh -c 'apt-get update -qq && apt-get install -y -qq gnupg > /dev/null && gpg --import release-signing-key.asc && gpg --verify SHA256SUMS.asc SHA256SUMS' - Скачайте образ по хешу, записанному в SHA256SUMS, — так вы запустите именно тот образ, который покрывает подпись:
D=$(awk '/ark0-node-m4r-image-manifest.json/ {print $1}' SHA256SUMS) docker pull --platform linux/amd64 ghcr.io/duncan0k/ark0-node@sha256:$D - Создайте файл настроек (скопируйте весь блок и вставьте его за один раз):
mkdir -p ~/ark0/data cat > ~/ark0/data/bitcoin.conf <<'EOF' signet=1 listen=0 [signet] signetchallenge=5121026fc5d8e79a9fbc8bc3dea07d82641d16717ce0b000c13c512d8e8c1788c6e5da51ae signetpowtargetspacing=90@8064 addnode=node.ark0.si:38433 EOF - Запустите узел и задайте сокращение
ark0— им пользуются все команды ниже:
В первые секунды после запуска последняя строка может выдать ошибку, что узел ещё не готов; подождите немного и выполните её снова.docker run -d --name ark0 --platform linux/amd64 --user "$(id -u):$(id -g)" -v "$HOME/ark0/data:/data" ghcr.io/duncan0k/ark0-node@sha256:$D -datadir=/data -printtoconsole echo 'alias ark0="docker exec ark0 bitcoin-cli -datadir=/data"' >> ~/.zshrc && source ~/.zshrc ark0 getblockchaininfo
Когда Mac засыпает, узел тоже останавливается. В день учений не давайте ему уснуть: выполните в «Терминале» caffeinate -i и не закрывайте это окно (если закрыть крышку, Mac всё равно уснёт). После перезагрузки Mac сначала откройте Docker Desktop, затем выполните docker start ark0. Чтобы удалить узел, выполните три строки ниже, а затем удалите этот образ в Docker Desktop.
docker rm -f ark0
rm -rf ~/ark0
sed -i '' '/^alias ark0=/d' ~/.zshrc
Linux
Ark-0 Witness работает на 64-разрядном Linux с glibc 2.35 или новее, например на Ubuntu 22.04, Debian 12 и Raspberry Pi OS (bookworm) или более поздних выпусках: ark0-witness-0.3.0-linux-x86_64.tar.gz (около 10 МБ) — для процессоров Intel и AMD, ark0-witness-0.3.0-linux-aarch64.tar.gz (около 10 МБ) — для 64-разрядных ARM, например Raspberry Pi с 64-разрядной системой. В терминале, в папке, куда вы скачали архив, эти строки проверяют его, распаковывают и запускают программу:
echo "f85ac708ba7a35b735a7bf841820c87d92c776d9d69f569932120f8f5874037d ark0-witness-0.3.0-linux-x86_64.tar.gz" | sha256sum -c &&
tar -xzf ark0-witness-0.3.0-linux-x86_64.tar.gz &&
./ark0-witness-0.3.0-linux-x86_64/ark0-witness
Для ARM замените во всех трёх строках x86_64 на aarch64, а SHA-256 — на a768ce5b0976a8187ce4c2a29f75578f6bdd36a0d4926ac6f5be7e174bcfcb09. Если у вас графический рабочий стол, страница состояния откроется в браузере; если нет, откройте адрес, который выведет программа, в браузере на том же компьютере. Если вместо этого программа остановится и выведет команду chmod для ваших папок, выполните эту команду и запустите программу снова. Не закрывайте терминал: если закрыть его или нажать Ctrl+C, узел остановится. На компьютере без экрана, например на Raspberry Pi, к которому вы подключаетесь по SSH, перенаправьте порт страницы: если программа вывела http://127.0.0.1:41234/..., выполните на своём компьютере ssh -L 41234:127.0.0.1:41234 you@raspberrypi и откройте выведенный адрес на своём компьютере, ничего в нём не меняя. Чтобы программа продолжала работать после выхода из системы, запустите её внутри tmux или screen. Чтобы удалить программу, остановите её, затем удалите распакованную папку и ~/.local/share/Ark0Witness.
Готовым сборкам из JOIN.md, которые используются в шагах ниже, нужна Ubuntu 24.04 или Debian 13 на x86_64. На более старых системах (например, Ubuntu 22.04 или Debian 12) они не запустятся: используйте образ контейнера из JOIN.md или соберите узел из исходного кода. Для ARM-машин вроде Raspberry Pi готовых сборок в JOIN.md нет; узел для них есть в Ark-0 Witness (см. выше).
- Установите нужные пакеты:
sudo apt-get update sudo apt-get install -y curl gnupg libevent-core-2.1-7t64 libevent-extra-2.1-7t64 libevent-pthreads-2.1-7t64 libsqlite3-0 - Скачайте файлы и проверьте подпись:
В выводе должна быть строка Good signature from "Ark-0 release signing key (duncan0k) …", а также строка с отпечатком ниже, совпадающая до последнего символа:mkdir -p ~/ark0 && cd ~/ark0 R=https://github.com/duncan0k/bitcoin-p2mr-patches curl -fsSL --remote-name-all $R/releases/download/ark0-node-m4r/ark0-node-m4r-x86_64-linux-gnu.tar.gz $R/releases/download/ark0-node-m4r/SHA256SUMS $R/releases/download/ark0-node-m4r/SHA256SUMS.asc https://raw.githubusercontent.com/duncan0k/bitcoin-p2mr-patches/ark0-node-m4r/ark0/release-signing-key.asc gpg --import release-signing-key.asc gpg --verify SHA256SUMS.asc SHA256SUMS
Предупреждение «This key is not certified with a trusted signature» рядом с ними — это нормально. Если отпечаток не совпадает, остановитесь и дальше не продолжайте.Primary key fingerprint: 025D 989B 68FF 923F 8EF6 9D4B 28F6 5A19 58A2 361A - Проверьте и распакуйте архив с программой. В каждой строке должно быть OK; если проверка не пройдёт, следующие команды не выполнятся:
sha256sum --ignore-missing -c SHA256SUMS && tar -xzf ark0-node-m4r-x86_64-linux-gnu.tar.gz && sha256sum --ignore-missing -c SHA256SUMS - Создайте файл настроек (скопируйте весь блок и вставьте его за один раз), затем запустите узел:
mkdir -p ~/ark0/data cat > ~/ark0/data/bitcoin.conf <<'EOF' signet=1 listen=0 [signet] signetchallenge=5121026fc5d8e79a9fbc8bc3dea07d82641d16717ce0b000c13c512d8e8c1788c6e5da51ae signetpowtargetspacing=90@8064 addnode=node.ark0.si:38433 EOF ~/ark0/ark0-node-m4r/bin/bitcoind -datadir=$HOME/ark0/data -daemonwait - Задайте сокращение
ark0— им пользуются все команды ниже:echo 'alias ark0="$HOME/ark0/ark0-node-m4r/bin/bitcoin-cli -datadir=$HOME/ark0/data"' >> ~/.bashrc && source ~/.bashrc ark0 getblockchaininfo
Остановить узел: ark0 stop. Запустить снова: выполните последнюю строку шага 4. Чтобы удалить узел, остановите его, подождите несколько секунд и выполните две строки ниже.
rm -rf ~/ark0
sed -i '/^alias ark0=/d' ~/.bashrc
Если вы уже устанавливали узел
Если вы раньше установили узел по этому руководству, у вас ark0-node-m3 или более ранняя версия. Начиная с блока 51000 такой узел остановится на блоке с первой тратой через спасательный путь, поэтому до этого его нужно заменить на ark0-node-m4r из шагов выше. Проще всего удалить старые данные цепочки и заново синхронизировать цепочку новой версией (около четверти часа), а файл настроек оставить как есть. С Ark-0 Witness достаточно закрыть старую версию, затем скачать и открыть 0.3.0 по шагам выше.
Если вы пользуетесь готовой сборкой для Linux, сначала выполните четыре строки ниже, затем выполните шаги из раздела «Linux», начиная с шага 2:
ark0 stop
sleep 10
rm -rf ~/ark0/data/signet ~/ark0/ark0-node-m3
sed -i '/^alias ark0=/d' ~/.bashrc
Если вы пользуетесь Docker на Mac, сначала выполните три строки ниже, затем выполните шаги для Docker, начиная с шага 2:
docker rm -f ark0
rm -rf ~/ark0/data/signet
sed -i '' '/^alias ark0=/d' ~/.zshrc
После установки: первая проверка
С Ark-0 Witness эти проверки за вас делает страница состояния, так что этот раздел можно пропустить.
ark0 getblockchaininfo: когда blocks сравняется с headers, а initialblockdownload станет false, синхронизация завершена.ark0 getblockhash 1264: должно получиться00000036e6e81d9884217ca9918e38b9683617b41195a6d4ccc4c4696b31e9d4. Если хеш другой, ваш узел подключён не к Ark-0.ark0 gettripwireinfo: height — 30000, leaf_version — e0. После того как 30 октября была сорвана растяжка, у растяжки с label drill state — missing, у другой — unspent, а ec_disabled_next_block — true. Пока узел не синхронизировался дальше блока 36897, у обеих растяжек будет unspent, а ec_disabled_next_block — false; пока он не прошёл блок 15748, у обеих будет missing. Всё это нормально. Узел новой версии показывает ещё и rescue, где height — 51000.
За чем наблюдать
Учения с растяжкой 30 октября прошли: блок 36897 потратил учебную растяжку, и начиная со следующего блока подписи на эллиптических кривых в листьях версии 0xe0 не проходят проверку. Следующий этап — M4-R: с блока 51000 открывается спасательный путь. Это ожидается около 15 ноября и не раньше 14 ноября; точное время мы сообщим в группах сообщества.
С Ark-0 Witness: на шаге 1 посмотрите, показывает ли страница состояния версию 0.3.0, на шаге 3 — видно ли на странице состояния, что узел синхронизировался дальше блока с тратой через спасательный путь. Для шага 2 нужны команды узла: Ark-0 Witness этого не показывает.
- До блока 51000 убедитесь, что у узла уже новая версия: в выводе
ark0 getdeploymentinfoесть p2mr_rescue, у которого type — buried, а height — 51000. - Когда вершина цепочки дойдёт до блока 50999, в выводе
ark0 getdeploymentinfoу p2mr_rescue поле active станет true, а в разделе rescue выводаark0 gettripwireinfoполе active_next_block тоже станет true. Оба поля относятся к следующему блоку, то есть к блоку 51000: правило действует начиная с него. - После блока 51000, в заранее объявленное время, мы одной транзакцией вернём обе учебные монеты с помощью доказательств для спасения и опубликуем в группах сообщества её txid и хеш блока, в который она попала. Подставьте этот хеш вместо «ХЕШ_БЛОКА» и выполните
ark0 getblock ХЕШ_БЛОКА 1: если блок найден и confirmations больше 0, значит, ваш собственный узел принял первый блок с тратой через спасательный путь. Саму транзакцию можно открыть в обозревателе блоков и посмотреть, какие две монеты она вернула. - Доказательство для спасения, созданное вне цепочки, уже опубликовано, и проверить его самостоятельно можно уже сейчас: следуйте шагам на публичной странице учений по спасению монет, взяв любую из трёх программ проверки — на Python, Rust или Go.
- Если хотите, поделитесь выводом шагов 1–3 (текстом или скриншотом) в группах сообщества или откройте issue на GitHub в репозитории патчей. В публичном отчёте будет указано только, сколько внешних узлов наблюдало за учениями, без имён и без адресов.
Транзакцию для наблюдения за учениями M3 по-прежнему можно дать своему узлу на проверку до 30 ноября; сама транзакция (hex) есть в NETWORK.md, в разделе «What the chain shows».
А телефон на Android подойдёт?
Пока нет, и iPhone тоже не подойдёт. Ark-0 выпускает программы только для компьютеров с Windows, Mac и Linux, версий для телефона нет; к тому же мобильные системы в любой момент останавливают программы, которые долго работают в фоне. С телефона всё равно можно участвовать в учениях: попробовать смешанный адрес в кошельке и смотреть блоки в обозревателе. Но тогда вы видите то, что показывают наши сайты, а это не независимое наблюдение.
Частые проблемы
Адреса начинаются с tb1z, а не с bc1z
Так и должно быть. tb1z и bc1z — один и тот же тип адреса (P2MR), записанный для двух сетей: tb1z — для тестовой сети, bc1z — для основной сети Bitcoin. Ark-0 — тестовая сеть, поэтому адреса кошелька начинаются с tb1z.
Страница всё время показывает Проверяем сеть…
Возможно, браузер слишком старый для кошелька или блокирует скрипт страницы. Обновите браузер или используйте другой: см. «Где открыть кошелёк».
Кнопки Войти через кошелёк нет
Вход через приложение-кошелёк (Войти через кошелёк) отключён с 2026-10-14: у кошелька, открытого так, нет защиты постквантовой подписью (см. «Кошелёк, в который вы входили через приложение-кошелёк, не защищён постквантовой подписью»). Такой кошелёк по-прежнему открывается в браузере, который его хранит; в любом другом месте его возвращает только резервный код. Если резервного кода нет, создайте кошелёк и снова получите тестовые монеты в кране.
Страница сообщает, что кошелёк открыт в другой вкладке
В одном браузере кошелёк работает только в одной вкладке за раз. Закройте другие вкладки с открытым кошельком (у встроенного браузера приложения-кошелька тоже может быть несколько вкладок), и тогда кошелёк откроется на этой странице.
Страница сообщает, что браузер не разрешает ей хранить данные
Выйдите из приватного режима или режима инкогнито, разрешите этому сайту хранить данные в настройках браузера или используйте другой браузер.
Монеты получены, а баланс не изменился
Сначала загляните в раздел Активность: «ожидает подтверждения» значит, что транзакция в мемпуле, и она войдёт в баланс, когда её подтвердит следующий блок. Если там ничего нет, нажмите Обновить; можно также нажать Открыть транзакцию на странице крана с подтверждением отправки и посмотреть, подтвердилась ли транзакция.
Кошелёк не может определить, принял ли узел транзакцию
Нажмите на ID транзакции на странице, чтобы найти её в обозревателе блоков. Этот браузер откладывает её монеты на десять минут и за это время их не тратит. Если и после этого обозреватель не знает о транзакции, отправьте снова.
Страница сообщает, что монеты изменились после проверки
Баланс только что изменился. Нажмите Назад, затем снова Проверить и подтвердите отправку.
Копирование не срабатывает или появляется подсказка Выделите и скопируйте вручную
Страница сама выделит текст: нажмите на него и удерживайте (на компьютере щёлкните правой кнопкой мыши) и скопируйте.