Author: Mark Friedenbach 2017-08-13 20:56:39
Published on: 2017-08-13T20:56:39+00:00
In a Bitcoin-dev mailing list, Erik Voorhees proposed adding the ability for module extensions in the core client which could be loaded via dlopen(). He suggested that when messages are received, modules hooks are called with the message data and they can then handle, mark the peer invalid, push a message to the peer or pass through an alternate command. Also, modules could have their own private commands prefixed by "x:". He said that this approach would leave the base P2P layer undisturbed, but there would be a way to create "enhanced features" that some peers support. Erik's end goal is to support using lightning network micropayments to allow people to pay for better node access - creating a market for node services. However, Jonas Schnelli disagreed with Erik's proposal as he thinks that it would be a security nightmare. Core already has the problem of running to many things in the same process. The consensus logic, p2p system as well as the wallet AND the GUI do all share the same process. Jonas suggested using the existing IPC interfaces like RPC/ZMQ instead which can be bidirectional using long poll.
Updated on: 2023-06-12T14:52:29.101445+00:00