Author

Topic: Can nodes be sure who they receive messages from? (Read 161 times)

legendary
Activity: 3416
Merit: 1912
The Concierge of Crypto
November 25, 2019, 04:03:06 PM
#7
Normally nodes do not record who connects to them except maybe to keep track of a peer list for purposes of reconnecting back to them or to ban them for connecting too much (or some other form of abuse).

Nodes also don't trust messages in general, and validate them first before relaying or propagating the transaction.

Addresses are not connected to any IP address or node otherwise, and some block explorer used to show "first seen from xxx.xxx.xxx.xxx", but now I don't even see that.

A full node, all by itself, unmodified, just validates transactions and blocks as it receives them. Doesn't care who it came from.
legendary
Activity: 3430
Merit: 10505
No, signing your message. If you're a node, how to be sure you're receiving a message from a certain node and not from a hacker who fakes being this node?

your node isn't downloading random stuff that a connected to node gives it. it is instead only receiving "messages". for example you receive a block message that contains a header and the block content. there is nothing a "hacker" could do by connecting to your node. and that is why there is no signing needed and no encryption is used. every communication happens over http (no 's' that is no encryption).
legendary
Activity: 2954
Merit: 4158
There are two main ways for a node to function; by the use of the IP address or by its onion address. The use of the nodes on the network is to relay information (ie. Blocks, transactions). The node do not request or receive signed messages from others. Since the nodes would verify the contents sent by the other nodes, it isn't necessary for them to identify the other nodes. If any of the nodes misbehaves (by sending incorrect information repeatedly) , their peers would just disconnect them.
jr. member
Activity: 83
Merit: 1
Are you talking about signing a transaction?


- How bitcoin nodes communicate

No, signing your message. If you're a node, how to be sure you're receiving a message from a certain node and not from a hacker who fakes being this node?
jr. member
Activity: 83
Merit: 1
It's not very clear. In your link it says nodes can use TOR. But here https://en.bitcoinwiki.org/wiki/Network it says you know the IP addresses of all your peers.

In your link, at the beginning it says "At the moment, we know about 10,000 nodes that use standard ports and do not try to hide the fact of their existence, so they are easily detected by others. The number of nodes, the access to which is closed, this value exceeds by 5-6 times."  This seems to be what I try to understand but it's not understandable. Does it mean there are 10,000 non hidden nodes and 50,000-60,000 hidden ones?

From these two links I'm guessing, nodes are "defined" by their IP addresses or TOR exit addresses, i.e., if you change your address  you have to join the network again from start. Right?


Someone malevolent with the list of the nodes addresses could easily attack the network then, no?


I was dreaming of an anonymous decentralized-changeable  and trust-less network. It must be possible though... 




legendary
Activity: 3206
Merit: 2904
Block halving is coming.
I don't understand what are you trying to say. Are you talking about signing a transaction?

I think much better to read the bitcoin wiki where you can get all the information you want to know related to Bitcoin nodes.

- How bitcoin nodes communicate
jr. member
Activity: 83
Merit: 1
I know blockchain but I'm really a noob for all internet techs.
My question is simple but not too simple to put in words. Can nodes communicate between each others so they know for sure who they receive message from if the sender wants to be known? (I add the "if the sender..." because theoretically nodes could hide themselves and send anonymously)
Can a node require other nodes to sign their messages. Do they actually do it?
Do they use another technique than signing to be sure who they're communicating with? like I send a code to the address of a node and this node as to send the code back with its message.

If someone malevolent attacks all the nodes at ounce by sending many messages to the nodes.  Would they need to all change their addresses and find each other again?
Jump to: