Socket
Socket
Sign inDemoInstall

sha.js

Package Overview
Dependencies
2
Maintainers
2
Versions
39
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    sha.js

Streamable SHA hashes in pure javascript


Version published
Weekly downloads
12M
decreased by-2.86%
Maintainers
2
Install size
68.2 kB
Created
Weekly downloads
 

Package description

What is sha.js?

The sha.js npm package is a module that provides cryptographic hash functions, specifically SHA (Secure Hash Algorithm) family functions. It allows for the generation of hash values from input data, which is a common requirement in various security contexts, such as password hashing, data integrity checks, and digital signatures.

What are sha.js's main functionalities?

SHA-256 Hash Generation

This feature allows for the generation of SHA-256 hash values from input strings. The code sample demonstrates how to create a SHA-256 hash of the string 'hello world' and output it in hexadecimal format.

"use strict";\nconst sha256 = require('sha.js').sha256;\nconst hash = new sha256().update('hello world').digest('hex');\nconsole.log(hash);

SHA-512 Hash Generation

This feature enables the creation of SHA-512 hash values. The provided code sample shows how to generate a SHA-512 hash for the input 'hello world' and print the result in hex format.

"use strict";\nconst sha512 = require('sha.js').sha512;\nconst hash = new sha512().update('hello world').digest('hex');\nconsole.log(hash);

Other packages similar to sha.js

Readme

Source

sha.js

NPM Package Build Status Dependency status

js-standard-style

Node style SHA on pure JavaScript.

var shajs = require('sha.js')

console.log(shajs('sha256').update('42').digest('hex'))
// => 73475cb40a568e8da8a045ced110137e159f890ac4da883b6b17dc651b3a8049
console.log(new shajs.sha256().update('42').digest('hex'))
// => 73475cb40a568e8da8a045ced110137e159f890ac4da883b6b17dc651b3a8049

var sha256stream = shajs('sha256')
sha256stream.end('42')
console.log(sha256stream.read().toString('hex'))
// => 73475cb40a568e8da8a045ced110137e159f890ac4da883b6b17dc651b3a8049

supported hashes

sha.js currently implements:

  • SHA (SHA-0) -- legacy, do not use in new systems
  • SHA-1 -- legacy, do not use in new systems
  • SHA-224
  • SHA-256
  • SHA-384
  • SHA-512

Not an actual stream

Note, this doesn't actually implement a stream, but wrapping this in a stream is trivial. It does update incrementally, so you can hash things larger than RAM, as it uses a constant amount of memory (except when using base64 or utf8 encoding, see code comments).

Acknowledgements

This work is derived from Paul Johnston's A JavaScript implementation of the Secure Hash Algorithm.

LICENSE MIT

FAQs

Last updated on 20 Mar 2018

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc