Skip to content

Latest commit

 

History

History
70 lines (50 loc) · 2.66 KB

File metadata and controls

70 lines (50 loc) · 2.66 KB

[RFC] Ocrypt Distributed Key Recovery - Ready for Integration

Overview

We've successfully implemented Ocrypt distributed key recovery as a new PRF option in VeraCrypt. Ocrypt provides enterprise-grade key recovery through distributed cryptography, allowing organizations to recover encrypted volumes through a threshold of authorized parties.

Current Status ✅

  • Complete integration: Ocrypt works as PRF #7 alongside existing algorithms
  • Volume creation/mounting: Full functionality tested and working
  • Security features: Secure random generation, atomic metadata updates, rollback safety
  • OpenSSL compatibility: Uses existing OpenSSL dependencies already in VeraCrypt

Technical Implementation

No new dependencies required - Ocrypt uses the existing OpenSSL libcrypto that's already linked in VeraCrypt for OpenADP support.

Key features:

  • Integrates seamlessly with existing VeraCrypt PRF system
  • Maintains all existing security properties (plausible deniability, hidden volumes)
  • Follows VeraCrypt coding standards and architecture
  • Comprehensive error handling and rollback safety

Benefits

For Users:

  • Enterprise key recovery without compromising security
  • Eliminates risk of permanently lost encrypted data
  • Optional feature - doesn't affect existing functionality

For Organizations:

  • Regulatory compliance for data recovery requirements
  • Distributed trust model (no single point of failure)
  • Seamless integration with existing VeraCrypt deployments

Implementation Details

Code Quality:

  • Follows VeraCrypt patterns and conventions
  • Comprehensive testing on multiple platforms
  • Complete documentation and code comments
  • Security review completed

Integration Points:

  • Added to src/Common/Pkcs5.c alongside existing PRF algorithms
  • Uses existing OpenSSL crypto functions (already linked)
  • Metadata storage uses VeraCrypt's existing mechanisms
  • Error handling follows VeraCrypt patterns

Questions for Maintainers

  1. Are you interested in reviewing a complete Ocrypt implementation?
  2. Any specific requirements for enterprise-focused features?
  3. Preferred PR structure for this type of addition?
  4. Testing requirements beyond our current comprehensive test suite?

Next Steps

We're ready to submit a complete pull request with:

  • Full Ocrypt implementation
  • Comprehensive test suite
  • Documentation updates
  • Build system integration

The implementation is production-ready and we're committed to maintaining it long-term as part of the VeraCrypt project.


Repository: Implementation available for review upon request Contact: Available for technical discussions or code review