Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [09:12] <Duvulpr> Your net seems a bit unstable ;p
- [09:12] <ProjectMayhemWRK> b) is a little more complicated because I've never done it, and finding out that information is difficult because it's somewhat illegal. As you would be the only miner on the chain, I guess I could create a duplicate block of the next block and remove all but your transactions so it becomes the next block in the chain and stratum to be commanded to accept and confirm that block
- [09:13] <ProjectMayhemWRK> it's strange it's only just started happening
- [09:13] <Duvulpr> Well 51% attacks aren't illegal. They're a perfectly valid state. There isn't any laws or regulations on which rules miners must follow in crafting their own blocks.
- [09:14] <ProjectMayhemWRK> that's debateable, it's theft and computer manipulation, crypto's are just untraceable, but if you could be traced I imagine you could be charged
- [09:14] <Duvulpr> Possibly, however jurisidiction will be a significant legal question.
- [09:14] <ProjectMayhemWRK> I'd have to research the b) part anyway
- [09:14] <Duvulpr> Anyways, I would imagine that you would need to modify the coin daemon to change how the conflict resolves.
- [09:15] <Duvulpr> Actually
- [09:15] <Duvulpr> You'd just need the coin daemon to maintain a blacklist of TX hahes it will not include.
- [09:15] <ProjectMayhemWRK> may just be able to avoid the conflict
- [09:15] <Duvulpr> Perform a) first
- [09:15] <Duvulpr> Then, blacklist the TX you want to double spend.
- [09:16] <Duvulpr> Now, create a new TX with the same inputs. That'll be the only TX that'll get in the block, and your pool will keep building blocks until it overtakes the main chain, to which point other miners will switch to it.
- [09:17] <Duvulpr> I think these two changes should only incur a few hours of exploration and implementation. I can pay 700k doge, or another cryptocurrency of your choice - interested?
- [09:17] <ProjectMayhemWRK> I'll chedck with my sources and get back to you, I need to know how much work is involved
- [09:18] <Duvulpr> Cool. How long might that take?
- [09:18] <ProjectMayhemWRK> in my head the block height thing can be put in from the start because you can have an incorrect chain with any hashrate. The block thing may be something that has to be done quick
- [09:18] <ProjectMayhemWRK> for a)... minutes?
- [09:19] <ProjectMayhemWRK> for b) don't know :P
- [09:19] <ProjectMayhemWRK> have to check with some of my shady friends
- [09:19] <ProjectMayhemWRK> who I know have carried out these attacks
- [09:19] <ProjectMayhemWRK> will let you knnow after work
- [09:20] <Duvulpr> ah okay, I just mean how long it might take for you to check with your shady friends ;p OK
- [09:20] <Duvulpr> I might not be here, hold on I'll give you an email.
- [09:20] <Duvulpr> And, I'd like this as pool software, so it should read a configuration file for a) and b).
- [09:23] <Duvulpr> If I'm no longer here, please email me at opwolf@mail.com
- [09:24] <ProjectMayhemWRK> there isn't already existing pool software?
- [09:24] <ProjectMayhemWRK> I thought this was just a mod?
- [09:26] <Duvulpr> this is a modification to an existing pool software
- [09:26] <Duvulpr> But I mean it as, I don't want you to hardcode it to a certain block, or to certain transactions.
- [09:26] <ProjectMayhemWRK> ah good, if it was from scratch there's no way I'd be doing it :P
- [09:27] <ProjectMayhemWRK> it will coded to certain blocks as string from a file
- [09:27] <ProjectMayhemWRK> you'd change them as you like
- [09:27] <Duvulpr> That'd work :)
- [09:27] <ProjectMayhemWRK> there should already be a config file for that
- [09:27] <Duvulpr> To be fair, it might be quite easy to make a simple stratum pool, that would just read TXNs to mine from a textfile
- [09:27] <Duvulpr> Yeah.
- [09:27] <Duvulpr> Or an option.
- [09:28] <ProjectMayhemWRK> I did tinker with a 51% theory
- [09:28] <ProjectMayhemWRK> a few months ago, where you would mine and get every block
- [09:29] <ProjectMayhemWRK> by rejecting blocks found by other pools
- [09:29] <Duvulpr> uhuh, so orphan everyone else's block
- [09:29] <Duvulpr> Yeah, that is nice, but I want to double spend for lots more profit :)
- [09:29] <ProjectMayhemWRK> Duvulpr hmm
- [09:29] <ProjectMayhemWRK> you know once you do this the value is going to plummet :P
- [09:30] <Duvulpr> Indeed, but I don't think it'll hit zero.
- [09:30] <Duvulpr> Maybe it'll crash by 50-80%, but so? That's extra profit!
- [09:30] <ProjectMayhemWRK> well
- [09:30] <Duvulpr> (I will be exchanging it for BTC you know)
- [09:30] <ProjectMayhemWRK> you need the maintain 51% until you've sold
- [09:31] <Duvulpr> That's not an issue!
- [09:31] <ProjectMayhemWRK> Good, because if other miners don't switch to your chain
- [09:31] <Duvulpr> People will only detect the double spending when it is spent (they will see a new pool with lots of hashpower, but that might just be a multipool they'd think.
- [09:31] <ProjectMayhemWRK> the old chain can be brought back
- [09:31] <Duvulpr> Yeah.
- [09:32] <Duvulpr> I have enough hashpower to guarantee 51% by a wiiiiiide margin.
- [09:32] <ProjectMayhemWRK> this will cancel all transactions and the exchange may attempt to claim that back from you
- [09:32] <Duvulpr> right
- [09:32] <ProjectMayhemWRK> I can hit about 2g/hash on scrypt for an hour or so
- [09:33] <Duvulpr> That's really nice, how much will you charge?
- [09:33] <ProjectMayhemWRK> does beg the question why you don't just mine all the coins but I won't judge :P
- [09:33] <Duvulpr> haha
- [09:33] <ProjectMayhemWRK> Involves controlling all computers at my work and using the ~3000 PC's to CPU mine
- [09:33] <Duvulpr> it's simple, if I mine 51% and reject everyone else's mine, devs will probably end up forking and rollbacking
- [09:33] <ProjectMayhemWRK> they could do that anyway
- [09:34] <ProjectMayhemWRK> :P
- [09:34] <Duvulpr> Yeah, but not when I already cashed out my BTC from exchanges.
- [09:34] <Duvulpr> Good luck :P
- [09:34] <Duvulpr> The altcoin I have? Already got people who are willing to mix ready.
- [09:35] <ProjectMayhemWRK> what you do with it after I make it isn't my issue :P
- [09:35] <ProjectMayhemWRK> but tbh if you wanted to save 700k doge you could mod it yourself :-S
- [09:35] <Duvulpr> Absolutely. This is just for demonstration purposes only and will only be done on testnet.
- [09:35] <Duvulpr> :P
- [09:36] <Duvulpr> Well, I don't know C++ and can't be bothered trying to figure it out. I'd much prefer paying someone to do it, and reviewing their patch and learning C++ based on that.
- [09:37] <ProjectMayhemWRK> I'll give it a go, but I'll need to know which coin too
- [09:37] <ProjectMayhemWRK> and have access to the pool source
- [09:37] <Duvulpr> Why? I'd prefer if there is no market manipulation in advance.
- [09:37] <ProjectMayhemWRK> also this stratum will only be able to be used by you
- [09:37] <Duvulpr> That's correct
- [09:37] <ProjectMayhemWRK> you won't be able to role it out to your miners
- [09:38] <Duvulpr> What do you mean?
- [09:38] <ProjectMayhemWRK> if it attempts to mine another coin it will just fuck shit up :P
- [09:38] <Duvulpr> I'm pretty confused because most scrypt coins are API compatible
- [09:38] <Duvulpr> i.e.: changing to another coin consists of modifying the coind path.
- [09:38] <ProjectMayhemWRK> well the stratum will have a blockheight start on it
- [09:38] <Duvulpr> That's how it works for Scrypt mining pools.
- [09:39] <Duvulpr> Mhm, I thought that's supposed to be read from a text file?
- [09:39] <ProjectMayhemWRK> if you used it to mine another coin, it would attempt to carry out that command
- [09:39] <ProjectMayhemWRK> yeh it will read the height from whatever .ini file it's in
- [09:39] <ProjectMayhemWRK> but it will always attempt to read the height
- [09:39] <Duvulpr> Oh, you mean the block will be hardcoded?
- [09:39] <ProjectMayhemWRK> no...
- [09:39] <Duvulpr> as in the block header it starts off
- [09:40] <ProjectMayhemWRK> the command to mine >rs"blockheight"
- [09:40] <ProjectMayhemWRK> will be hard coded
- [09:40] <ProjectMayhemWRK> but blockheight, the actual number will be in a .ini file
- [09:40] <Duvulpr> OK
- [09:41] <Duvulpr> So it'd work for every scrypt coin, I just need to change the block height ?
- [09:41] <ProjectMayhemWRK> only if you have get 51% yes
- [09:41] <Duvulpr> Yeah, of course.
- [09:41] <ProjectMayhemWRK> but for ordinary mining you won't be able to use it
- [09:41] <Duvulpr> Yeah, so this can just do 51% attacks
- [09:41] <ProjectMayhemWRK> exactly
- [09:42] <ProjectMayhemWRK> so you can't roll it out to your miners
- [09:42] <Duvulpr> What do you mean?
- [09:42] <ProjectMayhemWRK> because it cannot mine normally
- [09:42] <Duvulpr> But I'm not interested in mining normally.
- [09:43] <Duvulpr> I'm just interested in rolling it out to my miners to 51%.
- [09:43] <ProjectMayhemWRK> your pool would be :P
- [09:43] <Duvulpr> what? so this doesn't mine 51%s?
- [09:43] <ProjectMayhemWRK> it wouldn't work like that, you can't physically manipulate the config file for the stratum once downloaded
- [09:44] <ProjectMayhemWRK> you also seriously risk being exposed letting anyone see this
- [09:44] <Duvulpr> 'once downloaded' ?
- [09:44] <ProjectMayhemWRK> your pools miners download a stratum program to mine on your pool?
- [09:44] <ProjectMayhemWRK> I haven't mined non-solo in a whilew
- [09:44] <Duvulpr> The pool's miners connect via stratum-tcp
- [09:45] <Duvulpr> It gets JSON-RPC payload of what hash to work on.
- [09:45] <Duvulpr> This is a job:
- [09:45] <Duvulpr> {"params": ["bf", "4d16b6f85af6e2198f44ae2a6de67f78487ae5611b77c6c0440b921e00000000",
- [09:45] <Duvulpr> "01000000010000000000000000000000000000000000000000000000000000000000000000ffffffff20020862062f503253482f04b8864e5008",
- [09:45] <Duvulpr> "072f736c7573682f000000000100f2052a010000001976a914d23fcdf86f7e756a64a7a9688ef9903327048ed988ac00000000", [],
- [09:45] <Duvulpr> "00000002", "1c2ac4af", "504e86b9", false], "id": null, "method": "mining.notify"}
- [09:45] <Duvulpr> As you can see, Stratum simply tells miners what height to work on, and what difficulty to report back for a share.
- [09:46] <Duvulpr> The miners don't even know the block height. It just knows what to hash.
- [09:47] <ProjectMayhemWRK> things have changed
- [09:47] <Duvulpr> A lot. People who mine at pools no longer have any voting power ;)
- [09:48] <ProjectMayhemWRK> I would, but I can out hash most pools, as I just discovered a few minutes ago, my hour of solo mining last night found a block :P
- [09:48] <Duvulpr> Haha, nice, what coin?
- [09:48] <ProjectMayhemWRK> dogecoin
- [09:48] <Duvulpr> That's nice :)
- [09:48] <Duvulpr> Oh, and the pool software should be switchable to normal mode if the blockheight override isn't set.
- [09:48] <ProjectMayhemWRK> 73k :-p
- [09:49] <Duvulpr> Neat :P
- [09:49] <ProjectMayhemWRK> Duvulpr you would need to switch out the stratum
- [09:49] <ProjectMayhemWRK> like 2 seconds downtime as you do it
- [09:49] <Duvulpr> Yeah, restart it.
- [09:50] <Duvulpr> There's actually a Linux utility that allows you to hotswap any program with no downtime.
- [09:50] <Duvulpr> It starts the new executable, but keeps the old executable running till it finishes all pending tasks.
- [09:50] <Duvulpr> But anyway.
- [09:51] <Duvulpr> The reason why it should be minable normally, is in order for us to get 51%, we need to get the multipools to stop mining.
- [09:51] <Duvulpr> Hence: we mine normally with our GH/s, to make the difficulty higher, and for multipools to mine another coin.
- [09:51] <Duvulpr> Then, we'll have 51%++.
- [09:51] <ProjectMayhemWRK> I won't be able to do that
- [09:51] <ProjectMayhemWRK> :-/
- [09:51] <ProjectMayhemWRK> switch out would be the only option
- [09:52] <Duvulpr> Indeed, switch out is perfectly fine?
- [09:52] <Duvulpr> a few seconds of downtime is nothing
- [09:52] <ProjectMayhemWRK> I can't see why not
- [11:31] <Duvulpr> Hey, I'm going to go now but email me on opwolf@mail.com if you're intereste please
- [11:32] <ProjectMayhemWRK> will do
- [11:32] == No such nick/channel: Duvulpr
- ~Duvulpr@74-50-124-83.static.hvvc.us
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement