Bitcoin Forum
May 15, 2024, 06:53:22 PM *
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 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 ... 87 »
361  Bitcoin / Bitcoin Discussion / Re: Bitcoin Losses on: April 14, 2015, 10:50:17 PM

So far, no losses.  I haven't been hacked, I haven't been scammed, and I've gambled only at very short odds against people making really stupid bets - I have won every time so far. 

That said, I am at least a little bit crazy (Diagnosed as "monopolar depressive and incompletely socialized", for those who care about such things), and while this helps me not get scammed and hacked, it also helps me lose out on a lot of things that could be good. 

Part of not being scammed is seeing the worst possible motivations for pretty much every communication people make.  My depressive mind sort of assumes people with an investment opportunity are almost always scamming.  As a result I miss out on things that turn out to be good investments as well as things that turn out to be scams.  F'rexample I was one of the first ten people who ever heard about Bitcoin, even reviewed the code before it launched, could have CPU mined thousands and thousands back in the day, and I didn't have a thing to do with it until four years later.  D'oh!

And part of not being hacked is not keeping bitcoins on anything that's electronic and hooked up to the Internet, not running browser scripts (which breaks about half the sites out there), not using a mail client that has clickable links or automates calendar functionality or shows HTML mail, and not installing programs or browser extensions that aren't from one of my three or four trusted sources, even if they seem interesting and useful, on my networked machine.  So I also miss out on a fair amount of what's "normal and useful" by keeping my networked machine secure.
362  Bitcoin / Development & Technical Discussion / Are old-style transactions still accepted? on: April 14, 2015, 05:30:11 PM

Transactions made with current clients have outputs like

OP_DUP OP_HASH160 <pubkey hash> OP_EQUALVERIFY OP_CHECKSIG

where transactions made in the early blocks of the block chain have outputs like

<uncompressed-public-key> OP_CHECKSIG

And under the hood, these are treated the same way.  This is simply pushed onto the script interpreter stack when it's spent and then the spend script operates on the stack.

And the same spend script - namely

<signature> <pubkey>

works to spend either kind of output. 

Is there any problem with a transaction containing an old-style txOut if it were made today?  Would it be considered non-standard and not relayed? 
363  Other / Politics & Society / Re: Reddit’s science forum banned climate deniers. on: April 14, 2015, 05:03:42 PM

I am curious if you understand that the 20 years of no warming means the climate models and the alarmists were wrong.  You try to cover this up by saying "Oh, the heat isn't going into the air, but the sea."


20 years of no warming?  What the hell planet are you living on?  The ten hottest years on record (since we started keeping detailed records in 1880) have all occurred within the last 17 years! 

http://www.climatecentral.org/gallery/graphics/10-warmest-years-globally



They are 1998, 2002, 2003, 2005, 2006, 2007, 2009, 2010, 2013, and 2014. 

Yes, the temperature rise has not been as severe as people thought it would be in 2001.  Yes, it's because a lot of the heat they thought would be going into the atmosphere has been going into the ocean instead.  But the temperature rise is still happening, and the ocean temperature can't rise forever without affecting the rest of the world. 

Oh, and while we're at it, here's another nice statistic from the NOAA.  Hurricane damage is showing an interesting trend too. 



364  Bitcoin / Development & Technical Discussion / Re: listsinceblock on a dead-end fork? on: April 14, 2015, 01:27:26 AM
The expected behavior is that if there are no further blocks in the fork, listsinceblock will return no data.  As far as it's concerned the effect is the same as the very next block just taking a longer-than-expected time to arrive. 
365  Bitcoin / Development & Technical Discussion / Re: Kaspersky and INTERPOL Say Blockchain is Vulnerable on: April 14, 2015, 01:18:32 AM
Okay, as I understand it ...

