TypeScript MD5 implementation
npm install ts-md5A MD5 implementation for TypeScript
* Can handle Unicode strings
* Supports incremental hashing
* Works with Files and Blobs
This library also includes tools for:
* Hashing a file or blob
* A webworker for performing hashing
* A webworker handler for requesting files or blobs to be hashed
* promise based
* files or blobs are queued for processing on the webworker
Based on work by
* Joseph Myers: http://www.myersdaily.org/joseph/javascript/md5-text.html
* André Cruz: https://github.com/satazor/SparkMD5
* Raymond Hill: https://github.com/gorhill/yamd5.js
Install the node module with npm install ts-md5
1. Import the class
* import {Md5} from 'ts-md5';
2. Hash some things
* Md5.hashStr('blah blah blah') => hex:string
* Md5.hashStr('blah blah blah', true) => raw:Int32Array(4)
* Md5.hashAsciiStr('blah blah blah') => hex:string
* Md5.hashAsciiStr('blah blah blah', true) => raw:Int32Array(4)
For more complex uses:
``typescript
md5 = new Md5();
// Append incrementally your file or other input
// Methods are chainable
md5.appendStr('somestring')
.appendAsciiStr('a different string')
.appendByteArray(blob);
// Generate the MD5 hex string
md5.end();
`
NOTE:: You have to make sure ts-md5/dist/md5_worker.js is made available in your build so it can be accessed directly by a browser
It should always remain as a seperate file.
`typescript
import {ParallelHasher} from 'ts-md5';
let hasher = new ParallelHasher('/path/to/ts-md5/dist/md5_worker.js');
hasher.hash(fileBlob).then(function(result) {
console.log('md5 of fileBlob is', result);
});
`
1. Build Script: npm run buildnpm run test
2. Test Script:
1. Sign up to https://www.npmjs.com/
2. Configure package.json https://docs.npmjs.com/files/package.jsonnpm publish` https://docs.npmjs.com/cli/publish
3. run
MIT