Coder Social home page Coder Social logo

keraf / nocoin Goto Github PK

View Code? Open in Web Editor NEW
1.6K 75.0 148.0 355 KB

No Coin is a tiny browser extension aiming to block coin miners such as Coinhive.

License: MIT License

JavaScript 96.07% CSS 2.19% HTML 1.74%
coin-miners blocker extension browser chrome-extension

nocoin's Introduction

⚠️ Discontinued project ⚠️

As most browsers have built-in measures to prevent coin mining nowadays and there are more up-to-date lists (see https://github.com/hoshsadiq/adblock-nocoin-list) that work with popular adblockers, this project is not relevant anymore. It served its purpose; protecting users from unwanted coin mining on the web while there was no available alternative, and kickstarting more coin miner blocking intiatives. Thank you for supporting NoCoin and surf safe!

No Coin

No coin is a tiny browser extension aiming to block coin miners such as Coinhive.

v0.4 demo

You can grab the extension from:

Chrome Web Store FireFox Add-on Opera Add-ons

Related article: https://ker.af/stop-coin-mining-in-the-browser-with-no-coin/

Made by Rafael Keramidas (keraf [at] protonmail [dot] com - @iamkeraf - ker.af).

Why?

Even though I think using coin mining in browser to monetize content is a great idea, abusing it is not. Some websites are running it during the entire browsing session which results in high consumption of your computers resources. I do believe that using it occasionally such as for the proof of work of a captcha is OK. But for an entire browsing session, the user should have the choice to opt-in which is the aim of this extension.

Why not just block the URLs in an adblocker?

The idea was to keep it separate from adblocking. Coin mining in the browser is a different issue. Where ads are tracking you and visually interfering with your browsing experience, coin mining, if abused, is eating your computer resources resulting in slow downs (from high CPU usage) and excessive power consumption. You might be OK with that and not with ads, or vice versa. Or you might just want to keep ads blocked entirely and just enable the coin mining script for a minute to pass a Captcha. That's why I believe having a separate extension is useful.

How does it work?

The extension is simply blocking a list of blacklisted domains in blacklist.txt. Clicking on the icon will display you a button to pause/unpause No Coin. If you are aware of any scripts or services that provide coin mining the browser, please submit a PR.

Docs

There is a wiki with some useful information, make sure to give it a read if you're interested in any of those subjects:

Supporting the project

Tips PayPal

Click one of the buttons above to use either Digital Tip Jar or PayPal to tip me! Most open source projects have costs and I do currently cover them myself. Those include developer fees, domains, servers and software licenses. Donating would allow me to cover those costs and support further development. It is also a great way to show your appreciation for the project.

In the press

No Coin was mentionned a couple of times in the press, read more about it here:

nocoin's People

Contributors

diposs avatar ewasion avatar firminator avatar j4k0b avatar keraf avatar ksirbj avatar lesander avatar meganekko avatar ozarin avatar ramonakira avatar suhail-sullad avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nocoin's Issues

Cannot install Firefox Extension

I always get the same error when trying to install the firefox extension, I've tried installed it directly from the firefox addons site and downloading the extension and installing it. The error message I get is:

The addon could not be installed because it appears to be corrupt.

Add unit tests

I haven't looked into unit testing the extension yet but as it is growing it would be really helpful some.

Replace blocked Coinhive Captcha by an image

To make users aware that the Coinhive captcha has been blocked, it should ideally be replaced by a similar size image and ideally with the possibility to click on it to temporarily allow it.

"White list for 1 min" in some cases is not work

Reproduce steps:

  1. Goto https://coin-hive.com/ website.
  2. Click "White list for 1 min" in "No Coin" popup.
  3. Click "Start Mining" on homepage.
  4. 1 min later, mining still working.

I don't know it is bug or not?

Ps. My userAgent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36"

Make a new logo

A nice new logo would be good. No precise requirements except the following:

  • 128x128 pixels PNG logo.
  • Should look good in 32x32 pixels.
  • Different state variants (see #3 )
  • Not be associated to a specific coin (like Bitcoin).

My design skills are terrible... Feel free to grab this one and submit a PR to replace the "img/logo.png" and "img/logo_disabled.png" files or add additional ones.

"Settings" are not active

I can only "Pause" No coin and "Resume" no coin or add current site to whitelist. No any other features, no SETTINGS. How will I know that it is working? How can I see or redact my whitelist?

New urls :)

*://*.edgeno.de/*
*://*.reasedoper.pw/*
*://*.jyhfuqoh.info/*
*://*.minemytraffic.com/lib*

Doesn't consistently stop miner processes from starting

I have found that, while it blocks communication to the miner host, this plugin currently doesn't always stop the miner from trying to run. The miners will still use some processing power when they do start.

Running the miner.sop() command built into Coinhive's miner stops the miner if it is running.
After stopping the miner you could clear it's variable by setting it to be undefined to prevent it from being able to be started again.

miner.stop();
miner = undefined;

Add a settings page

Add a settings page with the following options:

  • Enable/Disable the main blacklist - enabled by default
  • Enable/Disable a secondary stricter blacklist (containing miners with consent) - disabled by default
  • Extend blacklist with custom domains
  • Manage whitelist (add/remove domains)

Block cloudcoins.co

Can you also block cloudcoins.co

cdn.cloudcoins.co/javascript/cloudcoins.min.js

nice idea... but...

it doesn't detect sites that use coin mining proxy as a disguised 1st party extension..

Poor justification

the user should have the choice to opt-in

Visiting a website is already an opt-in action. If you don't like it, don't go there!

thanks to no coin,

i'm running a faucet centered around people agreeing to mine before claiming my faucet, basically insuring the next person is able to claim my faucet without having to lock users out for ridiculous amounts of time or give absolutely terrible rewards. last night several no coin users were able to claim my faucet without mining and essentially emptied out my faucet. without giving back anything in return. i need a way to stop no coin users from accessing my site. or else no one is going to be able to benefit from my faucet currently i have users mine for a set amount of hashes based on the exchange rate and costs associated with the money transfer fees(basically works our to 1sat given = 3 mined (1 given/1recieved/1tax). while allowing users who have access to large amounts of hash power to claim more frequently. when using your app they are able to ignore this and claim as fast as one could solve a captcha all while not supporting the site.. if there is any way i can stop users from accessing my site it would be much appreciated, i have no problems with no coin besides the fact that its going to force me to have to run a ad filled popup powered scammy looking faucet or no faucet at all if i cant stop people from abusing it by not participating in my mining captcha.

Support Edge

Support for Edge would be nice. There's apparently a way to convert Chrome extension for Edge.

Why not just use an existing extension

honestly, this could've been just a third-party filter for an existing addon like uBlock or uMatrix, which are both more than just 'adblockers'. They're designed to block unwanted content, and the js-based miners are exactly that.

Better to separate blacklist.txt

I would suggest to separate blacklist.txt as a different project, so that other extensions, apps and services can utilize and integrate it. It would be much easier to update the list too, without updating the NoCoin extension frequently.

Block JSEcoin

Someone Tweeted at me that there's another coin mining service named JSEcoin. Should have a look into adding that one to the blacklist too

Link: https://jsecoin.com

Support whitelisting of domains

Support whitelisting of domains to bypass the blacklist. Ideally there should be a button to temporary add a domain in the whitelist. The whitelisted state of a domain should be visible on the extension icon.

Different states

Suggest having four visibly identifiable states:

  • no mining detected (enabled)
  • no mining detected (disabled)
  • mining detected (enabled)
  • mining detected (disabled)

For the 'no mining detected' states, just use existing icons, but at lower opacity.

Make a proper design for the popup

The popup currently looks awful. I have no precise idea on how it should look but I would imagine something with a bit more colours and nicely aligned would be good.

Safari extension?

Hi!
Can you make a porting of this extension also for safari?
Thank you!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.