What they're saying is that someone can insert arbitrary data into the block chain (which is true), and that malware authors could therefore use the block chain as a channel to communicate commands to their botnets or retrieve information from them.  The botnet operator could make a transaction at any time with any txOut anywhere inserting arbitrary commands into the data after an OP_RETURN, and the botnet would act on those commands, possibly executing arbitrary command lines on the targeted machines depending on whether the bot has gotten that ability yet, or possibly even downloading and running new executable code encoded in block chain transactions.

Because the targeted machines are downloading the block chain anyway because the operators are running bitcoin nodes, this means no traceable additional communications channels are needed.  Because the block chain is from-everywhere-to-everywhere, it's very hard to trace the commands to their source, even if the channel is noticed.  

A botnetted computer could send a tx to the Bitcoin network moving 0BTC (yes, a valid transaction even though no BTC actually move) to a random address picked off the block chain, with data (such as an encrypted, stolen password or keys to a wallet) attached after an OP_RETURN, and the botnet operator, seeing the tx, would be able to retrieve the data from the block chain without being traceable, because thousands of people are downloading every block anyway.

So, yes, a somewhat clever hack and a way to use the block chain for evil.  But it is only applicable to machines that have already got malware installed on them by some other means and only applicable to machines that are downloading the block chain.  

To be honest, if you've got malware installed on the same machine you have a live bitcoin wallet on, you're in deeply troubled waters anyway.
366  Economy / Speculation / Hmmm. Something interesting happened last night on: April 13, 2015, 09:43:03 PM
Somebody dumped a shitload of coins on the market last night....  Anybody care to speculate about whether it means something?  

http://bitcoincharts.com/charts/bitstampUSD#rg1zczsg2015-04-13zeg2015-04-14ztgSzm1g10zm2g25zv
367  Other / Politics & Society / Re: Reddit’s science forum banned climate deniers. on: April 13, 2015, 09:11:34 PM

While we're on the topic of topical youtube links, try this one.


https://www.youtube.com/watch?v=XhExwgiSxt8
368  Other / Politics & Society / Re: Obama wants you to know about aliens!!! - Men In Black Russian Documentary on: April 13, 2015, 09:01:01 PM
thw universe is infinite we cant be alone  Huh

"infinite" may be an overstatement.  And it may not.  But anyway, it's damned big.  And I don't think it's likely that a faster-than-light drive can exist, which means no matter what you've got it remains damned big. 

While I don't think we're probably alone in the universe, I'd put 99-to-1 odds on us being alone in this galaxy. 

And, honestly, if there are alien civilizations out there in our own galaxy, it's quite likely that they're over ten thousand light years distant, which is a bit far for casual visits. 
369  Other / Politics & Society / Re: Guess I know who I'm voting for in the next US Presidential election already... on: April 13, 2015, 08:49:38 PM
I think I would rather vote for Ru Paul than for Rand Paul. 
370  Other / Politics & Society / Re: ISIS impregnates 9-year-old girl on: April 13, 2015, 08:47:21 PM
Rape is the same crime, regardless of the religion of the perpetrators.  

I hope for these men that they are treated exactly as criminals of any religion, anywhere, would be treated.  

And if they must be killed for what they have done, I hope that they are killed without anger or malice - simply because the world is better without them, and not to satisfy anyone's outrage or thirst for vengeance.  

Killing in self-defense, in defense of others, or to make the world better is very sad, and a heavy burden.  But killing for rage or for vengeance or for greed also demeans the value of life.

371  Bitcoin / Bitcoin Discussion / Re: Bitcoin Core 0.10.0 has been released on: April 13, 2015, 06:45:36 PM
Thank you, that was it. 
372  Bitcoin / Bitcoin Discussion / Re: I am pretty confident we are the new wealthy elite, gentlemen. on: April 13, 2015, 06:42:31 PM
Cloud mining was never a good opportunity, and it was completely obvious that it wasn't.

If it were profitable for the renter to rent out equipment for mining, then the guy who owned the equipment would be passing up an opportunity to profit more by simply mining for himself.  In fact the only way for him to be making more money than he would make by NOT renting out the machinery is if the additional money comes directly out of the renters' pocket. 

