The goal of technology has always been to help people and better the human race. CryptoChange aims to do this by using your idle resources to mine cryptocurrency and donate to a variety of worthy causes.
Tab for a Cause was a major inspiration for our project, which generates a small amount of money for charity every time a user opens a tab on their browser by showing an advertisement. CryptoChange operates on a very similar principle, but instead can be run constantly in the background while you browse. The number of threads and speed at which they run is entirely controlled by the user, who can also start and stop the mining at any time.
What it does
CryptoChange is a Chrome extension that lets you contribute a customizable part of their browser processing to mine for cryptocurrency. Then, you can donate your mined cryptocurrency to a charity of your choice! Donation works by keeping track of how much computational effort a user has contributed to the mining pool through calculation of hash functions. Every single hash function that a user calculates raises a small amount of money which can then be allocated to any of the listed charities. The total money raised by CryptoChange every month is distributed to each charity in a ratio relative to how users have voted with their hashes. In this way, hashes are directly proportional to actual money.
How we built it
The CryptoChange Chrome Extension spins up Web Worker threads that connect to a Monero mining pool and begin calculating hash functions on input delegated from the mining pool. Each hash function computed by the user is used as 1 unit of "work" which can later be donated. An AWS RDS server stores user account, charity, and donation tables which keep track of who gave how many hashes to what charities. AWS BeanStalk is used as a PHP backend to update and share this information back with the Chrome Extension.
Challenges we ran into
Connecting all of the backend components. Persisting a connection to a mining pool in the background of a Chrome Extension.
Accomplishments that we're proud of
A functional product that has already mined money for charity.
What we learned
First time creating a Chrome Extension/working with a blockchain technology.
What's next for CryptoChange
We both plan to continue using CryptoChange on our own machine and finalize a few additional features before releasing to the Chrome Web Store.