At Dock, we envision a more interconnected world where people own their personal data across every website they visit or digital app they use. Which is why we’re building a decentralized data exchange protocol that puts people back in control of their personal data and breaks down the data silos between existing platforms and networks.
Today we’re thrilled to announce the completion of our initial Dock blockchain Proof-of-Concept (POC). We’ve been hard at work on this for several weeks now, and are excited to show you the progress.
For those of you who are already familiar with how blockchains and token exchanges work, you can go straight to our technical post to get into the details of the POC. If you’re a little less technically-inclined, read on for the overview.
What is a POC?
When developing a Blockchain project, there are a lot of unknowns. Like most startups, most blockchain companies work through a process of agile improvement — characterized by rapid iteration. We ship a small feature, then improve it, ship again, and repeat until we have a completed product.
But how do you move quickly, when so much of the technology is as-yet unproven (and when no one’s ever built something like you envision)? You start with a blockchain Proof-of-Concept — a lightweight representation of your product that demonstrates its feasibility.
Dock’s concept, outlined in our initial whitepaper, is two-sided. On the one hand, we aim to build a two-way data exchange that incentivizes companies to break down their data silos and share their data. On the other hand, we provide users the ability to give express permission for their data to move or be shared anywhere. If you as a Dock user decide someone shouldn’t have your personal info (like your name, address, occupation, or any number of other data points), you can cut off their access simply and immediately.
With more than 1 million users of our app and a long list of integration partners, we’ve seen incredible demand for our protocol — in the next phase, our goal is to build a blockchain solution that supports it at scale.
Dock’s System Design
In architecting our solution, we’ve built 3 layers — each with its own separate purpose:
Layer 1: The Ethereum Mainnet Contract
Dock is built on the Ethereum blockchain. This layer of our system, simply, is the core layer that handles entry and exit from the system and acts as the ‘supreme court’ when it comes to resolving disputes.
The challenge with this layer is that we can’t build our entire protocol on it, because it won’t scale to the number of transactions we need. So we introduced a second layer:
Layer 2: The Plasma Cash Layer
For our POC, we implemented a solution based on Plasma Cash, which allows the protocol to process significantly more transactions and data. This solves one of the biggest issues in blockchain today: scalability.
On this layer, all off-chain data transactions are managed so that they do not need to be recorded on the main chain. By doing so, the Plasma Cash node creates throughput at scale & also significantly decreases transaction costs (a crucial benefit to allow scalability).
Layer 3: The Dock Workflow Layer
The final layer is the layer that reconciles all the parties. This is the layer that specifically handles the agreements between the organizations, as well as checking the user permissions for the data exchange. It facilitates the data exchange requests between Data Producer, User, & Data Consumer with the help of the Plasma Cash Layer.
It also handles the user interface and our APIs (which allow companies to communicate with the Dock protocol).
After successfully implementing the above POC, there’s still a lot more work to be done. While this is a huge step forward, it’s one piece of a much larger puzzle. Some of the still-outstanding challenges include:
- Making the data available to all parties for verification
- Building out multiple nodes to fully decentralize the system
- Adding protection against bad actors
- Reducing transaction costs
- Developing a reliable dispute process
- Refining the crypto-economic model that supports Dock transactions
Obviously the above is an oversimplified explanation of a much more complex system exercise. If you’d like to learn more about the POC’s technical execution, please head over to our technical post to dig into the details.
You can also: