Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

self-sovereign identity system #2682

Open
synctext opened this issue Dec 14, 2016 · 18 comments
Open

self-sovereign identity system #2682

synctext opened this issue Dec 14, 2016 · 18 comments

Comments

@synctext
Copy link
Member

synctext commented Dec 14, 2016

A wealth of applications require strong authentication and long-lived secure identities. The Internet requires a common continuously evolving strong identity layer. This would make the Internet safer, better and more efficient. A single common identity layer also needs full decentralisation and self-governance. Approaches with central servers and static enforced standards are doomed to fail.

24 years of failure

For over 24 years all attempts to build a common Internet Identity layer have failed. "Identity is a mess". The first big documented attempt at building a web-of-trust was in 1992, the PGP 2.0 web of trust protocol. PGP has failed to reach even a moderate userbase outside of crypto enthusiasts, and while part of this, as the author suggests, is painful UI, a large part is also that the web of trust model is unreasonably demanding for most cases. The 1992 web-of-trust design operates as follows:

  As time goes on, you will accumulate keys from other people that you may want to
  designate as trusted introducers. Everyone else will each choose their own trusted
  introducers. And everyone will gradually accumulate and distribute with their key a
  collection of certifying signatures from other people, with the expectation that
  anyone receiving it will trust at least one or two of the signatures. This will cause
  the emergence of a decentralized fault-tolerant web of confidence for all public keys.

(2023 update: keybase is mostly inactive and the sharing service is shutdown) In 2015 Keybase.io obtained a $10.8M investment. They started as a PGP keyserver hobby project, now their goal is to bring public key crypto to everyone in the world, even people who don't understand it.
Keybase.io aims to solve the essential identity problem, confirming identity: how do you get public keys, safely & on-demand. They created a fascinating decentralised identity system, offering:

  1. Identity proofs: "I am Joe on Keybase and MrJoe on Twitter"
  2. Follower statements: "I am Joe on Keybase and I just looked at Chris's identity"
  3. Key ownership: "I am Joe on Keybase and here's my public key"
  4. Revocations: "I take back what I said earlier"

Blockchain technology provides the missing element to create a global Internet Identity layer, tamper-proof identities, in our opinion. The security of the whole ecosystem relies on authenticated public keys. Each participant has access to your public key and trusts that it really belongs to you, along with a verification proof. The missing element from Keybase and other server-based solutions is fully automated detection of corruption in any part of the global infrastructure. Central identity servers from Google, Facebook, and RSA are essentially data honeypots. They always get compromised. End-to-end integrity checking and tamper-proofness is required. It is insufficient to base security and integrity on "out-of-band secure communication" (e.g. like manual comparing server Merkle hashes). Strong state-based adversaries have the proven ability to compromise highly-connected nodes in the web of trust, compromise servers, and falsify real-world identity documents. As continued hacks of the global inter-banking system show, a system is only as strong as it's weakest server/country/module or Flash plugin version. Current identity systems are fragmented and siloed between various service providers, requiring password managers and resulting in insecure systems. Blockchain technology is still maturing, but has the ability to provide a tamper-proof ecosystem with automated end-to-end integrity checking.

Tribler identity and blockchain expertise

On June 2000 the Tribler team published sketches of 'open information pools' with a crowdsourced identity system module: unbiased truth about subjects, phenomena, people, place, objects, companies, etc. Today we have made significant progress on our technology for creating trust, enabling strong identities, and offering strong privacy. In years past we crafted 125+ scientific articles, 1+ million lines of code, and experienced how ones creates an IETF Internet Standard. However, we never managed to get any significant traction of our trust & identity work outside our own application context: a European Youtube service. Usage and usability are essential.

In the past years the term self-sovereign identity has become popular. The tech community (excluding scientific community), forms the core of this movement, centered around the decade-long running Internet identity workshop series. In 2015 the DAO made strong autonomy both realistic, popular, and also demonstrated consistent security problems. The cardinal design principle of Tribler is autonomy, no servers, no trusted third parties and no external dependencies. We aim to create a new type of self-organising system: based on self-governance. We prefer the term self-governance instead of self-sovereign, as it implies the need for authority at the community level for long-term sustainability. The requirement for governance has been proven by the Bitcoin civil war and DAO forking. We believe a key test for identity systems is making them future-proof, with even a smooth upgrade path to quantum-safe crypto. Self-governance is a required condition for a sustainable future-proof identity system. Our scientific definition:

  We define a self-governance system as: a distributed system in which autonomous
  individuals can collectively exercise all of the necessary functions of power without
  intervention from any authority which they cannot themselves alter.

