README.md
 1  # buffer-equal-constant-time
 2  
 3  Constant-time `Buffer` comparison for node.js.  Should work with browserify too.
 4  
 5  [![Build Status](https://travis-ci.org/goinstant/buffer-equal-constant-time.png?branch=master)](https://travis-ci.org/goinstant/buffer-equal-constant-time)
 6  
 7  ```sh
 8    npm install buffer-equal-constant-time
 9  ```
10  
11  # Usage
12  
13  ```js
14    var bufferEq = require('buffer-equal-constant-time');
15  
16    var a = new Buffer('asdf');
17    var b = new Buffer('asdf');
18    if (bufferEq(a,b)) {
19      // the same!
20    } else {
21      // different in at least one byte!
22    }
23  ```
24  
25  If you'd like to install an `.equal()` method onto the node.js `Buffer` and
26  `SlowBuffer` prototypes:
27  
28  ```js
29    require('buffer-equal-constant-time').install();
30  
31    var a = new Buffer('asdf');
32    var b = new Buffer('asdf');
33    if (a.equal(b)) {
34      // the same!
35    } else {
36      // different in at least one byte!
37    }
38  ```
39  
40  To get rid of the installed `.equal()` method, call `.restore()`:
41  
42  ```js
43    require('buffer-equal-constant-time').restore();
44  ```
45  
46  # Legal
47  
48  © 2013 GoInstant Inc., a salesforce.com company
49  
50  Licensed under the BSD 3-clause license.