Commit 2e7f616e authored by Ralph Verhelst's avatar Ralph Verhelst
Browse files

Distinguish Intro, summary and current problems

parent 066241ab
......@@ -3,13 +3,25 @@ SSI Mandate project summary
# Introduction
We want to build a mandate service that is easy to use and reliable. Currently, this is often done using a signature on paper that can easily be falsified or requires DigID (digital authentication provider of the Dutch government) which is not very user-friendly.
The current digital infrastructure for mandates is not without problems. In many cases providing a mandate digitally isn’t even possible and those systems around mostly still require a wet signature on a PDF which can easily be falsified. The digital systems out there are fragmented and siloed between various service providers with a poor user experience. As a result people share their passwords rather than actually providing mandates resulting in insecure systems. To make matters worse most people use similar passwords for different systems increasing the attack vectors to compromise the identity and as a result also the identity of the person providing a mandate.
By providing mandates using SSI we can provide a solution to the problems mentioned above. First of all SSI mandates solve the problem of silo solutions because it is a neutral technology not controlled by a central party, rather data is managed by the identities themselves. This solves compliance problems and potential distrust between different parties and hence lowers the barrier for different services to adopt SSI as opposed to centralized solutions.
Secondly because SSI is decentralized and user data isn’t stored in local databases the amount of attack vectors are lowered and decreases the incentive for hackers to try and hack these systems. In a central database a hacker only needs to hack one single point of failure to gather the data of potential millions of customers whereas in a decentralized system such as SSI the same amount of effort is required to get the data of a single customer which is simply not as interesting.
The challenge is to make SSI user friendly as the very basis of SSI is public-key cryptography which is too complicated and unintuitive for most users. Managing your own data also puts more responsibility on the user as they can’t simply call a central administrator if they lose their password or if they become the victim of a hack.
SSI technology has made public-key cryptography more usable and secure by creating so-called decentralized public key infrastructure and providing user-friendly wallets and agents where the user doesn’t even notice public-keys are being used. SSI providers such as uPort have even created methods to recover identities in case of theft or losing keys to further increase user friendliness.
# Summary
The SSI mandate service is a generic and holistic approach to provide and request mandates. Mandates are SSI credentials signed by the dependent that can be requested by either the dependent or authorized representative. These credentials can be used to prove to a verifier that the authorized representative is authorized to act for specific actions on behalf of the dependent. The mandate credentials are stored in the wallet of the authorized representative as opposed to a central database in current systems. The dependent can revoke this credential at any point in time if he/she no longer wants the authorized representative to act on their behalf by updating a revocation hash on the blockchain. The SSI mandate provides mandates completely peer to peer and isn’t limited to individuals only. A SSI wallet can also represent a device or institution, for example a company can use a SSI company wallet to authorize employee’s to access the building or use the company credit card up to a certain amount.
# Current problems
**USER FRIENDLINESS** We want to build a mandate service that is easy to use and reliable. Currently, this is often done using a signature on paper that can easily be falsified or requires DigID (digital authentication provider of the Dutch government) which is not very user-friendly.
**INTEROPERABILITY** We want to make a mandate service that is operable with different types of wallets.
# Terminology
A mandate is a form of consent, The definition of a mandate is the authority granted by a proxy giver to act as its representative.
# Goal
Mandate others using SSI and attribute-based signing to prevent errors and fraud.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment