Questions tagged [spv]

refers to Simplified Payment Verification, a scheme by which thin clients can check whether the network trusts a transaction.

Filter by
Sorted by
Tagged with
0 votes
0 answers
14 views

How is SPV feasible without the entire Merkle Tree? [duplicate]

One of the primary arguments in favor of using Merkle Trees as the mechanism of encoding transactions is the value it provides in Partial Verifications or Simplified Payment Verification. The argument ...
user avatar
  • 65
0 votes
1 answer
45 views

What are the detailed rules for Merkle tree generation? Specifically the order of the leaf nodes

As far as I know, the first one is the coinbase transaction
user avatar
0 votes
1 answer
134 views

How to run Bitcoin-Qt over RPC to another machine

I have a full node running bitcoind on computer A. On computer B I have bitcoin-cli setup to connect to computer A over RPC. Computer A is a headless machine. I don't want to re-download the chain ...
user avatar
  • 140
1 vote
1 answer
61 views

What guarantees the validity of merkle root used in the merkle inclusion proof?

I understand Merkle roots can be used for Merkle inclusion proofs, where a client/validator can quickly check if a transaction is part of the block without requesting all the transactions in the block....
user avatar
0 votes
0 answers
21 views

Is it or will it be doable to generate an identity without running a full ION node (without depending even on Bitcoin Core pruned)?

Is it or will it be doable to generate an identity without running a full ION node (without depending even on Bitcoin Core pruned)?? Can it be done that future light ION clients do not depend on a ...
user avatar
0 votes
1 answer
72 views

How to use SPV to validate transactions NOT (yet) on the blockchain?

The SPV system (as described in the Bitcoin whitepaper) allows: "It is possible to verify payments without running a full network node." You only need the headers for the entire valid ...
user avatar
  • 211
0 votes
2 answers
93 views

Why bitcoins storing on a smartphone are considered vulnerable?

Let's suppose, someone stores all their bitcoins in an Android or iOS wallet. he/she never stores a seed on the phone he/she uses different addresses for change wallet and gadget are password ...
user avatar
3 votes
1 answer
132 views

SPV wallet connecting to personal bitcoin node

I have decided I want to run a bitcoin node both to support the network, learn more about how it works and also so I can participate while minimising trust in external parties. I have a bitcoin core ...
user avatar
  • 131
1 vote
1 answer
143 views

Best Practice for Using Btc

I have recently learned about best practice for storing private keys with hardware wallets. I understand the necessary information including backups from seed phrases, the concept of cold storage, ...
user avatar
  • 320
1 vote
1 answer
68 views

How is BIP 158 wallet rescanning supposed to work with xpub keys?

A light client implementing BIP158 downloads filters and checks its addresses against that filter. If one matches, it downloads the block. Now, let's say we have an HD wallet (BIP32), and/or an xpub ...
user avatar
  • 159
1 vote
1 answer
131 views

Why binary trees? Is there any particular benefit to using binary trees instead of some higher radix?

Bitcoin stores transactions in binary Merkle trees. They take O(log2 n) to traverse. If I used something like a ternary tree, where each node (including the root) references three branches/leaves ...
user avatar
1 vote
2 answers
71 views

Why does a thin node need to know if a transaction is present in specific block's merkle tree?

I understand what a merkle root is and how merkle proofs work. It's all about thin nodes checking whether a specific transaction ID is in a specific block. So, thin node says: I have a transaction ID -...
user avatar
0 votes
1 answer
182 views

SPV client TCP connection in python

I am trying to implement an SPV client in python (for my own learning). I want to start by making a simple TCP connection to a full node, but I either cannot get a response to my version message, or ...
user avatar
0 votes
1 answer
590 views

ElectrumX server as a Tor hidden service

I am trying to run an ElectrumX server on my PC. I run it on a docker container with the following Dockerfile configuration: FROM python:3.7-alpine3.11 LABEL maintainer="Luke Childs <...
user avatar
  • 11
1 vote
1 answer
156 views

How do SPV clients acquire transactions from other nodes and verify that they are part of the blockchain?

I explored SPV clients as a subject from a lot of different resources, but there are a few of things that are keeping me confused: I found out that SPV clients have no mempool even though SPV clients ...
user avatar
  • 449
1 vote
1 answer
57 views

How Does the SPV merkle path form of multiple transactions in Merkle block looks like?

While I'm studying about the Bitcoin, I've wondered how many merkle paths should be contained in merkle block. From the point of view of Merkle path, it is generated as the form of containing hashes ...
user avatar
  • 11
1 vote
1 answer
36 views

