deroproject / derohe

DERO Homomorphic Encryption Blockchain Protocol
Other
207 stars 82 forks source link

Welcome to DERO

Twitter Discord GitHub Explorer Wiki Web Wallet

DERO is a blockchain with Smart Contracts preserving your privacy through multiple features while staying fast, secure, and accessible to all people easily.

DERO is running since December 2017 and was previously running on a unique implementation of CryptoNote protocol with blockDAG and as migrated to this unique version for Smart Contracts, Services, better performance, better privacy and more security.

DERO Homomorphic Encryption

What is "Homomorphic Encryption" ?

Homomorphic encryption (HE) is a form of encryption allowing one to perform calculations on encrypted data without decrypting it first. The result of the computation is in an encrypted form, when decrypted the output is the same as if the operations had been performed on the unencrypted data.

It can be used for privacy-preserving outsourced storage and computation. This allows data to be encrypted and out-sourced to commercial cloud environments for processing, all while encrypted. In highly regulated industries, such as health care, and can also be used to enable new services by removing privacy barriers inhibiting data sharing. For example, predictive analytics in health care can be hard to apply via a third party service provider due to medical data privacy concerns, but if the predictive analytics service provider can operate on encrypted data instead, these privacy concerns are diminished.

For more details of what is Homomorphic Encryption, please see Wikipedia.

Summary

About DERO Project

DERO is running since December 2017 and was previously running on a unique implementation of CryptoNote protocol with blockDAG and as migrated to this unique version for Smart Contracts, Services, better performance, better privacy and more security.

Consensus algorithm is PoW based on AstroBWT, a ASIC/FPGA/GPU resistant CPU mining algorithm to improve decentralization and lower the barrier of joining the network.

DERO is industry leading and the first blockchain to have Homomorphic Encryption, bulletproofs and a fully TLS encrypted network.

The fully distributed ledger processes transactions with a 16s (sixty-seconds) average block time and is secure against majority hashrate attacks.

DERO is the first Homomorphic Encryption based blockchain to have Smart Contracts contracts on its native chain without any extra layers or secondary blockchains.

At present DERO has implemented Smart Contracts for previous mainnet implementation running on CryptoNote protocol which can be found here.

Features

Transactions Sizes

Ring Size Transaction Size (in bytes)
2 1553
4 2013
8 2605
16 3461
32 4825
64 7285
128 11839
512 ~35000

NOTE: Plan to reduce TX sizes further.

Network Ports

Mainnet

Testnet

Technical

For specific details of current DERO core (daemon) implementation and capabilities, see below:

DERO blockchain salient features

Erasure Coded Blocks

Traditional Blockchains process blocks as single unit of computation(if a double-spend tx occurs within the block, entire block is rejected). As soon as a block is found, it is sent to all its peers.DERO blockchain erasure codes the block into 48 chunks, dispersing and chunks are dispersed to peers randomly.Any peer receiving any 16 chunks( from 48 chunks) can regerate the block and thus lower overheads and lower propagation time.

Client Protocol

Traditional Blockchains process blocks as single unit of computation(if a double-spend tx occurs within the block, entire block is rejected). However DERO network accepts such blocks since DERO blockchain considers transaction as a single unit of computation.DERO blocks may contain duplicate or double-spend transactions which are filtered by client protocol and ignored by the network. DERO DAG processes transactions atomically one transaction at a time.

Proving DERO Transactions

DERO blockchain is completely private, so anyone cannot view, confirm, verify any other's wallet balance or any transactions.

So to prove any transaction you require TXID and deroproof. deroproof can be obtained using get_tx_key command in dero-wallet-cli.

Enter the TXID and deroproof in DERO Explorer DERO Explorer Proving Transaction

DERO Installation

DERO is written in golang and very easy to install both from source and binary.

Installation From Source

First you need to install Golang if not already, minimum version required for Golang is 1.17.

In go workspace, execute: go get -u github.com/deroproject/derohe/...

When the command has finished, check go workspace bin folder for binaries. For example, on Linux machine the following binaries will be created:

Installation From Binary

Download DERO binaries for ARM, INTEL, MAC platform and Windows, Mac, FreeBSD, OpenBSD, Linux (or any others availables platforms) operating systems.

Running DERO Daemon

Run derod.exe or derod-linux-amd64 depending on your operating system. It will start syncing.

DERO Daemon

DERO CLI Wallet

DERO cmdline wallet is menu based and very easy to operate.

Use various options to create, recover, transfer balance etc.

NOTE: DERO cmdline wallet by default connects DERO daemon running on local machine on port 20206.

If DERO daemon is not running start DERO wallet with --remote option like following:

./dero-wallet-cli-linux-amd64 --remote

DERO Wallet

DERO Explorer

DERO Explorer is used to check and confirm transaction on DERO Network.

DERO users can run their own explorer on local machine and can browse on local machine port 8080.

DERO Explorer