Rand Wallet в вебе
Тот же кошелёк в обычной вкладке браузера, который обслуживается с вашей машины небольшим сервером, доступным только через loopback. Он намеренно нигде не размещён: веб-кошелёк настолько надёжен, насколько надёжен источник, который его отдаёт, а этот источник — вы.
Нигде не размещён. Запустите его из локальной копии репозитория клиентов или из архива с исходным кодом, ниже.
- Технологии
- JavaScript · ядро на WebAssembly
- Распространяется через
- копия репозитория clients, запущенная на вашей машине
- Требуется
- Node 20 или новее; актуальный браузер
- Отправка
- Отправляет через prover RandProtocol или ваш собственный
Версия 0.8.0
Файлы прикреплены к релизу v0.8.0 на GitHub; кнопки здесь — это ссылки на них, и с этого сайта ничего не раздаётся.
- Распакуйте его и запустите web/wallet/serve.sh внутри, точно так же, как из git-копии. В архиве есть подмодуль полного узла, которого нет в собственных архивах «Source code» на GitHub.
# с файлом SHA256SUMS, скачанным в ту же папку, что и сам файл
shasum -a 256 -c SHA256SUMS --ignore-missing # macOS
sha256sum -c SHA256SUMS --ignore-missing # Linux
# или выведите сумму одного файла и сравните её с указанной выше
shasum -a 256 rand-wallet-0.8.0-source.tar.gz Совпадение суммы означает, что файл — тот, который был опубликован. Оно не означает, что файл собран из исходного кода: сборки пока не воспроизводятся бит в бит, поэтому, если вам нужно это знать, соберите его сами.
Отправляет через prover RandProtocol или ваш собственный
Пик памяти при доказательстве пакета составляет около 6,2 GB, а браузер выделяет WebAssembly 4 GiB, поэтому веб-кошелёк никогда не строит доказательство сам. Он формирует перевод, поручает prover построить доказательство (по умолчанию prover RandProtocol или тот, который вы подключили), локально проверяет доказательство и отправляет его.
Чтобы скрыть свою историю от prover RandProtocol, подключите настольное приложение Rand Wallet на том же компьютере (Settings → Prove for my other devices) или собственный rand-prover. Доказательство в процессе построения хранится только в памяти вкладки; если перезагрузить страницу посреди построения, оно забудется, и ничего не будет отправлено.
Устройство, которое не может построить доказательство, по умолчанию использует prover RandProtocol: несколько машин, которые обслуживают валидаторы (сегодня четыре, по адресу https://prover.randprotocol.org), без комиссии. Начиная с 0.6.9 у каждого свой ключ, который кошелёк закрепляет, и кошелёк сообщает об этом перед первой отправкой. Машина, которая строит доказательство для отправки, получает ключ просмотра кошелька и одноразовую соль: её оператор может прочитать всю историю кошелька, каждый полученный и отправленный платёж, но не может тратить средства. Ключ расходования никогда не покидает ваше устройство, которое само строит небольшое доказательство авторизации. Для большей приватности выберите собственный prover в Settings → Prover; он тогда всегда имеет приоритет. Кошелёк проверяет каждое доказательство перед отправкой.
Подключение prover шаг за шагом: docs/prover.md.
Где хранится ключ
Ключ траты — единственный секрет кошелька. Нет ни учётной записи, ни сервера, хранящего его копию: потеряв ключ, его не сможет восстановить никто, поэтому сохраните его, когда кошелёк его покажет.
Запустите из копии репозитория
- Клонируйте репозиторий clients и запустите web/wallet/serve.sh, затем откройте http://127.0.0.1:8787/. Первый запуск собирает ядро на WebAssembly, на это уходит несколько минут; дальше запуск сводится к копированию файлов.
- Если вы нашли Rand Wallet по какому-то удалённому URL, доверяйте ему ровно настолько, насколько вы доверяете тому, кто держит этот сервер. Для всего, что имеет значение, используйте настольное приложение или расширение для браузера.
Набор инструментов: Rust 1.98.1, зафиксирован в репозитории и устанавливается через rustup. Руководство по сборке охватывает каждый клиент на чистой машине. Каталоги с исходным кодом: web/wallet/, ui/, core/.
git clone --recurse-submodules https://github.com/randprotocol/clients.git && cd clients
git checkout v0.8.0 && git submodule update --init # релиз; core/vendor/fullnode @ v0.8.0 (c0878c3)
web/wallet/serve.sh # соберите, затем запустите на http://127.0.0.1:8787/
RAND_WALLET_PORT=9000 web/wallet/serve.sh # на другом порту Что он делает на любой платформе
- Создание кошелька
- Ключ расходования генерируется на устройстве и показывается один раз, чтобы вы его сохранили; из него выводится адрес rand1…. Импортируйте существующий ключ или файл wallet.key.json из CLI rand; каждый клиент экспортирует один и тот же файл.
- Получение и отправка
- Ваш баланс — это набор нот, которые может открыть только ваш ключ; чтобы найти их, кошелёк сканирует дерево обязательств. Перевод RAND или любого токена RPL из списка — это один пакет 4-in-4-out, авторизованный доказательством. Никто не узнаёт ни отправителя, ни получателя, ни сумму, ни то, какой актив перемещался.
- Faucet
- В testnet с открытым faucet одно нажатие чеканит 100 RAND в ноту, которую может открыть только вы.
- Раскрывайте только то, что выберете
- Скопируйте свой ключ просмотра и откройте My history в RandScan, чтобы увидеть каждую ноту, которую вы отправили или получили, либо скопируйте ключ транзакции одного платежа, чтобы раскрыть именно этот платёж и ничего больше. Обозреватель расшифровывает данные в вашем браузере и никуда не отправляет ключ.
Ключи просмотра и ключи транзакций открываются на randscan.org.
Прежде чем что-либо отправлять
- Цепочка
- Публичная конечная точка обслуживает chain 21, работающую с 12 Oct 2026 10:31 UTC (выпущена на fullnode v0.8.0). Ядро кошелька включает fullnode v0.8.0 (c0878c3) и отвергает любую другую цепочку: chain 21 работает на constraint set 9, поэтому кошелёк 0.7.x не может отправлять в ней транзакции, а этот релиз не может отправлять в chain 20. Ключи и адреса сохраняются; кошелёк, сканировавший chain 20, один раз показывает баннер о другой цепочке и заново сканирует с генезиса chain 21. Пополнения и выводы через мост по-прежнему облагаются комиссией 0,1% в zUSD, которую кошелёк показывает до вывода средств.
- RPC-endpoint
- Settings → Network. По умолчанию https://rpc.randprotocol.org; подойдёт любой RPC rand-node, до которого вы можете достучаться, а сохранённый URL проверяется до того, как будет сохранён
- Построение доказательств
- Пик памяти при доказательстве пакета составляет около 6,2 GB, на процессоре ноутбука это занимает около минуты
- Статус
- Экспериментальное программное обеспечение для testnet. Не проходило аудит. RAND в testnet не имеет реальной стоимости
- Лицензия
- GPL-3.0-only, как и крейты полного узла, с которыми компонуется каждый клиент
Один кошелёк, все платформы
Один и тот же файл ключа, формат адреса и правила везде: кошелёк, созданный здесь, импортируется в любой другой клиент и в CLI rand.