Introducing RCN Protocol v4.0 Diaspore

The version incorporates a modular smart-contract structure that boosts its performance and allows the integration of new features.

RCN
RCN Blog
7 min readSep 25, 2019

--

Named after a polymorphic crystal, Diaspore’s five components work together to enable all the Protocol’s capabilities.
Named after a polymorphic crystal, Diaspore’s components work together to enable all the Protocol’s features.

Today RCN is thrilled to announce that after 11 months of continuous development its Protocol’s latest version is finally here. Under the name “Diaspore”, the project’s fourth iteration improves on its predecessor by incorporating a modular structure that divides its smart-contracts into several layers. This characteristic boosts the system’s performance and scalability potential and enables the integration of new features, such as Installment Loans and Collateral-backed Loans.

During Q3 Diaspore received its last adjustments and was submitted for a third-party audit by Nomic Labs, implementing the fixes suggested on their report. Now, the new set of smart-contracts is ready to be deployed on mainnet and become the RCN Credit Marketplace’s new Engine.

Before Diaspore

On Q2 2018 RCN released Basalt, its Protocol’s first Beta Version. While the update presented several improvements compared to its predecessor — including the implementation of the ERC-721 standard for Non-Fungible Tokens and a redesign of its Oracle and Cosigner contracts — it also displayed a considerable disadvantage.

With the aim of prioritizing simplicity in every aspect of its design, Basalt’s central smart-contract — named Nano Loan Enginewas built to handle not only the Protocol’s Debt Engine but also its Loan Manager and Model functions. While this did not affect the system’s performance, it increased the difficulty of implementing sectional changes to the contracts and reduced the number of configurations in which their features could be set.

A New Architecture

Being aware of Basalt’s improvability, during Q4 2018 RCN started defining the guidelines for its successor’s smart-contract architecture. Named after a polymorphic crystal, Diaspore was designed applying a modular structure that divides its smart-contracts into several layers, creating a total of five components that work together to enable all the Protocol’s capabilities. Their names are Debt Engine, Loan Manager, Model, Oracle and Cosigner.

Diaspore’s structure allowed to incorporate alternative versions of its components.
Diaspore’s structure allowed to incorporate alternative versions of its components.

Thanks to this particular configuration, the contracts will now be able to get upgraded individually without compromising each other. In addition, this unique structure will allow developers to incorporate alternative versions of these components, offering lenders and borrowers a wider range of available settings for the Protocol’s features and a more personalized user experience.

The present release already includes two of them: a new Cosigner contract named “Collateral” and a new Model contract named “Fixed Installments Method”.

Contracts & Features

As mentioned above, each one of Diaspore’s components handles a specific set of the Protocol’s functions. Here is a walkthrough of the contracts’ characteristics and the features they enable.

Debt Engine

While Debt Engine could be considered the direct successor of Basalt’s Nano Loan Engine as the Protocol’s central smart-contract, together with Loan Manager they also represent Diaspore’s biggest structural innovation: the separation between the concepts of debt and loan.

Despite being closely related ideas, in RCN’s newest version a loan is not understood as a synonym of debt but as a specific form of it. And while this difference might seem minor, it offers an important advantage from the contract architecture standpoint: by dividing the variables related to these two concepts into different software components, Diaspore allows to register on-chain debt without demanding the execution of a loan. This, in turn, enables the Protocol’s users to potentially record other forms of debt — such as bonds or mortgages — originated outside the platform in the present or even in the past.

The Debt Engine contract stores information about the debt’s Owner — represented by an Ethereum address — and Balance — which registers the total amount of debt repaid so far. In addition, it handles the deposit and withdrawal of funds that affect the Balance, in accordance with the data it receives from the Loan Manager, Model and Oracle contracts.

Loan Manager

While the Debt Engine establishes the existence and ownership of the debt, the Loan Manager is in charge of defining the parameters that shape it as a loan on RCN’s Credit Marketplace and manage its life cycle.

The Loan Manager registers the loan’s movement through some of the phases of its Life Cycle.
The Loan Manager registers the loan’s movement through some of the phases of its Life Cycle.

