Extensions.Data.xxHash.core20
1.0.2.1
dotnet add package Extensions.Data.xxHash.core20 --version 1.0.2.1
NuGet\Install-Package Extensions.Data.xxHash.core20 -Version 1.0.2.1
<PackageReference Include="Extensions.Data.xxHash.core20" Version="1.0.2.1" />
paket add Extensions.Data.xxHash.core20 --version 1.0.2.1
#r "nuget: Extensions.Data.xxHash.core20, 1.0.2.1"
// Install Extensions.Data.xxHash.core20 as a Cake Addin #addin nuget:?package=Extensions.Data.xxHash.core20&version=1.0.2.1 // Install Extensions.Data.xxHash.core20 as a Cake Tool #tool nuget:?package=Extensions.Data.xxHash.core20&version=1.0.2.1
xxHash.NET
A .NET implementation of xxHash.
Synopsis
Demo
.NET Fiddle(https://dotnetfiddle.net/dbgN2y)
xxHash API approach
The following snippet demonstrates computing the XXH32
hash value of the input string "test".
byte[] input = Encoding.ASCII.GetBytes("test"); // the data to be hashed
uint result = XXHash.XXH32(input); // compute the XXH32 hash value. => '1042293711'
// NOTE:
// you can specified seed as the second parameter.
The following snippet computes the XXH32
hash value of the input file "test.doc".
Stream stream = File.OpenRead(@"C:\test.doc"); // the data to be hashed
XXHash.State32 state = XXHash.CreateState32(); // create and initialize a xxH states instance.
// NOTE:
// xxHash require a xxH state object for keeping
// data, seed, and vectors.
XXHash.UpdateState32(state, stream); // puts the file stream into specified xxH state.
uint result = XXHash.DigestState32(state); // compute the XXH32 hash value.
Supported xxHash APIs:
| original xxHash API name | XXH32 | XXH64 |
|--------------------------|--------------------------|--------------------------|
| XXH*nn*() | XXHash.XXH32() | XXHash.XXH64() |
| XXH*nn*_state_t | XXHash.State32 | XXHash.State64 |
| XXH*nn*_createState() | XXHash.CreateState32() | XXHash.CreateState64() |
| XXH*nn*_freeState() | *Not implemented* | *Not implemented* |
| XXH*nn*_reset() | XXHash.ResetState32() | XXHash.ResetState64() |
| XXH*nn*_update() | XXHash.UpdateState32() | XXHash.UpdateState64() |
| XXH*nn*_digest() | XXHash.DigestState32() | XXHash.DigestState64() |
HashAlgorithm approach
In addition, the assembly also provides XXHash32
and XXHash64
the two implementation classes of System.Security.Cryptography.HashAlgorithm.
The following snippets demonstrate computing the XXH32
hash value with HashAlgorithm approach.
byte[] input = Encoding.ASCII.GetBytes("test"); // the data to be hashed.
using (HashAlgorithm xxhash = XXHash32.Create())
{
byte[] result = xxhash.ComputeHash(input); // compute the hash.
}
-- or --
byte[] input = Encoding.ASCII.GetBytes("test"); // the data to be hashed
using (HashAlgorithm xxhash = XXHash32.Create())
{
xxhash.TransformFinalBlock(input, 0, input.Length);
byte[] result = xxhash.Hash; // retrieves the hash value.
}
NOTE: XXH64 is also supported: you can use xxHash64
class instead of xxHash32
.
Versioning
- v1.0.2 (equal to xxHash v0.6.2)
Copyright
Copyright (c) 2015 Wilhelm Liao. See LICENSE for further details.
Product | Versions 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. |
-
.NETStandard 2.0
- No dependencies.
NuGet packages (6)
Showing the top 5 NuGet packages that depend on Extensions.Data.xxHash.core20:
Package | Downloads |
---|---|
SubstrateNetApi
Just another Substrate .NET API, written in NETStandard2.0 to provide maximum compatibility for Unity3D. |
|
HDWallet.Core
Package Description |
|
Ajuna.NetApi
Ajuna Network Substrate NETStandard2.1 API |
|
Substrate.NET.API
Substrate Core .NET API |
|
Sfw.Utility.Crypto
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.2.1 | 481,744 | 10/28/2017 |
v1.0.2 (equal to xxHash v0.6.2).