BifrostSecurity 1.0.0
See the version list below for details.
dotnet add package BifrostSecurity --version 1.0.0
NuGet\Install-Package BifrostSecurity -Version 1.0.0
<PackageReference Include="BifrostSecurity" Version="1.0.0" />
paket add BifrostSecurity --version 1.0.0
#r "nuget: BifrostSecurity, 1.0.0"
// Install BifrostSecurity as a Cake Addin #addin nuget:?package=BifrostSecurity&version=1.0.0 // Install BifrostSecurity as a Cake Tool #tool nuget:?package=BifrostSecurity&version=1.0.0
Bifrost.Security
Bifrost.Security is a cryptography library written in C#
Currently it supports:
- Ed25519 signatures
- Key-exchange using either Curve25519 (montgomery form) or Ed25519 public keys
- Hashing using SHA-512
Most functions come in two variants:
- An easy to use variant, where inputs are complete byte arrays and results are returned in newly allocated arrays.
- An advanced variant which uses
ArraySegment<byte>
to work on slices of the passed in arrays. This can be used to avoid unnecessary allocations and copies.
Ed25519
(Key-exchange and signatures)
Ed25519 is a public key crypto system with a 128 bit security level. It is based on the 255 bit elliptic curve Curve25519 using Edwards coordinates.
Data structures
Public Keys are 32 byte values. All possible values of this size a valid.
Private Keys take two forms:
- A 32 byte seeds which allow arbitrary values. This is the form that should be generated and stored.
- A 64 byte expanded form. This forms is used internally to improve performance
Signatures are 64 byte values
To generate a keypair first obtain a 32 byte random value, the privateKeySeed
from a cryptographic random number generator, such as RNGCryptoService
.
Then call KeyPairFromSeed
on it to get the publicKey
and the expandedPrivateKey
.
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. |
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.