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



Argon2 uses Blake2b as a cryptographic building block. This code uses the C# implementation of Blake2 modified from 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>...


The API Documentation at gets generated automatically upon build. This happens via a dummy C# "Doc" project that uses the DocFx NuGet package to produce the API documentation.


Michael Heyman


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


<a rel="license" href=""><img alt="Creative Commons License" style="border-width:0" src="" /></a><br /><span xmlns:dct="" property="dct:title">Isopoh.Cryptography.Argon2</span> by <a xmlns:cc="" href="" property="cc:attributionName" rel="cc:attributionURL">Michael Heyman</a> is licensed under a <a rel="license" href="">Creative Commons Attribution 4.0 International License</a>.


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

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


Sia Skynet API Client


Library to communicatie with NANO Currency node using RPC


.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
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 90,188 8/17/2023
1.1.12 326,776 5/22/2022
1.1.11 59,012 12/12/2021
1.1.10 468,080 11/18/2020
1.1.9 19,726 10/2/2020
1.1.8 51,385 7/26/2020
1.1.7 720 7/26/2020
1.1.6 715 7/25/2020
1.1.5 729 7/25/2020
1.1.4 5,455 7/5/2020
1.1.3 91,088 10/27/2019
1.1.2 110,588 5/14/2019
1.1.1 2,504 2/16/2019
1.1.0 875 2/16/2019
1.0.10 1,427 2/10/2019
1.0.9 852 2/10/2019
1.0.8 90,487 3/11/2018
1.0.7 1,064 3/11/2018
1.0.6 11,953 1/13/2018
1.0.5 1,285 10/29/2017
1.0.4 1,150 9/23/2017
1.0.3 883 9/10/2017
1.0.2 1,392 8/31/2017
1.0.1 1,715 3/8/2017
1.0.0 3,477 7/31/2016

Bump version to match Isopoh.Cryptography.Argon2.