Scientific Roadmap and design

in progress

Requirements for a "passport-grade identity system".

  • mobile-first implementation (smartphone-oriented)
  • strong authentication without trusted servers, government involvement or trusted parties
  • freedom to disable all government issued trust certificates
  • offline support (fully support no-Internet-needed mode)
  • tamper-proof hardware tokens
  • end-to-end integrity protection
  • protection against "zero-day" attacks
  • 2-out-of-2 policy (existing ID systems such as privium offer "zero-redundancy". This is unacceptable for a global identity layer. We require at least two isolated cryptographic systems which are required to be in agreement (e.g. 2-out-of-2 authentication). For instance, based on both Prime Factorization and ECC within a share-nothing architecture based implementation)
  • blockchain core is resilient against a state-based adversary, colluding of miners, forking in general, and 51% attack vulnerability (Ethereum uPort)
  • remove the need for mining (e.g. 3rd generation blockchain technology)
  • zero-latency bottom-up consensus model

Cardinal design principle: self-reinforcing trust of digital identities

ToDo; this will address the sybil attack to a large extend and thus make the Internet significantly safer and more reliable.

@synctext synctext added this to the Backlog milestone Dec 14, 2016
@synctext synctext self-assigned this Dec 14, 2016
@synctext
Copy link
Member Author

synctext commented Feb 10, 2017

Homo Autonomous: beyond Homo Economicus

We describe a vision with a high ambition level, devising an economic ecosystem in which people are autonomous.

A realistic roadmap is presented to provide people and organisations with more autonomy and tools to take charge of their own identity and economic interactions. We describe the self-goverance paradox: freedom is created by restricting economic interactions, specifically by eliminating middleman roles and only permitting self-regulation.

Our desire is to empower people and shield them from cascading failures of the global economy. Consequences from security leaks, equipment outages, and economic shocks can be dampened when economic actors are no longer tightly coupled. People can take charge of their own affairs when economic transactions are restricted to pair-wise direct interactions and never require permission from an identity provider, market maker, blockchain operator, or platform owner. We define this principle as Homo Autonomous. Homo Economicus is the concept in many economic theories portraying humans as consistently rational and narrowly self-interested agents who usually pursue their subjectively-defined ends optimally. This concept fails to take into account the experimental evidence that human actors exhibit herding behavior.

Laws restrict economic transactions, people are not free to trade food, energy, and goods in general. Consumer protections laws ensures malicious actors are dealt with. eBay has operated a market platform for the past 22 years, recently joined by Uber and AirBnB. They rely on feedback from anonymous Internet users to establish transactions between strangers. Creating such matchmaking platforms is the battleground for hundreds of startups, striving for scaling effects and global market leader status. Few viable initiative exist to create a generic decentralised non-profit platform. Often initiatives control the platform, the blockchain, the oversight foundation, or are influential members of
the standards board. We propose a novel principle: the original creators are forbidden from having any influence. This creates a healthy non-profit vision and utility-minded setting of creating a public good infrastructure.

The key technical challenge is to establish the ... ToDo! requirements: identity, authentication, trust/reputation mechanism, contracting facilities, and tamper-proof register of legal
entities, legal representative of entities, scalable consensus, etc.

@synctext
Copy link
Member Author

synctext commented Feb 19, 2017

Smart contracts are the natural layer to build on top of solid trust and identities. However, that is extremely inefficient due to current lack of concurrency and high-throughput for the execution model. No trust exists.

Ecosystem primitives to build on:

  • trusted sub-second payments
  • trusted timestamping
  • Verification of electronic identities, using analog passport / public key check

@synctext
Copy link
Member Author

synctext commented Mar 8, 2017

Key storyline: our requirement is life-critical dependability, for critical infrastructure. This is key to identity and trust layer. It should be usable for medial applictions. The 1985 theoretical foundation:
image

@synctext
Copy link
Member Author

synctext commented Mar 9, 2017

Zero-knowledge proof of credentials and any attribute Microsoft + University College London paper Algebraic MACs and keyed-verification anonymous credentials