These include its unique ID, Borrower — also represented by an Ethereum address — Requested Amount — the total borrowed amount, or principal — , Expiration Date — for unfunded loans — , Model, Oracle and Cosigner (see below). In addition, the contract includes two variables named Open and Approved, that define whether the loan has already been approved by the borrower and funded by a lender, respectively.

Model

The Model smart-contract defines two fundamental aspects of the lending transaction: its interest rates and capital amortization system and schedule.

The nominal and punitive interest rates represent the percentage of the principal that the borrower will have to repay on top of it, in normal conditions and in case there is still some outstanding debt left after the Due Date, respectively. On the other hand, the capital amortization system defines the schedule according to which the debt will be repaid, including the number of payments, the time between them and the amount to be paid in each one.

As mentioned above, Diaspore brings along a new Model contract named “Fixed Installments Method”, which will allow borrowers to repay a loan in multiple equal bi-weekly installments — composed by an increasing amount of principal and a decreasing amount of interest — instead of having to pay the total owed amount at the final Due Date.

The installments are composed by an increasing amount of principal and a decreasing amount of interest.
The installments are composed by an increasing amount of principal and a decreasing amount of interest.

In the future, Diaspore’s modular structure will allow the incorporation of new Model contracts based on different amortization systems, such as the Fixed Principal — with declining interest payments — and the Bullet — with fixed interest-only payments and a single principal payment at the Due Date — methods. This will increase the level of customization of the lending and borrowing processes, improving the Credit Marketplace’s user experience.

Oracle

As one of Diaspore ́s main sources of external information, the Oracle contract determines the prices at which the Protocol settles the exchange operations between RCN and the other assets that are lent and borrowed on the Credit Marketplace, allowing a loan to be denominated and funded in different currencies.

Being the Protocol ́s main vehicle of value, the RCN token is involved in every lending transaction as the currency all the funds are converted into before being handled by Diaspore’s contracts. Given this central role, RCN’s exchange rate is calculated maximizing decentralization and accuracy at all times, using multiple Oracle Providers which input price information from several independent sources, including Uniswap, Bancor Network and Ripio.

Cosigner

Either they are Originator-backed or Collateral-backed, RCN’s loans are always supported by a source of value prepared to compensate the lender in case of default.

Until now that source has been a Loan Originator, an entity responsible for broadcasting loans to the Credit Marketplace, defining interest rates, performing KYC and scoring assessments, managing collection services and guaranteeing the repayment of all the defaulted debt.

While the Cosigner contract has handled all cosigner-related information since the Protocol’s first release, Diaspore’s introduction of its “Collateral” version brings along several innovations.

First of all, it replaces the Loan Originator by collateralized tokens or stablecoins, enabling any borrower to request a loan directly on the RCN Marketplace by offering them as a hedge against default. And secondly, it changes the original contract’s variables by a new set that includes Debt — the total amount of debt accrued so far — , Amount — the current total value of the collateralized assets — , Liquidation Ratio, Balance Ratio and Reward Fee (see below).

The offering of collateral to protect the lender against default is possible thanks to the use of margin calls, a tool widely implemented within the traditional financial system for managing asset purchases executed with borrowed funds. Margin calls are alerts that get triggered when the ratio between the values of the collateral and the total accrued debt — also known as Loan To Value or LTV — falls below a certain predetermined level, called Liquidation Ratio. This may happen due to a decrease in the collateral’s relative value, a nominal increase on the owed amount, or both.

Once the margin call is activated, a portion of the collateral is automatically sold and transferred to the lender to reduce the size of the debt and get the LTV back above the Liquidation Ratio, up to a superior level called Balance Ratio. When the collateral gets liquidated, a portion of the sold funds are used to pay a Reward Fee to the user who requested the operation.

Thanks to this procedure, the Cosigner contract guarantees that the collateral will maintain its original value relative to the lent amount during the loan’s duration, which since it represents the lender’s insurance against default, is crucial to protect his or her best interest.

Never miss one of RCN’s updates!

--

--

RCN
RCN Blog

RCN (rcn.finance) is an open global credit network that connects lenders, borrowers and originators on the blockchain to create borderless loan markets.