Bitcoin Forum

Other => Beginners & Help => Topic started by: iammadab on September 16, 2021, 05:43:40 PM



Title: Communicate with the BTC Network without a Full Node??
Post by: iammadab on September 16, 2021, 05:43:40 PM
Wondering if it is possible to communicate with the btc network i.e send transactions, create addresses e.t.c without running a full node


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: BlackHatCoiner on September 16, 2021, 05:51:06 PM
Yes, it's possible. First off, creating addresses has nothing to do with the network. You only prove you're the owner of them by providing a valid signature which has been made from your private keys. When you want to receive money, you'll give your address, the payer will create the so called unspent transaction output (UTXO) funding an address which can be spent only if a signature of the address' public key is provided.

As for broadcasting transactions, that's also possible without running a full node, neither a pruned one. You can use an SPV node to serve you the information related with your wallet and send there your signed transactions. The server will then broadcast them to the Bitcoin network.

An implementation of an SPV wallet is Electrum (https://electrum.org/#home).


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: bL4nkcode on September 16, 2021, 05:52:44 PM
Basically, yes, but technically no.

Let's say some lightweight wallet such electrum can do it. On user's perspective you just need to download electrum and run it without downloading the whole blockchain or running a node, but electrum connects different server that connects to bitcoin full node.

There are some API as well that works like this, like generating wallets or sending bitcoin, checking bitcoin tx confirmation and so on.


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: BlackHatCoiner on September 16, 2021, 05:54:05 PM
Let's say some lightweight wallet such electrum can do it. On user's perspective you just need to download electrum and run it without downloading the whole blockchain or running a node, but electrum connects different server that connects to bitcoin full node.

I guess OP asks if it's required to run a full node yourself. There's no network without full nodes, that's obvious.


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: bL4nkcode on September 16, 2021, 05:58:26 PM
I guess OP asks if it's required to run a node yourself. There's no network without full nodes, that's obvious.
Yes, but since op didn't state such statement, then there's nothing wrong mentioning that  :P


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: nakamura12 on September 16, 2021, 06:04:20 PM
Wondering if it is possible to communicate with the btc network i.e send transactions, create addresses e.t.c without running a full node
You can do transactions that doesn't need to run full node. All you have to do is download a wallet provider like electrum then create new wallet with different addresses. You don't have to download anything else except electrum or other wallets. You don't beed to create addresses as when you creatr your own wallet which connects to btc network when you do a transaction. All you have to keep is the seed phrase that will be used to import your wallet to send transactions. You can visit this site and learn how to create an electrum wallet and where to download the application. https://bitcoinelectrum.com/creating-an-electrum-wallet/.


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: The Cryptovator on September 16, 2021, 06:23:35 PM
Are we not doing that? For me (the person) using Bitcoin networks like make transactions, creating addresses, and sign messages from that wallet that doesn't have to download full node. For example, I am using Ledger and Electrum. But eventually, all the transactions and addresses are directly connected with full nodes and saving all the records of your actions. It's pretty simple to understand. Just use Google for that you will get hundreds of answers.

OP, please read about Simplified Payment Verification (SPV) (https://en.bitcoinwiki.org/wiki/Simplified_Payment_Verification)


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: NeuroticFish on September 16, 2021, 07:47:34 PM
Wondering if it is possible to communicate with the btc network i.e send transactions, create addresses e.t.c without running a full node

Creating addresses can be done without a full node.

But sending/broadcasting transactions will need a full node, even if that node is not necessarily yours:
* SPV (simple payment wallet) like Electrum connect to Electrum servers that get data from Bitcoin node
* Web wallets have their own node
...

So you can do basically everything without having your own node (and I do recommend you use a SPV like Electrum, maybe with a hardware wallet too if you keep significant money there), but under the hood you will rely on somebody's node.


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: khaled0111 on September 16, 2021, 07:53:45 PM
If all users had to run full nodes then no one would be using it due to because of the big size of the blockchain and the long time it takes to sync.
All you need to communicate with the network (send/receive transactions) is an SPV client which connects to other full nodes. But, although, you basically rely on those full nodes to interact with the network doesn't mean that an SPV wallet is any less secure than a full node.


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: o_e_l_e_o on September 16, 2021, 08:02:55 PM
But, although, you basically rely on those full nodes to interact with the network doesn't mean that an SPV wallet is any less secure than a full node.
That is exactly what it means. How less secure your wallet is depends on the exact behavior of that particular piece of wallet software. If your wallet still connects to a variety of nodes and downloads and verifies all the block headers, then you can still achieve a reasonable degree of certainty that you are not being fed incorrect information. If however, at the other extreme, your lightweight wallet downloads absolutely nothing and simply asks a single node it is connected to for up to date information regarding your addresses and transactions, then you have absolutely no idea if the information you are receiving is accurate or not. You are placing 100% trust in that single node and its operator, which is obviously not secure at all.


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: bitmover on September 16, 2021, 10:11:21 PM
But, although, you basically rely on those full nodes to interact with the network doesn't mean that an SPV wallet is any less secure than a full node.
That is exactly what it means. How less secure your wallet is depends on the exact behavior of that particular piece of wallet software. If your wallet still connects to a variety of nodes and downloads and verifies all the block headers, then you can still achieve a reasonable degree of certainty that you are not being fed incorrect information. If however, at the other extreme, your lightweight wallet downloads absolutely nothing and simply asks a single node it is connected to for up to date information regarding your addresses and transactions, then you have absolutely no idea if the information you are receiving is accurate or not. You are placing 100% trust in that single node and its operator, which is obviously not secure at all.

Additionally, when you run a SPV wallet, your privacy might be compromised. You will be always requesting the same addresses to the same nodes, and if that node is storing that information he might link those addresses together as belonging to the same person.

However, I don't think this is a problem and neither a security risk for most users.

The most common way to use BTC is by using an SPV wallet, as few people really have the bandwidth and the storage capacity to run a full node (i don't have).


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: Charles-Tim on September 17, 2021, 06:01:48 AM
Additionally, when you run a SPV wallet, your privacy might be compromised. You will be always requesting the same addresses to the same nodes, and if that node is storing that information he might link those addresses together as belonging to the same person.

However, I don't think this is a problem and neither a security risk for most users.
This would be better with Tor, the addresses can be linked but not linked to the real identity. Also, making use of more than just one wallet, server can not to link addresses of different wallets. We can still make use of SPV wallets and have our privacy.


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: pooya87 on September 17, 2021, 06:03:19 AM
electrum connects different server that connects to bitcoin full node.
There is no "middle server" involved when using SPV clients. Your SPV client on your computer such as Electrum directly connects to bitcoin full nodes, but these full nodes are "special" ones simply because unlike "regular" nodes their blockchain (ie. database) is indexed so that they can quickly search it based on address and transaction.


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: khaled0111 on September 17, 2021, 08:10:01 PM
...
You are absolutely right about light clients that do not download block headers from different nodes, they are not secure.
But, here is how the bitcoin white paper defines SPV:
A user only needs to keep
a copy of the block headers of the longest proof-of-work chain, which he can get by querying
network nodes until he's convinced he has the longest chain, and obtain the Merkle branch
linking the transaction to the block it's timestamped in.
Therefore, I don't think we can call a wallet that does not download block headers from different sources and verify that they match an SPV wallet.


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: o_e_l_e_o on September 18, 2021, 07:12:41 AM
This would be better with Tor, the addresses can be linked but not linked to the real identity. Also, making use of more than just one wallet, server can not to link addresses of different wallets.
Splitting addresses you want to keep separate between different wallets is the most important thing, but also using different Tor circuits and different Electrum servers are a necessary additional step. If an Electrum server sees a Tor exit node query all the addresses from one wallet, and then two minutes later that same Tor exit node queries all the addresses from a second wallet, then it is highly suspicious that those two wallets are owned by the same person, as the alternative scenario of two different people using the same Tor exit node and querying the same Electrum server at the same time is highly unlikely.


Title: Re: Communicate with the BTC Network without a Full Node??
Post by: hatshepsut93 on September 21, 2021, 11:22:14 PM
Additionally, when you run a SPV wallet, your privacy might be compromised. You will be always requesting the same addresses to the same nodes, and if that node is storing that information he might link those addresses together as belonging to the same person.

However, I don't think this is a problem and neither a security risk for most users.

The most common way to use BTC is by using an SPV wallet, as few people really have the bandwidth and the storage capacity to run a full node (i don't have).

Chainanalysis companies definitely run Electrum servers and servers for other SPV wallets, if you use a lightweight wallet there's a very high chance that those companies know all your addresses from those wallets and share/sell this information to other parties.