Bitcoin Forum
May 23, 2024, 12:05:48 PM *
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 05, 2016, 02:47:05 AM
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.
Miners will not work for free.
I never said they would. If you make a block smaller than the maximum permitted when there are fee paying transactions waiting-- you are making less money than someone who builds the largest block they can. -- and when they do so they undermine the effort you made at your own expense to artificially boost prices.

Quote
(but not higher than the average block setting showed by all the BU nodes)
What nodes 'show' is perfectly Sybil attackable-- if it weren't we wouldn't need mining at all.
1302  Bitcoin / Bitcoin Discussion / Re: Patent trolling in the Bitcoin world on: December 04, 2016, 07:13:27 AM
If you actually intend to freely license it, you will recover nothing of the cost.
The free license does not apply to patent aggressors, so we gain the ability to enforce against them which is very valuable.  It's very rare that patents for cryptographic purposes actually generate their own revenue, their value (free license or not) is primarily defensive.

Quote
The true reason why BlockStream and others get patents yet pretend to take the high road, is because when they get a good one and the network moves in their direction, they'll be able to say: "Oooops, changed our mind.  No more free licenses".
The licenses are irrevocable, were it not it wouldn't have been applauded by groups like the EFF.

Quote
Blockstream has made other movements which seem somewhat less than altruistic to me.  I'd say be on guard with this one.  
Oh really? Whats that?
1303  Bitcoin / Bitcoin Discussion / Re: Patent trolling in the Bitcoin world on: December 03, 2016, 09:42:59 AM
It mentioned that there are Bitcoin companies like Blockstream,
The article was misleading on that front: https://blockstream.com/2016/07/19/blockstream-defensive-patent-strategy

Blockstream has freely licensed its patents in a way which should make it a little more difficult for practicing entities to use patents to restrict Bitcoin.

If more companies join in this practice the effect will become stronger.
1304  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.
1305  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.
1306  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...)

1307  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.
1308  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.

1309  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.
1310  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.
1311  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": [
1312  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.

1313  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.

1314  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.
1315  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.
1316  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.
1317  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.
1318  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.
1319  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.

1320  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.
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!