Gro Hunting
This guide is out of date. Since it was written, the ord
binary was changed to only build the full gro index when the --index-sats
flag is supplied. Additionally, ord
now has a built-in wallet that wraps a Groestlcoin Core wallet. See ord wallet --help
.
Ordinal hunting is difficult but rewarding. The feeling of owning a wallet full of UTXOs, redolent with the scent of rare and exotic gros, is beyond compare.
Ordinals are numbers for gros. Every gro has an ordinal number and every ordinal number has a gro.
Подготовка
Перед началом работы вам потребуется несколько вещей.
-
First, you'll need a synced Groestlcoin Core node with a transaction index. To turn on transaction indexing, pass
-txindex
on the command-line:groestlcoind -txindex
Or put the following in your Groestlcoin configuration file:
txindex=1
Запустите его и дождитесь, пока он догонит вершину цепи, после чего следующая команда должна вывести текущую высоту блока:
groestlcoin-cli getblockcount
-
Во-вторых, вам понадобится синхронизированный индекс
ord
.-
Get a copy of
ord
from the repo. -
Run
RUST_LOG=info ord index
. It should connect to your groestlcoin core node and start indexing. -
Дождитесь окончания индексации.
-
-
В-третьих, вам понадобится кошелек с UTXO, которые вы хотите найти.
Поиск Rare Ordinals
Searching for Rare Ordinals in a Groestlcoin Core Wallet
The ord wallet
command is just a wrapper around Groestlcoin Core's RPC API, so searching for rare ordinals in a Groestlcoin Core wallet is Easy. Assuming your wallet is named foo
:
-
Загрузите свой кошелек:
groestlcoin-cli loadwallet foo
-
Отображение любых rare ordinals кошелька
foo
UTXOs:ord wallet sats
Searching for Rare Ordinals in a Non-Groestlcoin Core Wallet
The ord wallet
command is just a wrapper around Groestlcoin Core's RPC API, so to search for rare ordinals in a non-Groestlcoin Core wallet, you'll need to import your wallet's descriptors into Groestlcoin Core.
Descriptors describe the ways that wallets generate private keys and public keys.
You should only import descriptors into Groestlcoin Core for your wallet's public keys, not its private keys.
Если дескриптор открытого ключа вашего кошелька будет скомпрометирован, злоумышленник сможет увидеть адреса вашего кошелька, но ваши средства будут в безопасности.
Если дескриптор закрытого ключа вашего кошелька скомпрометирован, злоумышленник может вывести с него ваши средства.
-
Получите дескриптор кошелька, в кошельке которого вы хотите искать rare ordinals UTXO. Он будет выглядеть примерно так:
wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)#csvefu29
-
Создайте кошелек с именем
foo-watch-only
, предназначенный только для просмотра:groestlcoin-cli createwallet foo-watch-only true true
Не стесняйтесь дать ему более подходящее название, чем
foo-watch-only
! -
Загрузите кошелек
foo-watch-only
:groestlcoin-cli loadwallet foo-watch-only
-
Импортируйте дескрипторы вашего кошелька в
foo-watch-only
:groestlcoin-cli importdescriptors \ '[{ "desc": "wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)#tpnxnxax", "timestamp":0 }]'
If you know the Unix timestamp when your wallet first started receive transactions, you may use it for the value of
"timestamp"
instead of0
. This will reduce the time it takes for Groestlcoin Core to search for your wallet's UTXOs. -
Проверьте, что все работает:
groestlcoin-cli getwalletinfo
-
Отображение rare ordinals в кошельке:
ord wallet sats
Поиск Rare Ordinals в кошельке, экспортирующем многопутевые дескрипторы
Some descriptors describe multiple paths in one descriptor using angle brackets, e.g., <0;1>
. Multi-path descriptors are not yet supported by Groestlcoin Core, so you'll first need to convert them into multiple descriptors, and then import those multiple descriptors into Groestlcoin Core.
-
Сначала получите многопутевой дескриптор из вашего кошелька. Он будет выглядеть примерно так:
wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/<0;1>/*)#fw76ulgt
-
Создайте дескриптор для пути адреса приема:
wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)
И путь смены адреса:
wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/1/*)
-
Получите и запишите контрольную сумму для дескриптора адреса приема, в данном случае
tpnxnxax
:groestlcoin-cli getdescriptorinfo \ 'wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)'
{ "descriptor": "wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)#csvefu29", "checksum": "tpnxnxax", "isrange": true, "issolvable": true, "hasprivatekeys": false }
И для дескриптора адреса изменения, в данном случае
64k8wnd7
:groestlcoin-cli getdescriptorinfo \ 'wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/1/*)'
{ "descriptor": "wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/1/*)#fyfc5f6a", "checksum": "64k8wnd7", "isrange": true, "issolvable": true, "hasprivatekeys": false }
-
Загрузите кошелек, в который вы хотите импортировать дескрипторы:
groestlcoin-cli loadwallet foo-watch-only
-
Now import the descriptors, with the correct checksums, into Groestlcoin Core.
groestlcoin-cli \ importdescriptors \ '[ { "desc": "wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)#tpnxnxax" "timestamp":0 }, { "desc": "wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/1/*)#64k8wnd7", "timestamp":0 } ]'
If you know the Unix timestamp when your wallet first started receive transactions, you may use it for the value of the
"timestamp"
fields instead of0
. This will reduce the time it takes for Groestlcoin Core to search for your wallet's UTXOs. -
Проверьте, что все работает:
groestlcoin-cli getwalletinfo
-
Отображение rare ordinals в кошельке:
ord wallet sats
Экспорт дескрипторов
Sparrow Wallet
Перейдите на вкладку Settings
, затем на вкладку Script Policy
и нажмите кнопку редактирования для отображения дескриптора.
Отправка Ordinals
The ord
wallet supports transferring specific gros. You can also use groestlcoin-cli
commands createrawtransaction
, signrawtransactionwithwallet
, and sendrawtransaction
, how to do so is complex and outside the scope of this guide.