Bitcoin Forum
May 11, 2024, 02:17:39 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 [21]
401  Bitcoin / Development & Technical Discussion / Re: Trojan Time Machine Chain on: August 03, 2010, 03:12:29 PM
Looks like "best block chain" does not simply mean "longest chain of blocks" but "highest sum of difficulty".
check main.cpp CBlock::AddToBlockIndex
Code:
pindexNew->bnChainWork = (pindexNew->pprev ? pindexNew->pprev->bnChainWork : 0) + pindexNew->GetBlockWork()
...
if (pindexNew->bnChainWork > bnBestChainWork)
...
now, what does GetBlockWork() do?
main.h
Code:
    CBigNum GetBlockWork() const
    {
        return (CBigNum(1)<<256) / (CBigNum().SetCompact(nBits)+1);
    }
So a single block of the real chain at 200 difficulty is "worth" 200 blocks of your 1.0 chain...
402  Bitcoin / Development & Technical Discussion / Re: Trojan Time Machine Chain on: August 03, 2010, 06:23:47 AM
Won't work.
A block can't have a timestamp earlier than the genesis block.
The hash of the genesis block is hardcoded, so you can't replace that.
Mainline will reject any block more than 2 hours into the future at the time it receives it.
So if your block timestamps are spaced exactly 600 sec apart to stay at 1.0 difficulty, you'll be "too far into the future" long before your block chain is anywhere near as long as the real one.
403  Bitcoin / Development & Technical Discussion / Re: bitcoind without wxWidgets on: July 26, 2010, 06:28:09 PM

g++ -O2 -Wno-invalid-offsetof -Wformat -g -D__WXDEBUG__ -D__WXGTK__ -DNOPCH -I"/usr/include" -I"/usr/local/include/wx-2.9" -I"/usr/local/lib/wx/include/gtk2-unicode-debug-static-2.9" -o bitcoind -L"/usr/lib" -L"/usr/local/lib" obj/nogui/util.o obj/nogui/script.o obj/nogui/db.o obj/nogui/net.o obj/nogui/irc.o obj/nogui/main.o obj/nogui/rpc.o obj/nogui/init.o obj/sha.o -Wl,-Bstatic -l boost_system -l boost_filesystem -l boost_program_options -l boost_thread -l db_cxx -l crypto -Wl,-Bdynamic -l gthread-2.0
/usr/bin/ld: cannot find -lboost_thread
collect2: ld returned 1 exit status
make: *** [bitcoind] Error 1


It looks like libboostthread is missing. But:

~/dev/bitcoin/trunk$ locate libboost_thread
/usr/local/lib/libboost_thread.so
/usr/local/lib/libboost_thread.so.1.40.0

notice the -l boost_thread comes after a -Bstatic
it's trying to link libboost_thread statically and can't find libboost_thread.a
404  Bitcoin / Bitcoin Discussion / Re: Nenolod, the guy that wants to prove Bitcoin doesn't work. on: July 25, 2010, 01:39:18 AM
Sorry for the noob question, but how is the 1700 Mh/s number calculated or gathered? I saw my local node's speed in the GUI. Didn't notice a network speed.
Relatively easy, using block timestamp + difficulty extracted from blocks.dat
for example, take the interval from block #68832 to #68976 (= 144 blocks = nominal 24h time period)
68832 was generated 2010/07/18 07:19
68976 was generated 2010/07/19 02:43
difference is 69862 sec
69862 sec / 144 blocks = ~485 sec/block
at a difficulty of 181.5, on average, a block gets found after roughly 2**32 * 181.5 tries
so ~ 780000M tries/block / 485 sec/block = ~ 1607M tries/sec
these numbers are of course influenced by the "randomness" of finding blocks, but they are a lot better than blind guesses.
If you are statistically inclined you can also calculate standard margin of error, use overlapping ranges to smooth the curve, ...

The blocks per hour try to remain steady, the difficulty just goes down. Basically he's saying "I made it hard for everyone because my machine(s) were winning every time", now that the machines are shut off, "you all should be winning the blocks everytime".

So the rate remains constant, but everyone should start generating more blocks (perhaps a few per day instead of 1 every 2 weeks like before).
The network adjusts difficulty every 2016 blocks to get to 6 blocks/hour average, basically factor = (14 * 24 * 60 * 60) / (actual # of seconds taken for the last 2016 blocks); factor = max(0.25, factor);  factor = min(4, factor); new_difficulty = old_diffculty * factor
And, as I said, the total hash rate after he supposedly stopped his nodes went UP.
If things continue like this, on the next iteration we'll end up with a difficulty increase to ~ 230.
Which means then at 1000khash/s you'll generate a block every ~11d10h on average, which comes out to ~ 0.1825BTC/h
405  Bitcoin / Development & Technical Discussion / Re: TEST network, for experimental development and hacking on: July 24, 2010, 11:50:26 PM
Generated blocks 992 - 2016 in 2h15 min Grin
Sent 3 largish transactions to the test faucet.
406  Bitcoin / Bitcoin Discussion / Re: Nenolod, the guy that wants to prove Bitcoin doesn't work. on: July 24, 2010, 11:24:00 PM
The numbers don't add up.
Right before /. the whole network was only averaging about 200 Mhash/s
Rising to approx. 1200 Mh/s in the 24h after /.
Then a pretty steady increase to currently about 1700 Mh/s over the following 10 days.
No discernible dips, not at switch to 181.5, nowhere else either.
Okay, the current numbers are big enough that a hundred slowish machines or so won't really show up, but then they also won't make much of a difference.
So I guess it was a cluster of TI-84s or simply making impressive-sounding shit up on the fly.
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 [21]
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!