Anonymous credentials present a solution that simultaneously
preserves the integrity of the system through an unforgeability
guarantee that a user cannot prove possession
of credentials he wasn’t issued (e.g., cannot gain access to a
building without having been granted access) but also preserves
the anonymity of the individual participants. If the
anonymity is preserved throughout multiple presentations of
the credential (e.g., each time a user boards the bus), it is
said to satisfy multi-show unlinkability.

Impressive work. Python code. It is a limited solution, as you can only prove matters to the central issuers.

"The scale and complexity of information systems evolve towards overwhelming the capability of system administrators, programmers, and designers."

@synctext
Copy link
Member Author

synctext commented Apr 5, 2017

blockchain for: identity, transitive trust and transactions within logistics, healthcare, and energy sector

We propose a project with a high ambition level: showing how it is possible to re-organise economic
value chains using the latest technology and make it cheaper, faster and safer. This project is
specifically designed to be both realistic, solve real-world problems, and serve as an inspirational showcase for Dutch technology.

Three critical parts of our economy struggle with the same problem: the lack of a single trustworthy digital infrastructure to exchange information reliably, process transactions efficiently, store legal records durably, and seamlessly integrate transfer of funds. This is caused by the lack of trust in electronic form, absence of legally valid digital signatures, and shortage in usable electronic identities.

This project will provide people and organisations with more autonomy and 
open source tools to take charge of their own identity, realise cost-efficient
backoffices, and facilitate trustworthy economic interactions in general. 

The enabling breakthroughs we will devise are: creating the fabric for trusted information exchange,
eliminating inefficiencies by creating compact “fact proofs”, and addressing the trust problem within
value chains. The source of strong identities and authentication is based on electronic keys without explicit storage of secrets or private keys by using physically unclonable functions. In the digital-only world government, regulators, guardians of legal registries, and notaries are essential.

The economic importance of solving the trust problem is hard to overstate. The invention of GPS created entirely new industries and radically altered others. The core TCP/IP Internet protocol radically dropped the price of communication and computation. This project aims to offer a breakthrough in creating trust.
By making the trust of government portable and usage within the private and private/public health sector we enable significant gains. By creating a single source of truth we remove the cause of many administrative errors, remove the need for many bureaucratic checks, enable simplification of administrative processes, enhance transparency, and boost security by creating end-to-end ecosystem integrity checks.

@synctext
Copy link
Member Author

synctext commented Jun 11, 2017

you are the Internets

killer app brainstorm Every concept and new infrastructure requires viral first-time usage.

We envision an Internet where everybody moves messages for others. Basically, offer free wireless Internet by relaying traffic for each other. Such systems are know to be highly robust and can be made resilient to numerous natural disasters. This concept integrates self-sovereign identity, ad-hoc networking, bandwidth accounting, and your contribution and standing within the wireless bandwidth commons. See a simple sketch from many years ago:
buddy_networking

This idea is now over 20 years old. However, in the past the required technology was never ready for broad usage. The incentive problem never got solved. We and others now slowly getting the required pieces ready. In 2005 we had our first operational ad-hoc forwarding network, called wifi walkman. In 2007 we introduced the bandwidth-as-a-currency vision. In 2009 we got our decentral social network operational and deployed. We wrote about the self-sovereign ability back in 2012, for a IETF Internet draft writeup. Relaying bytes between friends requires an offline social network.

   In the friend-to-friend scenario a network of friends is trusted to transport
   news manually, by simply carrying it around.  Smartphones with NFC capability
   or manual USB transfer are used to duplicate and move messages.  Thus
   Alice delivers her fresh news message to Bob, which is later given
   manually to Charlie.

   As direct social connections are sparse and proximity of friends is
   not continuous, this scenario SHOULD facilitate usage of friends-of-
   friends or further removed social ties to relay news messages.  This
   requires the development of a decentralized social network, for
   instance, with digital signatures of friendship certificates.  In
   effect this would create a "decentralized social network", completely
   autonomous and owned by all participants.  We assume Alice only has
   Bob in her friendlist and Bob only has Charlie in his friendlist.  An
   OPTIONAL feature is that the smartphone apps running on the
   smartphone Alice and Charlie detect that they have friendship path
   through Bob. Fresh news is thus exchanged.

We now have an operational decentral market and we're making it resilient to attacks. Plus there is finally support for soft base-stations on Android, see support lib. This means it is possible to offer Internet bandwidth, boost your reputation, and sell your bandwidth reputation credits on the open market. The self-sovereign identity part is essential to prevent lying, misreporting, collusion, and sybil attacks. We can create a strong social fabric through key attestation.

