Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/blueimp/JavaScript-MD5
JavaScript MD5 implementation. Compatible with server-side environments like node.js, module loaders like RequireJS and all web browsers.
https://github.com/blueimp/JavaScript-MD5
Last synced: 18 days ago
JSON representation
JavaScript MD5 implementation. Compatible with server-side environments like node.js, module loaders like RequireJS and all web browsers.
- Host: GitHub
- URL: https://github.com/blueimp/JavaScript-MD5
- Owner: blueimp
- License: mit
- Archived: true
- Created: 2011-12-10T20:42:25.000Z (almost 13 years ago)
- Default Branch: master
- Last Pushed: 2021-09-25T14:53:13.000Z (about 3 years ago)
- Last Synced: 2024-10-20T18:48:37.271Z (24 days ago)
- Language: JavaScript
- Homepage: https://blueimp.github.io/JavaScript-MD5/
- Size: 976 KB
- Stars: 4,553
- Watchers: 115
- Forks: 1,747
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE.txt
Awesome Lists containing this project
README
# JavaScript MD5
## Contents
- [Demo](https://blueimp.github.io/JavaScript-MD5/)
- [Description](#description)
- [Usage](#usage)
- [Client-side](#client-side)
- [Server-side](#server-side)
- [Requirements](#requirements)
- [API](#api)
- [Tests](#tests)
- [License](#license)## Description
JavaScript [MD5](https://en.wikipedia.org/wiki/MD5) implementation.
Compatible with server-side environments like [Node.js](https://nodejs.org/),
module loaders like [RequireJS](https://requirejs.org/) or
[webpack](https://webpack.js.org/) and all web browsers.## Usage
### Client-side
Install the **blueimp-md5** package with [NPM](https://www.npmjs.org/):
```sh
npm install blueimp-md5
```Include the (minified) JavaScript [MD5](https://en.wikipedia.org/wiki/MD5)
script in your HTML markup:```html
```
In your application code, calculate the
([hex](https://en.wikipedia.org/wiki/Hexadecimal)-encoded)
[MD5](https://en.wikipedia.org/wiki/MD5) hash of a string by calling the **md5**
method with the string as argument:```js
var hash = md5('value') // "2063c1608d6e0baf80249c42e2be5804"
```### Server-side
The following is an example how to use the JavaScript MD5 module on the
server-side with [Node.js](https://nodejs.org/).Install the **blueimp-md5** package with [NPM](https://www.npmjs.org/):
```sh
npm install blueimp-md5
```Add a file **server.js** with the following content:
```js
require('http')
.createServer(function (req, res) {
// The md5 module exports the md5() function:
var md5 = require('./md5'),
// Use the following version if you installed the package with npm:
// var md5 = require("blueimp-md5"),
url = require('url'),
query = url.parse(req.url).query
res.writeHead(200, { 'Content-Type': 'text/plain' })
// Calculate and print the MD5 hash of the url query:
res.end(md5(query))
})
.listen(8080, 'localhost')
console.log('Server running at http://localhost:8080/')
```Run the application with the following command:
```sh
node server.js
```## Requirements
The JavaScript MD5 script has zero dependencies.
## API
Calculate the ([hex](https://en.wikipedia.org/wiki/Hexadecimal)-encoded)
[MD5](https://en.wikipedia.org/wiki/MD5) hash of a given string value:```js
var hash = md5('value') // "2063c1608d6e0baf80249c42e2be5804"
```Calculate the ([hex](https://en.wikipedia.org/wiki/Hexadecimal)-encoded)
[HMAC](https://en.wikipedia.org/wiki/HMAC)-MD5 hash of a given string value and
key:```js
var hash = md5('value', 'key') // "01433efd5f16327ea4b31144572c67f6"
```Calculate the raw [MD5](https://en.wikipedia.org/wiki/MD5) hash of a given
string value:```js
var hash = md5('value', null, true)
```Calculate the raw [HMAC](https://en.wikipedia.org/wiki/HMAC)-MD5 hash of a given
string value and key:```js
var hash = md5('value', 'key', true)
```## Tests
The JavaScript MD5 project comes with
[Unit Tests](https://en.wikipedia.org/wiki/Unit_testing).
There are two different ways to run the tests:- Open test/index.html in your browser or
- run `npm test` in the Terminal in the root path of the repository package.The first one tests the browser integration, the second one the
[Node.js](https://nodejs.org/) integration.## License
The JavaScript MD5 script is released under the
[MIT license](https://opensource.org/licenses/MIT).