The Potential and Challenges of zk-SNARKs Digital Identity: From Privacy Protection to Diverse Identity Systems

robot
Abstract generation in progress

zk-SNARKs and digital identity: A balancing act in multiple dilemmas

The use of zk-SNARKs technology to protect privacy in digital identity systems has gradually become mainstream. Various zk-SNARKs digital identity projects are developing user-friendly software packages that allow users to prove they have a valid identity without disclosing identity details. The number of World ID users, which employs biometric technology and ensures privacy through zk-SNARKs, has recently surpassed 10 million. Regions such as Taiwan and the European Union are also actively exploring the application of zk-SNARKs technology in the digital identity field.

On the surface, the widespread application of digital identity based on zk-SNARKs seems to be a significant victory for the development of decentralized technology. It can protect various internet services from attacks and manipulation without sacrificing privacy. However, the reality is not so simple; such identification systems still have some potential risks. This article will elaborate on the following points:

  • zk-SNARKs packaging addresses many important issues
  • However, the identity wrapped in zk-SNARKs still carries risks, primarily stemming from the strict maintenance of the "one person, one identity" attribute.
  • Relying solely on "proof of wealth" to prevent attacks is not sufficient in most scenarios; we need some kind of "identification-like" solution.
  • The ideal state is that the cost of obtaining N identifications is N².
  • This ideal state is difficult to achieve completely, but "multiple identities" is the closest realistic solution.

Vitalik: Multiple Dilemmas of Digital Identity + ZK Technology

The Working Principle of zk-SNARKs Packaging Identification

Imagine that you obtain a World ID by scanning your eyeball, or by using your phone's NFC to read your passport to get an identity based on zk-SNARKs. Your phone stores a secret value s, which corresponds to a public hash value H(s) in the global registry. When logging into an application, you generate a user ID specific to that application, which is H(s, app_name), and verify through zk-SNARKs: this ID originates from the same secret value s as a public hash value in the registry. This way, each public hash value can only generate one ID for each application, but it does not disclose which exclusive ID corresponds to a particular public hash value.

The actual design may be more complex. For example, in World ID, the application-specific ID includes the hash value of the application ID and the session ID, allowing different operations within the same application to be disassociated from each other. The design of a passport based on zk-SNARKs can also be constructed in a similar way.

This design addresses some issues in traditional authentication. Traditional methods require users to provide complete legal identity information, which severely violates the "principle of least privilege" in computer security. While using indirect tokens such as phone numbers can improve the situation to some extent, this separation is extremely fragile. However, zk-SNARKs packaging technology largely resolves these problems.

Vitalik: Multiple Dilemmas of Digital Identity + ZK Technology

Limitations of zk-SNARKs

Despite the fact that zk-SNARKs technology solves many problems, there are still some limitations:

  1. It cannot truly achieve anonymity. If the application does not actively cooperate to protect privacy, but instead assigns a unique application-specific ID to each user, and users can only have one account, this may actually reduce the existing level of anonymity.

  2. Unable to prevent coercion. Even if the secret value s is not made public, what if someone forces its disclosure? The government may compel the disclosure of the secret value to view all activities, and employers may require the disclosure of complete information as a condition of employment.

  3. Unable to address non-privacy-related risks. All forms of identification have edge cases, such as the inability to cover stateless individuals, privileges brought by multiple nationalities, the possibility of the identification system being hacked or forged, and the failure of identification due to compromised biometric features, etc. These issues are unrelated to privacy, and zk-SNARKs are powerless against them.

Vitalik: Digital identity + ZK technology under multiple dilemmas

Insufficiency of Wealth Proof

Some believe that it is possible to rely entirely on "proof of wealth" to prevent attacks without building an identification system. However, this method is not applicable in certain scenarios, mainly because:

  1. Universal Basic Income-like scenario: It requires distributing assets or services to a very wide user base without considering payment ability. This type of "small-scale Universal Basic Income" can solve the problem of enabling people to obtain enough cryptocurrency to complete basic on-chain transactions and online purchases.

  2. Governance scenario: In a voting system, "one person controlling $100,000" should not be given the same weight as "1,000 people collectively holding $100,000." The latter represents 1,000 independent individuals and contains richer, valuable information.

This indicates that governance systems need to understand the internal coordination of funding bundles, rather than simply treating "funding bundles of equal size equally."

Vitalik: Digital Identity + ZK Technology's Multiple Dilemmas

Ideal State and Multidimensional Identity System

The theoretically ideal state is: the cost of obtaining N identities is N². This provides sufficient security buffers for anonymity while also limiting large entities from gaining excessive influence.

The multi-dimensional identity system can achieve this ideal state, mainly in two forms:

  1. Explicit multi-dimensional identity: Verify one's identity through the proof of others in the community.

  2. Implicit multiple identifications: There are numerous different identification providers, and applications are compatible with various identification authentications.

The multi-identity system has stronger fault tolerance, providing necessary deterrence against governance attacks and abusive behavior, while ensuring that coerced individuals cannot be required to disclose a fixed set of identification.

It is important to note that if the market share of a certain form of identification approaches 100%, the aforementioned characteristics will become invalid. Therefore, the ideal outcome of the "one person, one identification" project may be to integrate with a social graph-based identification system, providing initial support for the social graph and creating enough "seed users" to safely develop a globally distributed social graph.

Vitalik: digital identity + ZK technology's multiple dilemmas

Vitalik: The Multiple Dilemmas of Digital Identity + ZK Technology

View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • 7
  • Share
Comment
0/400
UnluckyLemurvip
· 8h ago
When did privacy become so valuable?
View OriginalReply0
ZkSnarkervip
· 8h ago
lmao imagine thinking zk identity is anonymous... fun fact: it's just pseudo-private at best
Reply0
DaoTherapyvip
· 8h ago
Wallet security is a big deal!
View OriginalReply0
NewDAOdreamervip
· 8h ago
Privacy protection is just a joke.
View OriginalReply0
BearMarketSunriservip
· 8h ago
That is to say... it can still be attacked, right?
View OriginalReply0
ShadowStakervip
· 8h ago
zk proofs still cant stop coercion... typical l2 hopium tbh
Reply0
BlockchainTalkervip
· 8h ago
actually, fascinating but the zk identity space needs way more work on security tbh...
Reply0
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate app
Community
English
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)