Provide Services to many Lightweigh Nodes (SPVs) and Save The Communication History

I am investigating on privacy violations of the current communication protocol between lightweight clients and full nodes in the Bitcoin network, which utilizes Bloom filters. I run a full node on my ...
user avatar
  • 11
0 votes
0 answers
47 views

Can I get all block header data like the SPV node?

It hasn't been long since I studied Blockchain. I only need header data, not all block data, for study purposes. As far as I know, the SPV node stores only the block's header information. Can i get ...
user avatar
2 votes
1 answer
198 views

How to fetch all UTXO from a SPV wallet using bitcoin-filter.js (or other lib)?

I am using bitcoinjs-lib to create private key (WIF), addresses and sign the transactions. I would like to fetch all transactions (UTXOs) associated with a wallet. I found these libs: bitcoin-filter ...
user avatar
  • 187
1 vote
1 answer
394 views

How to getheaders from blockchain?

I have run a full node on linux now I can run commands with bitcoin-cli like: bitcoin-cli getbestblockhash it returns: 0000000000344240308f54ded700542571b3df9efe05fab92e669099e20e0d92 or bitcoin-...
user avatar
2 votes
1 answer
944 views

Step by step to make a SPV bitcoin node

As I know, there is a light node version called SPV. for now I have started a full node and it has downloaded 82222 blocks, but I don't want to have a full node with full blockchain, my purpose is to ...
user avatar
2 votes
1 answer
68 views

Is the contest period really necessary for cross-chain transactions in 2-way-peg sidechains?

According to the first sidechain article (Link), the cross chain transaction process can be briefly describe as follows: Alice has a wallet on sidechain S1. She wants to send some coins to sidechain ...
user avatar
  • 21
1 vote
2 answers
171 views

How do people using thin clients know the correct merkle path of transactions they've sent without knowing the full block?

User A send a transaction to user B. Those transactions are bundled together into a merkle tree. User A and B can both use the transaction plus the merkle root, plus the merkle path to prove the ...
user avatar
2 votes
1 answer
381 views

RSA accumulator vs Merkle Proofs

For proof of inclusion (used by SPV nodes) Bitcoin relies on Merkle proofs. Why Merkle trees were chosen and not RSA accumulators, as they can be used to provide a shorter proof? What are the ...
user avatar
  • 135
1 vote
2 answers
55 views

Passing incomplete information to an SPV node

I am wondering how SPV handles the following scenario: A transaction has been confirmed by some block X, and funds address y. At some later block, the transaction's output are spent again SPV node ...
user avatar
  • 135
3 votes
2 answers
3k views

Does every node has a whole copy of the blockchain?

As i read here, in a blockchain "each node the has a copy of all transactions ever made". This to me seems impossible, bitcoin exists for a long time, and the memory size of the intere blockchain ...
user avatar
  • 133
1 vote
0 answers
76 views

Unused Output Tree in the Blockchain

I have been reading about the security of thin clients and I came across the section that discusses the proposal of Unused Output Tree in the Block chain. Unused Output Tree in the Block chain (UOT)...
user avatar
0 votes
0 answers
27 views

Bloom Filter Response Processing In terms of Full-node

A SPV node have to work somethings to see whether his transaction is exist or not. Construct his filter with hash of transactions {his transactions, other1, other2, ..., otherN} filterload is filled ...
user avatar
  • 363
1 vote
2 answers
240 views

How can I run a light (SPV) node on Linux?

I tried to sync the blockchain and, though I have ample free disk space (>500 GB on my computer, the chain is ~265) I've been having a hard time. So, how can I use an SPV node to send transactions and/...
user avatar
1 vote
0 answers
38 views

Bitcoin SPV not able to fetch transactions [closed]

I am developing a Bitcoin wallet SPV and using 3rd party SDK for the same. However, I tried to create wallet and it gets successfully created and I can also restore those wallets but amount and ...
user avatar
0 votes
0 answers
83 views

How do lightweight nodes and SPV wallets calculate balances?

Can they do it? Or they "talk" to a full node for that purpose and are used only for mining purposes? Thanks in advance for your answers.
user avatar
1 vote
1 answer
37 views

Why a specific bitcoin value of a tx message appears in source IP address and then comes to same IP address as the destination address?

Sometime back, I created two wallets on two distinct cellphones. I sent a specific bitcoin value (A bitcoin) from one cellphone to another one. During this process, I captured the entire traffic. ...
user avatar
  • 125
1 vote
1 answer
241 views

Curl bitcoin protocol for learning?

I'm trying to understand bitcoin RPC Peer to Peer protocol to implement SPV on a web-application that should receive crypto payments. The problem is that on the examples I found, examples are about ...
user avatar
  • 192
7 votes
1 answer
440 views

Could Neutrino technically as side-effect, incentivize centralization of the bitcoin network?

TWO questions on Neutrino:: 1) Could Neutrino technically as side-effect, incentivize centralization of the bitcoin network? Or other formulation: ...hinder higher degree of decentralization? Why ...
user avatar
9 votes
1 answer
986 views

What's the distinction between BIP 157 and BIP 158? Are they supported by Bitcoin Core?

BIP 157 and BIP 158 are both concerned with Compact Block filters. What is the distinction between them, and which of them does Bitcoin Core currently support?
user avatar
  • 870
0 votes
0 answers
81 views

Do SPV nodes sync "headers-first"?

Headers-first sync is defined somewhat by BIP 130 and expanded upon with compact block relay in BIP 152. I believe this is the commit in which it was added to Bitcoin Core. The result is that Bitcoin ...
user avatar
  • 4,676
-1 votes
1 answer
1k views

How to setup a testnet full node on Windows 10?

I'm trying to implement an SPV and I'd like to test it on a testnet full node but can't really understand how to do it from what I've found.
user avatar
1 vote
1 answer
278 views

Lightning node on a Bitcoin SPV

is there a way to run a Lightning node on a Bitcoin SPV node at the moment? I've read that both lnd and c-lightning need a Bitcoin Fullnode at this time. This might seem ignorant but i don't want to ...
user avatar
2 votes
1 answer
207 views

How do I connect my `bcoin` wallet to `bitcoind`?

I have bitcoind running in regtest mode. I want to connect my bcoin wallet to it and retrieve all UTXOs relevant to the sender's address. How can I do that?
user avatar
  • 23
0 votes
1 answer
123 views

How to create an application which constructs a transaction using `bcoin` (javascript)?

I am new to development. I am working on a project and I am trying to use bcoin. I want to create an application which has a UI, where the user will be asked to enter Destination address and amount. ...
user avatar
  • 23
2 votes
0 answers
55 views

Why should SPV nodes operate on the P2P network?

I understand there are advantages for the SPV client to acquire header-chain and subsequent inclusion proofs over the p2p network: Peer discovery P2P node interface is public Reuse of P2P messaging ...
user avatar
  • 2,423
0 votes
1 answer
98 views

How does an SPV client forms a transaction which is then Broadcasted?

As per my understanding, an SPV client only keeps a track of the block headers in its own database. So when a user tries to send bitcoins using that particular SPV client, how is the transaction ...
user avatar
  • 23
0 votes
2 answers
120 views

How could a lightweight wallet determine the validity of 0-conf transaction?

I found that a lot of people are interested about security of 0-confirmation payments. But, it seems that most discussions focused on double-spending (like broadcasting two or more conflicting-but-...
user avatar
2 votes
1 answer
157 views

Is the idea of fraud proofs possible in reality?

I once read this on Twitter, which is said by Luke Dashjr, a Core dev: The original design was to have full nodes create proofs of invalid blocks, to alert SPV nodes to them. SPV nodes would then ...
user avatar
2 votes
1 answer
270 views

Could bitcoind support SPV mode by setting different args

There are multi nodes type could be used in bitcoin network. Could bitcoind support running different types of nodes by different sets of args? I found many discussion here, but seems no clear ...
user avatar
  • 171
0 votes
1 answer
74 views

Arbitrary access to already confirmed transactions

This link mentions that "[getdata] can be used to retrieve transactions, but only if they are in the memory pool or relay set - arbitrary access to transactions in the chain is not allowed..." But ...
user avatar
  • 13
0 votes
1 answer
220 views

SPV clients querying the full node

Is there a way currently where an SPV client can send a TxID to a full node which is present in the UTXO set of the full node and have the full node not scan its entire blockchain to fetch the ...
user avatar
  • 13
1 vote
1 answer
214 views

SPV clients and full nodes

Suppose an SPV client goes offline at block X (meaning it has block headers until block X) and then comes back online when the blockchain is at block Y. At that point, it needs to resynchronise its ...
user avatar
  • 13
0 votes
2 answers
572 views

Light clients transaction verification

How does a light node know which block its transaction got included in? Say a light node sends out a transaction spending its UTXO. Does it get some sort of notification when its transaction is mined ...
user avatar
  • 103
1 vote
1 answer
52 views

How to get output linked to input in SPV node?

We're working on bitcoin SPV wallet. After setting bloom filter, we only get merkle blocks, and transactions that match the hashes we set plus some false positives. If a transaction is where we SEND ...
user avatar