Skip to content

Dealing with the namecoind RPC interface #80

Description

@JeremyRand

The namecoind RPC interface in NMControl is an ugly hack. As far as I can tell it's violating the HTTP spec, and we're just lucky that it works at all. No one wants to maintain that code.

We have 2 options. We could replace it with something more standard. The Bitcoin devs recommend https://github.com/jgarzik/python-bitcoinrpc . That code is actively maintained, and Python3 support is being worked on (though isn't completely working yet). Alternatively, we could switch to relying on Namecoin Core's REST interface.

I would prefer to switch to REST and remove the RPC interface. The reason for this is that right now, NMControl has the capability to issue arbitrary RPC commands, including looking at private data relating to the wallet (although not signing transactions). I would like to restrict NMControl via AppArmor/SELinux or similar things, so that even if NMControl is somehow compromised, it can't do nasty things to namecoind, but this is only possible with the REST interface to namecoind.

Thoughts on this?

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/14857886-dealing-with-the-namecoind-rpc-interface?utm_campaign=plugin&utm_content=tracker%2F435873&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F435873&utm_medium=issues&utm_source=github).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions