UvfLib.Core
1.0.4
dotnet add package UvfLib.Core --version 1.0.4
NuGet\Install-Package UvfLib.Core -Version 1.0.4
<PackageReference Include="UvfLib.Core" Version="1.0.4" />
<PackageVersion Include="UvfLib.Core" Version="1.0.4" />
<PackageReference Include="UvfLib.Core" />
paket add UvfLib.Core --version 1.0.4
#r "nuget: UvfLib.Core, 1.0.4"
#:package UvfLib.Core@1.0.4
#addin nuget:?package=UvfLib.Core&version=1.0.4
#tool nuget:?package=UvfLib.Core&version=1.0.4
UvfLib.Core - Cryptographic Core Library
Overview
UvfLib.Core is the open-source cryptographic foundation for Universal Vault Format (UVF) and Cryptomator vault operations. This library provides low-level APIs for secure file encryption, decryption, and vault management.
Features
- UVF Format Support: Complete implementation of Universal Vault Format v3
- Cryptomator Compatibility: Full support for Cryptomator v8 vault format
- Strong Cryptography: AES-GCM, AES-SIV, HKDF, and other industry-standard algorithms
- Cross-Platform: Built on .NET Standard 2.0 for maximum compatibility
- Open Source: AGPL-3.0 licensed for transparency and security auditing (commercial licenses available on request)
Architecture
Core Components
Api/- Public interfaces and contractsCommon/- Cryptographic utilities and helpersV3/- UVF format implementationCryptomatorV8/- Cryptomator compatibility layer
Key Classes
Cryptor- Main cryptographic operations interfaceFileContentCryptor- File encryption/decryptionDirectoryContentCryptor- Directory structure encryptionFileHeaderCryptor- File header managementMasterkey- Key derivation and management
Usage
This is a low-level library intended for integration into higher-level vault management systems. For easier-to-use APIs, see the companion UvfLib.FileSystem package.
// Example: Creating a cryptor for UVF format
var factory = new CryptoFactoryImpl();
var masterkey = UVFMasterkeyImpl.Create(password, vaultPath);
var cryptor = factory.CreateCryptor(masterkey);
// Use cryptor for file operations...
Security
This library implements cryptographic operations following industry best practices:
- Authenticated encryption (AES-GCM)
- Deterministic authenticated encryption (AES-SIV) for filenames
- Secure key derivation (HKDF, SCrypt)
- Constant-time operations where applicable
- Secure memory handling
License
GNU Affero General Public License v3.0 (AGPL-3.0) — see the LICENSE file at the repository root for details. Alternative commercial licenses are available upon request (contact info@smartinventure.com).
Contributing
This project welcomes contributions. Please ensure all cryptographic changes are thoroughly reviewed and tested.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- BouncyCastle.Cryptography (>= 2.4.0)
- jose-jwt (>= 5.0.0)
- System.IdentityModel.Tokens.Jwt (>= 8.0.2)
- System.Memory (>= 4.5.5)
- System.Security.Cryptography.Algorithms (>= 4.3.1)
- System.Text.Json (>= 8.0.5)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on UvfLib.Core:
| Package | Downloads |
|---|---|
|
UvfLib.Vault
Vault stream + file-header orchestration for UVF and Cryptomator vaults (built on UvfLib.Core). |
|
|
UvfLib.Master
UVF/Cryptomator IStorage encryption decorators (managed). The Release build also produces the native "TitanVault" AOT facade. |
GitHub repositories
This package is not used by any popular GitHub repositories.