Author Topic: Fight the bots!  (Read 7038 times)

0 Members and 1 Guest are viewing this topic.

Offline ProtoMiner

  • Newbie
  • *
  • Posts: 6
    • View Profile
Re: Fight the bots!
« Reply #12 on: November 16, 2013, 12:57:08 am »
Yes, some of them are cloud miners, but digging through the data almost half of them are bots...

Proof of this?

Offline kenpodragon

  • Full Member
  • ***
  • Posts: 64
    • View Profile
Re: Fight the bots!
« Reply #11 on: November 15, 2013, 11:34:53 pm »
Yes, some of them are cloud miners, but digging through the data almost half of them are bots...

Offline super3

  • Sr. Member
  • ****
  • Posts: 260
    • View Profile
Re: Fight the bots!
« Reply #10 on: November 15, 2013, 10:34:48 pm »
Some of these aren't botnets but rather cloud miners. I'm running several cloud miners at a profit, and have written a few guides on how to do it.

Offline kenpodragon

  • Full Member
  • ***
  • Posts: 64
    • View Profile
Re: Fight the bots!
« Reply #9 on: November 15, 2013, 09:19:55 pm »
2) Unfortunately, with the current bot situation, with the bots out there everyone is getting something like 0.000000001 per round vs 0.02 per round pre-bots. The goal is letting your hashes make an actual difference against the pools whereas now they are just giving you pennies.
But that's just not true, I'm currently mining about 25PTS/hour without a botnet, there are many people with larger power. Why did you expect to mine a fortune with your personal desktop?
Also, the difficulty is much higher.
You know what happens when you Assume...

Lets look at the data, shall we.

Pulling the data from ptspool.com.

Out of the 1600 miners there, only 800 are unique addresses.
99% of the miners connected to the pool have less than 1500 shares
The top 20 miners on the pool are contributing 90% of the shares.
The average miner is only contributing about 500 shares. If we do a proportional payout here for a block size of 32, an individual miner is only making 0.002 PTS per round or 0.012 PTS per day.
Compare this to an individual user with 500hpm locally. If the pool with 7M is finding one block every 4 minutes, this means a solo miner is going to find one block every 10 days or 3.2 PTS per day.

If it were the case that every share were equally proportional to contributing to finding a block, then botnets wouldn't be a problem and would be great for individual users - letting them in on a consistent stream of PTS.

The problem is that each share unequally contributes to finding a block. The more HPM you throw at the problem, the more "overlap" work blocks will get accepted. More pool crashes, more problems impacting small end miners.

An example:
User submits share (00000-01000). Accepted. New work recieved.
User submits share (01000-02000). Accepted.
Botnet submits 400,000 shares. 350,000 were accepted.
(00001-00200)
(00002-00201)
etc...
Looking at the individual share data, only 5,000 were unique share results, but because of overlap and work generation checking, the botnet gets credit for 345,000 useless shares.
Block found.
Botnet takes 95% of the pool. Everyone else takes 5%.



Offline iruu

  • Jr. Member
  • **
  • Posts: 46
    • View Profile
Re: Fight the bots!
« Reply #8 on: November 15, 2013, 07:47:14 pm »
2) Unfortunately, with the current bot situation, with the bots out there everyone is getting something like 0.000000001 per round vs 0.02 per round pre-bots. The goal is letting your hashes make an actual difference against the pools whereas now they are just giving you pennies.
But that's just not true, I'm currently mining about 25PTS/hour without a botnet, there are many people with larger power. Why did you expect to mine a fortune with your personal desktop?
Also, the difficulty is much higher.

Quote
3) They can read the forums and will have to change all their bots accordingly. But this adds work on their end to have to point the bots in the right direction.
This also adds to everyone's work, but botnet operators get the biggest payout for theirs.

Quote
4) If all the hashes are coming from a single proxy, the pool operator can block the IP of the hash flood.
And "fair" big miners are supposed to go and say to the pool operator "hey I'm not a botnet, you can allow me"? Not only this is ridiculous, it's completely ineffective.

Last but not least, for all that restrictions, everyone serious would just mine solo or on another pool. Stupid pools wouldn't be finding *ANY* blocks at all.
« Last Edit: November 15, 2013, 08:05:49 pm by iruu »

Offline kenpodragon

  • Full Member
  • ***
  • Posts: 64
    • View Profile
Re: Fight the bots!
« Reply #7 on: November 15, 2013, 07:17:42 pm »
Quote
This payout scheme means that some workers get paid more for their work and others get paid less for their work.

What is this, communism? Why should better miners get penalized?

Quote
Each pool sets up a secondary pool (separate IP) through which everyone else can connect.

Because botnet operators can't read forum apparently

Quote
For the solo miners with large farms, set up a virtual proxy. Point all your machines to this single machine, and change the port forwarding rules accordingly. If any bot farmers go this route, pools can quickly identify them and point them to the 99.9% pool based on IP (or IP ban).
I don't understand this one. How does a virtual proxy make detecting botnets easier? And why is the proxy "virtual" when it is in fact an actual proxy?

2) Unfortunately, with the current bot situation, with the bots out there everyone is getting something like 0.000000001 per round vs 0.02 per round pre-bots. The goal is letting your hashes make an actual difference against the pools whereas now they are just giving you pennies.
3) They can read the forums and will have to change all their bots accordingly. But this adds work on their end to have to point the bots in the right direction.
4) If all the hashes are coming from a single proxy, the pool operator can block the IP of the hash flood.

Offline timegrinder

  • Newbie
  • *
  • Posts: 14
    • View Profile
Re: Fight the bots!
« Reply #6 on: November 15, 2013, 07:13:58 pm »
Plus doing that would then penalise the lower-end users (and undo all of the work people have put in to adding the ability to run it at lower memory requirements -- also the theory work for GPU mining, again because of the memory requirements)

Offline bytemaster

Re: Fight the bots!
« Reply #5 on: November 15, 2013, 07:11:59 pm »
It seems like upping the required amount of ram per thread would be the simplest solution.
1024mb per thread would reduce the botnet problem by making the virus more noticeable,  and would make cloud hashing a lot more expensive.

Is this possible?

Not without forking. 
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline gnarl

  • Full Member
  • ***
  • Posts: 72
    • View Profile
Re: Fight the bots!
« Reply #4 on: November 15, 2013, 06:57:32 pm »
It seems like upping the required amount of ram per thread would be the simplest solution.
1024mb per thread would reduce the botnet problem by making the virus more noticeable,  and would make cloud hashing a lot more expensive.

Is this possible?

Offline andhar

  • Board Moderator
  • Sr. Member
  • *****
  • Posts: 241
  • *BOH!*
    • View Profile
Re: Fight the bots!
« Reply #3 on: November 15, 2013, 06:20:25 pm »
2) Consider an average baseline computer - 100hpm? Calculate how many shares this type of computer would return in an average hour period.

I'm on 650 hpm...im not a botnet :P

Offline iruu

  • Jr. Member
  • **
  • Posts: 46
    • View Profile
Re: Fight the bots!
« Reply #2 on: November 15, 2013, 06:17:00 pm »
Quote
This payout scheme means that some workers get paid more for their work and others get paid less for their work.

What is this, communism? Why should better miners get penalized?

Quote
Each pool sets up a secondary pool (separate IP) through which everyone else can connect.

Because botnet operators can't read forum apparently

Quote
For the solo miners with large farms, set up a virtual proxy. Point all your machines to this single machine, and change the port forwarding rules accordingly. If any bot farmers go this route, pools can quickly identify them and point them to the 99.9% pool based on IP (or IP ban).
I don't understand this one. How does a virtual proxy make detecting botnets easier? And why is the proxy "virtual" when it is in fact an actual proxy?

Offline kenpodragon

  • Full Member
  • ***
  • Posts: 64
    • View Profile
Fight the bots!
« Reply #1 on: November 15, 2013, 02:12:33 pm »
Thinking about our current predicament with the botnets. Going to take some work.

There are some legitimate users who have extremely high rates, however how do we tell who is who?

Possible short term fix - pooled resource distribution payouts. PRDP
This payout scheme means that some workers get paid more for their work and others get paid less for their work.
1) Calculate the PTS earned over an hour period
2) Consider an average baseline computer - 100hpm? Calculate how many shares this type of computer would return in an average hour period.
3) Or do a frequency distribution, discarding any outliers so the data matched a normal curve, a lower bound would then be set 1-3 standard deviations away from the mean.
4) Calculate the value of a share (PTS for the period / Computers connected)
5) Calculate the value each computer earns. If shares submitted > lower bound 1 share else shares/lowerbound.
6) Any remainder after the calculations goes into the calculation for the next hour.






Quick fixes:
1) All pools set their fees to 99.9%. This will effectively stop the bots from mining, and if they continue, then the pools get a nice payout :P
2) Each pool sets up a secondary pool (separate IP) through which everyone else can connect.
3) As soon as the pool rate reaches X, change the fee on the existing port to 99.9% and open up a new port. Announce the changed port via usual channels.
4) Pool operators simply need to add a port forwarding mechanism in front of their pools with 2 pools running in the background. As the pools become maxed, change the port forwarding rules (Old port -> 99.9% pool. New port -> normal pool)
5) Take 90% of the earnings from the 99.9% pool and distribute it evenly to the regular users as a once a day payout.
6) For the solo miners with large farms, set up a virtual proxy. Point all your machines to this single machine, and change the port forwarding rules accordingly. If any bot farmers go this route, pools can quickly identify them and point them to the 99.9% pool based on IP (or IP ban). Individuals with large farms can contact pool operators to get this restriction lifted.

Longterm fixes:
1) Ypool - institute a second level verification of users and a 3 miner limit per individual (miner not worker). If users want to raise this limit, they will have to contact ypool with an explanation. Anything above the limit gets kicked into a 99.9% fee pool.
2) Beer, Coyote, and PTS - implement a shared password on your pool. Users who connect with a generic password get kicked off to the 99.9% pool, while users with the correct password get the normal pool. You can share the password via private messaging on the forums.
3) All pools, should take the earnings from the 99.9% fee pool and distribute a portion of it to the miners