High-performance synchronous SHA-1 implementation for JavaScript
npm install @cryptography/sha1High-performance synchronous SHA-1 implementation for JavaScript. Optimized for browsers.
Setup
Package is available through npm and yarn
`
npm install @cryptography/sha1
`
`
yarn add @cryptography/sha1
``$3
* Hashing small inputs (< 5kb)
* Key derivation functions
* 100% browser support required$3
* Hashing files (> 5kb)
* Concurrent hashing large amount of messagesUsage
This package is optimized for small byte inputs (<10kb).Also, it is highly recommended to run CPU-intensive tasks in a Web Worker.
`js
import sha1 from '@cryptography/sha1'// as Uint32Array([0xa8d627d9, 0x3f518e90, 0x96b6f40e, 0x36d27b76, 0x60fa26d3])
const array = sha1('Hello World!')
// as hex-string: "a8d627d93f518e9096b6f4...."
const hex = sha1('Hello World!', 'hex')
// as binary string: "ÄïükYoUH½LÛ,Zß..."
const raw = sha1('Hello World!', 'binary')
// UInt32Array as input
const buf = new Uint32Array([0xa8d627d9, 0x3f518e90, 0x96b6f40e, 0x36d27b76, 0x60fa26d3, 0x18ef1adc, 0x43da750e, 0x49ebe4be]);
sha1(buf)
`
For hashing large files or other data chuncks use stream() to create a hashing stream.
`js
sha1.stream().update('Hello World!').digest();
``