bmd is a Bitmessage full node written in go.
Switch branches/tags
Clone or download
Pull request Compare This branch is 29 commits behind DanielKrawisz:master.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
addrmgr Default initial peers added from PyBitmessage (although they are not … Apr 9, 2016
database Update imports, copyright notices, and compilation errors. Mar 16, 2016
objmgr Update imports, copyright notices, and compilation errors. Mar 16, 2016
peer Default initial peers added from PyBitmessage (although they are not … Apr 9, 2016
rpcproto Update autogenerated rpc protobuf file. Apr 21, 2016
.travis.yml Remove tip from Travis as it's too buggy Jul 16, 2015
LICENSE Update imports, copyright notices, and compilation errors. Mar 16, 2016
README.md Change default port to 8443 so that bmd and pybitmessage can run on t… Mar 20, 2016
README_RPC.md Change RPC server from JSON-RPC over websockets to using gRPC Jul 10, 2015
bmd.go Fix bug that prevented default config file from being loaded. Jun 2, 2016
config.go persistent peers are added to address manager on startup. Jun 5, 2016
config_test.go Fix bug that prevented default config file from being loaded. Jun 2, 2016
discovery.go Update imports, copyright notices, and compilation errors. Mar 16, 2016
glide.yaml Configured for Glide. May 14, 2016
goclean.sh Apply Ishbir's patch to fix rpc proto Mar 16, 2016
log.go Update imports, copyright notices, and compilation errors. Mar 16, 2016
peer.go Update imports, copyright notices, and compilation errors. Mar 16, 2016
peer_test.go Fix bug that prevented connection to default initial nodes on startup. Jun 2, 2016
rpcmethods.go Update imports, copyright notices, and compilation errors. Mar 16, 2016
rpcserver.go Update imports, copyright notices, and compilation errors. Mar 16, 2016
rpcserver_test.go Fix bug that prevented connection to default initial nodes on startup. Jun 2, 2016
sample-bmd.conf Change RPC server from JSON-RPC over websockets to using gRPC Jul 10, 2015
server.go persistent peers are added to address manager on startup. Jun 5, 2016
signal.go Update imports, copyright notices, and compilation errors. Mar 16, 2016
testobjects_test.go Update imports, copyright notices, and compilation errors. Mar 16, 2016
upnp.go Fix configuration options. Implement uPnP and DNS seeding support. Jun 9, 2015
version.go Update imports, copyright notices, and compilation errors. Mar 16, 2016

README.md

bmd

[Build Status] (https://travis-ci.org/monetas/bmd)

bmd is collection of Bitmessage tools inspired by [btcsuite] (https://github.com/btcsuite).

bmd extensively shares code and design philosophy with btcd.

Components

bmd

bmd is the network daemon (the equivalent of btcd) which connects to the P2P network, relays and stores messages, and contains no private keys or user-specific metadata.

bmclient

bmclient is the user daemon (the equivalent of btcwallet) which stores a user's private keys, messages, and metadata. bmclient obtains incoming messages from, and routes outgoing messages through, a trusted instance of bmd.

Users interact with bmclient via standard mail clients rather than a dedicated GUI.

bmclient includes functionality similar to [bmwrapper] (https://github.com/Arceliar/bmwrapper) except that it uses the IMAP protocol rather than POP3.

TODO

Bug: bmd does not synch with the network properly out-of-the box. It requires a new set of default addresses.

In the communication from bmd to bmagent, the whole of the objects should not be sent. Only enough should be sent for bmagent to determine whether the message can be decrypted. Then it should request the remainder.

Allow connections to multiple instances of bmagent.