Wallet
Individuele sats kunnen worden ingeschreven met willekeurige inhoud, waardoor Bitcoin-native digitale artefacten ontstaan die kunnen worden bewaard in een Bitcoin-portemonnee en overgedragen kunnen worden met Bitcoin-transacties. Inschrijvingen zijn net zo duurzaam, onveranderlijk, veilig en gedecentraliseerd als Bitcoin zelf.
Werken met inschrijvingen vereist een Bitcoin full node, die je een overzicht geeft van de huidige staat van de Bitcoin-blockchain, en een portemonnee die inschrijvingen kan maken en satoshis kan beheren bij het opstellen van transacties om inschrijvingen naar een andere portemonnee te verzenden.
Bitcoin Core biedt zowel een Bitcoin full node als een portemonnee. De Bitcoin Core-portemonnee kan echter geen inschrijvingen maken en voert geen sat-beheer uit.
Dit vereist ord
, de ordinal utility. ord
implementeert geen eigen portemonnee, dus ord wallet
subcommando's communiceren met Bitcoin Core-portemonnees.
Deze gids behandelt:
- Bitcoin Core installeren
- De Bitcoin-blockchain synchroniseren
- Het Creëren van een Bitcoin Core Wallet
- Gebruik
ord wallet receive
om sats te ontvangen - Inschrijvingen maken met
ord wallet inscribe
- Inschrijvingen verzenden met
ord wallet send
- Inschrijvingen ontvangen met
ord wallet receive
- Batch-inschrijven met
ord wallet inscribe --batch
Hulp Krijgen
Als je vastloopt, probeer dan hulp te vragen op de Ordinals Discord Server, of kijk op GitHub voor relevante issues en discussies.
Bitcoin Core installeren
Bitcoin Core is beschikbaar op bitcoincore.org op de downloadpagina.
Making inscriptions requires Bitcoin Core 28 or newer.
Deze gids behandelt de installatie van Bitcoin Core niet in detail. Zodra Bitcoin Core is geïnstalleerd, zou je in staat moeten zijn om bitcoind -version
succesvol uit te voeren vanaf de opdrachtregel. Gebruik NIET bitcoin-qt
.
Bitcoin Core Configureren
ord
vereist de transactie-index en de REST-interface van Bitcoin Core.
Om je Bitcoin Core-node te configureren voor het bijhouden van een transactie-index, voeg je het volgende toe aan je bitcoin.conf
:
txindex=1
Of, start bitcoind met -txindex:
bitcoind -txindex
Informatie over het aanmaken of aanpassen van je bitcoin.conf
-bestand kun je hier vinden.
Het synchroniseren van de Bitcoin-blockchain
Om de keten te synchroniseren, voer je uit:
bitcoind -txindex
... en laat het draaien totdat getblockcount
aangeeft:
bitcoin-cli getblockcount
... en overeenkomt met de blokteller op een block explorer zoals de mempool.space block explorer. ord
interacteert met bitcoind
, dus je moet bitcoind
op de achtergrond laten draaien wanneer je ord
gebruikt.
De blockchain neemt ongeveer 600 GB aan schijfruimte in beslag. Als je een externe schijf hebt waarop je de blokken wilt opslaan, gebruik dan de configuratieoptie blocksdir=<external_drive_path>
. Dit is veel eenvoudiger dan de datadir
-optie omdat het cookiebestand nog steeds op de standaardlocatie staat, zodat bitcoin-cli
en ord
het kunnen vinden.
Probleemoplossing
Zorg ervoor dat je toegang hebt tot bitcoind
met bitcoin-cli -getinfo
en dat het volledig gesynchroniseerd is.
Als bitcoin-cli -getinfo
de melding Could not connect to the server
retourneert, draait bitcoind
niet.
Zorg ervoor dat rpcuser
, rpcpassword
of rpcauth
NIET zijn ingesteld in je bitcoin.conf
-bestand. ord
vereist het gebruik van cookie-authenticatie. Controleer of er een .cookie
-bestand in je bitcoin-datamap aanwezig is.
Als bitcoin-cli -getinfo
de melding Could not locate RPC credentials
retourneert, moet je de locatie van het cookiebestand specificeren. Als je een aangepaste datamap gebruikt (door de datadir
-optie op te geven), moet je de locatie van het cookiebestand aangeven zoals bitcoin-cli -rpccookiefile=<your_bitcoin_datadir>/.cookie -getinfo
. Wanneer je ord
uitvoert, moet je de locatie van het cookiebestand opgeven met --cookie-file=<your_bitcoin_datadir>/.cookie
.
Zorg ervoor dat je NIET disablewallet=1
in je bitcoin.conf
-bestand hebt staan. Als bitcoin-cli listwallets
de melding Method not found
retourneert, is de wallet uitgeschakeld en kun je ord
niet gebruiken.
Zorg ervoor dat txindex=1
is ingesteld. Voer bitcoin-cli getindexinfo
uit en het zou iets moeten teruggeven zoals
{
"txindex": {
"synced": true,
"best_block_height": 776546
}
}
Als het alleen {}
retourneert, is txindex
niet ingesteld. Als het "synced": false
retourneert, is bitcoind
nog bezig met het aanmaken van de txindex
. Wacht tot "synced": true
voordat je ord
gebruikt.
Als je maxuploadtarget
hebt ingesteld, kan dit het ophalen van blokken voor de ord
-index verstoren. Verwijder het of stel whitebind=127.0.0.1:8333
in.
Installatie van ord
De ord
-tool is geschreven in Rust en kan worden gebouwd vanaf de bron. Kant-en-klare binaire bestanden zijn beschikbaar op de releases-pagina.
Je kunt de nieuwste kant-en-klare binaire versie vanaf de opdrachtregel installeren met:
curl --proto '=https' --tlsv1.2 -fsLS https://ordinals.com/install.sh | bash -s
Zodra ord
is geïnstalleerd, zou je in staat moeten zijn om uit te voeren:
ord --version
Wat de versie van ord
afdrukt.
Een wallet aanmaken
ord
gebruikt bitcoind
om privé-sleutels te beheren, transacties te ondertekenen en transacties naar het Bitcoin-netwerk uit te zenden. Bovendien vereist de ord wallet
dat ord server
op de achtergrond draait. Zorg ervoor dat deze programma's actief zijn:
bitcoind -txindex
ord server
Om een wallet met de naam ord
, de standaardnaam, aan te maken voor gebruik met ord wallet
, voer je uit:
ord wallet create
Dit zal je seed phrase mnemonic afdrukken; sla deze op een veilige plaats op.
`` { "mnemonic": "dignity buddy actor toast talk crisp city annual tourist orient similar federal", "passphrase": "" }
Als je een andere naam wilt opgeven of een ord server
wilt gebruiken die draait op een niet-standaard URL, kun je deze opties instellen:
ord wallet --name foo --server-url http://127.0.0.1:8080 create
Om alle beschikbare portemonnee-opties te zien, kun je uitvoeren:
ord wallet help
Herstellen en Exporteren van een Wallet
De ord
-wallet gebruikt descriptors, zodat je de uitvoerdescriptors kunt exporteren en deze kunt importeren in een andere op descriptors gebaseerde wallet. Om de wallet-descriptors, die je privésleutels bevatten, te exporteren:
$ ord wallet dump
==========================================
= THIS STRING CONTAINS YOUR PRIVATE KEYS =
= DO NOT SHARE WITH ANYONE =
==========================================
{
"wallet_name": "ord",
"descriptors": [
{
"desc": "tr([551ac972/86'/1'/0']tprv8h4xBhrfZwX9o1XtUMmz92yNiGRYjF9B1vkvQ858aN1UQcACZNqN9nFzj3vrYPa4jdPMfw4ooMuNBfR4gcYm7LmhKZNTaF4etbN29Tj7UcH/0/*)#uxn94yt5",
"timestamp": 1296688602,
"active": true,
"internal": false,
"range": [
0,
999
],
"next": 0
},
{
"desc": "tr([551ac972/86'/1'/0']tprv8h4xBhrfZwX9o1XtUMmz92yNiGRYjF9B1vkvQ858aN1UQcACZNqN9nFzj3vrYPa4jdPMfw4ooMuNBfR4gcYm7LmhKZNTaF4etbN29Tj7UcH/1/*)#djkyg3mv",
"timestamp": 1296688602,
"active": true,
"internal": true,
"range": [
0,
999
],
"next": 0
}
]
}
Een ord
wallet kan worden hersteld vanaf een mnemonic:
ord wallet restore --from mnemonic
Typ je mnemonic en druk op enter.
Om te herstellen vanuit een descriptor in descriptor.json
:
cat descriptor.json | ord wallet restore --from descriptor
Om te herstellen vanuit een descriptor in het klembord:
ord wallet restore --from descriptor
Plak de descriptor in de terminal en druk op CTRL-D op Unix of CTRL-Z op Windows.
Ontvangen van Sats
Inscripties worden gemaakt op afzonderlijke sats, met behulp van gewone Bitcoin-transacties die vergoedingen in sats betalen, dus je wallet heeft enige sats nodig.
Haal een nieuw adres op uit je ord
wallet door uit te voeren:
ord wallet receive
En stuur er wat fondsen naartoe.
Je kunt uitstaande transacties bekijken met:
ord wallet transactions
Zodra de transactie is bevestigd, zou je de transactie-uitgangen moeten kunnen zien met ord wallet outputs
.
Inscriptie-inhoud aanmaken
Sats kunnen worden ingeschreven met elk type inhoud, maar de ord
wallet ondersteunt alleen inhoudstypen die kunnen worden weergegeven door de ord
block explorer.
Daarnaast worden inscripties opgenomen in transacties, dus hoe groter de inhoud, hoe hoger de vergoeding die de inscriptie-transactie moet betalen.
Inscriptie-inhoud wordt opgenomen in transaction witnesses, die profiteren van de witness-korting. Om de geschatte vergoeding te berekenen die een inscriptie-transactie zal betalen, deel je de inhoudsgrootte door vier en vermenigvuldig je dit met het vergoedingstarief.
Inscriptie-transacties mogen niet meer dan 400.000 gewichtseenheden bevatten, anders worden ze niet door Bitcoin Core doorgegeven. Eén byte inscriptie-inhoud kost één gewichtseenheid. Aangezien een inscriptie-transactie niet alleen de inscriptie-inhoud omvat, moet je de inscriptie-inhoud beperken tot minder dan 400.000 gewichtseenheden. 390.000 gewichtseenheden zouden veilig moeten zijn.
Inscripties aanmaken
Om een inscriptie aan te maken met de inhoud van FILE
, voer je uit:
ord wallet inscribe --fee-rate FEE_RATE --file FILE
ord
zal twee transacties-ID's en de inscriptie-ID weergeven: één voor de commit-transactie en één voor de reveal-transactie. Inscriptie-ID's hebben de vorm TXIDiN
, waarbij TXID
de transacties-ID van de reveal-transactie is en N
de index van de inscriptie in de reveal-transactie.
De commit-transactie commit zich aan een tapscript dat de inhoud van de inscriptie bevat, en de reveal-transactie besteedt aan dat tapscript, waardoor de inhoud op de blockchain wordt onthuld en ingeschreven op de eerste sat van de invoer die het bijbehorende tapscript bevat.
Wacht totdat de reveal-transactie is gemined. Je kunt de status van de commit- en reveal-transacties controleren met behulp van de mempool.space block explorer.
Zodra de reveal-transactie is gemined, zou de inscriptie-ID moeten worden afgedrukt wanneer je uitvoert:
ord wallet inscriptions
Ouder-Kind Inscripties
Ouder-kind inscripties maken wat in de volksmond bekend staat als collecties mogelijk. Zie provenance voor meer informatie.
Om een inscriptie een kind te maken van een andere, moet de ouderinscriptie ingeschreven en aanwezig zijn in de wallet. Om een ouder te kiezen, voer je ord wallet inscriptions
uit en kopieer je de inscriptie-ID (<PARENT_INSCRIPTION_ID>
).
Nu schrijf je de kindinscriptie in en specificeer je de ouder als volgt:
ord wallet inscribe --fee-rate FEE_RATE --parent <PARENT_INSCRIPTION_ID> --file CHILD_FILE
Deze relatie kan niet achteraf worden toegevoegd; de ouder moet aanwezig zijn bij de aanmaak van het kind.
Inscripties verzenden
Vraag de ontvanger om een nieuw adres te genereren door uit te voeren:
ord wallet receive
Stuur de inscriptie door uit te voeren:
ord wallet send --fee-rate <FEE_RATE> <ADDRESS> <INSCRIPTION_ID>
Bekijk de uitstaande transactie met:
ord wallet transactions
Zodra de verzendtransactie is bevestigd, kan de ontvanger de ontvangst bevestigen door uit te voeren:
ord wallet inscriptions
Runes verzenden
Vraag de ontvanger om een nieuw adres te genereren door uit te voeren:
ord wallet receive
Stuur de runes door uit te voeren:
ord wallet send --fee-rate <FEE_RATE> <ADDRESS> <RUNES_AMOUNT>
Waarbij RUNES_AMOUNT
het aantal runes is dat je wilt verzenden, gevolgd door een :
karakter en de naam van de rune. Bijvoorbeeld, als je 1000 van de EXAMPLE rune wilt verzenden, gebruik je 1000:EXAMPLE
.
ord wallet send --fee-rate 1 SOME_ADDRESS 1000:EXAMPLE
Bekijk de uitstaande transactie met:
ord wallet transactions
Zodra de verzendtransactie is bevestigd, kan de ontvanger de ontvangst bevestigen met:
ord wallet balance
Inscripties ontvangen
Genereer een nieuw ontvangstadres met:
ord wallet receive
De afzender kan de inscriptie naar je adres overdragen met:
ord wallet send --fee-rate <FEE_RATE> ADDRESS INSCRIPTION_ID
Bekijk de uitstaande transactie met:
ord wallet transactions
Zodra de verzendtransactie is bevestigd, kun je de ontvangst bevestigen door uit te voeren:
ord wallet inscriptions