wallet-core/node_modules/ripemd160/README.md
2017-05-03 15:35:00 +02:00

101 lines
1.8 KiB
Markdown

ripemd160
=========
JavaScript component to compute the RIPEMD-160 hash of strings or bytes. This hash is commonly used in crypto currencies
like Bitcoin.
Usage
-----
### Install
npm install --save ripemd160
### ripemd160(input)
`input` should be either a `string`, `Buffer`, or an `Array`. It returns a `Buffer`.
**example 1**:
```js
var ripemd16 = require('ripemd160')
var data = 'hello'
var result = ripemd160(data)
console.log(result.toString('hex'))
// => 108f07b8382412612c048d07d13f814118445acd
```
**example 2**:
```js
var ripemd16 = require('ripemd160')
var data = new Buffer('hello', 'utf8')
var result = ripemd160(data)
console.log(result.toString('hex'))
// => 108f07b8382412612c048d07d13f814118445acd
```
#### Converting Buffers
If you're not familiar with the Node.js ecosystem, type `Buffer` is a common way that a developer can pass around
binary data. `Buffer` also exists in the [Browserify](http://browserify.org/) environment. Converting to and from Buffers is very easy.
##### To buffer
```js
// from string
var buf = new Buffer('some string', 'utf8')
// from hex string
var buf = new Buffer('3f5a4c22', 'hex')
// from array
var buf = new Buffer([1, 2, 3, 4])
```
#### From buffer
```js
// to string
var str = buf.toString('utf8')
// to hex string
var hex = buf.toString('hex')
// to array
var arr = [].slice.call(buf)
```
Testing
-------
### Install dev deps:
npm install --development
### Test in Node.js:
npm run test
### Test in a Browser:
Testing in the browser uses the excellent [Mochify](https://github.com/mantoni/mochify.js). Mochify can use either PhantomJS
or an actual browser. You must have Selenium installed if you want to use an actual browser. The easiest way is to
`npm install -g start-selenium` and then run `start-selenium`.
Then run:
npm run browser-test
License
-------
Licensed: BSD3-Clause