image

@synctext
Copy link
Member Author

synctext commented Jul 5, 2017

PUF technology is an emerging technology to store the essential part of a self-sovereign identity, the private key, in a tamper-proof manner. The private key is storage becomes volatile by using PUF technology [Patents].

For TUDelft publication on PUF technology: "Modeling SRAM start-up behavior for physical unclonable functions"

More sophisticated 2015 work
PUFs in general, SRAM PUFs in particular, can be used as a secure cryptographic key storage mechanism . Fig. 1 shows how such mechanism can be integrated to create a PUF based key storage system.
image

The popular 6Ts SRAM cell (see Fig. 2(a)) consists of two cross-coupled CMOS inverters formed by four transistors (Q 1 with Q5 and Q2 with Q6) and two pass transistors (Q3 and Q4). The pass transistors are used to access the cell for read and write operations. The bitline (BL), the compliment bitline (BLB) and the wordline (WL) are used to access the cell.

image

We simulate the start-up behavior of an SRAM cell using SPICE and BSIM4 65nm models. Process variation PDF for 65nm :
image

@synctext
Copy link
Member Author

synctext commented Jul 8, 2017

By using secure multiparty computation it is possible to conduct calculations in the encrypted domain, the inputs of participants remain private. Homomorphic encryption is a more efficient mechanism. In 2014 we crafted a social network in the encrypted domain using the Pallier homomorphic crypto system, providing user with privacy. In 2006 a generic mechanism also based on Pallier, specifically usable for attribute-agnostic self-sovereign identities Thnx @qstokkink

@synctext
Copy link
Member Author

Our proposed stack (PUF required for underlying security)
blockchain and logistic innovation - wp 5 6

@ghost
Copy link

ghost commented Jul 20, 2017

Decentralized markets do not need 'legally valid' signatures they need 'valid signatures'. Once you have a sovereign enough identity system that is managing enough resources 'legal' ceases to offer any meaningful value. Perhaps 'self-sovereign signatures' instead?

@synctext
Copy link
Member Author

synctext commented Nov 15, 2017

@qstokkink
Please create an overview of critical successfactors and properties of Digital ID solutions. Quick 15 minute draft:

IDENTITY SOLUTIONS Open Source Multi-vendor Real decentralisation offline ID proofing Blockchain Neutral Tech Readyiness
www.uport.me 👍 👍 👍 👎 👎 deployed
http://keyp.io 👎 👎 👎 👎 👍 immature
www.notarisid.nl 👎 👎 👎 👎 ? design stage
Sovrin 👍 👍 👎 👎 👍 immature
Trustchain/IPv8 👍 👍 👍 👍 👍 Q1'18 deployment

@qstokkink
Copy link
Contributor

qstokkink commented Nov 15, 2017

Several scientific publications exist on this topic. Seven years ago this field looked different, for example A Roadmap for the Comparison of Identity Management Solutions:
afbeelding
Or ten years ago A Survey of User-centric Identity Management Technologies:
afbeelding
All solutions above are now considered outdated or bankrupt.

A more up to date (December 2016), but also already outdated overview can be found in Blockchain for Identity Management - Ori Jacobovitz

Also, here is a small extension of your table:

IDENTITY SOLUTIONS Open Source Multi-vendor Real decentralisation offline ID proofing Blockchain Neutral Tech Readyiness
keybase.io 〰️ 👎 👎 👎 👍 immature
IBM idemix 〰️ 👍 〰️ 👍 👍 deployed

@synctext
Copy link
Member Author

image

@synctext
Copy link
Member Author

Managing your private key for your core identity is still the main problem. Efficient loss recovery and theft locking. You can generate your own private key and do loss recovery through biometrics. Alternative or supplementary to our PUF prototypes. Scientific paper:
Fuzzy Extractors: How to Generate Strong Keys from Biometrics and Other Noisy Data

@synctext
Copy link
Member Author

synctext commented Apr 12, 2019

Operational SSI with zero-knowledge proof:

@synctext
Copy link
Member Author

synctext commented Jul 9, 2020

It is now 2020, we officially open this #2682 SSI research issue on 14Dec 2016. We will now specifically analyse the main project also working in this field: Cardano (thnx the the tip @xoriole!) with a new SSI solution.

