Sat Hunting
La caccia agli ordinali è difficile ma gratificante. La sensazione di possedere un portafoglio pieno di UTXO, colmo di satoshi rari ed esotici, non ha paragoni.
Gli ordinali sono numeri per i satoshi. Ogni satoshi ha un numero ordinale e ogni numero ordinale ha un satoshi.
Preparazione
Sono necessarie alcune cose prima di iniziare.
-
Innanzitutto, è necessario un nodo Bitcoin Core sincronizzato con un indice delle transazioni. Per attivare l'indicizzazione delle transazioni, passare
-txindex
alla riga di comando:bitcoind -txindex
Oppure inserire quanto segue nel tuo file di configurazione di Bitcoin:
txindex=1
Avviatelo e attendete che raggiunga la punta della catena; a questo punto il comando seguente dovrebbe stampare l'altezza del blocco corrente:
bitcoin-cli getblockcount
-
In secondo luogo, è necessario un indice
ord
sincronizzato.-
Ottenere una copia di
ord
dal repo. -
Run
ord --index-sats server
. It should connect to your bitcoin core node and start indexing. -
Once it has finished indexing, leave the server running and submit new
ord
commands in a separate terminal session.
-
-
In terzo luogo, è necessario un portafoglio con gli UTXO che si desidera cercare.
Ricerca degli Ordinali Rari
Ricerca degli ordinali rari in un portafoglio Bitcoin Core
Il comando ord wallet
è solo un wrapper attorno all'API RPC di Bitcoin Core, quindi la ricerca di ordinali rari in un portafoglio Bitcoin Core è semplice. Supponendo che il vostro portafoglio si chiami foo
:
-
Caricate il vostro wallet:
bitcoin-cli loadwallet foo
-
Visualizzare ogni UTXO raro nel portafoglio Ordinale di
foo
:ord --index-sats wallet --name foo sats
Ricerca di Ordinali Rari in un Non-Bitcoin Core Wallet
Il comando ord wallet
è solo un involucro dell'API RPC di Bitcoin Core, quindi per cercare gli ordinali rari in un portafoglio non Bitcoin Core, è necessario importare i descrittori del proprio portafoglio in Bitcoin Core.
I descrittori descrivono il modo in cui i portafogli generano le chiavi private e le chiavi pubbliche.
È opportuno importare in Bitcoin Core solo i descrittori per le chiavi pubbliche del portafoglio, non quelli delle chiavi private.
Se il descrittore della chiave pubblica del portafoglio viene compromesso, un aggressore sarà in grado di vedere gli indirizzi del portafoglio, ma i vostri fondi saranno al sicuro.
Se il descrittore della chiave privata del vostro portafoglio è compromesso, un aggressore può svuotare i fondi del vostro portafoglio.
-
Ottenete il descrittore del portafoglio del quale volete cercare gli UTXO rari. Avrà un aspetto simile a questo:
wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)#csvefu29
-
Create un portafoglio solo visualizzazione chiamato
foo-watch-only
:bitcoin-cli createwallet foo-watch-only true true
Sentitevi liberi di dargli un nome migliore di
foo-watch-only
! -
Caricate il
foo-watch-only
wallet:bitcoin-cli loadwallet foo-watch-only
-
Importate i descrittori del vostro portafoglio in
foo-watch-only
:bitcoin-cli importdescriptors \ '[{ "desc": "wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)#tpnxnxax", "timestamp":0 }]'
Se si conosce il timestamp Unix in cui il proprio portafoglio ha iniziato a ricevere transazioni, è possibile utilizzarlo per il valore di
"timestamp"
invece di0
. Questo ridurrà il tempo necessario a Bitcoin Core per cercare gli UTXO del portafoglio. -
Verificate che tutto abbia funzionato:
bitcoin-cli getwalletinfo
-
Visualizzate gli ordinali rari del portafoglio:
ord wallet sats
Ricerca di Ordinali Rari in un portafoglio che esporta descrittori Multi-path
Alcuni descrittori descrivono più percorsi in un unico descrittore utilizzando parentesi angolari, ad esempio <0;1>
. I descrittori multipercorso non sono ancora supportati da Bitcoin Core, quindi è necessario prima convertirli in descrittori multipli e poi importare questi descrittori multipli in Bitcoin Core.
-
Per prima cosa, ottenere il descrittore multipercorso dal proprio portafoglio. Il suo aspetto sarà simile a questo:
wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/<0;1>/*)#fw76ulgt
-
Crea un descrittore per il percorso dell'indirizzo di ricezione:
wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)
E il percorso di modifica dell'indirizzo:
wpkh([bf1dd55e/84'/0'/0']xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/1/*)
-
Ottenete e annotate il checksum del descrittore dell'indirizzo di ricezione, in questo caso
tpnxnxax
:bitcoin-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 }
E per il descrittore dell'indirizzo di modifica, in questo caso
64k8wnd7
:bitcoin-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 }
-
Caricate il portafoglio in cui si desidera importare i descrittori:
bitcoin-cli loadwallet foo-watch-only
-
Ora importate i descrittori, con le checksum corrette, in Bitcoin Core.
bitcoin-cli \ importdescriptors \ '[ { "desc": "wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/0/*)#tpnxnxax" "timestamp":0 }, { "desc": "wpkh([bf1dd55e/84h/0h/0h]xpub6CcJtWcvFQaMo39ANFi1MyXkEXM8T8ZhnxMtSjQAdPmVSTHYnc8Hwoc11VpuP8cb8JUTboZB5A7YYGDonYySij4XTawL6iNZvmZwdnSEEep/1/*)#64k8wnd7", "timestamp":0 } ]'
Se si conosce il timestamp Unix in cui il portafoglio ha iniziato a ricevere transazioni, è possibile utilizzarlo per il valore dei campi
"timestamp"
invece di0
. Questo ridurrà il tempo necessario a Bitcoin Core per cercare gli UTXO del portafoglio. -
Verificate che tutto abbia funzionato:
bitcoin-cli getwalletinfo
-
Visualizzate gli ordinali rari del portafoglio:
ord wallet sats
Esportare Descrittori
Portafoglio Sparrow
Passare alla scheda Settings
, quindi a Script Policy
e premete il pulsante di modifica per visualizzare il descrittore.
Trasferire Ordinali
The ord
wallet supports transferring specific satoshis by using the name of the satoshi. To send the satoshi zonefruits
, do:
ord wallet send <RECEIVING_ADDRESS> zonefruits --fee-rate 21
You can also use the bitcoin-cli
commands createrawtransaction
, signrawtransactionwithwallet
, and sendrawtransaction
, but this method can be complex and is outside the scope of this guide.