Isopoh.Cryptography.Blake2b 2.0.0

dotnet add package Isopoh.Cryptography.Blake2b --version 2.0.0                
NuGet\Install-Package Isopoh.Cryptography.Blake2b -Version 2.0.0                
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="Isopoh.Cryptography.Blake2b" Version="2.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Isopoh.Cryptography.Blake2b --version 2.0.0                
#r "nuget: Isopoh.Cryptography.Blake2b, 2.0.0"                
#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 Isopoh.Cryptography.Blake2b as a Cake Addin
#addin nuget:?package=Isopoh.Cryptography.Blake2b&version=2.0.0

// Install Isopoh.Cryptography.Blake2b as a Cake Tool
#tool nuget:?package=Isopoh.Cryptography.Blake2b&version=2.0.0                

Isopoh

BLAKE2B

Argon2 uses Blake2b as a cryptographic building block. This code uses the C# implementation of Blake2 modified from https://github.com/BLAKE2. The main modification is that the Blake2 here uses SecureArray<T>. The SecureArray takes a SecureArrayCall to protect potentially sensitive data. Most other modifications are strictly cosmetic.

As part of this Blake2b port, an effort was made to speed Blake2b by using techniques like unrolling and using raw buffers in unsafe code. It turns out the CLR optimizes plain code better than unrolled/unsafe code and the original always ran faster. At some point I may try a port to System.Numerics.Vector<T>...

API GENERATION

The API Documentation at https://mheyman.github.io/Isopoh.Cryptography.Argon2 gets generated automatically upon build. This happens via a dummy C# "Doc" project that uses the DocFx NuGet package to produce the API documentation.

AUTHOR

Michael Heyman

ACKNOWLEDGMENTS

List of people and project that inspired creation of this one:

  • The many contributers of the Argon2 repository
  • and the cryptographers responsible for creating and testing that algorithm
  • @CodesInChaos for the fully managed Blake2b implementation here
  • @PurpleBooth for his readme template posted here

LICENSE

<a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/88x31.png" /></a><br /><span xmlns:dct="http://purl.org/dc/terms/" property="dct:title">Isopoh.Cryptography.Argon2</span> by <a xmlns:cc="http://creativecommons.org/ns#" href="https://github.com/mheyman/Isopoh.Cryptography.Argon2" property="cc:attributionName" rel="cc:attributionURL">Michael Heyman</a> is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.

PRODUCTION STATUS & SUPPORT

You should be aware that this project is supported solely by me and provided as is.

Go back to the top

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  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 is compatible.  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 netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 is compatible. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  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 (4)

Showing the top 4 NuGet packages that depend on Isopoh.Cryptography.Blake2b:

Package Downloads
Isopoh.Cryptography.Argon2

Argon2 Password Hasher written in C#. Uses Isopoh.Cryptography.Blake2 for hashing and Isopoh.Cryptography.SecureArray to protect sensitive data.

SiaSkynet

Sia Skynet API Client

NanoRPC.Wallet

Library to communicatie with NANO Currency node using RPC

Tangle.Net.Chrysalis

.NET Standard 2.0 IOTA Chrysalis Library C# Port

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on Isopoh.Cryptography.Blake2b:

Repository Stars
johnstaveley/SecurityEssentials
Raise your baseline in security by using this as your template instead of default Mvc project. Keep your app secure by continuously applying Security rules
Version Downloads Last updated
2.0.0 338,332 8/17/2023
1.1.12 390,064 5/22/2022
1.1.11 70,651 12/12/2021
1.1.10 521,589 11/18/2020
1.1.9 21,481 10/2/2020
1.1.8 52,683 7/26/2020
1.1.7 781 7/26/2020
1.1.6 1,085 7/25/2020
1.1.5 794 7/25/2020
1.1.4 5,592 7/5/2020
1.1.3 94,398 10/27/2019
1.1.2 116,362 5/14/2019
1.1.1 2,586 2/16/2019
1.1.0 936 2/16/2019
1.0.10 1,485 2/10/2019
1.0.9 903 2/10/2019
1.0.8 91,592 3/11/2018
1.0.7 1,125 3/11/2018
1.0.6 12,059 1/13/2018
1.0.5 1,337 10/29/2017
1.0.4 1,211 9/23/2017
1.0.3 936 9/10/2017
1.0.2 1,455 8/31/2017
1.0.1 1,795 3/8/2017
1.0.0 3,595 7/31/2016

Bump version to match Isopoh.Cryptography.Argon2.