Imagining AeTernity transaction without INTERNET using state channel

Hi guys,

I was trying to understand concept of state channel in a little deeper way and suddenly this came into my mind. Here is thread of what I have understood so far.

Is it possible to transact with having internet connection.

Imagine a small remote village in India, where the internet connection is very weak. I tried giving it a thought, and I came up with following protocol (hypothesis).

Points to be noted here:

  • First I decoupled the FSM module from the Ae Node and kept it on the client side
  • I removed the noise protocol for FSM to FSM communication
  • Sender will request sender FSM to form a transaction (1.0)
  • Sender signs it and update its FSM (2.0)
  • Sender sends the halfSignedtx to receiever via HTTP (if internet is there) or Bluetooth or NFC offline (3.0)
  • Receiver signs the message and updated its FSM
  • Receiver finally responds to sender with fullSignedTx (3.8)
  • Sender updates its FSM

Now my question is, if I have to make a simple poc for this protocol, will it be even possible to do? I am willing to fork the aenode and understand its code base.

@yani.chain @dimitar.chain

5 Likes

This is something we’ve been bouncing a lot but there are some issues there.

This could be done but to a limited extend. Doing this you lose:

  • contract support: now channels are dumbed down to payment channels
  • none of the participants will be able to use generalized accounts (because they do require contract execution)
  • the whole notification system for malicious behaviour

I’d rather see the WebSocket layer being provided with a fallback mechanism to a HTTP but keep the FSM with a stable connection to a node.

This is already available. If the initiator is offline, the responder being the service provider can provide both FSMs with a co-authenticated transaction. So if the initiator has bad internet connection - they still can provide the responder with authentications and this will work. Important: if one of the participants does not have a stable connection to a node, they enter in a trustful scenario - the other participant can cheat them :slight_smile:

2 Likes

Hi Vishwas, have you thought about integrating with SMS channel?