As college students ourselves, we've all been through the pain that is CollegeBoard and their AP exams, SATs, and Common App. Back then, we didn't have the means or the knowledge to combat a system that utilized a middleman and profited off of poor students like us who had no other choice. Now, however, with blockchain, we have created a web API that allows students, like us, and educational institutes to take a middleman like CollegeBoard out of the equation. Seshat lets us have control over our own educational records, and guarantees their validity by using the public ledger.

What it does

Seshat lets a user keep track of their own educational records while also guaranteeing validity for others who want to see accurate information. Instead of requiring a middleman like the CollegeBoard, students can send their info to interested parties (like colleges) directly by sending their Seshat address. Furthermore, trust is established on the network as only whitelisted authorities can make changes to a student's transcript or exam grades (authorities like schools, colleges, test administrators, etc). Furthermore, as a proof of concept, Seshat provides an example exam that can grade a student's answers and directly update their records, showing that even testing can be done in a decentralized fashion.

How we built it

The front end was designed with vanilla JavaScript and for styling. The blockchain logic is handled client-side with Web3, the official Ethereum Web API. The webapp connects to Seshat nodes running off of geth, an Ethereum command line interface, where it can retrieve user information from addresses. We also made use of the development tool Truffle to quickly deploy new iterations of our smart contracts, written in Solidity.

Challenges we ran into

Getting the blockchain nodes to communicate and sync, as well as setting up individual addresses for users to store their educational records was quite a large challenge, because none of us had worked with any blockchain technology before. Moreover, implementing a testing system that worked to decentralize CollegeBoard's reach was a challenge in of itself, as devising a decentralized testing scheme was arguably harder than implementing one.

Accomplishments that we're proud of

Actually finishing the project is a major achievement, as we ran in a huge roadblock in the eleventh hour. For some reason our nodes weren't syncing, so our whole blockchain was in shambles. However, we eventually the realized the issue was with the address of our cloud node being incorrect, so our local nodes weren't actually connecting to anything.

What we learned

This was the first time any one of us worked with blockchain, and so there were a lot of roadbumps as we tried to figure out how it worked. Additionally, since we are working with Ethereum, we had to overcome the hurdle of getting smart contracts to work, which our entire testing service is based upon. Overall, we learned how to set up a personal wallet on the blockchain, and to set up an ethereum miner to generate ethereum for smart contracts to run on.

What's next for Seshat

Seshat can be applied to many things outside of educational records. In the future, we would love to continue implementing these use cases, such as incorporating driver's license validation and passport validation within every person's unique address.

Built With

Share this project: