Bitcoin Forum
April 30, 2024, 08:41:02 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 ... 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 [73] 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 ... 461 »
1441  Bitcoin / Development & Technical Discussion / Re: Shouldn't DNS seeds avoid returning pruned nodes? on: May 02, 2021, 01:19:09 PM
Thanks for the info, it is useful. But unfortunately this seems to return nodes that have these flags not nodes that have only these flags which means it still returns a node with NODE_NETWORK_LIMITED flag if it has the specified flag too.
Yeah I get what you mean. But the NODE_NETWORK_LIMITED doesn't mean that the node is pruned. My node, which has the entire blockchain on disk also signals NODE_NETWORK_LIMITED with 1033 flag, 1024 for being able to serve last 288 blocks, 8 for NODE_WITNESS and 1 for NODE_NETWORK.

So, for a full node with the entire blockchain, it should not only signal NODE_NETWORK_LIMITED but also NODE_NETWORK.
1442  Bitcoin / Development & Technical Discussion / Re: Shouldn't DNS seeds avoid returning pruned nodes? on: May 02, 2021, 12:29:53 PM
Could you please elaborate?
A nifty way to do so is to (prepend) the desired strings[1] as a subdomain to query. For example, nslookup x9.dnsseed.bluematt.me.

This will work if the DNS seeder supports service bits filtering[2].


[1] https://github.com/sipa/bitcoin-seeder/blob/a09d2870d1b7f4dd3c1753bbf4fd0bc3690b7ef9/main.cpp#L165
[2] https://github.com/bitcoin/bitcoin/blob/7cb0bcb6811070786937fb5cc0af82cf4ef21ff0/src/chainparams.cpp#L121
1443  Bitcoin / Bitcoin Discussion / Re: PoW and free energy on: May 02, 2021, 10:45:44 AM
It is not free. Costs are incurred in the areas of R&D, maintenance, labour, etc. These are all costs that has to be offset by the producer and it should be more expensive than current methods. It's more of a cleaner energy than a free energy.

Proof of work will still function fine, you're possibly only (as stated probably not) reducing the costs from consuming the electricity. There are still scarce resources being consumed and incurred, production of ASICs, land, labour. It doesn't diminish any security of PoW based coins, perhaps slightly in the worst case.

State sponsored attacks, assuming 51% attacks has never been limited by the electrical costs or anything in that area. It is possible for countries to attack Bitcoin this way but it really doesn't make any sense right now and I don't expect countries to attempt it in the future either. ASICs required and the opportunity costs of having an attack is far greater than any benefits that they may have.
1444  Bitcoin / Development & Technical Discussion / Re: 51 Node attack on: May 02, 2021, 07:20:12 AM
If the attacker knows of your connections, you do not have a secret node. The attacker knows of all the nodes you are using.
It is quite hard to prevent any leakage of the connections that you have. Getaddr does have privacy measures but if a person is determined enough, they can still achieve it though with much more difficulty. As I've mentioned in my previous post, without a MITM, it would be fairly hard for an adversary to execute a sybil attack that affects the security to that extent. Something like this would require a (relatively large) amount of resources with different IP ranges, and a huge number of nodes it to be even possible, not regarding the feasibility.

Having a secret or a trusted node can be a solution but it is definitely not necessary or doable for most, unless the final node that you're connecting to is definitely not getting sybil'ed, then you're safe. If it isn't then you're just wasting your resources. The counter against such attacks is the cost and the features of Bitcoin Core.

If you are using public wifi, you could connect to your home computer (that is also a node), which connects (not via a node) to another node on a VPS that only you are aware of. The attacker might be able to Sybil your home computer node, but would not be able to Sybil your VPS node, and you can be alerted of the attack and act accordingly.
Connections between nodes are not encrypted. Packets can be dropped by the adversary and there is simply no way to detect something like this happening if the attacker can intercept the packets.
1445  Bitcoin / Development & Technical Discussion / Re: 51 Node attack on: May 02, 2021, 06:54:11 AM
The best way to prevent a Sybil attack is to have at least one node whose identity is not public. In order to execute a Sybil attack, the attacker needs to know about all of your nodes and cut them off from the rest of the network accordingly. If you have one node that is secret, the attacker has no way to know to cut off that node, and you can be aware of the attack attempt.
Not exactly. It does nothing if the attacker is actively listening to your connections, ie. a public wifi of some sorts. I'm not sure if this is the case but it wouldn't work if Bitcoin Core will tell the peers about the nodes you know about upon receiving a getaddr message. Trying to connect through another type of network or using some form of secure communication would reduce the chances of a successful MITM.

Implementing anchors.dat does help with the situation somewhat by mitigating the possibility of eclipse attack.
1446  Bitcoin / Development & Technical Discussion / Re: 51 Node attack on: May 02, 2021, 03:23:27 AM
The only type of attack that one can perform by controlling a large number of nodes (not necessarily 51% of them but juts a large number) is Sybil attack. In this attack the attacker fills the network with their own nodes and could connect to your node and fill all its connection slots to effectively cut it off from the rest of the network. Then they can prevent your node from broadcasting transactions, seeing new blocks, etc.

The worst thing that can happen is if Sybil attack is combined with some mining power. The attacker, after isolating the victim's node, could perform a double spend while cutting that node off from seeing the double spent transaction and mine a block to contain an invalid tx (already spent) that pays that node's operator.
These attack should probably work better with MITM attacks and the attacker can possibly restrict the peers that they can connect to. It is usually quite targeted and specific as well, instead of it being a general attack as that'll be quite impractical given both the financial limitation as well as Bitcoin Core's node connection policy (IIRC it restricts the number of connections to each subnets). A single connection to a non-attacker controlled node will render this attack ineffective as well.

Both of them are possible but the scope of the attack is quite limited as well and doesn't make much sense financially.
1447  Bitcoin / Development & Technical Discussion / Re: 51 Node attack on: May 01, 2021, 04:31:26 PM
No they cannot.

The nodes can do whatever they want, accepting invalid transactions, accepting blocks with thousands of block regards, etc. However, as you've mentioned, nodes enforces the rules themselves. No matter how many nodes an attacker controls, the set of rules that each node enforces cannot be changed. They will not accept any invalid blocks, transactions, messages, etc and they will be kicked after hitting the ban limit for the nodes.

The miners also cannot dictate the rules directly nor can they violate any rules if they want it to be accepted by the nodes.
1448  Bitcoin / Bitcoin Discussion / Re: travelling internationally with a hard wallet on: May 01, 2021, 12:51:34 PM
Have a general sensing on the local laws first. If the jurisdiction that you're visiting explicitly bans cryptocurrency and/or deems any activities related to it as being illegal, I would advice you to err on the side of caution and leave it at home. Especially if you're a person of interest, something like this is probably an excuse that they can use. Might just be unnecessary paranoia but I personally wouldn't leave it to chances.

Hardware wallets are not completely safe from physical attacks as well, exposing it unnecessary like this would bring about a huge risk.
1449  Economy / Services / Re: IF ANYONE CAN GET MY TX AT LEAST ONE CONFIRMATION, I WILL PAY YOU $100 on: May 01, 2021, 07:55:36 AM
Fees dropped as low as 10 sat/byte in the past hours, and I expect it to go a bit lower tomorrow (as most Sundays).
Probably. $100 is still quite little even with 10sat/byte.

ViaBTC's paid transaction accelerator doesn't even recognize the transaction, and other mempools have likely dropped it too. If you made this transaction from your own wallet, you may be able to remove it and just create a new transaction with a higher fee.
ViaBTC requires at least 10sat/byte.

Depends actually. Some wallet do not remove or give their user an option to remove the transaction even when it gets dropped from most node's mempool. Could be a problem if this is the case.
1450  Economy / Services / Re: IF ANYONE CAN GET MY TX AT LEAST ONE CONFIRMATION, I WILL PAY YOU $100 on: May 01, 2021, 07:00:24 AM
At 20sat/vbyte, you'll be looking to pay at least $300-$400 in fees. If anyone is willing to confirm it for less than that, they're likely trying to scam you.

What wallet did you use for this? You can probably attempt to make another transaction which spends a higher fee if it gets dropped.
1451  Other / Archival / Re: Why fees aren't fixed? on: May 01, 2021, 05:19:11 AM
The capacity of Bitcoin is limited; 1vMB per block. People would be able to choose the fees; paying more if they need a fast confirmation and less if they're willing to wait.

Allowing the user choose their fees allows the fee market to function where people would pay more (in terms of fee rates) for miners to include their transaction in a block. Having fixed fees wouldn't be beneficial at all, people would be able to spam the network at a lower cost as the cost of spamming it remains approximately constant as opposed to the current structure where the attacker has to compete with the rest of the network as well. Miners would also have no preference over most of the transactions as the fee rates are the same, some users could be waiting ages for a confirmation even if they are willing to pay more for it to be confirmed.
1452  Bitcoin / Bitcoin Discussion / Re: Tech Giants Jack Dorsey and Elon Musk Say Bitcoin Incentivizes Renewable Energy on: May 01, 2021, 03:44:10 AM
The conditions for it to be conducive for Bitcoin mining is not only the electrical prices but also the general environment as well; labour costs, cost to ship the ASICs, etc. As such, it doesn't mean that Bitcoin miners necessarily flock to places where electricity rates are low due to it being produced in excess. Most places do not produce sufficient energy for the entire region and requires a few fossil fuel plants to supplement them. While Bitcoin mining can help subsidize the development of renewable energy, I'd say that Bitcoin miners still consume electricity that could've otherwise been used to supplement another region.
1453  Other / Beginners & Help / Re: how are instant bitcoin transactions done? on: April 30, 2021, 04:51:46 PM
pay attention - the coins came and left the same second.
Why is this happening. There must also be a difference of at least 10 minutes between the blocks.
It doesn't have to be. The block retarget aims to keep the blocks at a 10 minutes intervals but will in no way ensure that they're at least 10 minutes apart due to varience.

To answer your question, which I don't think the posts above actually addressed. I'll define parent transaction as the transaction which sent the coins to your address and the child transaction being the outgoing transaction. Your parent transaction doesn't have to be confirmed for you to be able to spend it. You can create a valid transaction by referencing the hash of the parent transaction and broadcast it, even if it isn't in a block yet. This also means that for the nodes to accept or see your child transaction, your parent transaction has to be in the mempool and if there is sufficient propagation, it should be nearly instantaneous. In the rare case that the parent doesn't get propagated well enough, nodes would likely keep it as an orphaned transaction without including it in the mempool as they cannot find the parent transaction. However, it is important to note that the child transaction can only be confirmed provided that the parent transaction is also confirmed.

There are cases where you won't see a transaction until it gets confirmed. People can directly contact miners which are capable of mining a block to include their transaction without relaying on the network. As such, the first time that the majority of the nodes see the transaction is also the exact time that the block from that specific miner gets mined and relayed. This makes it seems like the transaction was instantaneous but it is in fact not the case. Miners can include any transaction that they want as long as it is valid.
1454  Economy / Web Wallets / Re: Replace By Fee on BlockChain.com on: April 30, 2021, 02:53:53 PM
Unless Blockchain.com changed their wallet recently, I don't think they have opt-in RBF at all.

Go to Blockchair.com, search up your transaction IDs and check if the Replace By Fee is opted in. If not, then CPFP would be your only choice.
1455  Other / Beginners & Help / Re: Will there always be backward compatibility for Bitcoin Wallet Addresses? on: April 30, 2021, 02:48:33 PM
Just to be clear; I'm actually for upgrading to a quantum resistant algorithm if the threat was real, and there wasn't any significant short comings. So despite, the decision when/if it comes not really impacting me.
Yup. I understood that.

I still believe in the right of choice, and therefore allowing the users to individually decide. The issue with that is, even if we ignore those that make the choice to stay, there are still probably millions of Bitcoin which are sitting their idle because they've been lost either through mistakes, death or incompetency. So, even if you were to allow people to have the choice, there would still be these coins which would have a significant effect on the economy. At least on the short term. However, it could definitely effect adoption, once Bitcoin starts to tank because of it, which would probably effect its future success.

I think it would probably cause Bitcoin to crash, and although I would probably still have hope that it would be able to recover. Whether or not that effects future adoption enough to permanently prevent it climbing in any significant way in the future, remains to be speculated about.
Probably lesser. Most of them are P2PKH which has no issues at all.

It will permanently affect Bitcoin. By deeming those stolen coins as valid, the circulation of the coins would be increased quite substantially (I think Satoshi has at least 1 mil and there are some other early holders as well). If you want to stop it from affecting the market, you'll have to censor it which raises a whole lot of other questions. It would completely destroy Bitcoin; how can Bitcoin be deemed as a safe asset (secured by math Embarrassed) by anyone if the community is unwilling to implement** the draconian policies that ensures the security of it?

** I don't foresee it happening but rather it'll be two different forks with one vulnerable and the other isn't. It'll be interesting to see who would support the respective forks though.
1456  Other / Beginners & Help / Re: Will there always be backward compatibility for Bitcoin Wallet Addresses? on: April 30, 2021, 01:54:34 PM
If you could theoretically keep the addresses compatible, while introducing a new quantum resistant algorithm surely it would be better to allow the person who owns the address to have the option to upgrade or not. I'm not a massive fan of forcing things on people. Of course, this means that millions of Bitcoin will be vulnerable, and could effectively hurt the Bitcoin economy in the short term. However, I think people should have a choice to use whatever they want. Its their funds, they are their own bank, and if they choose to not upgrade to the new quantum resistant algorithm, then they accept the risk. This might be detrimental to others using Bitcoin, at least in the short term, but forcing them to accept a new protocol doesn't quite sit right with me.
Probably not. Addresses are scripted in a way that relies on the ECDSA signature and ECDSA signature will be vulnerable if such a powerful QC gets developed.

Making millions of Bitcoins remain vulnerable is an economic risk. Your whole economic functions within Bitcoin will fail catastrophically given that hypothetical scenario and make Bitcoin absolutely worthless. Keep in mind that the millions of Bitcoins are likely to have been in control by Satoshi and there is little to no chance that he'll come back and do anything. Unfortunately, for the betterment of the community, you have to impose drastic changes.

I don't believe in the "greater good" in all instances. Especially, when it pretty much strips the freedom away from people. Of course, this means that a few stubborn users could actually hurt the broader Bitcoin community. Which, I'll be honest would probably happen if this was a reality. Its moral dilemma as one solution means you'll be forcing people to conform even if its for the greater good, and probably good reason. Then the other allows what would probably be a minority hurt the overall Bitcoin community.  
Then unfortunately, I believe most of the Bitcoin users believes that in order for Bitcoin to survive, you have to make certain hard choices. Of course, given Bitcoin's nature, you don't have to do so. Just make a fork to invalidate any ECDSA signatures and have another fork which still uses that standard. It is a choice that is left up to the user, if they believe in not burning those funds, then you can use the fork but also bear the blunt of the impact if anything happens to the ecosystem.

Its quite obvious that there will be two sides of the camp when met with such a scenario. But it is really not a partisan issue; if an attacker gets his hands on those Bitcoins, then you have to face the choice to either block it through a fork or let them liquidate it and possibly crash the value of Bitcoin as well. It's not quite like a block size debate where both scenario would pan out just fine and to me, not making the drastic measure (if there isn't any other solution) isn't the correct choice.
1457  Bitcoin / Development & Technical Discussion / Re: 10 minutes block interval and network modelling on: April 30, 2021, 11:37:31 AM
Well, we're definitely not 100% sure for this decision. Satoshi may chose it, because of the calculations he/she had done. Giving that a block can be 1MB max size, it'd mean that every 52,500 blocks (~1 year), the chain would weight up to 52.5GB more than it did a year ago.
The maximum block size of 1MB was only enforced in 2010 onwards. Prior to that, Bitcoin had a different block size limit (32MB?).

1) Do pruned nodes allow incoming connections? If yes, why? They shouldn't be sharing anything, only validating the chain.
Yes. They share the blocks on disk and also relay transactions. Doesn't hurt for them to be accepting incoming connections.
2) What happens to pruned nodes on a 51% attack?
Depends on reorg depth. You cannot reorg beyond the pruned limit and I believe Bitcoin Core will just throw an error in that case.


If Satoshi did the calculations, you bet that there would be the calculations somewhere. Even in 2009, the time it takes for any computer to validate a single block should not come close to 10 minutes at all nor was the internet connection that bad. The way the nodes connects to each other should also result in the propagation to be taking much less than 10 minutes. There is obviously quite a significant room for error in this case and I'm sure that Satoshi just chose it as an arbitrary number.
1458  Other / Beginners & Help / Re: Will there always be backward compatibility for Bitcoin Wallet Addresses? on: April 30, 2021, 02:55:42 AM
Satoshi might wake up one day and find out his stash is worthless without backward compatibility.
Changes are not always abrupt and if they are, then it has to be for a serious issue. There would usually be quite a period of time before any significant changes to the protocol and probably would give enough time for people to move their coins.

A thought experiment, if quantum computers becomes (practically and economically) feasible enough to attack the exposed public keys, wouldn't it be better to force people to discard ECDSA keys in favour of a quantum resistant algorithm? If the network doesn't adopt drastic measures, then I would assume that there is a significant chance of funds getting stolen, especially the millions from the already exposed addresses and removing those kinds of keys would be better for the community.
1459  Other / Beginners & Help / Re: Will there always be backward compatibility for Bitcoin Wallet Addresses? on: April 29, 2021, 10:39:40 PM
Both Bech32 and legacy uses RIPEMD160 and SHA256. Even if these were broken, there is little incentive to deprecate these as you'll only be able to get the public key by breaking these. I could see a point in deprecating either if a collision occurs with either of the address type which is quite unlikely.

In the far future, we could possibly deprecate ECDSA as a signature algorithm if it becomes insecure and cheap enough to attack. Probably would be given enough time to shift to a new algorithm before that happens. This affects all PK algorithm (legacy/Segwit).
1460  Bitcoin / Development & Technical Discussion / Re: Block data download speed on: April 29, 2021, 04:55:37 PM
Regarding dbcache, I just looked up and there seems to be no folder called .bitcoin in my home directory.
I am using an external HDD and whole installation has been done on the HDD itself.
Should I create a new folder ./bitcoin and then place the new conf while there ?
No. The bitcoin.conf is stored in your data directory. It should be in the same folder with your mempool.dat, peers.dat,anchors.dat etc. This requires a restart of your Bitcoind.

Alternatively, start bitcoind with -dbcache=2048.
Pages: « 1 ... 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 [73] 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 ... 461 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!