Connext Update #10

To v2.0 and beyond!

Hello friends!

Over the past few weeks we’ve been working to upgrade Connext, as we outlined in a joint post with Counterfactual.

Today, we want to update you on our progress toward those releases, and our plans for the next few weeks:

v2.0 and v2.x

We’re excited to share that we’ll be releasing a single-node v2.0 using the Counterfactual framework in July, followed by a minimum viable multihop network, v2.x, in late Q3.

📦 v2.0 will feature:

Support for virtual applications and generalized state via Counterfactual.

Simpler native wallet integrations.

Injected JSON RPC ChannelProvider support for dApps.

support for dApps. Much more simple and stable base infrastructure.

📦 v2.x will feature:

Decentralization —anyone can run a node and create channels as a service. Updates can be routed over many nodes just like Lightning.

On-by-default privacy using Onion routing and blind signatures.

Usable on any chain that supports web3 (e.g. plasma and sidechains).

Support for unique naming via HNS.

Progress Updates

🔛 End-to-end ETH payments using our v2.0 node are working!

Our focus is now on achieving feature parity between our existing live hub and the v2.0 node (built with the CF framework, libraries, and state machine approach). Remaining pieces include ERC20 integration, support for in-channel exchange, and extensive testing.

📄 We finalized our client API and JSON RPC interface.

Over the next week, we’ll be updating our documentation so that projects can scope out the work needed for a v2.0 integration.

📬 We implemented NATS to replace our REST API on the v2.0 node.

NATS provides a scalable messaging layer that gives us a real-time way for clients and nodes to communicate. It also comes with baked in features for message queueing, discovery, and decentralization via clustering. Once we launch v2.x, we expect to ship a clustered NATS server with every node so that we get (very) fault tolerant p2p messages out of the box!

📝 We updated our terminology

For example, hubs will be referred to as nodes and payments / balance updates will be referred to as state changes. These changes are more inline with standard networking terminology so future users of Connext can make correlations to other p2p systems and get spun up more quickly.

🤓 Ongoing research into networking stack and the extended protocol layers