@cryptography/sha512

High-performance synchronous SHA-512 implementation for JavaScript

Usage no npm install needed!

<script type="module">
  import cryptographySha512 from 'https://cdn.skypack.dev/@cryptography/sha512';
</script>

README

@cryptography/sha512

Bundlephobia Coverage Travis CI

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:

Contributing

Contributions are welcome! Contribution guidelines will be published later.