Questions tagged [inventory]

Questions regarding the inventory message of the Bitcoin peer-to-peer protocol.

Filter by
Sorted by
Tagged with
2 votes
0 answers
22 views

No inv messages from inbound nodes

I'm writing a tx relay-only node that can accept inbound connections and make outbound ones. Just for research. What I'm seeing that on inbound nodes the initial handshake completes and the connection ...
Eva4684's user avatar
  • 41
1 vote
2 answers
82 views

Request tx messages from other peers?

I'm trying to request tx messages from known peers but it doesn't appear as though this is supported with bitcoin-cli. Is there a way to do this?
bitcoinluvr6969's user avatar
2 votes
1 answer
62 views

Bitcoin P2P network: unable to receive the full block data (witness stripped off)

I wrote a small script to play with the bitcoin P2P network. The script advertises itself as (NODE_NETWORK | NODE_WITNESS), and connects to a full node running on the LAN. Everything seems to work ...
Simon L's user avatar
  • 111
1 vote
1 answer
81 views

How does a node send a chain?

I understand that in selfish mining a malicious node can "send its entire hidden chain". Exactly how is this done? I know that usually a single block is broadcast-ed right after it is mined, ...
Azurite's user avatar
  • 11
3 votes
1 answer
75 views

Why does bitcoin sync inventories?

I read the bitcoin docs describing how btc syncs. During IBD it gets the inventories up to the tip with getblock. Why does it not skip this step and get the blocks, generating the inventories as it ...
Leah Cornelius's user avatar
3 votes
2 answers
895 views

How does a node get information from other nodes?

I think a node sometimes needs to get a information from other nodes. e.g. get set of UTXO. get main(longest) chain. I have two questions. How does a node tell other nodes these requests? Like ...
mtdkki's user avatar
  • 47
0 votes
1 answer
157 views

Does bitcoind send message headers and payload separately in P2P protocol?

I am connecting to my local bitcoind using TCP and observed the following behavior: I see many messages where only header is given or only part of the payload is attached. Of course, it could be a ...
Jus12's user avatar
  • 1,365
0 votes
1 answer
194 views

How to create an inventory message and send it?

I am trying to create an inventory message of specific hashes that I select. Assuming I have all the hashes stored in a vector, how do I create the message 'manually'? (i.e stuff like getting total ...
Nabeel's user avatar
  • 37
2 votes
1 answer
362 views

What is learned from listening for inventory messages?

I am reading the paper Deanonymisation of clients in Bitcoin P2P network [PDF] and have some questions about the fourth step in 'chapter 5: Deanonymization' I don't understand the emphasized part: ...
Erik's user avatar
  • 121
2 votes
2 answers
477 views

Block inventory messages

I've written some code for connecting to the network, receiving inventories, and requesting data. What I am noticing is that my local node never sends me inventory messages with blocks in them unless ...
MattyB's user avatar
  • 91
1 vote
0 answers
86 views

How to access locally stored inventory data?

I'm looking for objects in the source code of Bitcoin Core that record all block inventories distinguished by their miners - Is there a container that keeps track of blocks on chainActive and stores ...
Aliakbar Ahmadi's user avatar
2 votes
2 answers
74 views

Two if's before sending an inventory message

Going through main.cpp I couldn't completely understand the purpose of a double barrier coded as if-statements: I'm referring to ... if (pto->setInventoryKnown.count(inv)) and if (pto->...
Aliakbar Ahmadi's user avatar
1 vote
1 answer
403 views

What else can bitcoin inventory vectors be used for?

As described in the protocol specification bitcoin nodes respond to the inv command, which queries a node's knowledge of one or more objects, with an inventory vector. According to the bitcoin wiki, ...
Kinnard Hockenhull's user avatar