**Deskasoft International has officially taken over maintenance and ongoing development of this library at https://github.com/Deskasoft/Data.HashFunction.**
---
Data.HashFunction ![License](https://img.shields.io/github/license/brandondahler/Data.HashFunction.svg)
=================
Data.HashFunction is a 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. It is licensed under the permissive and OSI approved [MIT](http://opensource.org/licenses/MIT) license.
All functionality of the library is tested using [xUnit](https://github.com/xunit/xunit). A primary requirement for each release is 100% code coverage by these tests.
All code within the libarary is commented using Visual Studio-compatible XML comments.
Status
------
### Master
[![Build Status](https://img.shields.io/appveyor/ci/brandondahler/data-hashfunction/master.svg)](https://ci.appveyor.com/project/brandondahler/data-hashfunction)
[![Test Status](https://img.shields.io/appveyor/tests/brandondahler/data-hashfunction/master.svg)](https://ci.appveyor.com/project/brandondahler/data-hashfunction/build/tests)
### NuGet
| Name | Normal |
|---------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Data.HashFunction.Interfaces | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.Interfaces.svg)](https://www.nuget.org/packages/System.Data.HashFunction.Interfaces/) |
| Data.HashFunction.Core | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.Core.svg)](https://www.nuget.org/packages/System.Data.HashFunction.Core/) |
| Data.HashFunction.BernsteinHash | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.BernsteinHash.svg)](https://www.nuget.org/packages/System.Data.HashFunction.BernsteinHash/) |
| Data.HashFunction.Blake2 | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.Blake2.svg)](https://www.nuget.org/packages/System.Data.HashFunction.Blake2/) |
| Data.HashFunction.Buzhash | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.Buzhash.svg)](https://www.nuget.org/packages/System.Data.HashFunction.Buzhash/) |
| Data.HashFunction.CityHash | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.CityHash.svg)](https://www.nuget.org/packages/System.Data.HashFunction.CityHash/) |
| Data.HashFunction.CRC | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.CRC.svg)](https://www.nuget.org/packages/System.Data.HashFunction.CRC/) |
| Data.HashFunction.ELF64 | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.ELF64.svg)](https://www.nuget.org/packages/System.Data.HashFunction.ELF64/) |
| Data.HashFunction.FNV | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.FNV.svg)](https://www.nuget.org/packages/System.Data.HashFunction.FNV/) |
| Data.HashFunction.HashAlgorithm | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.HashAlgorithm.svg)](https://www.nuget.org/packages/System.Data.HashFunction.HashAlgorithm/) |
| Data.HashFunction.Jenkins | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.Jenkins.svg)](https://www.nuget.org/packages/System.Data.HashFunction.Jenkins/) |
| Data.HashFunction.MurmurHash | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.MurmurHash.svg)](https://www.nuget.org/packages/System.Data.HashFunction.MurmurHash/) |
| Data.HashFunction.Pearson | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.Pearson.svg)](https://www.nuget.org/packages/System.Data.HashFunction.Pearson/) |
| Data.HashFunction.SpookyHash | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.SpookyHash.svg)](https://www.nuget.org/packages/System.Data.HashFunction.SpookyHash/) |
| Data.HashFunction.xxHash | [![Version Status](https://img.shields.io/nuget/v/System.Data.HashFunction.xxHash.svg)](https://www.nuget.org/packages/System.Data.HashFunction.xxHash/) |
Implementations
---------------
All implementation packages depend on the Data.HashFunction.Interfaces and Data.HashFunction.Core NuGet packages.
The following hash functions have been implemented from the most reliable reference that could be found.
* [Bernstein Hash](http://www.eternallyconfuzzled.com/tuts/algorithms/jsw_tut_hashing.aspx#djb)
* BernsteinHash - Original
* ModifiedBernsteinHash - Minor update that is said to result in better distribution
* [Blake2](https://blake2.net/)
* Blake2b
* [BuzHash](http://www.serve.net/buz/hash.adt/java.002.html)
* BuzHashBase - Abstract implementation, there is no authoritative implementation
* DefaultBuzHash - Concrete implementation, uses 256 random 64-bit integers
* [CityHash](https://code.google.com/p/cityhash/)
* [CRC](http://en.wikipedia.org/wiki/Cyclic_redundancy_check)
* CRC - Generalized implementation to allow any CRC parameters between 1 and 64 bits.
* CRCStandards - 71 implementations on top of CRC that use the parameters defined by their respective standard. Standards and their parameters provided by [CRC RevEng's catalogue](http://reveng.sourceforge.net/crc-catalogue/).
* [ELF64](http://downloads.openwatcom.org/ftp/devel/docs/elf-64-gen.pdf)
* [FNV](http://www.isthe.com/chongo/tech/comp/fnv/index.html)
* FNV1Base - Abstract base of the FNV-1 algorithms
* FNV1 - Original
* FNV1a - Minor variation of FNV-1
* [Hash Algorithm Wrapper](http://msdn.microsoft.com/en-us/library/system.security.cryptography.hashalgorithm%28v=vs.110%29.aspx)
* HashAlgorithmWrapper - Wraps existing instance of a .Net HashAlgorithm
* HashAlgorithmWrapper<HashAlgorithmT> - Wraps a managed instance of a .Net HashAlgorithm
* [Jenkins](http://en.wikipedia.org/wiki/Jenkins_hash_function)
* JenkinsOneAtATime - Original
* JenkinsLookup2 - Improvement upon One-at-a-Time hash function
* JenkinsLookup3 - Further improvement upon Jenkins' Lookup2 hash function
* [Murmur Hash](https://code.google.com/p/smhasher/wiki/MurmurHash)
* MurmurHash1 - Original
* MurmurHash2 - Improvement upon MurmurHash1
* MurmurHash3 - Further improvement upon MurmurHash2, addresses minor flaws
* [Pearson hashing](http://en.wikipedia.org/wiki/Pearson_hashing)
* PearsonBase - Abstract implementation, there is no authoritative implementation
* WikipediaPearson - Concrete implementation, uses values from Wikipedia article
* [SpookyHash](http://burtleburtle.net/bob/hash/spooky.html)
* SpookyHashV1 - Original
* SpookyHashV2 - Improvement upon SpookyHashV1, fixes bug in original specification
* [xxHash](https://code.google.com/p/xxhash/)
* xxHash - Original and 64-bit version.
Each family of hash functions is contained within its own project and NuGet package.
Usage
-----
The usage for all hash functions has been standardized and is accessible via the System.Data.HashFunction.IHashFunction and System.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 statel
没有合适的资源?快使用搜索试试~ 我知道了~
C#库,用于创建非加密哈希函数的通用接口。___下载.zip
共292个文件
cs:255个
csproj:18个
yml:3个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 190 浏览量
2023-04-18
00:43:41
上传
评论
收藏 1.58MB ZIP 举报
温馨提示
C#库,用于创建非加密哈希函数的通用接口。___下载.zip
资源推荐
资源详情
资源评论
收起资源包目录
C#库,用于创建非加密哈希函数的通用接口。___下载.zip (292个子文件)
packages.config 753B
packages.config 299B
App.config 160B
Blake2B_Implementation_Tests.cs 131KB
CRCConfig.cs 47KB
Blake2B_ComputeRounds.cs 40KB
CRC_Implementation_Tests.cs 37KB
CRCConfig_Tests.cs 34KB
CityHash_Implementation.cs 27KB
IHashFunction_Extensions.cs 19KB
BlockTransformerBase.cs 17KB
BuzHash_Implementation_Tests.cs 16KB
SpookyHashV2_Implementation.cs 14KB
SpookyHashV1_Implementation.cs 14KB
Pearson_Implementation_Tests.cs 14KB
xxHash_Implementation.cs 14KB
SpookyHashV1_Implementation_Tests.cs 13KB
SpookyHashV2_Implementation_Tests.cs 13KB
BuzHash_Implementation.cs 12KB
FarmHashFingerprint128_Implementation.cs 12KB
Blake2B_Implementation.cs 11KB
IHashFunction_Extensions_Tests.cs 11KB
MurmurHash3_Implementation.cs 11KB
FNV1a_Implementation_Tests.cs 11KB
FNV1_Implementation_Tests.cs 11KB
CRC_Implementation.cs 10KB
FarmHashFingerprint64_Implementation.cs 9KB
JenkinsLookup3_Implementation_Tests.cs 9KB
StreamableHashFunctionBase.cs 9KB
xxHash_Implementation_Tests.cs 8KB
HashValue_Tests.cs 8KB
DefaultBuzHashConfig.cs 8KB
CityHash_Implementation_Tests.cs 8KB
MurmurHash3_Implementation_Tests.cs 8KB
DefaultBuzHashConfig_Tests.cs 8KB
HashValue.cs 7KB
FarmHashFingerprint32_Implementation.cs 7KB
IBlockTransformer.cs 7KB
MetroHash128_Implementation.cs 7KB
UtilityExtension_Tests.cs 7KB
HashAlgorithmWrapper_Implementation_Tests.cs 7KB
FNV1Base.cs 7KB
MetroHash64_Implementation.cs 7KB
HashFunctionBase.cs 7KB
MurmurHash2_Implementation_Tests.cs 6KB
MurmurHash2_Implementation.cs 6KB
JenkinsLookup3_Implementation.cs 6KB
JenkinsLookup2_Implementation.cs 5KB
IHashFunction_SpeedTest.cs 5KB
FNVConfig.cs 5KB
IHashFunction.cs 5KB
FNVConfig_Tests.cs 4KB
MetroHash128_Implementation_Tests.cs 4KB
FNV1a_Implementation.cs 4KB
FNV1_Implementation.cs 4KB
FNVPrimeOffset_Tests.cs 4KB
Pearson_Implementation.cs 4KB
IStreamableHashFunction.cs 4KB
MetroHash64_Implementation_Tests.cs 4KB
SlowAsyncStream.cs 4KB
IHashFunction_TestBase.cs 3KB
JenkinsLookup2_Implementation_Tests.cs 3KB
WikipediaPearsonConfig.cs 3KB
WikipediaPearsonConfig_Tests.cs 3KB
MurmurHash1_Implementation.cs 3KB
SpookyHashV1Factory_Tests.cs 3KB
JenkinsLookup3Factory_Tests.cs 3KB
Blake2BFactory_Tests.cs 3KB
BuzHashFactory_Tests.cs 2KB
SpookyHashV2Factory_Tests.cs 2KB
CRCFactory_Tests.cs 2KB
FNVPrimeOffset.cs 2KB
MurmurHash1_Implementation_Tests.cs 2KB
UtilityExtensions.cs 2KB
MurmurHash3Factory_Tests.cs 2KB
MurmurHash2Factory_Tests.cs 2KB
BuzHashConfig_Tests.cs 2KB
FarmHashFingerprint128_Implementation_Tests.cs 2KB
ICRCConfig.cs 2KB
JenkinsLookup2Factory_Tests.cs 2KB
JenkinsOneAtATime_Implementation.cs 2KB
xxHashFactory_Tests.cs 2KB
PearsonFactory_Tests.cs 2KB
FNV1aFactory_Tests.cs 2KB
FNV1Factory_Tests.cs 2KB
HashAlgorithmWrapper_Implementation.cs 2KB
IStreamableHashFunction_TestBase.cs 2KB
MurmurHash1Factory_Tests.cs 2KB
PearsonBaseTests.cs 2KB
BuzHashConfig.cs 2KB
MetroHash128Factory_Tests.cs 2KB
ELF64_Implementation.cs 2KB
MetroHash64Factory_Tests.cs 2KB
Blake2BConfig.cs 2KB
CityHashFactory_Tests.cs 2KB
IHashValue.cs 2KB
FarmHashFingerprint64_Implementation_Tests.cs 2KB
Blake2BConfig_Tests.cs 2KB
IModifiedBernsteinHash.cs 2KB
HashAlgorithmWrapperFactory_Tests.cs 2KB
共 292 条
- 1
- 2
- 3
资源评论
快撑死的鱼
- 粉丝: 1w+
- 资源: 9154
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功