Inspiration

Our project was inspired by the sad hacking of one our group member's close loved one. We know how devastating cyber crimes can be, and the sad part is they can effect anyone, even if we are being super careful. CyberCrimes can lead to all sorts of issues such as getting robbed, or even having your identity stolen. We decided to aim our passion towards preventing cyber crime, coupled with our love for trading CryptoCurrency, in order to innovate the functional uses of the Blockchain. This led us to discover the incredible tool of Smart Contracting, opening endless possibilities for data encryption in the future.

What it does

Smart Contract in very simple terms are pieces of code which are used to interact with the Blockchain. The Blockchain of course being a peer-to-peer network which can store data in an encrypted manner. The reason that using the blockchain was so appealing to us is it's security. Once something is written to the Blockcode, it is indefinite. It cannot be changed or deleted. Although this may have it's drawbacks in other cases, we immediately thought of multiple ways of applying this key functionality to increase the security of people around the globe! We thought the following two examples were relevant, and important enough to address, so we built our project around them.

  1. Unfair violations of written contracts
  2. Rigged elections (whether it be a small scale or a presidential scale)

The great thing about our prototype is that with basic tweaks, we can actually start using this as a means to protect people's data physically, kind of like how a CryptoWallet would do. Our idea is ever expandable!

How we built it

We decided on tackling both of those problems, and using two different approaches when it comes to writing to the blockchain. The great thing is there are so many different ways to communicate to it, which led us to display how expandable our idea really is. Our group made 2 main prototypes. One of which ACTUALLY writes to the blockchain.

The first project was built using breadboards and a Raspberry Pi Pico. This one was a demonstration of how a physical vote can easily be streamlined into a basic machine. This will prevent people from making multiple votes (by tracking ID numbers or names). On top of this, when a device writes directly to the blockchain, all the voters can have the peace of mind that their vote genuinely counts, as one of the largest flaws with the voting system are corrupt organizers. This process makes it so there are no intermediaries, and since it gets moved to the Blockchain, no tampering can be done later on! Our design is a very simple Raspberry Pi Pico Circuit in which 5 voters can vote for 1 of 4 Candidates (Java, C#, Python, or JavaScript). This then gets moved to a mockup blockchain code which we also wrote up! This kind of mockup design is also known as a DAO Voting System (Decentralized Autonomous Organization).

The second project was a prototype for an online chatroom. In which we aim to have a conversation between 2 or more people. This in turn allows us the users to clearly communicate and come up with fair terms for a contract. Since everything is done digitally, there is no room for any unfair usage of data, or sneaky terms and conditions. On top of this, uploading our contracts directly to the Blockchain will restrict any tampering happening to these contracts later on. This is called a DAPPS system (Decentralized Applications). Unfortunately we haven't completed the code for this part yet as it still is in the prototyping phase, however we have a large portion of our interface done, as long with real interactions between the Blockchain and our SmartContracts.

Challenges we ran into

We did face many large challenges which hindered our process.

During the development of the voting system, one of the biggest challenges was implementation of the system. We had a plan to have a nice GUI in which the user can view their votes and relevant information. The issue with this is the IDE we used to run CircuitPython (Thonny) which did not allow for much implementation of libraries and external code.

For the contract system, we really had issues getting our Interface to work, which is the main reason it is not complete. Besides that all the backend is working, it is for the most part frontend which is causing us issues.

Accomplishments that we're proud of

We are very proud of the fact that we have successfully build a product which can be used on a global scale. We highly believe our work has endless applications, and with some fine-tuning can be made into a tool so powerful that hackers around the world will struggle! We also are happy and thankful for the learning experience that GDSC provided for us, as we genuinely learned a lot!

What we learned

In our project we learned to implement smart contract technology which uses web 3.0 technology to build a messenger DAPP and an DAO voting system. We learned to leverage power of blockchain technology to build more trustworthy and secure systems using Solidity and frontend languages.

What's next for D.A.B.B.A.: Unlocking Smart Contract Capabilities

Next step for our team is to pitch the idea to our engineering society at the University of Western Ontario to deliver secured communication between UES members to prevent any data breaching. We believe we can streamline their data storing systems as we continue to build and upgrade our work! Our long term vision is to expand this technology to other universities to make user data more secure across the world.

Share this project:

Updates