@cryptography/sha512
v0.2.0
Published
High-performance synchronous SHA-512 implementation for JavaScript
Downloads
118
Maintainers
Readme
@cryptography/sha512
High-performance synchronous SHA-512 implementation for JavaScript. Optimized for browsers.
Features
- Blazing fast
- Ultra lightweight
- ECMAScript 3-6
- Typed
- Tested
Setup
Package is available through npm
and yarn
npm install @cryptography/sha512
yarn add @cryptography/sha512
Usage
This package is optimized for small byte inputs (<10kb).
Also, it is highly recommended to run CPU-intensive tasks in a Web Worker.
import sha512 from '@cryptography/sha512'
// as Uint32Array([0xa8d627d9, ...])
const array = sha512('Hello World!')
// as hex-string: "a8d627d9..."
const hex = sha512('Hello World!', 'hex')
// as binary string: "Äïük..."
const raw = sha512('Hello World!', 'binary')
// UInt32Array as input
const buf = new Uint32Array([0xa8d627d9, ...]);
sha512(buf)
For hashing large files or other data chuncks use stream()
to create a hashing stream.
sha512.stream().update('Hello World!').digest();
Performance
Benchmarks:
- https://jsbench.me/gak3pyle85/3
Contributing
Contributions are welcome! Contribution guidelines will be published later.