Inspiration
We were inspired by Git Trophy, an online tool which lets you create a physical representation of your git commit history.
We were interested to see if we could create physical representations of other types of objects.
What it does
On the app, the user selects a file. This file is then hashed and the hash is stored (or at least, should be stored) on Guardtime's blockchain. This ensures that later on, anyone can verify that the file was added by you at a certain time. This process returns a KSI signature.
Our app uploads this signature to our server, which then hashes it and stores in a database. Then the app (or any other client) can download the 3D model for that hash and then print it using a 3D printer.
Later on, anyone with access to the model can reconstruct the hash and then lookup the KSI signature on our server and use that to verify the file.
How we built it
Blood. Sweat. Tears.
We said at the beginning we wanted a nice, light, chill hackathon - we did not get that.
Challenges we ran into
- 3D printing is tricky, and neither of us had experience with it
- Blockchain is a really cool idea, but Guardtime's Java SDK does not play nicely with Android, due to different Keystores used.
Accomplishments that we're proud of
- We have a pretty thing
- Our client talks to our server properly
What we learned
- Basics of 3D printing, and generating models with python
- Flask servers are lovely :)
- Restful APIs are brilliant
- Android apps are pretty
What's next for Hexblock
If we can get hexblock working neatly with the blockchain, possibly even supporting multiple types of blockchain or bitcoin wallets, then maybe it could have practical use!
That is, if we add a scanning program to get the hash back out again :P
Log in or sign up for Devpost to join the conversation.