Bitcoin Forum

Alternate cryptocurrencies => Altcoin Discussion => Topic started by: earlz on October 09, 2014, 12:43:48 AM



Title: Call for early miners and pools to watch for perfectly hidden premines
Post by: earlz on October 09, 2014, 12:43:48 AM
So, it's possible to "perfectly" hide a premine. I won't go into the deep details of how this is done, since I don't want to make it easy for these scam devs. However, when it's perfectly hidden, it's impossible to go back with a block explorer and spot it. The timestamps on the blocks are lies to just look like it was mined after launch.

Anyway, this is a call out for early miners. You know who you are, the people with email subscriptions to the announcement forum that kick on miners with ninja launches and such. Also this applies to pools that pre-register and such.

The only way to spot these perfectly hidden premines is to have a node on the chain at the very beginning after launch. A semi-smart scammer will wait before broadcasting the premine blocks, so that shadow_runner and people like him that post the block counts when they get it downloaded will show that only 10 blocks or some such has been mined. You can tell that a hidden premine is broadcast later by a very large chain of orphan blocks. For instance, if you mine for 2 minutes and get 80 blocks, and then your chain is orphaned by another chain with 90 blocks (or even 70 blocks, but with more cummulative difficulty) then there is a good chance that this is a hidden premine.

If you encounter a huge orphan chain at launch a minute or two after mining, please save your debug.log! It's the only thing that records the info that can make this kind of behavior spottable. You can then post this info for analysis by me and others.

Of course, orphan chains at launch are quite common. What we're looking for though is huge orphanings.  Particularly if you mined a very early block, like block 10, and then mine until block 60 and it's later orphaned all the way back to 9, this indicates that someone was not listening to the block you broadcast. Just because you encounter orphans at launch does not mean there is a hidden premine, it only indicates that it's possible. Analysis will be needed to determine it, and even then nothing is 100% certain.

If you encounter huge orphan chains, please save your debug.log. Post it publicly if you can and PM me.


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: jasemoney on October 09, 2014, 01:29:45 AM
this is interesting, is this hiding a premine which could contain a percentage of the coin, or a retroactive instamine of sorts...


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: bee7 on October 09, 2014, 01:35:44 AM
One of possible ways to catch such attempts is to send the mined coins to other address(es) immediately as they mature.

Edit: not the case when all your blocks got orphaned. So, if you managed to send at least one tx and it is accepted by the network and later exist on blockchain, then all blocks past your block are not premined. So sending the mined coins could make you sure that since your mined block there is no premine. I over complicated the things :)) as soon as your mined block exist on the best chain a while after all more recent blocks are not premined.


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: Viper1 on October 09, 2014, 02:31:31 AM
So many ways to scam people.  Gotta love crypto.


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: earlz on October 09, 2014, 03:30:05 AM
this is interesting, is this hiding a premine which could contain a percentage of the coin, or a retroactive instamine of sorts...

Basically a retroactive instamine. This is why I give a moderate warning for people that don't use a recent news event for a genesis seed. It's possible for a malicious developer to premine their own coin for a few days.

I tested this personally with Bitchcoin (though I never broadcasted the malicious chain). I was able to premine about 80 blocks, pushing difficulty up to 8 (for X11) with a single 270X mining over about 30 hours. If I would've broadcast the premine, it would've looked like 80 blocks were mined in the first minute after launch.. Impossible to spot after the fact, other than tracking orphans


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: vipgelsi on October 09, 2014, 03:34:19 AM
So many ways to scam people.  Gotta love crypto.

Its a shame but true when money is involved all bets are off.


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: billotronic on October 09, 2014, 05:33:52 AM
So have you seen this in the wild? Or just able to proof of concept?

And for fucks sakes man, great work!


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: Guglimugli on October 09, 2014, 06:57:13 PM
remember this thread?

https://bitcointalk.org/index.php?topic=687852.0 (https://bitcointalk.org/index.php?topic=687852.0)


http://cryptogab.com/protecting-yourself-from-getting-scammed-with-altcoins/
 (http://cryptogab.com/protecting-yourself-from-getting-scammed-with-altcoins/)


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: earlz on October 10, 2014, 01:20:15 AM
No hidden premine can be missed if you look at the source. That's really all it takes, and there's absolutely no way whatsoever for it to evade you. (Really, try it at home!) The source code is incapable of telling a lie. If you don't know how to identify premines, read this (https://bitcointalk.org/index.php?topic=697637.msg7906320#msg7906320) post of mine, it's in there.
Anyway, this won't stop the practice. I would wager that early miners and pools would still participate even if they saw that there was a premine with active attempts to hide it.

The source code may be incapable of lying, but there is no way to prove that a block's timestamp is actually when it was mined. This is basically just impossible to prove in any manageable way


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: HunterMinerCrafter on October 10, 2014, 04:08:52 AM
No hidden premine can be missed if you look at the source. That's really all it takes, and there's absolutely no way whatsoever for it to evade you. (Really, try it at home!) The source code is incapable of telling a lie. If you don't know how to identify premines, read this (https://bitcointalk.org/index.php?topic=697637.msg7906320#msg7906320) post of mine, it's in there.
Anyway, this won't stop the practice. I would wager that early miners and pools would still participate even if they saw that there was a premine with active attempts to hide it.

The source code may be incapable of lying, but there is no way to prove that a block's timestamp is actually when it was mined. This is basically just impossible to prove in any manageable way

As long as the genesis block contains reference to a unique event that couldn't have been known before genesis then there is no problem.  I don't think this sort of attack would be considered a "hidden" premine, since the *lack* of a referencable timestamp in the genesis block is visible.

If the genesis block (of a legitimately open sourced coin) does carry such a "real world momentary" reference then you can prove, in a manageable way, that every subsequent block's timestamp is bounded relative to when it was actually mined.


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: bee7 on October 10, 2014, 04:15:35 AM
No hidden premine can be missed if you look at the source. That's really all it takes, and there's absolutely no way whatsoever for it to evade you. (Really, try it at home!) The source code is incapable of telling a lie. If you don't know how to identify premines, read this (https://bitcointalk.org/index.php?topic=697637.msg7906320#msg7906320) post of mine, it's in there.
Anyway, this won't stop the practice. I would wager that early miners and pools would still participate even if they saw that there was a premine with active attempts to hide it.

The source code may be incapable of lying, but there is no way to prove that a block's timestamp is actually when it was mined. This is basically just impossible to prove in any manageable way

As long as the genesis block contains reference to a unique event that couldn't have been known before genesis then there is no problem.  I don't think this sort of attack would be considered a "hidden" premine, since the *lack* of a referencable timestamp in the genesis block is visible.

If the genesis block (of a legitimately open sourced coin) does carry such a "real world momentary" reference then you can prove, in a manageable way, that every subsequent block's timestamp is bounded relative to when it was actually mined.

Yes and no. How many coins have you seen that have their 'properly text-message-timestamped' genesis block mined 5 minutes before the launch? I think not many. So there is quite big time window between genesis block generation and the actual launch almost always.


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: iGotSpots on October 10, 2014, 07:24:36 AM
You can do this on any chain. It also doesn't have to be a fresh release to perform such actions, although it's much easier if it is


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: HunterMinerCrafter on October 10, 2014, 07:26:12 AM
Yes and no. How many coins have you seen that have their 'properly text-message-timestamped' genesis block mined 5 minutes before the launch? I think not many. So there is quite big time window between genesis block generation and the actual launch almost always.

Just because most coins don't do it right doesn't make anything I said any less true.


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: YarkoL on October 10, 2014, 08:09:58 AM
So there is quite big time window between genesis block generation and the actual launch almost always.

Making the block rewards near negligible for a period
that is little longer than the time between the genesis block news event
and the actual launch would be a proof of legitimacy.

 
 


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: bee7 on October 10, 2014, 08:37:31 AM
So there is quite big time window between genesis block generation and the actual launch almost always.

Making the block rewards near negligible for a period
that is little longer than the time between the genesis block news event
and the actual launch would be a proof of legitimacy.

 
 

There is one more method for honest dev to make everyone sure that there is no premine hidden this way: the first 500-1000 blocks have very small reward (say, 1 coin) and only then the normal rewards are mined.


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: YarkoL on October 10, 2014, 08:49:19 AM

There is one more method for honest dev to make everyone sure that there is no premine hidden this way: the first 500-1000 blocks have very small reward (say, 1 coin) and only then the normal rewards are mined.

That's pretty much what I meant but your phrasing made it
more understandable  ;D

There ought to be a set of best practices.
Then responsible pool/exchange owners would ask that coin
devs adhere to them.


Title: Re: Call for early miners and pools to watch for perfectly hidden premines
Post by: Oscilson on October 10, 2014, 09:18:09 AM
Or we can make the initial difficulty to be high, 100 instead of 0.001 to prevent instamine