Bitcoin Forum
April 30, 2024, 04:14:22 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 ... 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 124 [125] 126 127 128 129 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 ... 288 »
2481  Bitcoin / Development & Technical Discussion / Re: NSA and ECC on: July 14, 2014, 05:19:57 AM
If I am not mistaken, aren't you moving the goal posts in that you appear to be talking about bits of security which is orthogonal to what he was talking about verifiable randomness of the parameters to eliminate any suspicion of a backdoor?
Unlike the NIST curves the Bitcoin curve is not "random": There is no parameter question there. The comments on the safer curves page addresses a whole host of analysis points, so with the randomness off the table I was speaking to some of the other things where there are meaningful engineering differences between Bitcoin and curve25519.
2482  Bitcoin / Development & Technical Discussion / Re: Question on Transaction Fee and TX input/output, technically on: July 13, 2014, 01:44:28 PM
As we know Bitcoin currently has a minimum transaction fee threshold of 0.0001 BTC (10^4 Satoshi).
It most certantly does not.

In any case, many (most?) miners do "regard" fees below some threshold as zero in order to prevent people from jumping the queue just by paying an infinitesimal fee... but they still collect it all the same, they just treat it as zero when prioritizing.
2483  Bitcoin / Development & Technical Discussion / Re: BitCoin Adopting Unique Alt-Coin Features on: July 12, 2014, 09:01:10 PM
Just try getting the bitcoin-core developers to go 'against the grain' as it where when you have mining consortiums literally pumping tens of millions of dollars into the current sha256 PoW mechanism...ain't gonna happen. 
Sure it will. If mining centralization undermines the usefulness and values of Bitcoin people will take action— it's not even a question about bitcoin-core developers (though we're bitcoin users too!), since anyone can offer a modified version... The users of bitcoin are not going to just sit back when something moots the system.
2484  Bitcoin / Development & Technical Discussion / Re: Message Encryption with bitcoin address. on: July 12, 2014, 08:15:33 PM
Aren't you assuming that the receiver is going to respond to your attacks using the same session key?
No. Not at all.

Can you review my post again with this in mind. Communication is hard and I take full responsibility for being unclear... but I think I'm going to just repeat myself at this point.  I'll gladly retry if you reread with the assumption that the users do not reuse the session key.
2485  Bitcoin / Development & Technical Discussion / Re: Message Encryption with bitcoin address. on: July 12, 2014, 12:57:38 PM
I think I'm following your concern, but that's why I said:
Obviously this only works for a single <= 256-bit message, but the technique can be easily extended to messages of arbitrary length1.  
1EDIT: the IES scheme D&T just posted is one such method of extending this technique to arbitrary-length messages: https://en.wikipedia.org/wiki/Integrated_Encryption_Scheme  

If no one ever transmits more than a single <= 256 bit message with that session key, is there still a security problem?  Wouldn't this be an unbreakable one-time pad if only used once?  I can see the danger in sending more than one message XOR'd with the same session key, but I was just trying to explain the concept behind the Diffie-Hellman shared secret as simply as possible for a single transmission.  But perhaps I'm missing something.
No.

You can send a single message, the concern has nothing to do with _you_ potentially reusing your nonce.

I can intercept your single message, modify it, send it to the receiver. I can take advantage of the receivers misbehavior on receipt of the corrupted message— either doing new things from bitflips (e.g. I guessed what part of your message likely was and twiddled bits), or if garbage messages will make the receiver echo back in plaintext I can use that to recover your one-time pad.

Another way to look at it is that without authentication an attacker can cause multiple messages with the same nonce to exist. It doesn't matter that you didn't create them, the additional messages with the same nonce are potentially problematic none the less.
2486  Bitcoin / Development & Technical Discussion / Re: BitCoin Adopting Unique Alt-Coin Features on: July 12, 2014, 12:52:45 PM
Playing a bit of devil's advocate here... but Ethereum is turing-complete, and that would be hard to implement in Bitcoin. Right?
Not at all. It's actually so easy to implement turing-completeness that we implemented it accidentally in the first OP_EVAL patch and took it out (the recursion limits didn't actually work). The implementation in their demo code on github is (or was, I haven't looked in a while) just basically a replication of bitcoin script with a single JUMP opcode added. It's not uncommon for things to be accidentally turing-complete (using the non-pedantic definition which permits bounded memory or computation time as turing complete (otherwise what ethereum has proposed is not either)).

Now, making a system that won't magically implode into insecurity because almost no one validates it anymore takes more work than this, but it's unclear that anyone knows at all how to solve this if validation is made expensive. None of the things ethereum people have discussed there would be particularly difficult to implement in Bitcoin— and many of the ideas like prefixing scripts with an operation count and weighing fees against them were proposed for Bitcoin long before ethereum existed.

All that said, Turing completeness doesn't actually increase the expressive power of cryptocurrency much— the examples usually given for ethereum can also be accomplished with finite state machines. The primary advantage an actually turing complete machine has appears to be that some problems can have much smaller encodings for them, the primary disadvantage is that someone can give you a script and determining exactly what it can do (e.g. if you'd like to agree to it as a contract) can potentially be much harder than a reduced computation model.
2487  Bitcoin / Development & Technical Discussion / Re: Message Encryption with bitcoin address. on: July 12, 2014, 05:06:39 AM
   encrypted_message = (clear-text message) XOR (symmetric key)
Danger! Will Robinson, Danger!

Say someone were to deploy the simple scheme you described just as you described it—  they they used it to secure queries sent to a simple web server.

I capture a message sent to them that I want to intercept, and I take the nonce out of it— but replace it with a message of my own (perhaps all zeros).

The server responds to me "INVALID REQUEST:  20iE⊥∩θ⊂∏↔θ⊂dlkvc25πδjdk⊕κ×σκk8κσ×3th7hξκδι2λσ∃ΚΣ‡"  ... now I xor with my 'message' and have the session keystream and can decode the message I intercepted.

Even if there isn't some handy error response I can invoke, I can still freely flip bits. "Wait, but if its in a transaction, thats signed right?"— no, I can rebind your message without knowing its content either with or without bitflips into another transaction but reuse the ephemeral key and exploit whatever interesting behavior I can squeeze out of that.

This kind of cryptosystem is often trivially insecure without strong authentication tied strongly to the ephemeral key.

Behold the kind of fun that happens when you don't get every detail just right (start reading at the second message): http://sourceforge.net/p/bitcoin/mailman/bitcoin-development/thread/5325B5BC.3030501@gmx.de/  (A cryptographic disaster (near miss) which started with a thread on this forum very much like this one, but one where more experienced folks happened to not notice it…)
2488  Bitcoin / Development & Technical Discussion / Re: BitCoin Adopting Unique Alt-Coin Features on: July 12, 2014, 04:28:16 AM
I think a lot of people think Bitcoin won't ever change, or adapt, or get some different features.
Some people have said this— but the history doesn't really support it. With how fast (and, often, recklessly) various players have moved in the larger economy technical development may seem slow by comparison… but while a stream does not carve a canyon over night, it does so all the same. Someone looking to create a speculative asset boom by copying a bit of other people's code and hopping out weeks later before it busts might honestly say that within the time frames they care about Bitcoin won't adapt... But some are in this for the much longer term possibilities.
2489  Bitcoin / Development & Technical Discussion / Re: NSA and ECC on: July 11, 2014, 11:28:20 PM
I can't help but notice that not one of the safecurves.cr.yp.to families are implemented by openssl:
All of the curves most preferred on there are ones that DJB made. Some of them have no implementation in software, only the curve25519/ed25519 stuff has any non-trivial deployment at all.

