TwinCipherGuard 1.0.0
dotnet add package TwinCipherGuard --version 1.0.0
NuGet\Install-Package TwinCipherGuard -Version 1.0.0
<PackageReference Include="TwinCipherGuard" Version="1.0.0" />
<PackageVersion Include="TwinCipherGuard" Version="1.0.0" />
<PackageReference Include="TwinCipherGuard" />
paket add TwinCipherGuard --version 1.0.0
#r "nuget: TwinCipherGuard, 1.0.0"
#:package TwinCipherGuard@1.0.0
#addin nuget:?package=TwinCipherGuard&version=1.0.0
#tool nuget:?package=TwinCipherGuard&version=1.0.0
TwinCipherGuard Library
TwinCipherGuard is a library for encrypting and decrypting data using a twin-cipher approach with Azure Key Vault. It provides an easy-to-use API for generating and managing encryption keys and performing encryption and decryption using DEK and MEK.
Features
- Generate Data Encryption Keys (DEKs) based on user's identifier.
- Generate encrypted DEKs using Azure Key Vault.
- Encrypt and decrypt data using the generated DEKs and MEK stored in Azure Key Vault.
Getting Started
Prerequisites
- .NET Core 6 or later
- Azure Key Vault account with configured access policies
Installation
Install the TwinCipherGuard Library from NuGet:
dotnet add package TwinCipherGuardLib --version 1.0.0
Configuration
Add the following configuration to your appsettings.json file:
{
"AzureKeyVault": {
"ClientId": "YOUR_AZURE_AD_APP_CLIENT_ID",
"ClientSecret": "YOUR_AZURE_AD_APP_CLIENT_SECRET",
"TenantId": "YOUR_AZURE_AD_TENANT_ID",
"VaultUri": "https://YOUR_KEY_VAULT_NAME.vault.azure.net/"
}
}
Usage
In your application, set up the dependency injection container to use the TwinCipherGuard Library:
// Add using directives
using TwinCipherGuardLib;
using TwinCipherGuardLib.Configuration;
// Configure services
services.AddOptions()
.Configure<AzureKeyVaultSettings>(Configuration.GetSection("AzureKeyVault"))
.AddSingleton<ITwinCipherGuard, TwinCipherGuard>();
Now, you can use the ITwinCipherGuard interface in your application to perform encryption and decryption operations:
// Add using directive
using TwinCipherGuardLib;
// Inject ITwinCipherGuard in your class constructor
public class MyClass
{
private readonly ITwinCipherGuard _twinCipherGuard;
public MyClass(ITwinCipherGuard twinCipherGuard)
{
_twinCipherGuard = twinCipherGuard;
}
// Use _twinCipherGuard to perform encryption and decryption operations
}
General Public License (GPL)
Source Code
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. 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. |
-
net6.0
- Azure.Identity (>= 1.8.2)
- Azure.Security.KeyVault.Keys (>= 4.5.0)
- Microsoft.Extensions.Options (>= 7.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 324 | 4/12/2023 |