Data.HashFunction.Interfaces 3.0.1

There is a newer version of this package available.
See the version list below for details.
dotnet add package Data.HashFunction.Interfaces --version 3.0.1                
NuGet\Install-Package Data.HashFunction.Interfaces -Version 3.0.1                
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="Data.HashFunction.Interfaces" Version="3.0.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Data.HashFunction.Interfaces --version 3.0.1                
#r "nuget: Data.HashFunction.Interfaces, 3.0.1"                
#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 Data.HashFunction.Interfaces as a Cake Addin
#addin nuget:?package=Data.HashFunction.Interfaces&version=3.0.1

// Install Data.HashFunction.Interfaces as a Cake Tool
#tool nuget:?package=Data.HashFunction.Interfaces&version=3.0.1                

Usage

The usage for all hash functions has been standardized and is accessible via the Data.HashFunction.IHashFunction and Data.HashFunction.IHashFunctionAsync interfaces. The core package, Data.HashFunction.Core, only contains abstract hash function implementations and base functionality for the library. In order to use a specific hashing algorithms, you will need to reference its implementation packages.

IHashFunction implementations should be immutable and stateles. All IHashFunction methods and members should be thread safe.

using System;
using Data.HashFunction;
using Data.HashFunction.Jenkins;

public class Program
{
    public static readonly IJenkinsOneAtATime _jenkinsOneAtATime = JenkinsOneAtATimeFactory.Instance.Create();
    public static void Main()
    {
        var hashValue = _jenkinsOneAtATime.ComputeHash("foobar");

        Console.WriteLine(hashValue.AsHexString());
    }
}

Release Notes

See Release Notes wiki page.

Contributing

Feel free to propose changes, notify of issues, or contribute code using GitHub! Submit issues and/or pull requests as necessary.

There are no special requirements for change proposal or issue notifications.

Code contributions should follow existing code's methodologies and style, along with XML comments for all public and protected namespaces, classes, and functions added.

License

Data.HashFunction is released under the terms of the MIT license. See LICENSE for more information or see http://opensource.org/licenses/MIT.

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 netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.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.
  • .NETStandard 2.0

    • No dependencies.

NuGet packages (6)

Showing the top 5 NuGet packages that depend on Data.HashFunction.Interfaces:

Package Downloads
Data.HashFunction.Core

C# library to create a common interface to non-cryptographic hash functions (http://en.wikipedia.org/wiki/List_of_hash_functions#Non-cryptographic_hash_functions) and provide implementations of public hash functions. Includes wrapper for HashAlgorithm-based hash functions.

Data.HashFunction.FarmHash

Data.HashFunction implementation of FarmHash (https://github.com/google/farmhash).

Data.HashFunction.Blake2

Data.HashFunction implementation of BLAKE2 hash (http://blake2.net/).

Data.HashFunction.MetroHash

Data.HashFunction implementation of MetroHash (https://github.com/jandrewrogers/MetroHash).

Data.HashFunction.Blake3

Data.HashFunction implementation of BLAKE3 hash (https://en.wikipedia.org/wiki/BLAKE_(hash_function)#BLAKE3).

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
3.1.2 1,777 11/5/2024
3.1.1 513 11/5/2024
3.0.1 518 11/3/2024