GIP-45: Should Trustlines Network migrate to Gnosis Chain?
- Migrate Trustlines Network to Gnosis Chain!
- Make no changes
GIP: 45
title: Should Trustlines Network migrate to Gnosis Chain?
authors: Tatu (@Smokyish), Andreas (@andfletcher), Côme (@cducrest), Daniel (@compojoom)
status: Draft
type: Funding
created: 2022-05-12
Simple Summary
The Trustlines Network is a community-driven project that empowers people to create their own money and access digital payments. We call it People Powered Money.
We propose to migrate the Trustlines Network to the Gnosis Chain and, in the process, change our identity implementation to use Gnosis Safe.
We are requesting funding of 120,000 EUR paid in DAI or GNO tokens. We expect the work to take between two to four months.
Abstract
Even in 2022, multiple issues are limiting the broad adoption of cryptocurrencies. They do not fit into the current economic reality where money is mainly created as debt by banks, and the capital costs incurred when people provision cryptocurrencies are prohibitive. Moreover, the requirement of upfront deposit money, a bank account, dependency on centralized, often non-regulated, cryptocurrency exchanges, lack of user-friendly user experience, and the necessity to deal with cryptocurrency transfers hinder adoption.
As a solution, we offer the Trustlines Network - a decentralized, permissionless, and open platform to host currency networks. The value in these currency networks is represented in IOUs (abbreviation for ‘I owe you’) issued by its participants. The design extends the original Ripple idea with a strong focus on ease of adoption.
The term IOU acknowledges that the issuing party has a debt towards the receiving party. Suppose Alice wants to buy something from Bob but cannot pay with cash or a bank transfer. Instead, she will acknowledge a debt towards him by issuing an IOU.
IOUs can also be referred to as self-issued debt. They can be used for payment as long as users accept them.
Trustlines Network Explained
Motivation
The Trustlines Network currently runs on its own dedicated Trustlines Blockchain, a minimal viable Proof-of-Stake (mPos) chain design.
The Trustlines Blockchain has been running successfully for the past three years. We have a group of very engaged and dedicated validators. Despite that, we’ve identified use cases that would benefit us from being on a chain that is not solely dedicated to Trustlines (e.g., buying crypto with peer-to-peer credit aka Social DEX, using Gnosis Safe with social recovery.)
Medium to long term, we’re hoping that this could be a first step towards unifying all Ethereum social graph projects on one technologically and economically interoperable protocol.
We think that the Trustlines community aligns well with the Circles community as the users of both are interested in alternative currencies/economies. Also, having both projects on the same chain could spark exciting collaboration opportunities.
An additional benefit from such a migration for Gnosis could be that the Trustlines Validators would feel incentivized to run Gnosis Chain nodes as their favorite project would then be running on the Gnosis Chain.
Specification
The Trustlines Network is already built and is being used by users around the globe.
Explorer | Trustlines Network - Building a better financial system
Detailed information on how Trustlines works can be found at the Trustlines Docs: How Trustlines works.
In summary:
-
You pay with “I owe you’s” (IOU).
-
Users create a bilateral credit line between them (we call it a trustline) by setting the maximum amount they are willing to trust the other party and an initial balance. This trust is denominated in fiat or cryptocurrency of their choice. Note that users are not actually sending the fiat or cryptocurrency, but they use a promise to pay a debt in that currency at a later time.
-
The system supports multi-hop payments. Users can pay other users in an extended network through their connections.
System components
Smart contracts
The contracts repository holds the smart contracts of the Trustlines Protocol.
py-eth-indexer
The py-eth-indexer is responsible for listening to events on the blockchain and storing them in a Postgres database for later use.
Relay server
The relay server is the connection point between the frontend applications and the blockchain. The relay takes care of the meta-transactions and provides an API for frontend clients to query.
Client library
The client library is a utility for applications. It offers the creation of wallets and facilitates interactions with the relay server.
Powerful Mobile App
The Trustlines App is a reference implementation that highlights the features of Trustlines. Users who want to experiment with Trustlines tend to do so using the Trustline App. It has been running stable for several years and is available in both the Google Play Store and the Apple App Store.
Rationale
The Trustlines Protocol is an open-source technology stack that provides a highly accessible medium of exchange. Its core idea is to provide an accounting system based on peer-to-peer credit. Credit is a powerful medium of exchange: Even if someone does not have access to their national currency (fiat money), the credit created on Trustlines Protocol could be used in its place. This is a highly accessible financial tool since any two people who trust each other can decide to open a credit line at any time, without typical restrictions like needing a bank account or identity documents.
When designing for financial inclusion, it is crucial to use accessible, decentralized technology. That is the goal of public blockchain technology: It can provide a permissionless and censorship-resistant platform. This is why the Trustlines Protocol was designed to be implemented on a blockchain.
In 2019 when the Trustlines Blockchain launched, there were no low gas fee chain options where a single transaction cost would have been less than €0.01, like the Gnosis Chain, to deploy our system on. We feel it would be beneficial to move to another, more diverse chain.
For further evidence of consensus within the community, please see our earlier post Should the Trustlines Network move onto Gnosis Chain?
Implementation
We’ve split the migration project into four phases. Every phase has nearly the same complexity. Thus, the total grant would be divided equally between each stage.
Phase I: Migrate to Gnosis Safe
Deliverables: Deploy a new test currency network and update the client library and mobile app to work with Gnosis Safe accounts.
Time best case: 3 weeks | worst-case scenario: 4 weeks
Phase II: Update DevOps infrastructure.
Deliverables: Relay Server works with Nethermind connected to the Gnosis Chain. Docker hub images, test infrastructure, and Terraform configs are updated to reflect the new node use. Developer documentation updated.
Time best case: 2 weeks | worst-case scenario: 4 weeks
Phase III: Migrate existing currency networks & users
Deliverables: Once the currency networks are migrated, the existing users will be moved to use the new chain.
Time best case: 2 weeks | worst-case scenario: 4 weeks
Phase IV: Buy crypto with peer-to-peer credit (Social DEX)
Deliverables: Create an MVP for an app that allows users to purchase cryptocurrencies (DAI, GNO, wETH) in exchange for Trustlines credit. The app would use a Hashed Timelock contract to lock credit on Trustlines as well as the cryptocurrency and have it atomically transferred to users participating in the exchange.
Time best case: 3 weeks | worst-case scenario: 4 weeks
Over the past two years, the Trustlines Validators (currently about 30 unique users) have been engaged and dedicated to the project despite not profiting from the process. We think that Gnosis could use the opportunity to incentivize them to run a node of the Gnosis Chain and thus further improve the decentralization of the chain. We would suggest providing additional funds in the form of 10 GNO for these validators to run a validator node for the Gnosis Chain.
GnosisDAO Snapshot
Phase 2 Proposals: Please ignore this section, and leave as is. It is used for Phase 3 proposals.
Phase 3 Proposals: Add a link to the corresponding GnosisDAO Snapshot poll you’ve created.