While the analysis there is generally good and thoughtful, I believe that the page crosses the line into being a bit ... uh .. marketing motivated. This has been discussed before several times— e.g. it cites several points which are irrelevant to us (e.g. the elegator encoding), are 'one time costs' completeness making a correct implementation take some more work, and other points which are compensated by increased security of secp256k1 in other respects.  (E.g. the efficient endomorphism for secp256k1 that yields very fast verification for our curve reduces security by a couple bits, which is pretty comparable to the cofactor of 8 in ed25519 that reduces their security by a couple bits (actually slightly more).

Whats implemented in openssl has more or less nothing to do with what bitcoin uses, and getting rid of openssl wouldn't change it.

2490  Bitcoin / Development & Technical Discussion / Re: BitCoin Adopting Unique Alt-Coin Features on: July 11, 2014, 05:15:22 PM
I think Ethereum is quite close to that feat, although they still haven't launched.
Hm. Adopting script changes is _trivial_— in fact we've done it before. From a technical perspective P2SH replaced the script system with a copy of itself nested inside a hash.

Really the stuff that is not integrable is things that make economic changes (e.g. freicoin), have very negative scaling impact, or involve very different security assumptions (e.g. trusting a centeralized party).  The biggest barrier so far as been the lack of actual innovation or at least it not being clear if the changes that they make are useful and not totally broken.
2491  Bitcoin / Development & Technical Discussion / Re: Blockchain Keyframing on: July 11, 2014, 02:11:23 PM
There aren't any current alerts for fraud.  The original idea in the paper was a bit immature— the problem is that a DOS attacker could cheaply force SPV nodes into the very expensive operation of fetching the whole blocks.

Subsequently we've come up with some more refined versions of the idea where, with a few additions to the data blocks contain we'd be able to extract compact proofs that a block is invalid, preventing that DOS attack, but they've not been implemented yet.
2492  Bitcoin / Development & Technical Discussion / Re: Blockchain Keyframing on: July 11, 2014, 01:25:45 PM
My objective here was to make the blockchain being used smaller for devices such as smart phones etc rather than relying on a trusted node, e.g. many mobile wallet providers give a view of the blockchain to the wallet client from a central sever that stores an entire copy of the blockchain, from what I understand.
There are hosted wallets, but the true mobile wallets like "android wallet" use SPV mode see section 8 of the bitcoin whitepaper.  SPV wallets do not trust the nodes they query except for some denial of service/privacy issues, and have basically no storage requirements and very low bandwidth (far below your keyframes), and they do not use a centralized server (they use the bitcoin p2p network). SPV nodes security involves additional assumptions about miner honesty.

What you're describing is a pretty radical change in the security model. In Bitcoin we do not trust the data we are given at all, we verify it. The 'keyframes' you'd send there would need to be trusted, if one bogusly claimed to reassign ownership of a bunch of coin— no one relying on that data could tell (at least not mechanically). Assuming they are mined it would basically be the SPV security assumption set, but less efficient for a mobile wallet (since they'd have to transfer a full 'keyframe').

It's perfectly reasonable to relax the security assumptions for some applications, mobile wallets— for example— but thats why we have SPV mode already.
2493  Bitcoin / Development & Technical Discussion / Re: Random generation for Bitcoin on: July 10, 2014, 12:53:42 PM
I don't see how making it more efficient for everyone would change anything at all.
What it does is removes a differential advantage you'd get from using more complex miner designs that queue and pipeline work better and have more communications bandwidth to minimize latency.
2494  Bitcoin / Development & Technical Discussion / Re: A bitcoin client with no PRNG. Possible? on: July 09, 2014, 04:33:44 PM
There is a reason— just that it can hide the faults when your other things failed.  Sort of if you assume everything is right, then no— it's no harm. But of course, if you could really get away with assuming that everything is right you would have not worried with additional entropy sources to begin with.  Another reason is that it makes audit and review harder, e.g. if you can test it and confirm that it always gives the same keys for the same deck then thats a useful property to facilitate testing.

Not a reason to not do it, but it's just something to keep in mind.
2495  Bitcoin / Bitcoin Discussion / Re: Bitcoin Is Having Its Moment But There Are Better Sustainable Currencies on: July 09, 2014, 04:20:11 PM
Proof of State coin is not a decentralized currency.
This sentence is wrong in so many ways.
It's insufficiently specific, but existing examples which require developer controlled block signing or closed source software don't really pass a sanity check as decentralized tools— though they're often marketed as such.

You may find this enlightening: https://download.wpsoftware.net/bitcoin/pos.pdf
2496  Bitcoin / Development & Technical Discussion / Re: A bitcoin client with no PRNG. Possible? on: July 09, 2014, 03:41:30 PM
I've generally found it to be pretty easy to shuffle poorly... I'd rather throw hex dice 128 times and compress 2:1 with sha256. Even a little excess entropy plus a cryptographically hard compression function should overcome all small biases, and the order dependence in a shuffle much harder to notice or test for. The excess input also gives you enough data to perform some tests that thwart user misuse (you rolled 0 100 times in a row? really?) without compromising security.
2497  Bitcoin / Development & Technical Discussion / Re: Why did this transaction confirm? on: July 08, 2014, 07:12:56 PM
Quote
They are technically spendable but they cost more in marginal fees than they are worth...
No. It is possible to collect dust-outputs with free-transactions.
Look here https://blockchain.info/address/155M7TvBRww6WFdtGQgTYUH8DuLheNafCf
Yes, but they still cost more in marginal fees, instead those transactions used priority to get them through which could have instead been used to make valid transactions... and the loss of priority will me that person must pay more fees in the future.
2498  Bitcoin / Development & Technical Discussion / Re: Why did this transaction confirm? on: July 08, 2014, 07:07:14 PM
I see several of these outputs are already spent. How are they supposed to be unspendable?
They are technically spendable but they cost more in marginal fees than they are worth... It's altruistic to redeem them but not rational to do so otherwise.
2499  Bitcoin / Development & Technical Discussion / Re: Random generation for Bitcoin on: July 08, 2014, 07:05:52 PM
Ah! That explains it. Several timestamps or modifications may have to be tried if no solution was found in the 232 combinations.
Several indeed: On average the network tries 16,818,461,371 modifications (each allowing 2^32 hash attempts) per block solved these days.
2500  Bitcoin / Development & Technical Discussion / Re: Why did this transaction confirm? on: July 08, 2014, 06:55:36 PM
Some node ( may be not bcpool.io ) keeped it in its memory pool and relayed today
bcpool.io got it, checked and included into a block.
Normal nodes do not relay old transactions... but, indeed, could have just been them not updated after all this time.

The one I searched for got not hits, good sleuthing. Smiley
Pages: « 1 ... 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 124 [125] 126 127 128 129 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 ... 288 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!