Seriously guys.  Business 101.  Never deal with anyone unless you can see where his profit in the deal is coming from.  People who aren't stupid won't cut you in if they take a loss by doing so. 
373  Bitcoin / Bitcoin Discussion / Re: Bitcoin Core 0.10.0 has been released on: April 12, 2015, 07:16:11 PM
And now 42.53%.  This goes very slowly after the people who are actually paying attention have upgraded.  But it does go up, day after day. 

It'll probably get big kicks when the new version gets bundled into various linux distributions for auto-upgrade to people who have the package installed. 
374  Bitcoin / Bitcoin Discussion / Re: What if YOU could put 1 feature, change, whatever, into the Bitcoin protocol? on: April 12, 2015, 07:13:09 PM
Also faster blocks tend to result in more orphan blocks and centralized mining, because it makes the delay for crossing the network more significant relative to the block time.  Ten minutes is a decent compromise, actually.

And for TaPoS developments, you need block times AT LEAST that long to try to collect enough transactions in a block to get the variance down somewhat to something more consistent and less easy to manipulate. But I don't see Bitcoin going that direction.
375  Alternate cryptocurrencies / Altcoin Discussion / Re: Twelve-step program for making yet another stupid altcoin. on: April 12, 2015, 07:07:57 PM
All the dev pubkeys, etc, are just if you intend to host on github.  I could just as easily explain how to set up an FTP server or a torrent feed with remote access and signature checking.  How you host things doesn't matter. 

And as for the direct clone via word replacement being an absolute shitcoin?  Well, yes.  As I said, don't mistake yourself for a Dev unless you're willing to support it 8 hours a day for a long time and have new ideas to code and know how.  Also as I said, if you launch this seek-and-replace thing as an altcoin, it will fail.  :-)

But as long as we're playing "tell me true" -- the old game where you try to make each other laugh by saying obviously true things?  I've got one.  A benevolent diety would never require us to poop anything bigger than our heads.
376  Alternate cryptocurrencies / Altcoin Discussion / Re: Twelve-step program for making yet another stupid altcoin. on: April 10, 2015, 06:57:00 PM
Eh.  I was terse, and a lot of these could be expanded on I guess.  Or made a lot more specific anyway.  But, seriously, the renaming and name replacement gets you 95% of the way there.  Working out how to mine a genesis block held me up for about 20 minutes, but it's simple enough.

377  Alternate cryptocurrencies / Altcoin Discussion / Re: Twelve-step program for making yet another stupid altcoin. on: April 10, 2015, 05:54:32 PM
Anybody who knows the windows command line want to fill in with the equivalent commands?  I haven't been using MS systems for a long, long time and don't remember all that.
378  Alternate cryptocurrencies / Altcoin Discussion / Twelve-step program for making yet another stupid altcoin. on: April 10, 2015, 08:11:38 AM
I never really realized how ridiculously easy it is to make a clonecoin.  It's literally a matter of about a dozen command lines and editing one file to make a clonecoin that's completely pointless.  Here's how it goes (although the command lines may be different depending on your OS and/or command shell program).

1.  Download and unpack the source of the project you want to clone.  My example will use Bitcoin.

2.  Set up a build environment if you haven't already, and get the build dependencies.

3.  Go to the top directory of the source and type
 find . -type f -print0 | xargs -0 sed -i 's/bitcoin/newname/g' 

to change every instance of 'bitcoin' in the files below that directory to 'newname'.  Repeat, changing 'Bitcoin' and 'BitCoin' to 'Newname', 'BITCOIN' to 'NEWNAME', 'BTC' and 'btc' to 'NEW'.

4.  Because that affected all the files including makefiles that have other filenames in them, and a lot of the files are named 'bitcoin-somethingorother', you need to rename the files to match what's now in the makefile.  So you do that by typing
find . -type f -exec rename 's/bitcoin/newname/
to change all the filenames.

5.  
ls -r | grep -i 'bitcoin'
reveals that no other capitalization matters in the filenames.

6.
ls -r | grep -i 'btc'
will find three files in the 'resources' directory under 'qt' that used 'btc' in their filenames,
    so you need to change those to match the makefiles using
find src/qt/res/ -type f -exec rename 's/btc/NEW/
.

7. Bitcoin uses ports 8332 and 18332 on its main net and 8333 and 18333 on its testnet.  You want to change these to whatever ports you're using for the new coin, so first you type
grep -R 8332
and
grep -R 8333
to look at all the places where those numbers occur in source.  You'll find the port numbers in the source, but the strings also pop up in test vectors in the test directory, which you don't want to change.  So you need to do this in a way that leaves the test directories out of it.  But that's easy, because the places you do want to change it in source are all in the same directory.  So you type
sed -i 's/8332/newnumber1/g' src/*.cpp
and
sed -i 's/8333/newnumber2/g' src/*.cpp
, and that's done.

8. Next thing, you want to change the key prefix bytes so they don't cross up with bitcoin keys. The odds of an accidental collision are ludicrous, but 'odds' and 'accidental' are quaint oldfashioned ideas like thinking that radium suppositories are good for you when working on systems that people will actively attack.  The relevant lines in src/chainparams.cpp for mainparams look like this:
base58Prefixes[PUBKEY_ADDRESS] = list_of(number);
base58Prefixes[SCRIPT_ADDRESS] = list_of(number);
base58Prefixes[SECRET_KEY] = list_of(number);

and the ones in testparams look just like them except for different numbers. So plug in some different numbers so your keys won't be compatible with Bitcoin's system, just to eliminate the possibility of accidental key collisions.  (yes, you're already defaulting to different network ports, and keys are 'random' anyway, so confusion won't happen accidentally - but see the earlier comment about 'accidents' in systems that people will actively attack).  The four-byte sequences in the couple of lines after that are for 'stealth' addresses.   Again, it doesn't really matter what you change them to, unless you want to be cutesy and pick a particular alphanumeric prefix in the base58 representation of your keys.

9. Next up, the network magic bytes.  This is a sequence of four bytes that identify messages as belonging to some particular protocol, that get sent at the beginning of protocol messages.  You want yours to be different than everybody else's, as yet another way to make sure you don't wind up sending a message to (or getting a message from) something else.  Make up (or roll dice to find) some random bytes,  These are the
pchMessageStart[0]
through
pchMessageStart[3]
that get set at the top of CMainParams and CTestParams.  So you edit those to be your new numbers.

10. You probably don't want to show bitcoin's logos and graphics when you start up your alt, so go to the src/qt/res/ directory and change any graphics you find there that you don't want to show, to different graphics.  This is where you change logos and stuff.  I don't know good command lines for this, so you'll probably have to fire up GIMP and do them one at a time.  For now just change them for other graphics with the same size and saved in the same format.  It's a cheap trick, but if you want to do something different, you'll need to learn the qt framework and configure it to load and display something different.

11.  Use
date -+%s
at the command line to find the current time in seconds since the epoch,  add seven thousand or so to it, and plug it into all the parameters blocks replacing all the numbers that match the one that bitcoin's code sets genesis.ntime to.  You can change the
const char* pszTimestamp = 
string too, but keep it under 90 characters. Then insert this code into each of the mainparams and testparams blocks, right after the line that sets HashGenesisBlock:
if ((genesis.GetHash() != hashGenesisBlock) && true)
        {
            Logprintf("recalculating params for mainnet.\n");
            Logprintf("old mainnet genesis merkle root: %s\n", genesis.hashMerkleRoot.ToString().c_str());
            Logprintf("old mainnet genesis nonce: %s\n", genesis.nNonce.ToString().c_str());
            Logprintf("old mainnet genesis hash:  %s\n", hashGenesisBlock.ToString().c_str());
            for(genesis.nNonce == 0; genesis.GetHash() > bnProofOfWorkLimit; genesis.nNonce++){ } // deliberately empty for loop; finds nonce value
            Logprintf("new mainnet genesis merkle root: %s\n", genesis.hashMerkleRoot.ToString().c_str());
            Logprintf("new mainnet genesis nonce: %s\n", genesis.nNonce.ToString().c_str());
            Logprintf("new mainnet genesis hash: %s\n", genesis.GetHash().ToString().c_str());
        }

Then compile it (that's
automake; configure -with-incompabible-bdb; make
in the project's root directory) and start it up.  It'll chew for ~20 minutes to ~2 hours or so figuring out a new nonce and hash, drop them to the logfile, then hit the assert() statement right after that block and crap out immediately.  Then
tail ~/.newcoin/debug.log
will tell you the new parameters.  Plug them in where the code sets nNonce and HashGenesisBlock, recompile, rinse, and repeat for the testnet and regtest initializers.  You will probably want to
rm -rf ~/.newcoin
a few times along the way if you need to recover from any mistakes, and after you have the new parameters plugged in, change those 'true's into 'false's so that the client doesn't just start working on a new genesis block later if it follows a fake chain all the way back to a genesis block that doesn't match.  

12.  Now, still in chainparams.cpp find the line that says
static const Checkpoints::CheckpointData data = {
and delete all those bitcoin checkpoints that come after it.  replace all of them with a single checkpoint at height zero and the hash of your new genesis block.  While you're at it, be sure you have updated the CCheckpointData right after it to your new timestamp.  Also in CCheckpointData you need to set the height of the last checkpoint to zero.  If you're a completist, you'll want to do the same thing (with the new testnet values) at the line that says
static const Checkpoints::CcheckpointData dataTestnet = { 
right after it.   You'll also want to delete all those network seeds and URLs and stuff that are bitcoin-specific; you'd need to put machines up at URLs that are specific to your altcoin to replace them.  Compile one more time.

At this point you have a completely pointless altcoin. Woot.  Big effin' deal.  There are absolutely no new ideas in it.  Also, it has some user-facing strings that will direct people to wrong URLs that you'd want to fix if this were real.  If you launch this as an altcoin, it will fail.  

This is fun if you want to step through the process, mess with it, and change various parameters to see how it works. You can set up a couple machines with this program, point them at each other using the command line 'connect' and  'generate' arguments, and let them mine blocks.  But unless you are someone who has 8 hours a day to spend on supporting it for a long time, some original ideas you want to try out, some network hosting where you can put up long-lived servers to run those address services, and a full understanding of how and why these steps worked, don't mistake yourself for an altcoin dev.  

This is literally a half hour of work, a dozen or so command lines, and editing one file.  This is what coingen was charging 1 to 5 BTC for?  Man, a whole lot of people got ripped off there.
379  Alternate cryptocurrencies / Altcoin Discussion / Re: How much do POS coins have to worry about history key attacks? on: April 10, 2015, 05:50:53 AM
History rewriting attacks can start from the distribution of coins that existed at any point in history.

So, yah, in a "pure" PoS coin where block formation is decided by stake and chain security is measured by majority of coin-days destroyed, if someone gets their hands on the privkeys that controlled 60% of the coins at block 6500, it doesn't matter if the "real" block chain is at block 65000, he can force a reorg. And if people will sell cheap the privkeys to txouts that have already been spent, someone could do that.  

In practice, PoS coins vulnerable to this kind of history rewriting need to make very frequent "checkpoints" that lock in the history prior to a fairly recent block to prevent this attack.  If you've recorded a checkpoint at block 64000, then you're immune to any history rewrite that originates earlier than that block.  This makes the rewrite attack harder because now the attacker has to buy all those keys from security-idiots in less than the time between the updated checkpoints coming out.  
380  Bitcoin / Bitcoin Discussion / Re: Bitcoin To Transform Argentina on: April 10, 2015, 02:42:37 AM
The volatility of Bitcoin is better than the death spiral of the Argentine Peso. 
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 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 ... 87 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!