HoloVault — Personas & Profiles

How HoloVault works

Holochain Design
Dec 5, 2018 · 6 min read

by Philip Beadle

I’m sure by now you’ve heard the phrase, “If you can’t identify the product, you are the product!”, similar to the old poker saying “If you don’t know who the sucker is, it’s you”. All of the free internet services we use are subsidized by the money the site owners make by selling your data to anyone who will buy it. As an example of how far your data gets shared without you being aware take a look at this interactive graphic on what PayPal does with your data — https://rebecca-ricks.com/paypal-data/. Now, have a think about the number of websites you have filled out your name, address, and other details on and how painful it is to update all of those sites when your address changes. To make this easier sites like Google, Facebook, and Microsoft allow you to log in on other sites using the details you entered in theirs. This may be convenient, but now you are allowing them to know exactly what you do on the internet. They take and use that information and they sell it too! See my video on not being a Marketing Meatbag.

At Holochain, we are building tools to give you back agency over your data. The first part of that is making it simple to manage your profiles over multiple Holochain Apps (hApps) and keep your data to yourself. The rest of this article is a deep dive into how we do that.


All hApps that need a person’s Profile information will redirect to the “HoloVault” hApp. The requesting app — such as Abundance of Presence (AoP) — sends a “retrieve” request for the particular field it needs, such as “handle”. If the response is empty, then the person using the AoP hApp will be taken to the Profile form. The form is generated by using the ‘Profile Spec’ registered at the genesis of AoP that lists the fields the app needs. The person then uses HoloVault to map the requested Profile information to the actual data stored in one of the personas using the hApp’s Personas.

In this Example Profile, you can try out how the autocomplete field finds any matching data in your existing Personas. This example has four Personas, Default, Personal, Work and Friends with different fields and spelling of some values to demonstrate how we can use Personas.

The “HoloVault” app will have the following features:

  • Add a new Profile Mapping
  • Edit a Profile Mapping
  • Delete a Profile Mapping
  • Add a Persona
  • Edit a Persona
  • Delete a Persona

HoloVault is your personal data store that replicates across your devices on its own DNA. To give you data resilience and speed to those you are sharing data with.

Personas

Managing your Personas

Demo

Create a New Persona
Edit an Existing Persona

Personas

Managing your Profiles

Demo

List all Profiles
Create a New Profile with no existing Personas
Create a New Profile with existing Personas

Profile Spec

Creating a new Profile

When the hApp requests a value such as a person’s handle it will first request it from its own store, the design of this is up to the developers. If the field cannot be found then a bridge call to HoloVault attempts to retrieve the field. If this also returns nothing then the person is redirected to Vault and the Profile Spec is used to show the Profile Form. The Person then maps their data, saves it into Vault and is redirected back to the hApp.

The hApp then tries again to retrieve the field such as “handle”. It doesn't exist in the hApp DHT so it again bridges to Vault, retrieves the value and then if it’s a storeable field saves it into the hApp DHT.

People can then confirm that their profile information has been used as requested by checking the contents of the requesting apps DHT and Chain. A warrant for the app may be issued if found to be misusing people’s profile information.

Show List of Apps Installed

When the Profile is saved in HoloVault each field Profile Mapping looks like this:

export interface ProfileMapping {
retrieverDNA: string,
profileFieldName: string,
personaAddress: string,
personaFieldName: string
}

Future Ideas

Forensic Auditing — Attack Factory

Gamification Data

Get rewarded for your insights


The following videos are meant to demonstrate how HoloVault works with Profiles and Personas and other hApps:

Holochain

Holochain enables a distributed web with user autonomy built directly into its architecture and protocols. Data is about remembering our lived and shared experiences. Distributing the storage and processing of that data can change how we coordinate and interact. www.holochain.org

Holochain Design

Written by

Creating an ecosystem of decentralized applications with distributed, user-controlled storage. Cheaper, faster, better than #Blockchain @metacurrency @H_O_L_O_

Holochain

Holochain

Holochain enables a distributed web with user autonomy built directly into its architecture and protocols. Data is about remembering our lived and shared experiences. Distributing the storage and processing of that data can change how we coordinate and interact. www.holochain.org

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade