Introduction

An introduction to Ren and our documentation.

Welcome to the Ren book! Here, you will find all the documentation you need to understand Ren. This book is a living document and is constantly updated with the latest changes and improvements.

To get started with RenVM, checkout our Developer Docs.

Overview

Blockchain technology has proven itself as a viable platform for trading and other, more advanced, financial applications. It has promised a future where users control their own data, and developers can build application logic on a trustless distributed computer. However, before decentralized technology can realize its full potential we must first solve the problem of privacy and interoperability. Without privacy, it is impossible to build more advanced financial applications, or to build general purpose decentralized applications that truly respect the privacy and sovereignty of users and their data. Without interoperability, it is impossible to connect different blockchains together in a way that their decentralised applications can benefit from each others liquidity and provide a simple and complete experience for their users.

Some new ecosystems are emerging where blockchains are able to communicate within these ecosystems (Cosmos, Polkadot, etc.), but these ecosystems are unable to communicate with each other. They are also unable to communicate with existing blockchains that were not built within these ecosystems.

Ren solves these problems. Ren integrates with other blockchains to bring privacy and interoperable liquidity. By doing so, it advances new and existing DEXs, DeFi applications, and dApps of all kind.

  • Interoperability that integrates naturally with new and existing smart contracts, written on any blockchain. For example: an Ethereum DEX could — without modification — support Bitcoin, ZCash, and many others.

  • Interoperability that works in zero-knowledge. For example: the use of ZCash in an Ethereum smart contract would not require that the zero-knowledge properties of ZCash to be compromised.

  • Interoperability that is simple and abstracted away from the user. Users do not need to use special wallets or special transactions. For example: users trading Bitcoin on an Ethereum DEX would never need to do anything other than transfer Bitcoin on the Bitcoin blockchain itself.

  • Secret scripts that never reveal their inputs, outputs or state. These scripts can also react to events on different blockchains and submit transactions to different blockchains.

How It Works

Ren is built on a decentralised virtual machine replicated over thousands of machines: RenVM.

In many ways, RenVM is similar to a blockchain. It is decentralised, trustless, and Byzantine fault tolerant. Anyone can run a node and participate in powering the virtual machine. Scripts can be executed even when some machines are offline — or acting maliciously — and execution is guaranteed to be correct.

The four core pillars that make up RenVM (below) allow for one of the only practical privacy + interoperability solutions that can scale, and is the only solution that allows for private computation over multiple inputs and multiple parties.

https://renproject.io/renvm

What Problem Does It Solve

For many decentralised applications, in particular decentralised finance, solutions for privacy and interoperability are fundamental pieces of the puzzle that are still missing. Trustless privacy and interoperability is absolutely necessary for achieving truly decentralised applications that are secure, usable, and liquid. Dark pools, DEXs, leverage, lending, collateralization, transferring digital assets and many other use cases are now made private, interoperable, and practical through RenVM.

What Can Be Built

Our RenVM SDK serves as a ‘plug-in’ for decentralised finance (DeFi) and therefore, any DeFi application can incorporate interoperability capabilities into their applications and existing smart contracts. If your project would benefit from cross-chain liquidity, then you stand to benefit from integrating with RenVM.

How To Get Involved

The Ren community is open to contributions from everyone. There are several ways you can get involved and contribute to the project:

  1. Join our Reddit, Twitter and Telegram communities, ask questions, discuss relevant topics and upcoming changes with others, have your say, and help us improve.

  2. Get your hands on 100,000 REN and run a Darknode, the underlying machines that power Ren in return for fees. Ren is deployed to Mainnet and anyone is free to run a Darknode.

  3. Open issues on our GitHub repositories to help in the never ending fight against bugs. Whether it is a critical security flaw, or a simple seplling mistkae, let us know.

  4. Open pull requests on our GitHub repositories to submit changes for review.

  5. Start building, Ren is permissionless. Reach out to [email protected] if you have any questions regarding PR.

The design, development, and maintenance of Ren is led by the Ren dev team, but with our best efforts we build Ren in response to the feedback we receive from third-party projects looking to adopt it, and from community members themselves. Get involved and have your say!