BItcoin wallet with MultiChain

0 votes
Would it be easy to fork an existing mobile Bitcoin wallet, to be used for MultiChain blockchains?
asked Jul 6, 2015 by anonymous

2 Answers

+2 votes

Yes, relatively easy since MultiChain uses bitcoin's network protocol, transaction format, block format, etc... There are four main things you would need to change:

  • The handshaking protocol is extended to include node identification and a check that both nodes are using a blockchain with the same parameters.
  • A way to display the quantity of native assets within the wallet (these are given inline inside the UTXOs that the wallet can access, so it's mainly a matter of retrieving the asset information)
  • When building a transaction, make sure that native assets are handled correctly, i.e. balanced between inputs and outputs
  • MultiChain addresses use a slightly different format to allow for additional version bytes
For the native asset stuff, the documentation you require is available here:
We haven't yet published details on the changes to the handshaking protocol and addresses, but will do so in due course.
answered Jul 6, 2015 by MultiChain
I am also looking for a graphical UI wallet. Lets build one together?
+1 vote
There is another possibility to do a wallet. You could develop a wallet that on initial startup asks which node the user would like to host their wallet on. From their, you could develop it as a web app using ruby/rails, python, etc and just make JSON-RPC calls to the node to interact with the wallet.

I think this is the approach I will take sense I want to control the nodes and have better security. I am making the software I am working on opensource on Github. I just started my initial testing for a new blockchain concept and just started working on a super-basic explorer. - Dedicated Node 1 - Dedicated Node 2

Githib Repo:

If you want to use the explorer, look at SessionsController and views/sessions/index.html.erb to figure out what ENV variables you need to set to connect to the blockchain.

This concept requires you to have two users on your server: I went with root to run multichaind and another user to run the webserver. Config is rbenv, ruby, node.js, rails, unicorn, nginx.
answered Jan 7, 2016 by mreichardt