Bitcoin Forum
May 13, 2024, 11:28:48 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 ... 16 17 18 19 20 21 22 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 ... 288 »
1301  Bitcoin / Development & Technical Discussion / Re: How to destroy Bitcoin with a 10% attack: Roadmap for a Central Bank Takeover on: December 03, 2016, 09:38:02 AM
Even with an unlimited blocksize all the miners will try to get as much possible as they can, by limiting them self the blocks as they did until now.
Limiting yourself will not increase your income when other miners undercut you-- they will take the transactions you reject, undercut your price, and be more profitable than you, then the difficulty will adjust and they will be making a profit and you will be making a loss and either have to adopt their practices or exit the business.
1302  Bitcoin / Bitcoin Discussion / Re: The Extreme Flaws Of Bitcoin on: December 02, 2016, 07:07:05 PM
A CPU is not an Application Specific Integrated Circuit. It is application agnostic.
Yes it is-- the circuit it implements is universal, meaning that it can emulate any other circuit.  But it's built exactly like a mining asic is, mining asics just are more optimized for that task and don't waste space for parts that aren't needed.

The term ASIC is a comparison to early "integrated circuits"-- devices that had many semiconductor parts integrated into a single chip, but still exposed them to the outside world as generic parts. An application specific part builds the application (like "computer cpu") into it to achieve much higher levels of integration.
1303  Bitcoin / Development & Technical Discussion / Re: Max Locktime on: December 02, 2016, 03:30:49 AM
Any change to the timestamps for nLocktime and the block header will require a hard fork. Given that this is a long term problem, it is not particularly urgent right now to fix this.
And hardforks tend to break nlocktimed transactoins, potentially forever destroying their funds...

It's really inadvisable to use locktimes set in the far future.  Though everyone working on the Bitcoin project works hard to not invalidate existing transactions, we don't know what new challenges the future may bring-- and the Bitcoin of 2110 might well not accept a signed transaction drafted today.

For your example it's far better to just store the private key needed to spend the funds.. you'll need that anyways in any case... (unless he intends to just give his funds to miners in the far future...)

1304  Bitcoin / Bitcoin Discussion / Re: The Extreme Flaws Of Bitcoin on: December 02, 2016, 03:24:18 AM
There is no such thing as asic-resistance.
Yep. (and if it did-- what would you run it on, your CPU is an asic too!)

https://download.wpsoftware.net/bitcoin/asic-faq.pdf


This can be enforced by requiring transactions in the reserved area to have proof of node.
Proof of node can be a scrypt-like system (look up entry corresponding to transaction hash, hash this with the transaction hash, look up entry corresponding to this hash, repeat, chech final hash against difficulty (should be hard enough to prevent spam, but not enough to tie up nodes)) over the block-chain, that requires having the entire block-chain to preform, but can be checked quite easily (about as hard as checking for double-spends on inputs).
Then I just have one node and pretend to be thousands of nodes. You've just reinvented mining but in a cumbersome way, and failed to benefit the system.
1305  Bitcoin / Development & Technical Discussion / Re: Increase block size (5%) by using CompactSize instead of UInt on: December 01, 2016, 09:03:08 PM
Reasonable thinking but you are far too unambitious.

The understanding you need is that a transaction is like an idea. It can be expressed in many languages.  We happen to use  a particular one today to send them over the network and store on disk which is not as efficient as it could be.  We
actually use another one to handle transactions in memory that is about half as efficient as the current format you know-- but faster to work with.

Nodes could use a different language to store the transactions they use on disk or send over the P2P wire; as theymos notes-- it's not even a softfork-- This has been recommended many times in the past when people show up trying to use zlib compression on transactions (which doesn't work very well, mostly just exploiting key reuse.)-- and it influenced my thinking about how weight is computed in segwit.

There is a more concrete design that was published a bit back http://people.xiph.org/~greg/compacted_txn.txt

And Sipa has taken that design, improved it, made it more generic and has been implementing it so we can benchmark it. Hopefully there will be a patch up soon.

The result is 20% or more savings on basically all transactions, 30% on some more inefficient kinds. ... and it applies to the whole history, back to day one.

