Sidub.Platform.Cryptography 1.0.9

Prefix Reserved
dotnet add package Sidub.Platform.Cryptography --version 1.0.9                
NuGet\Install-Package Sidub.Platform.Cryptography -Version 1.0.9                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Sidub.Platform.Cryptography" Version="1.0.9" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Sidub.Platform.Cryptography --version 1.0.9                
#r "nuget: Sidub.Platform.Cryptography, 1.0.9"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Sidub.Platform.Cryptography as a Cake Addin
#addin nuget:?package=Sidub.Platform.Cryptography&version=1.0.9

// Install Sidub.Platform.Cryptography as a Cake Tool
#tool nuget:?package=Sidub.Platform.Cryptography&version=1.0.9                

Sidub Platform - Cryptography

This repository contains the cryptography module for the Sidub Platform. It provides cryptographic functions for the platform including hashing, encryption, signing and verification capabilities.

Abstractions and core concepts are defined within this library and implementations against specific cryptographic services are provided in the respective cryptography library (i.e., Sidub.Platform.Cryptography.AzureKeyVault).

[!WARNING] No guarantees are made regarding the security of the cryptographic functions provided by this library. It is the responsibility of the user to ensure that the cryptographic functions are used correctly and securely, and satisfy all requirements for the intended use.

Introduction

Cryptographic functionality is defined by the ICryptographyService interface which may be injected into services requiring it. The service is supported by various ICryptographyProvider implementations which provide the underlying cryptographic operations.

Not all cryptographic providers support all operations. See the respective documentation for supported operations.

Registering a cryptography service

Cryptography services may be registered within the service registry, using the a CryptographyServiceReference and IKeyConnector implementation associated with the desired cryptographic provider.

For example, to register a ephemeral cryptography service, use the EphemeralKeyConnector; or, to register a file system based cryptography service, use the FilesystemKeyConnector.

serviceCollection.AddSidubPlatform(serviceProvider =>
{
    var metadata = new InMemoryServiceRegistry();

    var cryptographyReference = new CryptographyServiceReference("crypto");
    var keyConnector = new EphemeralKeyConnector();
    //var keyConnector = new FilesystemKeyConnector(@"C:\Keys\");
    metadata.RegisterServiceReference(cryptographyReference, keyConnector);

    return metadata;
});

Performing cryptographic operations

Cryptographic operations are provided through the ICryptographyService implementation and operate against a provided CryptographyServiceReference which designates which cryptography service to use.

Various cryptographic operations are available:

  • Get / create / import symmetric key
  • Get / create / import asymmetric key
  • Encrypt / decrypt data using symmetric key
  • Encrypt / decrypt entities using symmetric key
  • Encrypt / decrypt data using asymmetric key exchange
  • Encrypt / decrypt entities using asymmetric key exchange
  • Sign / verify data using asymmetric key
  • Sign / verify entities using asymmetric key

See the specific documentation for details on how to use the cryptographic operations.

License

This project is dual-licensed under the AGPL v3 or a proprietary license. For details, see https://sidub.ca/licensing or the LICENSE.txt file.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  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. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Sidub.Platform.Cryptography:

Package Downloads
Sidub.Platform.Cryptography.AzureKeyVault

Cryptography provider library for Azure Key Vault.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.9 155 9/18/2024