Bitcoin Forum
June 22, 2024, 04:17:37 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 ... 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 [180] 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 ... 590 »
3581  Bitcoin / Bitcoin Technical Support / Re: Help! 'Welcome to bitcoin core' on: April 03, 2017, 12:59:40 PM
There is no "restart Bitcoin application" button. There is a button for "Reset options" which will, as you can imagine, reset all of the options to their default settings. That means that you are not using a SOCKS proxy. The "welcome to Bitcoin Core" dialog will appear because that is where you set the datadir, and in the past, the reset options button would set the datadir to the default without notifying the user which caused a lot of confusion. Just set the datadir to wherever you had it set to before and it will use whatever is in there already, such as your wallet, the blockchain already downloaded, and the databases already built for that.
3582  Bitcoin / Project Development / Re: Bitcointalk Account price estimator on: April 03, 2017, 12:53:56 PM
Nice projoct, Hi OP, just want to know why in this site not shown post quality and count the characters? thanks and best regards.
As has been stated multiple times throughout the thread and in an edit to the OP itself, the "post quality" is not being shown because it is highly inaccurate and has been previously used by people as justification for their poor post quality.
3583  Bitcoin / Development & Technical Discussion / Re: Opening LN channel with zero balance? on: April 03, 2017, 12:52:20 PM
The explanations have gotten way too complicated for what pawel777 was asking. Im interested in the answer too. Allow me to rephrase the question. In LN, do we need some kind of show money to open a channel? Is it possible to only open a channel now without the show money for future use if I already have the show money?
With the current lightning spec document, both parties need to put in some amount of money so that both parties have something to lose so there is an incentive for both parties to not scam the other person.

Edit: You can open a channel where only one party funds it. I read this part of the spec incorrectly. See https://bitcointalk.org/index.php?topic=1848861.msg18444685#msg18444685
3584  Bitcoin / Armory / Re: The DB has returned the following error: DB version mismatch. Use another... on: April 03, 2017, 03:39:17 AM
Go to the Armory data directory (by default it is in %appdata/Armory on windows) and delete the folder named databases then start Armory.
3585  Bitcoin / Armory / Re: Armory 0.96 testing builds on: April 03, 2017, 03:10:44 AM
Well, I've got Armory 0.95.1 running with Bitcoin Core 0.13.2 but it is just sitting there - as it was with BC 0.14.
There's a full green box in the "Initializing Bitcoin Engine" section with that little icon slowly spinning around. This is what is was doing with 0.14.
The task manager tells me that ArmoryQT.exe is indeed running and I also see a "bitcoind" process running, but it appears that nothing is really
happening.
Is it building its own database? Where can I look to see if it's doing something?
Sorry to keep giving this stuff to you (should I move to another thread?) - but just trying to figure out if I'm spinning my wheels here or if something
is going on. Do you know if this combo has run in W8.1 succesfully before.

Thanks so much for your support.
You need to run Bitcoin Core and Armory separately. In Armory's settings, uncheck the box "Let Armory run Bitcoin Core in the background". Then stop Armory, start Bitcoin Core, and restart Armory.
3586  Bitcoin / Armory / Re: Armory 0.96 testing builds on: April 02, 2017, 11:39:46 PM
Thank you.
By downgrading to Bitcoin Core 0.13.2 - it's not going to download that huge database again, right?
No, it will not have to download the blockchain again. It will use what is already downloaded.
3587  Bitcoin / Armory / Re: Armory 0.96 testing builds on: April 02, 2017, 10:35:41 PM
I'm afraid it's still not coming up. When I run it now it complains it can't write to the logfile even though file is there and read and writable.
I tried moving it out and a few other things but exe still won't run.
Thanx for your efforts - I 'preciate it. But, I'm kinda on a time crunch to get some bitcoins so I'm thinking of trying another wallet if 0.96
ain't available soon.
I'll see if I can replicate the issue.

For now, you can use 0.95.1 and downgrade to Bitcoin Core 0.13.2.
3588  Bitcoin / Armory / Re: Armory 0.96 testing builds on: April 02, 2017, 08:40:27 PM
Well, please remember that I was at least able to bring up Armory 95.1. It had problems connecting/communicating with the 14.0 core - but at least I could see it.
This beta version won't even come up.
As I said, I uninstalled that 95.1 version after the first error from the beta build - so I must've also removed the lang folder?? Why isn't it there for the beta?
Should I uninstall beta, go back to 95.1 and copy the lang folder? Or can someone just tell me how to get it?

Thanks for whatever you can do.
Here is a copy of what I have in my lang folder: https://drive.google.com/open?id=0Bxw3ip9QfNOUTU1laEEyU2l6a1E. Extract the zip file into wherever you installed Armory. Make sure that if you double click the lang folder, you see a bunch of files with a .qm extension on them.

The reason the lang folder is not there is due to improper packaging of the binaries and the installer. I have it because I do development of Armory and run straight from source.
3589  Bitcoin / Armory / Re: Armory 0.96 testing builds on: April 02, 2017, 07:52:53 PM
No - no folder named "lang". Only folder under where I installed Armory is one called "tcl"
That's probably the issue then as it is expecting the translation files to be there. There's probably a packaging problem for Windows.
3590  Bitcoin / Bitcoin Technical Support / MOVED: cant unlock my funds when i lost my password but have my seed on: April 02, 2017, 07:51:52 PM
This topic has been moved to Trashcan.

https://bitcointalk.org/index.php?topic=1852483.0

Duplicate
3591  Bitcoin / Development & Technical Discussion / Re: Block size increase proposal: Consensus based on the mempool on: April 02, 2017, 07:39:10 PM
Actually, node requires to be connected at least with one node that relays all desireable transactions.
Even if they are connected to a node that relays all "desireable" transactions, that does not necessarily mean that the node will have all of those transactions stored somewhere in order to properly validate a block. It needs to be able to lookup that a transaction was in its mempool for at least X seconds, and if it doesn't have a mempool, then this is impossible.

They still can use their wallets in blocksonly mode. But what's the point if it doesn't receive transactions?
A blocksonly wallet still receives transactions when they come in a block, i.e. the transactions have confirmed. You are reducing the security of people running blocksonly nodes as they are trusting that blocks that they receive are valid with regards to the transactions inside of them being in the mempool at least X seconds.

The chain becomes valid anyway, when it receives two or three valid blocks. Also we can simply bypass this rule for some time after the launch.
No, bypassing the rule for some time after the proposal deploys is not going to help at all. New nodes don't just come online after a proposal activates; nodes are being restarted all the time and this rule will force a node which just started to reject the blocks because it doesn't have a populated mempool to begin with.