Cardano is sponsoring the largest blockchain research ecosystem with 27 affiliated professors and researchers: IOHK. It is not only a new entrant to SSI, but also the largest research team in the world around blockchain matters. Their research is on a larger scale then ours, more speculative, less feedback from assumption testing, and mostly focused on a single industry: finance.

Their SSI solution is to "enable low-income populations to store and share personal information like credentials, land deeds, and health records". Their exact july 2020 announcement (see also eyecandy demo).

the announcement of PRISM, a decentralized identity solution that enables people to own their personal data and
interact with organizations seamlessly, privately, and securely. It will encourage better practice in consumer data
privacy and security by offering users ‘self-sovereign’ digital identities, without Big Tech intermediaries accessing,
storing or sharing personal data.

IOHK is sponsored by Cardano. Their marketing storyline is similar to ours (but profit-driven by transaction fees).

Cardano is built by a decentralized community of scientists, engineers, and thought leaders united in a common purpose:
to create a technology platform that will ignite the positive change the world needs. We believe the future should
not be defined by the past, and that more is possible - and, through technology, can be made possible for all.
We measure the worth of a task not by its challenge, but by its results.

Every ada holder also holds a stake in the Cardano network. Ada stored in a wallet can be delegated to a stake pool
to earn rewards – to participate in the successful running of the network – or pledged to a stake pool to increase the
pool’s likelihood of receiving rewards. In time, ada will also be usable for a variety of applications and services on
the Cardano platform.

Their marketing is very professional, see their roadmap. Has everything in it we have been working on for 15 years in their 5 releases. Their proof-of-stake will not scale, but they will quickly change to our line of research if proven superior.
Screenshot from 2020-07-09 11-58-07
Social standing statistics within Cardano mining pools is an important source of bragging rights, we had similar "social badges" operational in August 2007 (but not good enough).
Tribler_4 1 0_screenshot_overall_score_plus_ratio_and_upload_stats_BarterCast1_aug2007

@ichorid ichorid added this to To do in SSI via automation Jul 18, 2020
@ichorid ichorid moved this from To do to Discsussion tickets in SSI Jul 18, 2020
@synctext
Copy link
Member Author

synctext commented Oct 4, 2022

Our ideas from 2007-2016 are becoming mainstream.
University of Bern is now (e.g. 2022) also working on similar matters. Veritaa: A distributed public key infrastructure with
signature store
. Key figure with similar ideas as IPv8 networking + Trustchain ledger:

@synctext
Copy link
Member Author

synctext commented Mar 9, 2023

PR brainstorm : Self-sovereign digital EU economy

Our digital economy is critically reliant on Big Tech, Big Banks, and Big Telecom. No self-sovereign identity, money or marketplace exists. Our goal is to design and deploy collectively maintained public infrastructure for ID, money, trust, data, and AI.
Politicians have steered the EU into a clear promising direction. Strong identity systems are the foundation for economic integrity. If EBSI is successful, it will be the economic underpinning for EU economy for the coming 50 years. The main issue is that the EU political process is aligned with eIDAS2, EBSI, LSP, and reference wallets. The engineering process is disconnected from societal needs, applications needs, and infrastructure development realities. The EBSI core technology of Hyperledger is fundamentally unsuitable. This is proven in French and Dutch studies 1,2. The API structure is bloated, but not powerful and requires further evolution 3

Collectively maintained public infrastructure is notoriously difficult to design and evolve. A zero-trust and cybersecurity framework is needed to underpin the EU digital economy. Oslo University and Delft University of Technology are the key scientific partners within the EBSI-NE consortium (grant call DIGITAL-2022-DEPLOY-02). We aim to provide a minimal proof-of-principle online economy with actual people, real money, and real application. Design principle are security grounded in the laws of physics and maths. For instance, hardware fingerprinting, speed-of-light bounds4, quantum-proof hashing functions, and fake-identity resilient trust frameworks 5.

Our online economy will be grounded in EBSI and serverless wallet-to-wallet communication. We aim show that our self-sovereign technology is meticulously engineered to have no controlling centre and therefore prevents centralisation of power. We believe our innovative approach to self-governance of AI, data, and identity can be scaled from a proof-of-principle economy towards a new economic organisational model for the EU.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
SSI
  
Discussion tickets
Development

No branches or pull requests

4 participants