Comandos do console RPC da carteira do núcleo do Bitcoin – listas de chamadas da API do cliente Bitcoin-qt

Neste artigo, compartilharemos alguns dos comandos básicos que você pode usar para interagir com o console RPC principal do Bitcoin.

O cliente Bitcoin core QT é a carteira Bitcoin original e um nó completo que possui recursos que a maioria das outras carteiras Bitcoin não tem. Ele constrói a espinha dorsal da rede. Oferece validação total e alto nível de privacidade, segurança e estabilidade.

A carteira está disponível para Windows, Mac e Linux. Se você ainda não tem o núcleo Bitcoin instalado em seu computador, você pode fazer o download aqui. https://bitcoin.org/en/download

Antes de baixar e instalar, verifique sua largura de banda e espaço. A carteira principal deve validar totalmente as transações e os bloqueios. No momento em que este artigo foi escrito, os requisitos mínimos de espaço em disco para executar um núcleo Bitcoin eram mais de 350 GB. Faz o download de enormes quantidades de dados, então certifique-se de ter uma boa conexão à Internet e requisitos de largura de banda.

Veja todos os requisitos básicos do sistema Bitcoin e custos de operação aqui: https://bitcoin.org/en/bitcoin-core/features/requirements

Verifique também a soma de verificação da carteira antes de instalá-la e usá-la.

Dica profissional: Se você não tem espaço em disco suficiente, pode executar o núcleo Bitcoin no modo de poda.

UI gráfica e CLI / API do núcleo do Bitcoin

Depois de baixar e instalar a carteira, aguarde a sincronização completa. Se você tiver problemas para sincronizar sua carteira, consulte este guia sobre problema de carteira sem sincronização.

Assim que estiver totalmente sincronizado, sua carteira está pronta para uso e você pode começar a interagir com o cliente.

O software Core wallet possui GUI (Graphical User Interface) e uma interface de console. A GUI é conveniente para iniciantes. Pode-se ver seu saldo atual, transações recentes, enviar, receber Bitcoins, pode ajustar taxas, tem controle de moedas e algumas outras funções básicas.

Mas para usar o software em todo o seu potencial e ter total controle sobre seus Bitcoins, você precisa aprender a usar a janela do console.

Aqui, mostraremos como usar a janela do console de depuração na carteira Bitcoin-qt.

Agora, antes de entrar neste guia e antes de inserir qualquer comando na janela do console, esperamos que sua carteira esteja criptografada e você tenha um backup.

Para saber como criptografar, consulte este guia básico para iniciantes de carteira. Além disso, se você não sabe, aqui está um guia para fazer backup e restaurar a carteira principal.

Janela do console do núcleo Bitcoin

Na versão anterior do cliente Bitcoin, você deve ver a janela de depuração em Ajuda > Janela de depuração onde você pode começar a inserir comandos bitcoin-cli.

console bitcoin

No menu suspenso da versão mais recente e abre a janela do console.

Você deve ver o seguinte aviso.

Bem-vindo ao console Bitcoin Core RPC.

Use as setas para cima e para baixo para navegar no histórico e Ctrl-L para limpar a tela.

Digite help para obter uma visão geral dos comandos disponíveis.

Para obter mais informações sobre como usar este console, digite help-console.

AVISO: Os golpistas têm estado ativos, dizendo aos usuários para digitar comandos aqui, roubando o conteúdo de suas carteiras. Não use este console sem compreender totalmente as ramificações de um comando.

janela do console

Como o aviso sugere, não insira comentários com os quais você não esteja familiarizado e não compartilhe com ninguém as informações que sua janela de console retorna, especialmente aquelas que envolvem senha de carteira e chaves privadas.

Comandos de console Bitcoin

A janela do console Bitcoin RPC aceita uma variedade de comandos. Digite ajuda e entre. Você deverá ver a lista de comandos atualmente aceitos pelo console. Compartilhamos todas as listas de comandos disponíveis abaixo.

lista de comandos do console do núcleo bitcoin

Não entraremos em detalhes sobre tudo isso. Para se familiarizar com a janela do console, mostraremos alguns comandos básicos.

> getblockcount

Retorna o melhor índice de bloco atual

653646

> getbalance

Exibe o saldo total da carteira disponível

0,00000000

> getconnectioncount

Retorna o número de conexão ativa à rede Bitcoin

10

> getwalletinfo

Retorna um objeto contendo as informações da sua carteira

{

"carteira": "",

"walletversion": xxxxxxx,

"Saldo": 0,00000000,

"saldo_confirmado": 0,00000000,

"equilíbrio_imaturo": 0,00000000,

"txcount": 0,

"keypoololdest": xxxxxxxxxx,

"keypoolsize": xxxx,

"hdseedid": "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",

"keypoolsize_hd_internal": xxxx,

"desbloqueado_até": x,

"paytxfee": 0,00000000,

"private_keys_enabled": verdade,

"evitar_reusar": falso,

"digitalização": falso

}

> getblockchaininfo

Retorna informações sobre o blockchain Bitcoin atual. Você pode usar este comando para identificar o tamanho do blockchain, dificuldade etc..

{

"corrente": "a Principal",

"blocos": 653527,

"cabeçalhos": 653587,

"bestblockhash": "0000000000000000000313ef2b2930ecbc3fe05de391bc439xxxxxxxxxxxxxxxx",

"dificuldade": 19996789994446.11,

"mediantime": yyyyyyyyyyyy,

"progresso de verificação": 0,4544565953577,

"download do bloco inicial": falso,

"corrente": "00000000000000000000000000000000000000000000454dff6n25j34597dfvjkn45",

"tamanho no disco": 656738766,

"podado": verdade,

"altura da ameixa": 653202,

"poda_automática": verdade,

"prune_target_size": 576716800,

"forquilhas macias": {

"bip34": {

"modelo": "sepultado",

"ativo": verdade,

"altura": 227931

},

"bip66": {

"modelo": "sepultado",

"ativo": verdade,

"altura": 363725

},

"bip65": {

"modelo": "sepultado",

"ativo": verdade,

"altura": 388381

},

"csv": {

"modelo": "sepultado",

"ativo": verdade,

"altura": 419328

},

"segwit": {

"modelo": "sepultado",

"ativo": verdade,

"altura": 481824

}

},

"advertências": ""

}

Você também pode usar o comando

> getmininginfo

Para obter informações mais precisas sobre a contagem de blocos, dificuldade atual da rede e encontrar o número de transações no pool de transações (mempool).

{

"blocos": 653597,

"dificuldade": 19994576894446.11,

"networkhashps": 1.24389066767887e + 020,

"pooledtx": 1637,

"corrente": "a Principal",

"advertências": ""

}

Existem muitas informações que você pode obter na janela do console principal do Bitcoin usando os comandos listados abaixo. Você não precisa saber todos esses comandos. No entanto, se você é um desenvolvedor e está procurando desenvolver aplicativos Bitcoin, como explorador de blocos ou pools de mineração, entender esses comandos é essencial.

O console RPC é uma ótima maneira de saber sobre o blockchain Bitcoin, rede, transações e as informações de mineração.

Lista de comandos do console

  • == Blockchain ==

getbestblockhash

getblock "blockhash" (verbosidade)

getblockchaininfo

getblockcount

getblockfilter "blockhash" ( "tipo de filtro" )

altura getblockhash

getblockheader "blockhash" (prolixo)

getblockstats hash_or_height (estatísticas)

getchaintips

getchaintxstats (nblocks "blockhash" )

getdifficulty

getmempoolancestors "txid" (prolixo)

getmempooldescendants "txid" (prolixo)

getmempoolentry "txid"

getmempoolinfo

getrawmempool (detalhado)

gettxout "txid" n (incluir_mempool)

gettxoutproof ["txid",…] ( "blockhash" )

gettxoutsetinfo

bloco precioso "blockhash"

altura pruneblockchain

savemempool

scantxoutset "açao" ([scanobjects, …])

verificar cadeia (nblocks de nível de verificação)

verificartxoutproof "prova"

  • == Controle ==

getmemoryinfo ( "modo" )

getrpcinfo

ajuda ( "comando" )

exploração madeireira ( ["include_category",…] ["exclude_category",…])

Pare

tempo de atividade

  • == Gerando ==

nblocks de endereço de geração "Morada" (maxtries)

generatetodescriptor num_blocks "descritor" (maxtries)

  • == Mineração ==

getblocktemplate ( "template_request" )

getmininginfo

getnetworkhashps (altura de nblocks)

priorisetransaction "txid" (fictício) fee_delta

submitblock "hexdata" ( "fictício" )

submitheader "hexdata"

  • == Rede ==

addnode "nó" "comando"

banido

desconectar nó ( "Morada" nodeid)

getaddednodeinfo ( "nó" )

getconnectioncount

getnettotals

getnetworkinfo

getnodeaddresses (contagem)

getpeerinfo

banido

ping

setban "sub-rede" "comando" (bantime absoluto)

setnetworkactive state

  • == Rawtransactions ==

Analysepsbt "psbt"

combinepsbt ["psbt",…]

combinerawtransaction ["hexstring",…]

converttopsbt "hexstring" (allowigdata iswitness)

createpsbt [{"txid":"hex","vout": n,"seqüência": n}, …] [{"Morada":quantia},{"dados":"hex"}, …] (tempo de bloqueio substituível)

createrawtransaction [{"txid":"hex","vout": n,"seqüência": n}, …] [{"Morada":quantia},{"dados":"hex"}, …] (tempo de bloqueio substituível)

decodepsbt "psbt"

decoderawtransaction "hexstring" (é testemunha)

decodificar "hexstring"

finalizepsbt "psbt" ( extrair )

transação de captação de fundos "hexstring" (opções são testemunhas)

getrawtransaction "txid" (verboso "blockhash" )

joinpsbts ["psbt",…]

sendrawtransaction "hexstring" (maxfeerate)

signrawtransactionwithkey "hexstring" ["chave privada",…] ([{"txid":"hex","vout": n,"scriptPubKey":"hex","resgatar o script":"hex","testemunho de testemunha":"hex","quantia":quantia},…] "tipo de sighash" )

testmempoolaccept ["rawtx",…] (maxfeerate)

utxoupdatepsbt "psbt" (["",{"desc":"str","faixa": n ou [n, n]}, …])

  • == Util ==

createmultisig nrequired ["chave",…] ( "tipo de endereço" )

endereços derivados "descritor" ( faixa )

estimativasmartfee ​​conf_target ( "estimativa_modo" )

getdescriptorinfo "descritor"

assinar mensagem com chave privada "privkey" "mensagem"

validateaddress "Morada"

verificar mensagem "Morada" "assinatura" "mensagem"

  • == Carteira ==

abandono da transação "txid"

abortrescan

addmultisigaddress nrequired ["chave",…] ( "rótulo" "tipo de endereço" )

carteira de backup "destino"

bumpfee "txid" (opções)

criar carteira "wallet_name" (disable_private_keys em branco "frase-senha" evitar_reusar)

dumpprivkey "Morada"

dumpwallet "nome do arquivo"

criptografar carteira "frase-senha"

getaddressesbylabel "rótulo"

getaddressinfo "Morada"

getbalance ( "fictício" minconf include_watchonly Avoid_reuse)

getbalances

getnewaddress ( "rótulo" "tipo de endereço" )

getrawchangeaddress ( "tipo de endereço" )

ser recebido pelo endereço "Morada" (minconf)

getreceivedbylabel "rótulo" (minconf)

gettransaction "txid" (include_watchonly verbose)

getunconfirmedbalance

getwalletinfo

importaddress "Morada" ( "rótulo" rescan p2sh)

importmulti "solicitações de" ( "opções" )

importprivkey "privkey" ( "rótulo" escanear novamente)

importprunedfunds "transação bruta" "à prova de explosão"

importpubkey "pubkey" ( "rótulo" escanear novamente)

importwallet "nome do arquivo"

keypoolrefill (newsize)

listaddressgroupings

listlabels ( "propósito" )

listlockunspent

listreceivedbyaddress (minconf include_empty include_watchonly "address_filter" )

listreceivedbylabel (minconf include_empty include_watchonly)

listsinceblock ( "blockhash" target_confirmations include_watchonly include_removed)

listtransactions ( "rótulo" contagem de pular include_watchonly)

listunspent (minconf maxconf ["Morada",…] include_unsafe query_options)

listwalletdir

listwallets

loadwallet "nome do arquivo"

desbloqueio travado não gasto ([{"txid":"hex","vout": n}, …])

removeprunedfunds "txid"

rescanblockchain (start_height stop_height)

enviar muitos "" {"Morada": quantidade} (minconf "Comente" ["Morada",…] substituível conf_target "estimativa_modo" )

enviar para endereço "Morada" quantia ( "Comente" "comment_to" subtrairfeefromamount substituível conf_target "estimativa_modo" evitar_reusar)

sethdseed (newkeypool "semente" )

setlabel "Morada" "rótulo"

Montante da taxa de liquidação

setwalletflag "bandeira" ( valor )

mensagem de sinal "Morada" "mensagem"

signrawtransactionwithwallet "hexstring" ([{"txid":"hex","vout": n,"scriptPubKey":"hex","resgatar o script":"hex","testemunho de testemunha":"hex","quantia":quantia},…] "tipo de sighash" )

unloadwallet ( "wallet_name" )

walletcreatefundedpsbt [{"txid":"hex","vout": n,"seqüência": n}, …] [{"Morada":quantia},{"dados":"hex"}, …] (opções de tempo de bloqueio bip32derivs)

carteira

walletpassphrase "frase-senha" tempo esgotado

walletpassphrasechange "frase-senha antiga" "nova frase secreta"

walletprocesspsbt "psbt" ( placa "tipo de sighash" bip32derivs)

  • == Zmq ==

getzmqnotifications

Você pode encontrar a lista completa de comandos do console Bitcoin com explicação em https://developer.bitcoin.org/reference/rpc/

Também para verificação de referência: https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list

Artigo semelhante a este:

  • Lista de comandos para gerenciar masternode vps
  • Adicionando nós de carteira
  • Criação do arquivo de configuração da carteira principal