https://github.com/mysofteop/assemblyhasher
https://github.com/mysofteop/assemblyhasher
assembly dotnet hash md5
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/mysofteop/assemblyhasher
- Owner: MysoftEOP
- Created: 2018-12-11T06:42:06.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2019-07-11T07:55:33.000Z (almost 7 years ago)
- Last Synced: 2024-12-29T06:14:43.416Z (over 1 year ago)
- Topics: assembly, dotnet, hash, md5
- Language: C#
- Size: 1.84 MB
- Stars: 2
- Watchers: 7
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Overview
AssemblyHasher, as its name implies, is a small tool for computing .NET assembly hash codes.It can determine if a .net assembly has changed.
## Usage
Usage is very simple:
```
var factory = HasherFactory.CreateHasher(path);
var md5 = factory.GetHash(path);
```
## Description
The same code, compiled on different machines, will get an assembly (.dll or .exe) with consistent effects but inconsistent files. Why does it cause inconsistencies? Because some extra information is written to the assembly during compilation ( .dll or .exe). When you determine that the assemblies are consistent, you need to exclude these "extra" and then compare them.You can get guidance from [here](https://docs.microsoft.com/en-us/dotnet/standard/assembly/file-format).
AssemblyHasher is to exclude these additional information for comparison.
For files that are not recognized as .net assemblies, the process will be downgraded to get the hash code.See [DefaultHasher class](https://github.com/MysoftEOP/AssemblyHasher/blob/master/AssemblyHasher.Core/DefaultHasher.cs).
Hopes this helps.