Bitcoin Forum
May 05, 2024, 10:09:37 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 ... 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 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 ... 800 »
1761  Bitcoin / Bitcoin Discussion / Re: Password strength on: March 10, 2014, 09:42:42 PM
Just a friendly warning that comic is bullshit. Wink You would need at least 8 random words to have about the same security as 12+ random characters. The entropy maybe higher

The comic didn't say 12 random characters.  Most people don't use 12 random characters for their password.  So was the problem the example in the comic or your understanding of the example in the comic?

Quote
but every serious hacker uses rainbow tables, dictionaries or even phrases from common digitalized books...
which is useful against a set of random words how?
1762  Economy / Economics / Re: Bitcoin Units Proposal on: March 10, 2014, 09:35:09 PM
I will never buy gold because I can not afford a full bar.

Forget a full bar, I will never buy because I can't afford a full ton.  Everyone knows a full bar is just a fractional ton and who buys a fraction of anything.
1763  Bitcoin / Bitcoin Discussion / Re: How exactly would a 51% attack work? on: March 10, 2014, 09:00:41 PM
I may not know much about Bitcoin but I know a lot about computers. There is no way multiple instances of the same hash algorithm running on independent computers can avoid executing the same code on the same values. It's extremely redundant.

Once again making false statements as fact.  Why not say "I believe it is redundant" or "I can't see a scenario where miners unknown to each other don't duplicate work accidentally?".  You state you don't know much about Bitcoin but you feel confident about making absolute statements of fact about something you don't know much about?

The different computers (1, 2, a trillion it doesn't matter) use different inputs and thus (barring some isolated implementation errors) never attempt work which has already been attempted.  Miners aren't hashing some random value, they are hashing the blockheader and Satoshi designed it so there would be no duplication of work.

https://en.bitcoin.it/wiki/Block_hashing_algorithm

Even if everything else is the same in a block, the coinbase tx for each miner will be unique and thus the hash for that tx will be unique and thus the merkle tree will be unique and thus the merkle root hash will be unique and thus the blockheader will be unique.
1764  Bitcoin / Bitcoin Discussion / Re: How to steal Satoshi's stash? on: March 10, 2014, 08:47:16 PM
Brute forcing a 256 bit ECDSA key (has 128 bit security) is infeasible

Sorry, why is it only 128bit security?

The fastest known algorithms to derive a private ECC key from the public key are O ( 2^(n/2) ) where n is key length.  Now if the attacker ignores this faster solution and simply tried random (or sequential) private keys until a match was found then it would take much longer (2^256 not 2^128) however security is based on the fastest possible solution.

It is important to point out that the fastest algorithms require the PubKey to be known.  If the PubKey is not known then the only method would be an exhaustive attack on the private key and computing the PubKey.  This is another good reason to not reuse addresses (and thus the pubkey remains unknown).

Key size doesn't necessarily equal security.

All of these key/digest sizes have 128 bit security
128 bit AES (symmetric encryption)
128 bit SHA-2 (hashing algorithm)
256 bit ECC (public key cryptography - elliptical curve)
3,072 bit RSA (public key cryptography - Integer factorization)

Generally hashing algorithms and symmetric key systems have a security equal to their key length (unless they have vulnerabilities or weaknesses).  However due to the nature of public key systems (the public key has a mathematical relationship to the private key) this not true for public key systems.  The key size will always be larger than the effective security (or key strength).  How much larger depends on how difficult it is to derive the private key from the public key.  If you look at RSA and ECC you can see that to achieve the same security RSA requires much larger keys (and signatures).  This makes ECC based systems more useful in decentralized systems like Bitcoin.
1765  Bitcoin / Bitcoin Discussion / Re: How to steal Satoshi's stash? on: March 10, 2014, 08:16:59 PM
Flop flop flop flop flops

I am not going to waste my time if you can't even realize that flops aren't ever used in brute forcing private keys.
1766  Bitcoin / Development & Technical Discussion / Re: What are checkpoints in bitcoin code? on: March 10, 2014, 08:12:42 PM
But it would have been solved simply by bootstrapping the blockchain along with the software downgrade. If it needs software update, you allways have the option to force block reload, maybe from some hardcoded checkpoint.

That is my point and until 100% of nodes upgrade their software they would be vulnerable to an isolation attack.  It creates a more fragile and exploitable system than users wallets simply being able to switch to the longest chain with no action required on the part of the user.
1767  Bitcoin / Bitcoin Discussion / Re: How to steal Satoshi's stash? on: March 10, 2014, 07:39:23 PM
I think people just want to know exactly how infeasible it really is...  It can help confidence in bitcoin.

Someone with a lot of bitcoins could do a public contest.  Brute forcing a 256 bit ECDSA key (has 128 bit security) is infeasible so nobody would attempt it (well not anyone with any real power) however one could make the problem simpler.

For example move 1,000 BTC to an address and provide publicly half of the private key.  This would mean someone could brute force the key on average in 2^64 attempts.  The blockchain will be proof of if someone accomplished it or not.  Even that would be an incredibly difficult problem, but it is feasible (back to the whole infeasible vs improbable).

If/when someone can steal those coins just keep in mind that brute forcing a full key would be 2^64 = 18,446,744,073,709,600,000 x harder/longer.
1768  Bitcoin / Bitcoin Discussion / Re: How exactly would a 51% attack work? on: March 10, 2014, 07:26:14 PM
An attacker would only need 51% of the total network hash rate if all miners were working cooperatively to solve the next block. Not just working in pools but collectively focused on executing the exact same process. But because miners are competing with each other, running independent and probably redundant processes, an attacker only needs to be faster than the fastest mining node on the network, either using a single fast node or a pool of cooperating nodes with a combined speed that is faster than the fastest miner on the network.

That is 100% incorrect.  In the future how about phrasing things you don't know as a question.  There are no redundant attempts on each block (baring the implementation issue at a specific pool where the pool incorrectly issues the same work to more than one worker).
1769  Bitcoin / Bitcoin Discussion / Re: How to steal Satoshi's stash? on: March 10, 2014, 07:22:24 PM
Thanks for the info on that, but then how to avoid address resuse?  If i have 10 coins and I send you 2 coins, what I do with the 8 left in my wallet?  Are you saying I have to immediately move them to another address? 

Your wallet already does that.  Bitcoin doesn't work on the concept of balances it works on the concept of creating and destroying outputs.

So if you have an output worth 10 BTC and you want to send me two your client creates a tx which destroys the 10 BTC output and creates two new outputs valued at 2 BTC (to me) and 8 BTC (to a new address in your wallet).

while we're on the topic of "can wallets be bruteforce cracked"...

when we talk about supercomputer speed (petaflops, etc)  (floating point operations) -- how many
floating point operations actually go into trying 1 private key ? 

Zero.  We are interested in integer math when brute forcing private keys.  Flops refers to floating point math.  There is no conversion factor which would work for all systems.  Generally speaking computer science doesn't look at the individual implementations to determine if something is infeasible.

As an example say a given computer would require 1000 steps to make one attempt to brute force a key and it will take more energy than 20 of our suns and 10 billion years.  Now lets say you could reduce that to a single step.  Ok now it only takes 1 billion years and more energy than 2 of our suns.  Either way it is infeasible.

Any classical computing problem which is more complex then O (2^128) is generally viewed as infeasible.  Some people use the word improbable but infeasible is a stronger word.  It is improbable you will win the lottery however it is infeasible that you will brute force a 128 bit symmetric key (simply requires material and energy on a scale the human race is utterly incapable of).  In comparison to the lottery it would be like you win seven lotteries in a row by purchasing just a single ticket.
1770  Bitcoin / Development & Technical Discussion / Re: What are checkpoints in bitcoin code? on: March 10, 2014, 07:07:37 PM
The main issue is that in the event of a flaw which causes the network to fork you have now hard coded that fork.

For example if the db bug issue which caused a fork in the network, miners on the longer fork modified their blockchains to support the shorter fork.  So some intervention was required but for all 100,000+ other nodes they simply saw a re-org once the the shorter fork became the longer one.  If they used ratcheting checkpoints they would have been permanently locked onto a minority fork and attackers could have exploited that.

There may be some merit in using a ratcheting checkpoint system however it would have to be set much much deeper than 6 blocks.  Even 144 blocks (one day) may be insufficient.  Something like 1,024 blocks (~1 week) is more the range that would be conservative enough.

Also understand a ratcheing checkpoint system only helps existing nodes.  Bootstraping nodes would be remain vulnerable as they haven't seen the longest chain yet.
1771  Bitcoin / Bitcoin Discussion / Re: How to steal Satoshi's stash? on: March 10, 2014, 06:47:44 PM
I thought the public keys were the same as the bitcoin address?

Addresses are the Public Key Hash (PubKeyHash) along with with version and checksum information encoded in Base58.  When you send funds to a user you are sending it to their PubKeyHash (which your client reverses from the address you provide).  This is why one reason why address reuse is discouraged.  Once funds are spent from an address the actual PubKey is known (it included in the input so other nodes can validate the signature).

1772  Bitcoin / Bitcoin Discussion / Re: How to steal Satoshi's stash? on: March 10, 2014, 06:44:18 PM
BUT THAT'S NOT THE POINT! My point is if you consider only classical computing in the last 30 years we've moved from KiloFlops to PentaFlops  ..  it is easy to assume that in the next few decades, we can easly achieve 10^30 / 10^40

Which is still essentially nothing.  For classical computing you move the timescale from quadrillions of years down to only millions of years.  Congratulations.  

Quote
(we've already gone past the point of cracking 2^128 or 128bits in a few seconds)
No we haven't, no key with 128 bit strength has been brute forced. You can't simply compare key size.  A 256 bit ECC key has equivalent strength to a 3,072 bit RSA key and a 128 bit symmetric key/hash.  You may be talking about some individual algorithms being cryptographically broken, it is hard to tell because you are all over the place.  I already pointed out that is possible but it has nothing to do with

Quote
In the 80/90s people (like you) were claiming 56 bit encryption was impossible to crack, and you know what, it takes like 3s and less to break with our current supercomputers!

No people like me would have been warning that 56 bits was insufficient due to the fact that it was within 1000x of what current computing power was capable of.  That is a far cry from saying 128 bit key strength is secure because it uses energy on a scale that would make brute infeasible.   If we pretend the entire Bitcoin network (30 PH/s) "could" brute force symmetric keys at the same speed instead it would be able to brute force an 80 bit symmetric key in about one year.  If it was 1000x more powerful it could brute force a 96 bit symmetric key in about a century.  If it was a million times powerful it would still take on average a millennium to brute force a 128 bit symmetric key.  To do it in a year would require a system which is a billion times more powerful.

Quote
Quote
None of those (except QC) would do anything more than switching from a teaspoon to a bucket when trying to empty an ocean.  
Wrong as proven above.

Proven doesn't mean what you think it means.  Proven doesn't mean spouting out false statements, gibberish, and strawmen.

Quote
[regarding 40,000 qubit computer] it will happen in the next decade or the one folowing, considering we've moved from 4 Qubits to 128 in a very short laps of time heck Dwave just released a 512 Qbits Processor and they claim to have a 1000 Qubits in their lab ready to roll

Dwave's system is not capable of implementing Shor's algorithm.  It uses a process called quantum annealing.  Quantum Computing isn't some super duper magical bullet which solves all problems all the time.   Quantum annealing is a pretty cool concept for solving certain types of problems like pathfinding, simulating organic processes, network optimization, etc.   It is completely useless for the purposes of breaking cryptographic keys.

On the progress of building a true general purpose quantum computer capable of implementing shor's algorithm the progress has been very slow.  15 was factored in 2001 using Shor's algorithm and a 4 qubits QC.  By 2012 that had progressed to factoring 21 in using 5 qubits.  One estimate for the total physical qubits (including circuits for error control and correction) necessary for breaking 256 bit ECC is on the order of 40,000 qubits.  We went from 4 to 5 in the space of a decade and the "finish line" is 40,000 qubits.  That could be doubled by switching to a 512 bit curve.  Quantum Decoherence is a bitch.  

The problem becomes increasingly difficult as the size of the computer grows.  It may not be possible to accomplish that in our lifetimes.  Wake me up when someone factors 32 bit number using quantum computing.  If QC becomes a credible threat Bitcoin can evolve to addresses which use post-quantum cryptography.
1773  Bitcoin / Bitcoin Discussion / Re: Can we please stop saying that it is improbable to generate an inuse key? on: March 10, 2014, 05:39:13 PM
Facts and maths are great, but you never know do you!

That's why I've had my vanitygen running on the satoshi wallets since 2011. 
Lol @ vanitygen. I've written a much optimized version. With 30k addresses, it generates AND compares with 33 million keys per second on the CPU. Vanitygen is much slower.

Which for the purpose of this dubious scenario is like the guy with a bucket emptying the ocean laughing at the guy with a teaspoon trying to do the same thing. Smiley
1774  Bitcoin / Bitcoin Discussion / Re: Can we please stop saying that it is improbable to generate an inuse key? on: March 10, 2014, 05:38:16 PM
In time there will be collisions because the probability is not 0. However, not only do you have to match an in-use key, that key also has to carry a balance.

In depends on what you mean by "time".  If given an infinite amount of computing power, an infinite amount of storage space and an infinite amount of time.  However under more realistic constrainsts you may never see a 160 bit collision before the heat death of the universe.  So saying "there will be collisions" especially the plural is dubious.  There may eventually be a collision but even that isn't guaranteed.
1775  Bitcoin / Bitcoin Discussion / Re: Can we please stop saying that it is improbable to generate an inuse key? on: March 10, 2014, 05:34:59 PM
I personally have over 100M private keys generated. But even 100 addresses per person is an understatement, the spec recommends never using an address twice, especially since once you sign a tx, it becomes that much easier for a QC to crack your private key.

The later is only assuming a QC with sufficient qubits (~40,000) to implementing Shor's algorithm against 256 bit keys is ever possible.  The largest quantum computer which has implemented Shor's algorithm is 5 qubits.  It "cracked" the number 21 into the prime factors 7 & 3 (5 bit encryption if you want to call it that) after a mere 9 months.

Still you misunderstand that scope.   It doesn't matter how many addresses have been used in the past.  To steal funds you would need to produce a collision with a funded address.

Given a max of 2.1 quadrillion satoshis there simply can never be more than 2.1 quadrillion funded addresses.  Even if you assume 2.1 quadrillion funded addresses (dubious but good for an absolute upper bound) that puts the possibility of a preimage attack at 2^160 / ~2^50 = 2^110 which is many magnitudes beyond what is possible with brute force.

Another way to look at it is the Bitcoin network has ~30 PH/s.  Let assume all of that could be used to brute force keys instead.  Now lets also assume that it is as easy to compute and check a pubkeyhash (it isn't).  There are roughly 1 million funded PubKeyHashes.  If the entire network attempted to brute force them it would take on average 823,233 years to break a single pubkeyhash and the payoff would be a random amount of bitcoins but the average reward would be ~2.1 BTC.   The chance of a collision in a century would be 0.0121%. 

1776  Bitcoin / Bitcoin Discussion / Re: Can we please stop saying that it is improbable to generate an inuse key? on: March 10, 2014, 04:52:33 PM
No those of us that understand math won't keep saying that because it is accurate.  Of course is you are worried about flawed PRNG then use a true hardware random number generator (quantum effect or avalanche noise).

There is no known bias to the distribution of ECDSA public keys.  Even if some bias did exist 2^256 is a large space it would take a rather massive bias in distribution in order for there to even be a 1% chance of collision in the thousand years.
1777  Bitcoin / Bitcoin Discussion / Re: Faster transactions? on: March 10, 2014, 04:46:12 PM
OK, so you are saying that an answer to my question 1) is in fact NO - No, unless there are significant changes in the Bitcoin itself.

Correct.  The rules for the "main chain" would need to be modified to enforce using blocks from the "secondary chain" for the purposes of validation.   Still even if those changes were possible you don't really gain anything from just using a smaller block interval on the main chain.  It is a lot of complexity to just reinvent a network with a smaller block interval.
1778  Bitcoin / Bitcoin Discussion / Re: Faster transactions? on: March 10, 2014, 04:43:43 PM
In other words, there had to be a chain of transactions that guaranteed that that address will be funded, otherwise that transaction would not be accepted by nodes. Is this right? Thank you!

Using the term "address funded" is still incorrect but yes.  However understand that a 0-confirm tx can be double spent (in theory it is harder to accomplish than most people imagine) and a 0-conifrm tx which relies on an unconfirmed tx for its input is doubly risky.  If the parent tx is double spent, fails to confirm (not included in a block due to insufficient fees), or has its tx id mutated then the child tx will never confirm (it now has an invalid input).
1779  Bitcoin / Bitcoin Discussion / Re: Faster transactions? on: March 10, 2014, 04:40:12 PM
I am not really talking about litecoin, any other altcoin, new altcoin etc. Just Bitcoin with 2 different speed blockchains, the original one, very secure, "as is today"; and the faster one, for smaller transactions (up to 500 or 1000 USD) that would get 1 confirmation every 1 minute on average.

That would not provide any security.  Just because the tx is confirmed in the "second blockchain" doesn't mean the attacker can't still double spend it in the "main blockchain".  To enforce such requirement would mean a radical change of the Bitcoin protocol, and a change like this is simply not going to happen.
1780  Bitcoin / Bitcoin Discussion / Re: Faster transactions? on: March 10, 2014, 04:37:39 PM
Quote
From what I learned recently, it seems that to create an unconfirmed transaction out of nothing is possible

This is a false statement.  Miners are not the only security mechanism in the Bitcoin network.  All nodes (every single one of the 100,000+) on the network independently validate transactions before they include them in the memory pool or relay them.

A transaction spending "nothing" would instantly be dropped by all peers on the network.  You would never even see it in your client.  It is very likely that your node wouldn't even see the tx to drop it, as every node between you and the sender dropped it and thus never relayed it on.

As for changing Bitcoin target interval.  In theory any change to Bitcoin is possible, as a practical matter it will never happen as it requires a consensus and a hard fork.  It is unknown if a shorter interval will be optimal as the network, transactions volume, and block sizes gets larger.  There is no free lunch.  Shorter block interval means higher orphan rates.  That means less effective security and the orphan cost rises.  With a higher orphan cost miners will be reluctant to make blocks larger, tx fees will rise, and lower paying or free txs will wait much longer to be included in a block.




Thanks DAT! That is very interesting that you say my initial claim is false. In my other topic that I opened some days ago, I had a reply that stated

Quote
it's technically possible to create orders to send BTC from address that is empty

of course that this is just an opinion of an anonymous gentleman, so nothing I could rely on, but since then I have been a witness of ASICMINER's dividend being paid from an empty address and it took like 24+ hours for a first confirmation for that transaction to appear and that was because the address was empty and it took a while until it was funded. This tells me that it was indeed possible to create a transaction spending BTC from address with not enough balance.

Is this not the case that you are referring to?



Bitcoin doesn't work on the concept of balances.  All transactions in their input reference a specific unique unspent output (by tx id and index) on the network.  That output either exists or it doesn't.  If it doesn't the transaction is simply invalid.
Pages: « 1 ... 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 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 ... 800 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!