How OmniBOLT Daemon integrate with LND

Copyright@OmniBOLT

Since the LND wallet is a custodial wallet, it stores your seeds and keys in its local storage, so that you shall run your own LND full node to initiate a wallet. While OmniBOLT allows remote connections.

For the purpose of less dependence on integrators, it is reasonable to assume the developers are willing to work with the current LND programming interface, which they are already familiar with. So we just add extra functions to the LND gRPC set. Our current solution consists of the following 4 aspects:

  1. OBD SDK consists of a web-socket client that operates OBD node, and a gRPC server that provides services to applications;
  2. The OBD gRPC server calls the LND wallet kit to generate a seed for a new user, and all keys of this user are derived from this seed;
  3. Third, the OBD WebSocket client connects remote/local OBD node;
  4. Merge OBD gRPC interfaces into the LND gRPC API set. Newly added gRPC APIs have distinguishable but indicative names. For example, openAssetChannel, comparing to LND’s open channel which is the BTC-only method;

The application developer will still work with the LND gRPC server, hence no extraneous dependency is brought into your tech stack. When you call asset related functions, the OBD gRPC server will automatically switch the context to the OBD node that you have connected.

It has a much more clear context in the way offering new functions, instead of embedding metadata into the existing LND API. BTC channel network is logically separated from asset channel network. Though this solution has not been finalised yet.

SUBSCRIBE / FOLLOW OmniBOLT at:

Twitter : https://twitter.com/omni_bolt

Slack : http://omnibolt.slack.com

Telegram : https://t.me/OmniBOLT

GitHub : https://github.com/omnilaboratory/OmniBOLT-spec

Web : https://omnilab.online/omnibolt/