1306  Bitcoin / Development & Technical Discussion / Re: Post your SegWit questions here - open discussion - big week for Bitcoin! on: November 27, 2016, 01:53:30 AM
This behavior is not limited to just segwit but in general for node services; it just happens to be that segwit is the only major node service right now.
Not quite-- NODE_NETWORK exists, and is absolutely required for outbound connections (e.g. doesn't even get the bypass for draws; also the 40 count isn't 40 connection attempts, it's 40 results from addrman (which could be connection attempts or rejected for other reasons)).

In whatever release that comes out after segwit is required NODE_WITNESS will become required just like NODE_NETWORK is.   The purpose of outbound connections is to make sure you aren't partitioned and can obtain blocks, they're for your own benefit. Inbound connections are for the benefit of others.

It's not acceptable for the network topology to suddenly change when segwit activates--  can you imagine that? drop all your current connections and then form new ones hoping that the network can make a non-partitioned graph?-- that would be irresponsible.  Instead, it changes its connection preference at install time, so if there were any issues they could be addressed while the user is paying attention.

If you addnode a non-witness peer, it will be accepted just fine. Any inbound non-witness peers are accepted fine. If it's not able to get connected to witness peers it'll connect out to up to 4 of them so to avoid being partitioned if there are no witness peers available. It isn't "blacklisting" in any form-- my own 0.13.1 nodes have 82 out of 118 and  71 out of 113 peers which are not 0.13.1. (and in the latter group one of those 71 is an outbound connection to a 0.12.1 peer, FWIW).

None of it impedes the ability of non-segwit nodes to operate.  This was discussed in several public meetings and documented. I'm not aware of any problems resulting from it, besides the usual giving Kano something to howl abusively about.   When Bitcoin XT merged "xthin" it incorporated something far more aggressive (an absolute prohibition on outbound connections to non-xthin peers, even if addnoded, even if the node was partitioned)-- yet as far as I can tell there has been narry a complaint from Kano about it.
1307  Bitcoin / Development & Technical Discussion / Re: SegWit change addresses? on: November 26, 2016, 10:15:39 PM
I think the idea so far is to add a segwit account to segwit enabled wallets.  The segwit account then has segwit addresses (p2sh at first).  The user is free to choose between his segwit account and non-segwit account and whether he wants to transfer his funds to the segwit account.  When he uses the segwit account, he uses segwit change addresses.  So every user can decide for himself if/when he wants to update to segwit (of course, only after it gets activated).

That sounds like foolish wallet construction, IMO.  Don't do that.  A wallet should use segwit (in which case all newly generated addresses should be segwit) or it shouldn't (in which case none of it is).

As far as bare P2WPKH outputs, indeed-- those could be used for change, but they're more identifiable which is pretty ugly.
1308  Bitcoin / Bitcoin Technical Support / Re: RPC method to determine nBlocktime? on: November 15, 2016, 11:01:47 AM
In order to determine the current block height one can call getblockcount but I see no equivalent in order to determine the value used for nBlocktime (the average time of the last six blocks if I recall correctly).
When determining when a CLTV transaction is going to be "ready to send" (without actually attempting to send it) this would be helpful.
Or is there already a method to determine this from RPC calls?


$ ~/bitcoin/src/bitcoin-cli getblockchaininfo
{
  "chain": "main",
  "blocks": 439009,
  "headers": 439009,
  "bestblockhash": "0000000000000000004b21e8d764c7b8d46cdda8d65de23f16ff2a0124ca9070",
  "difficulty": 254620187304.0614,
  "mediantime": 1479204735,
  "verificationprogress": 0.9999974299335723,
  "chainwork": "0000000000000000000000000000000000000000002eb229f12576c1dbb64496",
  "pruned": false,
  "softforks": [
1309  Bitcoin / Bitcoin Discussion / Re: 75% / 95% majority hashing power on: November 11, 2016, 08:21:33 PM
has been implemented we only needed 75% majority hashing power to activate it if Im not mistaken. Now for version 0.13.1 with SegWit we need 95%.
You're mistaken. Smiley Pre-BIP9 softforks had an extra stage where the new feature was enforced in blocks that claimed it, but wasn't required overall. 95% was still mandatory to require the change on the network. Bip9 eliminated that step because it added complexity without adding any obvious value.   This behavior is set by the change itself, or-- rather-- BIP9 which is a meta-proposal for how changes like this should be done.

1310  Bitcoin / Development & Technical Discussion / Re: preparing for segwit on: November 11, 2016, 03:45:04 AM
Thanks for following up.  If I'm reading your response correctly, according to Cory, I simply have to add the value in "default_witness_commitment" instead of concatenating 0x6a24aa21a9ed and "default_witness_commitment".
Correct.  Segwit is active on testnet-- so you can freely test out your mining there. If you could use some hashpower for testing, I can direct some to you.

1311  Bitcoin / Development & Technical Discussion / Re: preparing for segwit on: November 10, 2016, 01:10:25 AM
I bounced your message past Cory Fields, who has been helping others with segwit integration and he pointed out that it wasn't clear from your message if you'd end up duplicating the OP_RETURN-- the default_witness_commitment contains the OP_RETURN + magic already.  Otherwise it sounds correct.
1312  Bitcoin / Bitcoin Discussion / Re: Bitcoin Core 0.13.1 Released on: November 09, 2016, 07:29:35 PM
How are maxconnections=__ controlled now? Is it now n-1?

In my bitcoin.conf file I can set maxconnections=10 but only nine other clients will connect. If I set maxconnections=11 then only ten other clients will connect. Is this a bug, or feature?
An extra connection is reserved for short lived 'feeler' connections which the node uses to explore the network.
1313  Bitcoin / Bitcoin Discussion / Re: Bitcoin Core 0.13.1 Released on: November 09, 2016, 07:27:01 PM
Network speed cap is the maximum block size that can travel through the network fast enough so that it would not be orphaned. Miners are never going to mine blocks that are so large that they will be orphaned (another miner mining a much smaller block will get to propagate it faster,
If any any point miners find that blocks are being orphaned because they are too slow to propagate then the rational, natural, and previously observed behavior is that miners will simply centralize since doing so eliminates that cost. Because the effect of orphaning can be made arbitrarily small (by centralization or other means), your proposed effect cannot constitute a long term effective control on resource utilization.

Quote
It is important to respect the vision of Satoshi Nakamoto because they are the author of Bitcoin.
Says someone who wants to rewrite the network rules in a way radically unlike and incompatible with the state that Bitcoin's creator left it.
1314  Bitcoin / Development & Technical Discussion / Re: natural order of blocks in blk-files? on: October 31, 2016, 12:16:31 AM
Is there a way to force client 0.13.1 to store blocks in blk-files in their "natural order"?
No. Not reliably, but you can use the script in contrib/linearize to get a linearized copy.

You shouldn't generally assume that you can parse Bitcoin's internal datastructures, they're not a supported interface and may change from version to version.
1315  Bitcoin / Development & Technical Discussion / Re: The Soft Fork Deception on: October 29, 2016, 06:25:06 AM
Softforks, by definition, result in some transactions by users who do not upgrade to be invalid.
There are more than two possible states, invalid or valid. Transactions can also be 'non-standard' meaning nodes will not create, relay, or mine them. But if they happen to (somehow) show up in a block, they'll accept them.  In effect, a non-standard transaction is one doing something that a node knows it doesn't fully understand, but still doesn't break the rules... so it won't facilitate it but it also won't reject it.

The community developed softforks in modern times take the form of only making things invalid which were already non-standard. So no transactions by users who do not upgrade will be made invalid.

Quote
The miners can undo a soft fork with the support of 50% of the hashrate (although they will likely require more).
Not so-- even if 90% (or 99%!) of the hashrate were to start violating the softfork, the nodes that understand it would view it like they view any other hardfork: They'd just ignore their blocks, and to them it would be precisely equal to the miners shutting off.

Quote
My concern about SegWit is that users who do not actively upgrade will not be able to fully validate any blocks (and their included transactions) that included one or more SegWit transactions. I believe this makes these nodes to be not full with the nodes thinking they are full nodes, which I believe is very bad.

In community developed softforks nodes _know_ when rules have activated that they don't understand, and they complain to the user loudly: Picture.  If a user wanted to set up their node to just shut off when such a warning happened they could.  The nodes also continue to validate all the things they always validated, anti-inflation, anti-doublespending, locktimes, etc.. even for the new transactions.  Plus the non-upgraded user won't be getting any payments that themselves use the new rules, because their wallet doesn't generate addresses that use them.

So in a softfork: Everyone gets a choice to upgrade or not and can choose _WHEN_ they upgrade... e.g. at a time when its convient to them. If they use software which is customized or no longer maintained, they can still 'upgrade' it by simply sticking it behind a stock upgraded node.  If they'd like to shut off at activation time until they get a chance to upgrade, they can do that too.  If like most people, the changes aren't immediately relevant to them-- they don't need to worry about them... and can just upgrade when they get around to refreshing their systems.  In a softfork there need be no actual split of the chain (there wasn't in the last one, for example).

Meanwhile hardforks are almost certain to split the chain even if just accidentally. They force users to upgrade at a particular time, and there is no easy upgrade: if your software is unmaintained you are just out of luck. They also carry more long term risk politically, they can effectively redefine the system-- assign ownership of coins to other parties--.  There is no relatively safe do nothing opportunity-- which punishes people using alternative implementations. Look how far behind xt/classic have been on prior softforks: only implementing them months after they were deployed. A frequent cadence of hardforks would make one many development teams completely infeasible.

So in any case, I think it is clearly the case that what you propose is strictly inferior. If you'd like your node to shut down when upgrades happen, set that up-- but basically no one wants that. Losing the ability to 'upgrade' customized systems by putting them behind upgraded gateways is a massive loss of flexibility and increase in cost/risk... especially since you can't control the timing of a hardfork and can't roll it back if your deployment goes poorly.
1316  Bitcoin / Bitcoin Discussion / Re: Unconfirmed Transactions Problem on: October 27, 2016, 10:28:34 AM
Seeing a peak is not a proof of spam attack.
There is never any proof, short of the person transacting saying "it's a spam attack".

What we do have is an interesting change in transaction behavior reflected in the UTXO set: https://blockchain.info/charts/utxo-count?timespan=60days which coincides with the flood of higher fee transactions starting and stopping.

1317  Bitcoin / Development & Technical Discussion / Re: geographic distrobution of accomplices for improved outcome in race condition on: October 27, 2016, 09:16:27 AM
I guess it would help you to win a race condition if you had accomplices from all over the world, say Berlin, Beijing, Boston, and Buenos Aires all propagate your transaction to the nodes that they're connected to, when trying to execute a successful double spend. Is is so?

Completely unnecessary. You announce all involved transactions yourself, you can make connections wherever you want, and then you can delay your broadcasts by the round trip time on each of these connections. The end result is indistinguishable from accomplices wherever you want them, but you need only a single host.

The only reason to be geographically spread would be to exploit things like true internet partitioning events.
1318  Bitcoin / Development & Technical Discussion / Re: testnet reorganization on: October 25, 2016, 08:18:12 PM
I want to know how many confirmations are enough to treat the blockchain immutable  Grin
On testnet? infinity?
1319  Bitcoin / Development & Technical Discussion / Re: how to broadcast a trans with lock time? on: October 22, 2016, 10:16:48 AM
nLock is a bad idea indeed , it will just discard other nLockTime transactions. Since most miners run bitcoind or some fork of bitcoind, it is unlikely that an nLockTime transaction will persist for a long time.


More could be found here: http://bitcoin.stackexchange.com/questions/26937/nlocktime-transactions-how-do-they-persist-are-they-broadcast-before-they-are

That answer is confused.  Locked transactions cannot be relayed until they're about to become mineable. After they are mineable they hang around just as long as any other transaction, their persistence is not reduced.


The "story" doesn't make a lot of sense, however. If someone is going to give 1000 BTC  a year later with no opportunity to take it back, then that is the same as handing over the funds now.  All of locktime, cltv, and CSV make sense only if there are cases where the transfer would potentially be changed but is otherwise guaranteed.

Let me make it make sense:

For example, your rich uncle says he will pay you 1000 BTC if you get married and stay married for a year.  You don't believe him since he didn't get rich by being generous or trustworthy.   So he sends 1000 BTC to a 2 of 3 multsig, with him, you, and the editor of your local paper as signers. Additionally, he writes a transaction spending that payment and paying you directly, locktimed a year from now, and he signs it and gives it to you.  You sign it, so the only think keeping it from being valid is the locktime, and stick a few copies in safe places.  You go and get married, confident that your uncle will not have an easy time cheating you.

Now, at any point from between now and a year from now you might get divorced and then you can sign a txn giving the funds back, or-- assuming you don't co-operate he can go to the newspaper editor with evidence of your divorce, and get the funds back.

Otherwise, in a year, you can take that locktimed transaction and send it to the network-- with no further cooperation from anyone else.  That surprise forklift accident that got your uncle AND the newspaper editor will be no problem for you, their help is no longer required.

In this case the locktime was quite useful-- and there was no reason to send it to the network until the lock was already mature... which is exactly what the network expects.

If the network didn't work this way, people could make locked transactions that wouldn't be good for 100 years, use the network for free forwarding and storage.. then double spend the coins before the lock became mature to avoid paying any fees. Smiley  Fortunately, there are no interesting protocols that I've encountered where this is an issue.
1320  Bitcoin / Bitcoin Discussion / Re: [POLL] Moral dillema. Satoshi's coins. VOTE on: October 19, 2016, 05:38:47 AM
The poll text doesn't really jive with the message text.

What does Bitcoin's creator have anything to do with this? For all we know all of Satoshi's coins are happily in regular circulation.

The poll asks, "Is it morally justified to destroy Satoshi's bitcoins to prevent market crash?"

but the text of the message makes it clear the real subject is:

"If ECC is cryptographically broken, is it okay to have a finite deadline for all coins to move to non-ECC keys in order to prevent millions of coins from being stolen including long lost coins?"


These are pretty distinctive discussions... in particular, targeting a specific person is quite different from targeting vulnerable keys generally. And "to destroy" sure doesn't sound like something with ample opportunity to move them first.

Pages: « 1 ... 16 17 18 19 20 21 22 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 ... 288 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!