Extensions.Data.xxHash.core20
1.0.2.1
Install-Package Extensions.Data.xxHash.core20 -Version 1.0.2.1
dotnet add 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 |
---|---|
.NET | net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows |
.NET Core | netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1 |
.NET Standard | netstandard2.0 netstandard2.1 |
.NET Framework | net461 net462 net463 net47 net471 net472 net48 |
MonoAndroid | monoandroid |
MonoMac | monomac |
MonoTouch | monotouch |
Tizen | tizen40 tizen60 |
Xamarin.iOS | xamarinios |
Xamarin.Mac | xamarinmac |
Xamarin.TVOS | xamarintvos |
Xamarin.WatchOS | xamarinwatchos |
-
.NETStandard 2.0
- No dependencies.
NuGet packages (5)
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.0 API |
|
Sfw.Utility.Crypto
Package Description |
|
XSharp.VsParser.Helpers
XSharp.VsParser.Helpers contains some helper classes, that simplify the parsing and rewriting of XSharp code files. Based on XSharp.VsParser 2.8.1.15. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.2.1 | 224,453 | 10/28/2017 |
v1.0.2 (equal to xxHash v0.6.2).