JavaScript Bitmessage library
Go to file
Kagami Hiiragi 53f38be9ed Use webworkify 2015-01-10 16:00:08 +03:00
lib Use webworkify 2015-01-10 16:00:08 +03:00
src Typo fix 2015-01-10 01:44:03 +03:00
.gitignore Use webworkify 2015-01-10 16:00:08 +03:00
.jshintignore Use webworkify 2015-01-10 16:00:08 +03:00
.jshintrc Implement address decoding 2014-12-18 19:47:18 +03:00
.npmignore Use webworkify 2015-01-10 16:00:08 +03:00
.travis.yml Fix installing firefox on travis 2014-12-18 23:34:45 +03:00
COPYING Initial commit 2014-12-11 20:59:48 +03:00
README.md Do a POW (Node) 2015-01-10 00:36:42 +03:00
binding.gyp Do a POW (Node) 2015-01-10 00:36:42 +03:00
jsdoc.json Documentation with jsdoc 2014-12-30 20:00:28 +03:00
karma-all-tests.js Implement Address.encode and Address.getRandom 2014-12-27 18:18:14 +03:00
karma.conf.js Use webworkify 2015-01-10 16:00:08 +03:00
package.json Use webworkify 2015-01-10 16:00:08 +03:00
test.js Use webworkify 2015-01-10 16:00:08 +03:00

README.md

bitmessage Build Status

JavaScript Bitmessage library for both browserify and node. The goal of this project is to implement Bitmessage protocol v3 for both platforms at the maximum possible level (we still can't create TCP connections or listen for incoming connections in the Browser but the Proof of work and crypto is fully doable).

Public library API is currently in alpha stage, breaking changes are very likely to happen.

API documentation is available here.

References

Feature matrix (both Browser and Node)

  • crypto
    • SHA-512
    • SHA-256
    • RIPEMD-160
    • PRNG
    • ECC keys manipulation
    • ECDSA
    • ECDH
    • ECIES
    • AES-256-CBC
    • HMAC-SHA-256
  • Common structures
    • message
    • var_int
    • var_str
    • var_int_list
    • net_addr
    • encrypted
    • message encodings
    • service features
    • pubkey features
  • Message types
    • version
    • verack
    • addr
    • inv
    • getdata
    • error
    • object
  • Object types
    • getpubkey
    • pubkey
    • msg
    • broadcast
  • WIF
  • POW
  • High-level classes
    • Address
      • encode
      • decode
      • getRipe
      • fromRandom
      • fromPassphrase
    • UserAgent
    • Message
      • encrypt
      • decrypt
  • Parse PyBitmessage configs
    • keys.dat
    • knownnodes.dat
    • messages.dat

Feature matrix (Node.js only)

  • Network
    • Bootstrap
    • Connect to the network
    • Accept connections

Usage

// Generate a new random Bitmessage identity.
var Address = require("bitmessage").Address;
var addr = Address.fromRandom();
console.log("New random Bitmessage address:", addr.encode());

License

bitmessage - JavaScript Bitmessage library

Written in 2014 by Kagami Hiiragi kagami@genshiken.org

To the extent possible under law, the author(s) have dedicated all copyright and related and neighboring rights to this software to the public domain worldwide. This software is distributed without any warranty.

You should have received a copy of the CC0 Public Domain Dedication along with this software. If not, see http://creativecommons.org/publicdomain/zero/1.0/.