Skip to main content
QUICK REVIEW

[Paper Review] Transforming face-to-face identity proofing into anonymous digital identity using the Bitcoin blockchain

Daniel Augot, Hervé Chabanne|arXiv (Cornell University)|Oct 9, 2017
Blockchain Technology Applications and Security6 references3 citations
TL;DR

This paper proposes a blockchain-based identity system that transforms face-to-face identity proofing into anonymous digital identities using Bitcoin's blockchain. By leveraging Brands' zero-knowledge proof scheme and Merkle trees, it enables users to prove identity with selective disclosure while ensuring revocation and updates are efficiently managed via Bitcoin’s consensus, achieving privacy-preserving, scalable identity verification with minimal bandwidth overhead.

ABSTRACT

The most fundamental purpose of blockchain technology is to enable persistent, consistent, distributed storage of information. Increasingly common are authentication systems that leverage this property to allow users to carry their personal data on a device while a hash of this data is signed by a trusted authority and then put on a blockchain to be compared against. For instance, in 2015, MIT introduced a schema for the publication of their academic certificates based on this principle. In this work, we propose a way for users to obtain assured identities based on face-to-face proofing that can then be validated against a record on a blockchain. Moreover, in order to provide anonymity, instead of storing a hash, we make use of a scheme of Brands to store a commitment against which one can perform zero-knowledge proofs of identity. We also enforce the confidentiality of the underlying data by letting users control a secret of their own. We show how our schema can be implemented on Bitcoin's blockchain and how to save bandwidth by grouping commitments using Merkle trees to minimize the number of Bitcoin transactions that need to be sent. Finally, we describe a system in which users can gain access to services thanks to the identity records of our proposal.

Motivation & Objective

  • To enable users to obtain cryptographically assured digital identities based on face-to-face identity proofing.
  • To provide strong anonymity by avoiding storage of identity hashes and instead using zero-knowledge commitments.
  • To allow secure, efficient revocation and updates of identity records using Bitcoin’s blockchain without relying on centralized revocation lists.
  • To minimize bandwidth and transaction costs through Merkle tree aggregation and simplified verification.
  • To integrate the system into real-world use cases where users authenticate to services using their blockchain-stored identities.

Proposed method

  • Uses Brands' zero-knowledge, selective disclosure identity scheme based on discrete logarithm representations (DLREP) to bind identity data without exposing it.
  • Stores cryptographic commitments to identity attributes on the Bitcoin blockchain instead of hashes, enabling zero-knowledge proofs of possession.
  • Employs Merkle trees to group multiple user commitments, reducing the number of required Bitcoin transactions and minimizing bandwidth.
  • Enables users to verify the current status of their identity record using only block headers and authentication paths, compatible with Simplified Payment Verification (SPV) clients.
  • Integrates with existing PKI for initial authentication phases, ensuring compatibility while leveraging blockchain for long-term integrity and revocation.
  • Designs a system architecture with identity verifiers, service enablers, and users, where the service enabler maintains the Merkle tree and provides status updates without learning user identities.

Experimental results

Research questions

  • RQ1How can face-to-face identity proofing be transformed into a persistent, anonymous digital identity using a public blockchain?
  • RQ2Can zero-knowledge proofs be effectively used to enable selective disclosure of identity attributes while maintaining privacy?
  • RQ3How can identity revocation and updates be efficiently managed on a public blockchain like Bitcoin without relying on centralized lists?
  • RQ4What is the bandwidth and transaction cost overhead of maintaining up-to-date identity status using Merkle trees and SPV clients?
  • RQ5How does the proposed system compare in security and efficiency to traditional PKI revocation mechanisms like CRLs and OCSP?

Key findings

  • The system achieves user anonymity by storing commitments instead of hashes, with zero-knowledge proofs enabling selective disclosure of identity attributes.
  • Bandwidth requirements for users to verify identity status are kept low, at approximately 780 to 1664 bytes per block, depending on user activity.
  • The use of Merkle trees reduces the number of required Bitcoin transactions by grouping multiple user commitments into a single tree structure.
  • Revocation and update mechanisms are integrated into the blockchain’s native transaction model, avoiding reliance on external, potentially unavailable revocation lists.
  • The system defends against DoS attacks on revocation infrastructure by inheriting Bitcoin’s security model, which is resilient to such attacks.
  • Verification of identity status using SPV clients requires only 80-byte block headers every ten minutes and about 1 KB of data per verification, making it practical for lightweight clients.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.