Skip to content
Sebastian Nagel edited this page Mar 7, 2022 · 8 revisions

Research stream by Dziembowski et al, published from 2017 to 2019:

Implementation project seems to be over here https://perun.network/ by a PolyCrypt

Requested funding in Catalyst Fund8: https://cardano.ideascale.com/c/idea/400079

References about the Perun Framework:

Notes on "Perun: Virtual Payment Hubs over Cryptocurrencies" paper

Overview:

  • payment channels using punishing chaeting parties
  • two-party channels
  • secured by smart contracts
  • recursively create arbitrary network by layering "virtual channels"
  • intermediates collateralize, but no need to interact in "upper layers"

Contribution: alleviate need for intermediay to interactions, in contrast to Lightning Network

The paper (and the framework) use Ethereum as the main example, but claim that it would be available on any chain supporting "turing complete smart contracts".

Introduce "virtual channels" which are created on top of socalled "ledger channels". The latter work quite similar like Lightning payment channels, uses signatures on version numbers and penalizing cheating parties using certificates.

Intermediaries take the role of the ledger, when opening virtual channels, and do collateralize the two other parties' funds when opening virtual channels. OTOH these channels need to be of limited "validity" because intermediaries cannot be trusted and other mechanisms to make nobody loose money.

They compose an interesting table of optimistic and pessimistic costs of opening, updating and closing of both, ledger and virtual channels in terms of number of on-chain messages, Gas, ETH, USD (outdated ofc) and number of off-chain messages, as well as signatures.

Questions

  • How are intermediaries incentivized?
  • How / did they solve networking (routing) and "knowing peers"?
  • How would the "generalized state channel networks" handle NFTs?
    • how would they be collateralized (they are unique after all)?
    • can they be committed, transferred and de-committed in such a construction?
    • in general: how are NFTs represented in Ethereum

Perun <-> Hydra

Our researchers had been approached by researchers of the Perun team whether we could leverage some synergies and as a consequence the engineering teams of both Perun and Hydra met in late 2021.

The original idea was that Perun could work on supporting the Cardano L1 as a backend to their system (with the help and lessons learned of the Hydra team). Later, the Perun ledger channels would be able to run in an (isomorphic) Hydra Head. This approach however, seemed not to make much sense as we discovered in our first discussions: The Perun ledger channel needs to have a means to enforce it's state against other ledger channels (to be useful for Perun virtual channels), which is obviously not true if the ledger channel "lives" in a Hydra Head.

Instead we discussed a second approach: Using Hydra Heads as Perun ledger channels, which turns out to be promising. It would lower the entry barrier on Plutus smart contracts for the Perun team, as they would only need to integrate with Hydra and not with the Cardano main chain. Hence, they could focus on the ledger model translation of Account-based <-> eUTXO, which is tricky in itself. Based on this, their tools could be used and Perun virtual channels could be opened.

Clone this wiki locally