Yes. But it is not a miners' problem. Actually, I doubt whether node even without additional delay can receive full block before small transaction. Furthermore, given that transactions are relayed before.
A node can most certainly receive a block before transactions are received. There is no stipulation that blocks cannot be sent before transactions (it's asynchronous). A newly started node with NO MEMPOOL is not likely to receive the transactions that are included in a block if the block is found shortly after the node starts up. Furthermore, new nodes don't populate their mempools with the transactions in the mempool's of other nodes. Nodes only relay a transaction once, right after they receive and validate it.

Malicious miner will generate a lot of orphan blocks before that happens.
Even so, it is an attack that is entirely possible and potentially has huge payout.

Anyway, the worst possible thing that could occur is acceptance the undesirable block consisting of spam. The best chain is selected only when it meets the consensus rules.
No, you don't seem to grasp the idea that ALLOWING INVALID BLOCKS MEANS THAT MALICIOUS THINGS CAN BE DONE. Your proposal allows the absolute worst possible thing that can happen in Bitcoin, allowing an invalid block become completely valid. By allowing invalid blocks, you are allowing blocks completely circumvent the consensus rules. What part of that do you not understand? Do you not understand that invalid blocks include more than just being larger than the block size limit?



The miners who engage in "SPV" mining will only mine on top of an unvalidated block for as long as it takes them to validate the block. These miners are relying on the valid economic assumption that it is not economical to build/broadcast an invalid block, and it will cost a troll miner much more to broadcast an invalid block than it would cost the rest of the network to build upon an invalid block for only as long as it takes to determine that said block is invalid. It would cost a troll miner roughly 13.5-14BTC to broadcast an invalid block, while it would cost 90% of the network collectively between ~.6BTC-~.62BTC to build on top of that block for the amount of time it takes to figure out it is invalid.
Not necessarily. As I mentioned earlier, an invalid block can be invalid in many ways. It is possible that a miner could make an invalid block which has a massive payout, such as changing the block subsidy to 1250000000000 BTC for that block. Even though the consensus rule is that coinbases need to have 100+ confirmations before they can be spent, this is an invalid block, so consensus rules go out the window. They can make a block which has that huge reward and make and include a transaction which spends that reward to an exchange address thus once they get their invalid block considered valid, they can cash out and make a ton of money to recover their costs.

OP - You are describing something very similar to EC (emergent consensus). It should be important to point out that only certain consensus rules are subject to EC in your proposal, otherwise the miners will be able to make *all* the rules, which is probably not something that is desirable.
Has OP stipulated that his "temporarily invalid" block thing is only applicable to certain consensus rules? He has not mentioned that explicitly thus far in this conversation, and it was not mentioned in the OP when I first responded to it.

I would also point out that not all nodes' clocks are on the exact same time (when converted to GMT), so it would be difficult to determine if a transaction has in fact been in a miner's mempool for at least 15 seconds prior to broadcasting a block that confirmed said transaction, so I don't think it would be possible for a node that had received a transaction at the exact same time as the miner to validate the miner had the transaction in it's mempool for at least 15 seconds. Also, as achow101 pointed out (somewhat), if a node receives a transaction 5 seconds prior to receiving a block that includes said transaction, they believe said block is invalid -- this is however resolved by your EC clause.
But waiting for the EC clause to take effect takes time, and this case is a usability issue. Suppose you received a transaction, and that transaction is included in a block. But you perceive that block as invalid because some other transaction in that block was received less than 15 seconds before you received the block, so you mark it as invalid. This is can make Bitcoin less easy to use as some users won't know that their transaction has actually confirmed since the wallet considers the block it was confirmed in to be invalid until ~30 minutes after the confirmation. In fact, a miner could perpetually prevent the EC clause from taking effect for a specific node by always broadcasting an old transaction (i.e. one that was discarded by being older than 1 hour, as was mentioned previously) shortly before broadcasting the block including it. You could do this an effectively take nodes offline for a while.
3592  Bitcoin / Armory / Re: Help with Bitcoin core on: April 02, 2017, 07:28:31 PM
Run Armory and Bitcoin Core separately. First start Bitcoin Core. Then start Armory. In Armory's settings uncheck the box "Let Armory run bitcoin core in the background" and then restart Armory.
3593  Bitcoin / Armory / Re: Armory 0.96 testing builds on: April 02, 2017, 07:27:50 PM
OK, tried the new build. Running Windows 8.1, had Armory 95.1 installed, but uninstalled it after 1st error. Could not run the new .exe. Here's contents of the ArmoryQt.exe.log log file.
Let me know if you need anything else. I have core .14 so Armory wasn't working before I tried this anyway.

(ERROR) ArmoryUtils.pyc:3742 - Unsupported language  specified. Defaulting to English (en)
(ERROR) Traceback (most recent call last):
  File "ArmoryQt.py", line 55, in <module>
NameError: name '__file__' is not defined

Traceback (most recent call last):
  File "ArmoryQt.py", line 55, in <module>
NameError: name '__file__' is not defined

If you go to the folder where you installed Armory, do you see a folder named "lang"?
3594  Bitcoin / Armory / Re: Wrong release timestamp on: April 02, 2017, 04:22:04 PM
Goatpig forgot to update the clock on his offline signer.
3595  Bitcoin / Armory / Re: Help with Bitcoin core on: April 02, 2017, 02:44:57 PM
These paths don't like having spaces in the path. You can remove the space in the path to your installation (which I recommend, many things don't like having spaces in paths) or surround the path you enter with double quotes (")
3596  Other / Beginners & Help / Re: What's the 'amount' requested when genning a new address? on: April 02, 2017, 02:41:32 PM
You don't need to enter any amount when requesting an address. It is entirely optional. There is no limit on how much an address can receive or how many times it can be used. Your wallet will still track the address's balance even if it has received more than the amount requested (which can be whatever you want it to be) and even if you keep reusing the address.
3597  Bitcoin / Development & Technical Discussion / Re: Block size increase proposal: Consensus based on the mempool on: April 02, 2017, 02:32:45 PM
I'm not sure that we need it. How does it related to the topic? My proposal does not imply that all existing nodes relay transactions. Similarly, miners does not imply that all existing nodes relay blocks.
Your proposal requires that all nodes receive and store transactions in order to verify that a block contains "desireable" transactions. Yet blocksonly nodes do not receive and store transactions, thus they cannot receive, verify, and relay blocks.

Even if you don't call blocksonly nodes full nodes, you are still preventing people who want to have the security of a full node (and they are still getting that with a blocksonly node) but don't have enough bandwidth for a normal full node from being able to use their wallets.

Good point. This problem can be solved in different ways.
First of all, nodes aren't required to keep full transactions (TxID will be enough). Also we don't need to keep them forever. I propose that nodes can forget about transactions received over an hour ago. Miners should be careful to include these transactions in block.
Then you run into other issues like people paying too low of a transaction fee and thus getting their transaction evicted after the hour is up.

This parameter is a consensus rule:
  full nodes should temporarily reject* blocks that consists more than 5% of transactions considered as undesirable (being in the mempool less than 15 seconds | with a fee below 20 satoshies/byte)
What if a transaction was in a miner's mempool for over 15 seconds but not in a node's mempool for 15 seconds (due to latency)? What if I just restarted my node (so it's mempool is now empty) and then I receive a block? Do I reject it? I don't have any of the transactions in the block in my mempool. This time rule assumes that mempools will be in sync with each other, and they simply are not.

I know you are going to say "miners will adjust their delay" but miners can't just "adjust their delay" to accommodate every node. Again, what if a new node just started up (which miners won't know about anyways) and has no transactions in its mempool? How do you handle that?

All honest nodes will reject it because the best chain is selected only when it meets the consensus rules.
...
How will it happen?
...
How will it happen?
Again, SPV miners cause an issue here, and malicious miners. SPV miners don't verify blocks before they begin building upon them. Given that a majority of the hashrate does this (because mining pools) combined with the malicious miner, they could, with some luck, find the 3 blocks necessary in order to make this invalid block accepted. The blocks would be found before the SPV miners have finished verifying that the invalid block is in fact invalid, and once the three blocks are found, that invalid block is now valid. That is how it would happen.

What's wrong with SPV mining?
SPV mining is also called validationless mining. SPV miners are building blocks on top of blocks which they have not yet verified to be valid. This is a problem because you can end up with a situation where SPV miners have extended a blockchain on top of the invalid block enough so that the invalid block would be considered valid under your proposal. SPV miners currently consist of a majority of the hashrate, and having SPV miners extend on an invalid block has happened in the past.
3598  Bitcoin / Bitcoin Technical Support / Re: i have 2 pending transacctions to receive on: April 02, 2017, 04:32:04 AM
1AvuhUvXDUwJbYS59dzutF6eh7DfbEMnXs receiving wallet
There are no transactions to this address. Are you sure this is correct? Are you able to have the sender rebroadcast the transactions? It is likely that they have been forgotten by nearly all nodes over the course of the week. Can you please also post the transaction ids of your transactions, not just the addresses involved.
3599  Other / Beginners & Help / Re: I found a Bitcoin Miner app in Windows 10 and I need some help for a custom pool on: April 01, 2017, 11:15:19 PM
If you want to legitimately mine Bitcoin, you will need very special hardware called ASICs. You will make basically 0 money from trying to CPU or GPU mine, which is what this software appears to be doing. Furthermore, there are far better mining software that exist that have more functionality and are probably more efficient but just don't have a GUI. If you actually want to mine Bitcoin, I suggest that you research ASICs and learn how to use the command line in order to run actual mining software.
3600  Bitcoin / Development & Technical Discussion / Re: Block size increase proposal: Consensus based on the mempool on: April 01, 2017, 11:11:15 PM
These people aren't running full nodes.
Yes they are. A full node is a node which fully validates every single block and transaction that it receives. Blocksonly nodes are still full nodes, they fully validate every single block and transaction it receives. In fact, as an outside observer, you would absolutely not be able to tell whether someone is in blocksonly mode or not. There is no indication that they are not just a regular node.

They would not be able to temporarily reject undesirable block but still can validate it.
In a good way this node should be considered as misbehaving node unless it reported to all connected nodes that have an intention to evict transactions.
Many people run blocksonly nodes because it significantly reduces the bandwidth requirements for running a full node. You would completely make it impossible for people to run full nodes in a low bandwidth mode such as blocksonly. This is not something that we want to do as some people may not have the resources to run a non-blocksonly full node but also want the security and privacy afforded by a full node.

I don't assume that. I've proposed to make them required to keep and relay all transactions.
How do you enforce that? How do you prevent someone from making a ton of super low fee transactions just to spam up mempools and take up more memory, at some point causing nodes to crash? If you require every single transaction to be kept, then you open up an entirely new attack vector.

I don't assume that. Miners can adjust their delay parameter as much as needed.
What the hell does that mean? As you described it earlier, the "delay parameter" is a consensus rule. You can't just "adjust a consensus rule" as you are proposing without causing invalid blocks.

minTxRelayFee parameter becomes part of the consensus and cannot be higher than 20 satoshies/byte
How do you enforce that? minTxRelayFee will still be part of node policy. How do you enforce that the minTxRelayFee is no higher than 20 sat/byte. Furthermore, suppose someone were to spam up the mempool with transactions that are 20 sat/byte so much that nodes crash because the mempools are too big. Now what? Additionally, Bitcoin Core currently implements a floating minTxRelayFee because it prevents such crashes. It limits the mempool to a certain size and bumps up the minrelayfee as it gets fuller.

Not invalid, just undesirable.
Suppose Miner A was malicious and got lucky. They made a block which instead of awarding them 12.5 BTC as the subsidy, awarded them 125000000000 BTC as the subsidy. Now what? Everyone is just going to follow along that chain and let that miner have the 125000000000 BTC because he just got lucky and other miners were SPV mining?

No. The worst possible thing that could occur is acceptance the undesirable block consisting of spam.
I'm not talking about spam. I'm talking about a miner who awards themselves a massive amount of Bitcoin in the block subsidy. Or creates a bunch of transactions which spends UTXOs that they normally are not allowed to spend thus stealing coins.

The worst possible thing that could occur is acceptance the block consisting of spam. But nobody will mine on top of invalid (or undesirable) blocks unless 51% attack is performed...
With SPV mining, a 51% attack is not necessary. Forks have happened before where SPV miners (which consist of >51% of the network as most large pools do this) have mined on top of invalid blocks and in fact made that chain longer than the valid chain until the pool operators intervened and switched the pool back to the valid chain.

Why do you think so? What about 1MB block size limit rule?
The block size limit is a consensus rule. A standardness rule applies to transactions, and is defined by the IsStandard function in the Bitcoin Core source code. That standardness rules are not the same as consensus rules is not just something I think, but is by definition a local node policy, as defined by the reference implementation. There is no such thing as a standard block, only that there are non-standard transactions, which can still be valid and will be accepted by all full nodes if included in a block.

If node violates some mandatory rule and for example sets minTxRelayFee parameter to 30 sat/byte it should be considered as misbehaving node, unless it reported to all connected nodes that have an intention to evict transactions.
How would you know? How would you enforce this? Local node policies (including standardness rules) are not broadcast among nodes and even if they were, can be easily faked.

It is enough to always come to consensus. Miners just need to adjust their delay parameter.
As I said earlier, standardness rules are not the same as consensus rules.

My proposal assumes hard fork, so miners/pools/SPV servers will have to update their soft.
Regardless of what type of fork this is, SPV mining will still happen and is still a problem. Those two are completely unrelated things.

No. The worst possible thing that could occur is acceptance the undesirable block consisting of spam.
No, the worst possible thing that could happen is the acceptance of a completely invalid block. Except under your proposal, such an invalid block can and will be accepted.
Pages: « 1 ... 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 [180] 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 ... 590 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!