Security Considerations
# Security Considerations
## Privacy Assumptions
Self Connect's privacy model assumes:
1. **ODIS Operators:** At least k operators remain honest
2. **Rate Limiting:** Quota system prevents mass scraping
3. **Blinding:** Client-side blinding is implemented correctly
4. **No Collusion:** Attackers don't control k or more ODIS operators
**If Assumptions Hold:**
* Identifiers cannot be reverse-engineered from blockchain data
* Rainbow table attacks are prohibitively expensive
* User privacy is preserved
**If Assumptions Fail:**
* If k operators are compromised: Peppers for any identifier can be computed
* If rate limiting is bypassed: Rainbow tables become feasible
## Sybil Resistance
Self Connect provides Sybil resistance through:
1. **Verification Requirements:** Users must prove ownership of identifiers
2. **Issuer Quality:** Applications choose issuers with strong verification
3. **Costly Registration:** ODIS quota costs make mass fake registrations expensive
4. **Unique Identifiers:** Phone numbers and verified social accounts are limited per person
**Limitations:**
* Relies on issuer verification quality
* Some identifiers (email) are easier to create in bulk
* Applications must choose issuers carefully
## Comparison: ASv1 vs. Self Connect
| Aspect | ASv1 | Self Connect |
| ------------------------- | --------------------------------- | ---------------------------- |
| **Verification** | 3 randomly selected validators | Issuer (flexible method) |
| **Trust Model** | Single root: Validator collective | Multiple roots: Each issuer |
| **Verification Quality** | Standardized across network | Varies by issuer |
| **Flexibility** | Phone numbers only | Any identifier type |
| **Censorship Resistance** | Validator majority | Multi-issuer selection |
| **Scalability** | Limited by validator overhead | Scales with issuer ecosystem |
## Best Practices
1. **Choose Trusted Issuers**
* Evaluate verification methods
* Check issuer reputation
* Monitor issuer behavior
2. **Implement Rate Limiting**
* Limit lookup frequency per user
* Monitor for abnormal query patterns
3. **Validate Results**
* Check timestamps for recency
* Verify issuer addresses
* Handle multiple attestations appropriately
4. **Secure Key Management**
* Protect issuer private keys
* Use hardware security modules for production
* Implement key rotation procedures
5. **Monitor ODIS Quota**
* Set up alerts for low quota
* Implement automatic top-ups
* Track quota usage patterns
Privacy Assumptions
Self Connect’s privacy model assumes:
- ODIS Operators: At least k operators remain honest
- Rate Limiting: Quota system prevents mass scraping
- Blinding: Client-side blinding is implemented correctly
- No Collusion: Attackers don’t control k or more ODIS operators
If Assumptions Hold:
- Identifiers cannot be reverse-engineered from blockchain data
- Rainbow table attacks are prohibitively expensive
- User privacy is preserved
If Assumptions Fail:
- If k operators are compromised: Peppers for any identifier can be computed
- If rate limiting is bypassed: Rainbow tables become feasible
Sybil Resistance
Self Connect provides Sybil resistance through:
- Verification Requirements: Users must prove ownership of identifiers
- Issuer Quality: Applications choose issuers with strong verification
- Costly Registration: ODIS quota costs make mass fake registrations expensive
- Unique Identifiers: Phone numbers and verified social accounts are limited per person
Limitations:
- Relies on issuer verification quality
- Some identifiers (email) are easier to create in bulk
- Applications must choose issuers carefully
Comparison: ASv1 vs. Self Connect
| Aspect | ASv1 | Self Connect |
|---|---|---|
| Verification | 3 randomly selected validators | Issuer (flexible method) |
| Trust Model | Single root: Validator collective | Multiple roots: Each issuer |
| Verification Quality | Standardized across network | Varies by issuer |
| Flexibility | Phone numbers only | Any identifier type |
| Censorship Resistance | Validator majority | Multi-issuer selection |
| Scalability | Limited by validator overhead | Scales with issuer ecosystem |
Best Practices
- Choose Trusted Issuers
- Evaluate verification methods
- Check issuer reputation
- Monitor issuer behavior
- Implement Rate Limiting
- Limit lookup frequency per user
- Monitor for abnormal query patterns
- Validate Results
- Check timestamps for recency
- Verify issuer addresses
- Handle multiple attestations appropriately
- Secure Key Management
- Protect issuer private keys
- Use hardware security modules for production
- Implement key rotation procedures
- Monitor ODIS Quota
- Set up alerts for low quota
- Implement automatic top-ups
- Track quota usage patterns
Was this page helpful?
Thanks for your feedback!