Skip to content

Commit 26bd24a

Browse files
committed
Added overview draft
1 parent 7cd0f6d commit 26bd24a

File tree

1 file changed

+52
-29
lines changed

1 file changed

+52
-29
lines changed

docs/overview.mdx

Lines changed: 52 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,76 @@
11
---
2-
description: Rarimo is a privacy-first social protocol that seamlessly combines various identity standards and forms a private but verifiable social graph.
2+
description: Rarimo protocol combines anonymity with a verifiable social graph using zero-knowledge proofs, ensuring private social interactions.
33
slug: /
44
---
55
import OutLink from "@site/src/components/OutLink";
66
import IdealImage from '@site/src/components/IdealImage';
77

88

9-
# Overview
9+
# What is Rarimo?
1010

11-
## What is Rarimo
11+
Rarimo is a privacy-first (zk) social protocol designed to facilitate the development of a new generation of social apps. Traditionally, social apps have had to balance user privacy against engagement. Rarimo resolves this tradeoff by enabling users to interact anonymously while maintaining a history of their actions, connections, and identity attributes. With Rarimo, users can selectively disclose specific information while keeping other aspects of their social graph private.
1212

13-
Rarimo is a privacy-first social protocol that seamlessly combines various identity standards on-chain and off-chain and allows the formation of a private yet verifiable history of their use and relations.
13+
The Rarimo Protocol is built on three foundational components:
14+
- **Self-Issued Identity Framework**: This ensures that only verified, real individuals can participate in social apps, enhancing trust and authenticity.
15+
- **Private Social Graph**: This infrastructure supports private yet verifiable social interactions, allowing users to engage without compromising their privacy.
16+
**RariMe App**: This is a self-sovereign wallet for managing your identity, giving users full control over their personal data.
1417

15-
At the heart of the Rarimo Social Protocol are three design pillars:
18+
Let's explore these components in detail to understand how the Rarimo Protocol operates.
1619

17-
1. **Control**. Users should have exclusive authority over managing their identity and social graph. Only the user decides what information to disclose and when.
18-
1. **Privacy**. Sensitive data must remain inaccessible to third parties. The user should decide what information to share, when, and with whom. While some protocols may require verifying the user's uniqueness and humanity, this should not compromise the privacy of personal information.
19-
1. **Compatibility**. The digital identity solution should support various industry standards, such as W3C DID credentials, soulbound tokens (SBTs), ENS records, etc. Each of these identity formats offers unique advantages. Therefore, the social protocol must allow interoperability among them. Additionally, it should support both off-chain and on-chain verification methods.
20+
## Verifiable self-issued identity framework
2021

21-
Rarimo aims to solve these challenges by providing a robust baselayer and a diverse toolset of identity subprotocols.
22+
Creating a pseudonymous account without linking it to a real person is easy, but such identities often lead to issues like fake accounts (Sybil attacks) that disrupt social interactions.
2223

23-
## Rarimo architecture
24+
Traditionally, identity verification involves a trusted issuer that authenticates users. This approach poses risks as the issuer could compromise privacy or be shut down. Verifying user uniqueness might require sharing sensitive data, like government IDs, which increases privacy risks.
2425

25-
### Rarimo Core
26+
Rarimo offers a solution by allowing users to establish their identity using only their government-issued biometric documents without needing a third-party issuer. Here's how it works:
2627

27-
The Rarimo Core is a decentralized blockchain-based system designed for timestamping, storing, and updating identity states and social relations that other networks and protocols can use. It is maintained by a set of validators that achieve consensus using the BFT-based delegated Proof-of-Stake mechanism. The chain has instant finality and supports EVM-compatible smart contracts. Additionally, Rarimo Core allows the efficient on-demand propagation of identity states over connected networks using decentralized oracles.
28+
1. **Keypair generation**: The user generates a keypair on their device.
29+
2. **Biometric document scan**: The user scans their biometric document using the RariMe App.
30+
3. **Registration**: The keypair is bound to the passport by submitting a zero-knowledge proof (ZKP) of passport validity and the public key to the registration smart contract.
2831

29-
<IdealImage img={require('/img/rarimo-core.png')} alt="Rarimo Design Principles" />
32+
This process allows users to verify their humanity, assert their uniqueness, or selectively disclose passport attributes (like citizenship or legal age) using ZKPs without revealing private data to any third party. The proofs can be verified both on-chain and off-chain.
3033

31-
### Social Protocol
34+
Additionally, the app calculates a hash of the passport's public key (Active Authentication Public Key), serving as the passport's unique identifier. This hash is stored in the registration smart contract to prevent multiple registrations with the same document.
3235

33-
The Social Protocol aims to enable the creation of private social graphs consisting of user actions and interactions. These actions are invisible to the public until their owner selectively discloses them using zero-knowledge proofs. A few examples of such proofs are:
34-
- Proving a credential and attestation ownership at a particular time.
35-
- Proving that a particular user or a group initiated some actions.
36-
- Proving that some claims or passports belong to one identity.
37-
- Proving that the user is a member of a specific group.
36+
To mitigate potential "dictionary" attacks, where a passport issuer or third party might try to identify registered passports by hashing known values, Rarimo maintains a global Merkle tree of passport hashes. This tree is shared across all social apps, providing plausible deniability for users and preventing attackers from deducing participation in specific applications. The more passports and social apps accumulate over time, the more robust this identity system becomes.
37+
38+
39+
## Private Social Graph
40+
41+
The Rarimo protocol enables the creation of private social graphs. These graphs consist of user actions and interactions that remain invisible to the public until the owner selectively discloses them using zero-knowledge proofs. This ensures user privacy while allowing for verifiable claims.
42+
43+
**Examples of ZK proofs**:
44+
- **Credential and Attestation Ownership**: Proving ownership of a credential or attestation at a specific time.
45+
- **Action Initiation**: Proving that a particular user or group initiated certain actions.
46+
- **Group Membership**: Proving that a user is a member of a specific group.
3847

3948
<IdealImage img={require('/img/rarimo-private-social-graph.png')} alt="Rarimo Social Identity" />
4049

41-
The social protocol consists of two key sub-protocols:
42-
1. **An Iden3 protocol** implementation for issuing identity statements in a W3C DID Verifiable Credential format. The credentials contain parts of social graphs, such as user profile details, likes, group memberships, reputation scores, etc. Users may disclose some attributes of these credentials using zero-knowledge proofs, both on-chain and off-chain.
43-
1. **ZK Passport** enable users to establish an identity solely with their government-issued biometric documents without needing a third-party issuer. With these profiles, users verify their humanity, assert their uniqueness, or selectively disclose some passport attributes, such as citizenship or being of legal age, using zero-knowledge proofs. Iden3 identity providers can track passport revocation events and automatically revoke or reissue Verifiable Credentials.
50+
To achieve this, Rarimo provides a set of data structures for creating on-chain anchors of the social graph data, which can be used in zero-knowledge proofs. These data structures include:
51+
52+
- **Commitments**: Secure, private statements about user actions or attributes.
53+
- **Commitment Trees**: Hierarchical structures that organize commitments, enabling efficient and scalable storage on-chain.
54+
55+
These structures allow users to maintain a private yet verifiable record of their social interactions, ensuring both privacy and authenticity.
56+
57+
## RariMe App
58+
59+
The RariMe App is a mobile self-custody wallet designed to provide private yet verifiable social identities. During signup, the app uses the phone's camera and NFC chip to scan the user's biometric documents. The app ensures that no user data is shared with any party unless the user explicitly chooses to disclose certain aspects of their identity using zero-knowledge proofs.
60+
61+
**Key features:**
62+
63+
- **Biometric document scanning**: Utilizes the camera and NFC chip to scan and verify user documents securely.
64+
- **Privacy-by-Default**: Guarantees user data remains private.
65+
- **Zero-Knowledge Proofs**: Allows users to selectively disclose specific identity attributes without revealing private data.
66+
67+
The RariMe App empowers users with control over their identity, ensuring both privacy and verifiability in social interactions.
4468

45-
### Applications
69+
## Ecosystem
4670

47-
Rarimo provides a set of applications that leverage the Rarimo Core and Social Protocol to offer a seamless user experience. These applications include:
71+
Building on Rarimo technology, the following ecosystem products have been created:
4872

49-
- **RariMe**: An identity wallet that allows users to manage their digital identity and social relations, generate zero-knowledge proofs, and much more. It is available as a mobile app and a MetaMask snap.
50-
- **Freedom Tool**: A ZK-enabled tool for transparent and privacy-preserving online voting.
51-
- **Proof of Humanity**: Aggregates the most popular proof of humanity solutions into a single interface available on and off-chain.
52-
- **Polygon ID State Replication**: Scales the use of Polygon ID credentials to any EVM-compatible chain on demand.
53-
- **World ID State Replication**: Scales the use of WolrdID proofs to any EVM-compatible chain on demand.
73+
- **Freedom Tool**: A zero-knowledge-enabled tool for transparent and privacy-preserving online voting.
74+
- **Proof of Humanity**: Aggregates the most popular proof of humanity solutions into a single interface, available both on and off-chain.
75+
- **Polygon ID State Replication**: Enables the scaling of Polygon ID credentials to any EVM-compatible chain on demand.
76+
- **World ID State Replication**: Facilitates the scaling of WorldID proofs to any EVM-compatible chain on demand.

0 commit comments

Comments
 (0)