Overlay Networks:
Group project
Final Presentation
by Yury Belevskiy, Silvan Imhof, Christian Killer, Sebastian Schrepfer
live slides
Overview
Architecture
Business Case
Challenges and Problems
Demonstration
goo.gl/39856J
Business Case
1
Business Case
Two parties are
chatting
, and they want to have a binding agreement exchanging certain messages
They don't blindly
trust
each other and want to be able to prove that one party said something at some point in time
For messages that deem important, the
notary service
can be used to
save messages
into the Ethereum public
blockchain
These messages are
immutable
by any party
Any party with the knowledge of the message identifier can look up whether a certain message has truly been sent at which point in time
Contracts-as-a-Service
Architecture
2
Architecture
Full Project
boot
boot
Product Vision
Architecture
Ethereum
boot
boot
Web Front-End
Technologies
Spring Boot Application
Vue.js (& vue-resource)
WebSockets (SockJS, Stomp)
REST Interfaces
Font Awesome
Local Storage
Notary
Technologies
Ethereum
Ropsten Testnet
Smart Contract
Geth
Web3J
P2P implementation
Each user is associated with PeerDHT
User data is stored in DHT with TTL
JobScheduler is used to refresh user data and push multiple copies (direct replication)
Exchange message using FutureDirect
Challenges and Problems
3
Issues experienced
Ropsten Testnet was under attack multiple times
Syncing takes unreasonable amount of time
Light mode solves this problem
Compiling smart contracts locally running Windows is a pain
Remix IDE solves this problem
Documentation and Information about TomP2P, Web3J, Solidity, wrapping etc. exists, but not very extensive
macOS / Apple failed us
Issues with Geth
Conclusion
3
Conclusion
SCRUM
experience was beneficial in every way
Thanks to ti&m and CSG
Ethereum / Web3j
quite steep learning curve
A lot of research before first LOC
Demonstration
4
Discussion
5
Made with Slides.com