opening page to the voting website
Registration, Authentication and picture upload to the Watson API
The interface for the users to input their votes
Execution of the blockchain contract
A couple of years ago the American elections took the world by surprise when the unexpected happened. In the aftermath of the election, a lot of people talked about fraud in the polls, and that the number might have been tampered with. From those events and with the growing popularity of blockchain, we came up with the idea to provide a secure and private voting system without the possibility of tampering.
What it does
Allows you to vote, using a blockchain system to give it an immutable property
How we built it
We used a pre-configured, private blockchain, that is meant to aid speed up initial setup time. Through coding a contract onto the chain we were able to allow a single transaction i.e. vote, per user. Each of the users was given an address based on the MetaMask Chrome extension. This allowed for us to keep an immutable record of all the users' votes. In doing so we are able to flag and identify a person that tries to vote more than once. In addition, to get to vote users go through an authentication process that is set up through an online webpage. Information required in this process involves full name, phone number, email, and their province, as well as face recognition through the use of the IBM Watson API. Mulitple Sample picture of the user would be needed to be submitted during the signup procedure in order to train Watson to identify them by creating a special private classifier for each user .
Challenges we ran into
-One of the major challenges was learning how to code for a blockchain as that all of us never had experience with blockchain
- Having to reset the classifiers every couple of hours due to them being taken off the server
- Trying to interact with the blockchain through the browser
- Getting the HTML code for the web page to store the value's of name, email, phone and province
Accomplishments that we're proud of
We are proud that we were able to accomplish two of the major milestones of this idea which are actually having a working blockchain and Being able to implement IBM Watson into this project and training to recognize specific people instead of just another face.
What we learned
Through the last three days (Nov. 17 - Nov 19) we have learned a great deal about our weaknesses and strength when it comes to learning new programming concepts such as BlockChain and how the Watson API functions. Also, we learned that blockchain can have a variety of powerful applications beyond the transaction of cryptocurrency.