Skip to content

D. The DMD Diamond Blockchain's Solutions

Kris edited this page Jan 22, 2025 · 20 revisions

D.1 Mission

The fourth iteration of DMD Diamond is a cornerstone of a store-of-value monetary system that is not government-issued or controlled. Our mission is to enable people to achieve financial freedom and independence, by creating a platform that provides a safe, affordable, and rewarding smart contract powered blockchain economy.

Our vision is to contribute to the blockchain ecology through the development of Open Source protocols, utilities, and services, forwarding the interoperability of blockchains, thus increasing the viability of the entire cryptoverse.

D.2 Features and Benefits

To address the industry challenges, the DMD Diamond team presents version 4 of its blockchain. DMDv4 is the first cooperative consensus blockchain with a delegated PoS-powered validator election which allows for high speed and performance, absolute censorship resistance and fork resistance, instant finality of transactions, and other advantages that a competitive consensus cannot deliver.

The DMD v4 blockchain adds the smart contract functionality and sets out to align with the industry as it is: the coin wars are over and blockchain interoperability is important for the entire industry. Therefore, DMDv4 is compatible with Ethereum EVM smart contracts, making it simple to port smart contracts written for Ethereum towards DMD Diamond v4.

Diamond is also designed so that it can be a participant in future blockchain-based ecosystems that utilize bridges and other cross-chain value transaction methods. The aim is to provide every participant with maximal freedom to host projects on the platforms that best apply to their needs. The DMD blockchain answers many of those needs, and other blockchains are part of answering specific needs for other developers and participants.

Leaderless block authority  EN

To sum it up, the list of DMD Diamond v4 features includes the following important capabilities:

  1. Limited issue of tokens, with a low cap of 4.38 million tokens, with full issuance of all tokens at genesis block, with no ability to mine any additional tokens or dilute the existing amount of coins in any way.

  2. Smart contract capabilities with Turing-complete programming language.

  3. Instant finality of all transactions using the Honey Badger BFT protocol.

  4. Fast throughput: predictions and testing demonstrate a minimum of 400 TPS.

  5. Rotating validation nodes, and maximum validation node staking allows for a randomized distribution of power among validators for 12 hours (Epoch), no concentration of power, and fair rotating.

  6. Censorship-resistant, utilizing threshold encryption. Single nodes cannot act maliciously against particular transactions because they cannot see the contents of the transaction until it is validated.

  7. DMD staking happens with a limited set of validator nodes, and a maximum amount staked on top of these nodes because of DMD’s scarce supply.

  8. Interoperability and full compatibility with other blockchains: Code written for Ethereum EVM will run on the DMD v4 blockchain enabling easy migration between chains.

  9. Fork-proof, with 2/3 majority required, and no opportunity for a dispute of the chain.

  10. No orphan blocks resulted from simultaneously created competing blocks are possible on the chain, because of its cooperative protocol with fractional transactions contributed by active validators threshold encrypted to the block.

  11. On-chain governance support.

  12. Random number generation capabilities built-in.

  13. No wasted network capacity. If there are no transactions, no empty blocks are created as with other blockchains. DMD may include a very small heartbeat block if for periods of time of more than 10 minutes there are no transactions.

  14. Recovery of lost coins through a fair aging mechanism that identifies abandoned coins in POSDAO after a number of years.

  15. Sustainable long-term coin and ecosystem maintenance and issuance.

Leaderless block authority final

D.3 Interoperability and Migration for DApps

DMD Diamond has taken the approach that cooperation and interoperability across chains is a must for the sustainable and long-term development of the crypto industry. For that reason, the DMDv4 is being created as a system that is fully compatible with Ethereum, using Open Ethereum addressing systems and foundations, and running EVM apps according to the protocol standards. The result is that dApps can be easily migrated across chains.

Open Ethereum Client (formerly Parity) is included as part of the package for DMDv4. This is the most well-known and fastest Ethereum client and is robust and well-proven in the industry. Interoperability Bridges provide connectors to other chains, allowing the transfer of value across coins and other blockchains. DMDv4 allows easy integration by using third-party Layer 2 interoperability solutions that support DeFi apps and other apps that integrate smart contract functionality with multiple different crypto assets. Connectors allow access to games, NFT, DeFi, and other types of dApps across chains.

D.4 Smart Contract Support

DMDv4 will include smart contract support based on EVM so that existing smart contracts developed on other chains can run on DMD. DMDv4 supports Solidity and the other languages that are supported by the Ethereum blockchain. Because of the much faster transaction times, lower fees, the ability to run the same code on multiple chains, and easy smart contract migration back and forth, DMD represents an appealing alternative to Ethereum. DMD Diamond is a long-running blockchain with a highly distributed community of holders, meaning that it is a very secure and stable network, so application developers can feel comfortable with using DMD as a fast-throughput alternative to Ethereum.

D.5 Secure Consensus

DMDv4 is a decentralized multipurpose blockchain with a highly secure and distributed consensus algorithm and a distributed system for rewarding the nodes that secure the system. Diamond has an old community with many coin holders and uses delegated Proof-of-Stake so that every coin holder can be part of the validation mechanism and cast their weight to the validators that are acting in good faith on the system.

The DMD network allows any full node with 10,000 DMD to become a validator candidate, and for any coin holder with at least 100 DMD to stake their coins on validator candidate nodes. In this way, coin holders can signal the nodes they trust most to be reliable/stable and increase by adding coin weight on them the chance to get selected to be part of the active validator set more often. The maximum DMD per node is 50,000 DMD, either held by the node or staked by DMD coin holders. Up to 438 nodes are possible, based on the amount of DMD in circulation.

Validation rotates among the validation candidates, with 25 being picked randomly every 12 hours, called Epoch. During the Epoch, the validator nodes use the Honey Badger Byzantine Fault Tolerance consensus protocol to validate transactions, and Epoch rewards are distributed equally among nodes. The distribution algorithm is weighted such that every node will get chosen to be in the Validator Set in proportion to the amount of staking on the node.

To find more information about validation, read the Node Selection through POSDAO section.

This system is designed such that:

  1. Validator Candidate Full nodes secure the system: 438 maximum, 50 – 75 expected.

  2. A highly distributed system where a random subset selection of 25 active validators is made every 12 hours via POSDAO dPOS mechanic, so all validators candidates have a chance to get a turn twice a day. Note that if there are fewer than 25 candidates, the system can function with fewer validators too.

  3. Coin holders can stake their coins on the nodes, showing support for the best candidates, which weights the choice and ensures that validator nodes that are more reliable are chosen more frequently.

  4. Epoch rewards get split at the end of the Epoch between all active validators. Misbehaving validators get no rewards at all, their coins get locked and they cannot become a part of the active set during a few Epochs.

  5. HBBFT consensus algorithm allows fast/instant final transactions, high transaction throughput, and increased security of the system via threshold encryption.

The Components of DMD Diamond v4 Blockchain (3)

D.6 Network Participants

D.6.1 Coin Holders & Wallets

Diamond DMDv4 participants can potentially be one of three types:

● Ethereum client wallet (participant). Any coin holder on the DMD network can stake their tokens on validators to earn Epoch rewards and participate in DAO voting process indirectly by choosing the validator, who represents their interests.

● Full Node. A full node includes an EVM, the POSDAO codebase, and the full Diamond DMDv4 blockchain.

● Validator Candidate Node. A Full Node can become a Validator Candidate by installing the validator candidate software and staking a minimum of 10,000 DMD. Other coin holders can stake their coins on a validator candidate, up to a maximum of 50,000 DMD. The upper limit prevents the concentration of power. Validator candidates are chosen in every Epoch to be validators, in proportion to the amount of staking they have on the node. Nodes must run on the Linux operating system (or a System that allows execution of Linux software (e.g. Windows subsystem for Linux)). Read more on the validator requirements in the Validators section.

The staking will be available from a web-based dApp accessible for anyone with a wallet that supports a custom Ethereum style network.

Anyone with DMDv3 must upgrade to a new wallet and claim DMDv4 as described in the Migration from DMDv3 to DMDv4 section, and then they can easily participate in the securing and governance of the network. The manual how to claim coins is available here.

D.6.2 Validators

DMD Diamond v4 utilizes validators for the transactions, as per the HBBFT protocol. Each elected (active) validator receives an equal share of Epoch rewards for cooperative contributing to block creation and validating the transactions and compute smart contract executions on the DMD blockchain in a defined timeframe (one Epoch), each active validator shares the rewards among themselves and their delegates. The validation process has been described in detail in the Secure Consensus section. POSDAO whitepaper refers to validators and all dPOS staker on top of him as a mining pool. DMD Diamond prefers the terminology validator candidate because no mining is conducted in the DMD network and the word mining is misleading.

Validator candidates require:

● Full node installation of the DMDv4 chain on a Linux server with the DMD version of Open Ethereum which include the DMDv4 extensions including HBBFT/POSDAO and the proper configuration

● Internet with Static IP address and a reliable 24/7 uptime.

● Minimum collateral of 10,000 DMD (from validator candidate owner), maximum 50,000 DMD can be staked on one validator candidate (combined from the owner and others who stake on top of his node).

● Link to address of the node that delivers the work.

● The validator candidate registration and collateral locking through the POSDAO dApp.

Note that the node address is not the same as the address where the coins are coming from.

Validator candidates re-stake the coins they earn as rewards. Validator candidates and dPOS stakers on top of them can adjust (deposit or withdraw) staked coins anytime and the change (transaction of coins) happens at the next Epoch (12 hours).

D.6.2.1 Validator statuses

From the contracts side

  1. Pools to Be Elected: This is a list of staking pools (addresses) with a stake amount equal to or greater than the required candidateMinStake (= 10,000 DMD). Additionally, the associated validator (pool address) has announced its availability. All pools in this list are eligible to become validators in the next epoch.

  2. Pending Pools: A subset of the "Pools to Be Elected", these are the pools selected as validators for the upcoming epoch. The selection is based on factors like current stake, bonus score, and a generated random number.

  3. Active Pools: The set of validators currently active and responsible for validating transactions during the ongoing epoch.

  4. Unavailable Pools: Validator candidates with connectivity issues or those who have not announced their availability. Staking is disabled for these pools, although withdrawals remain available.

From the UI side

The Diamond UI displays three statuses for validator candidates:

  1. Active: The candidate is part of the current active set of validators, matching the "Active Pools" status from the contract side.

  2. Valid: The candidate is not currently active but is eligible to be elected, corresponding to the "Pools to Be Elected" status.

  3. Invalid: The candidate is flagged as unavailable on the blockchain or does not meet the minimum staking requirement (less than 10,000 DMD staked).

D.6.2.2 (Un)availability

Availability reflects a validator’s readiness and reliability in contributing to the network's consensus and transaction validation processes.

A validator can be marked as unavailable under the following conditions:

  1. Failure to Submit Required Data

    If a node is selected as a pending validator but fails to submit its PARTS or ACKS, it will be flagged as unavailable. The pool remains in this state until it explicitly announces its availability again.

  2. Smart Contract Tracking

    The smart contract function validatorSet.validatorAvailableSince(address) uint256 returns the block timestamp indicating when a validator was last marked as available.

  • Zero Value: If the function returns 0, the validator is currently unavailable.
  1. Re-Announcing Availability

    If a node is synchronized with the blockchain but is still marked as unavailable, it must interact with the smart contract by calling validatorSet.announceAvailability().

  • The node must provide a recent block number and block hash to prove it is up-to-date.
  • The smart contract verifies this information to ensure the node is genuinely synced with the latest blockchain state.
  1. Unavailability Due to Connectivity Issues

    A validator may also be flagged as unavailable if the majority of other validators report it as missing connectivity (as detailed in the early epoch end procedure).

  2. Impact on Rewards

  • Validators marked as unavailable do not receive rewards for the current epoch, even if they are part of the active validator set.
  • If a validator re-announces its availability during the current epoch, it will remain ineligible for rewards for the rest of that epoch.
  1. Impact on Score

    Unavailability significantly reduces a validator’s bonus score, directly impacting their likelihood of being selected for future validation duties.

  • Each instance of unavailability results in a deduction from the validator's score, proportional to the duration of unavailability.

  • Extended periods of unavailability may lead to a more significant score penalty to discourage persistent unreliability.

    Read more about the impact on score here.

D.6.2.3 Electable for becoming a validator

The process of becoming elected as a validator in the DMD (Diamond) ecosystem involves several stages and specific criteria, designed to ensure fairness and decentralization in the Delegated Proof-of-Stake (dPoS) mechanism with HBBFT (Honey Badger Byzantine Fault Tolerance). Here's how it works:

1. Eligibility Requirements

To be considered as a validator candidate, you must:

  • Set Up a Node: Configure a validator node with continuous uptime (24/7) and a static IP address. The node must run the DMDv4 blockchain with appropriate extensions​
  • Stake the Minimum Amount: Lock at least 10,000 DMD as collateral via the Diamond-UI dApp. This ensures the candidate has a vested interest in the network's security and performance.
2. Selection Mechanism

Validators are selected at the start of each 12-hour epoch. The selection process includes:

  • Stake Amount: Candidates with higher stakes are prioritized, as larger stakes indicate a greater commitment to the network.
  • Randomization: To maintain decentralization, a random element is introduced, preventing the same high-stake nodes from always being selected.
  • Pool Size Limitation: A single validator's pool (its stake and delegations combined) cannot exceed 50,000 DMD, ensuring a level playing field for smaller participants​.
  • Validator Score: A candidate's score level (visible on their profile in the Diamond-UI) also influences their selection as an active validator. The score level depends on maintaining a consistently running node (without connectivity issues reported by other validators, which could lead to score loss). Read more about other factors here.
3. Becoming an Active Validator

Once selected, validators are added to the active validator set for the epoch. They are responsible for:

  • Validating transactions.
  • Proposing and confirming new blocks.

Validators who fail to perform their duties (e.g., by missing required submissions like PARTS or ACKS) may be marked as unavailable, temporarily losing eligibility for rewards and selection in subsequent epochs​.

4. Delegator Contributions

Community members can delegate their DMD to validator candidates. This increases the candidate's total stake, improving their chances of selection. Delegators also earn a share of the rewards proportional to their stake​.

5. Rewards and Accountability
  • Reward Distribution: At the end of each epoch, validators earn rewards for their contributions, check more details about rewards distribution here.
  • Monitoring and Reannouncing Availability: Validators must maintain consistent network performance. If flagged as unavailable, they can reannounce their availability by interacting with the network and proving they are up-to-date​.

The DMD election mechanism emphasizes transparency, fairness, and decentralization. By combining stake-based prioritization, random selection, and accountability measures, the system ensures a robust and reliable validator set that upholds the network's integrity.

D.6.2.4 Abandoned validator handling

If a validator node has not been part of the active validator set for the past 10 years, it is classified as abandoned. In this state, the coins associated with the validator - including both the validator's own stake and delegated funds - are transferred to the Reinsert pot. Once a pool is marked as abandoned, staking and withdrawals are not available.

The Diamond UI provides:

  1. A button to trigger the transfer of funds to the reinsert pot.
  2. A special status indicator for validators that have already been marked as abandoned.

To determine if a validator is abandoned, the smart contract verifies if:

  1. 10 years have passed since the last recorded availability.

D.6.2.5 Validator reward

Block rewards for active validators and their delegates are split proportionally according to the number of coins staked for each validator. Additionally, validators receive a guaranteed reward at the end of each Epoch. Twenty percent (20%) of validator rewards go directly to the node owner. This 20% may include the node operator's share if configured. For details, see the description here. The remaining 80% of the validator rewards are distributed proportionally to coin ownership, including the node owner’s coins (so the validator gets the rewards twice: upfront 20% + % for his staked coins).

If an Epoch duration is shorter than 12 hours, rewards will be proportionally reduced. However, if an Epoch is longer, the rewards will not be increased. If there are fewer than 25 validators eligible for rewards at the end of an Epoch, the rewards are still calculated in the same way; validators do not earn more in a smaller set.

Here's how the epoch reward is calculated:

-> Epoch reward = (Reinsert pot + Delta pot)/6000

-> To distribute rewards toward each validator = ((Epoch reward - 10%(the governance pot share)/25))

Where 25 is the total number of active validator candidates.


Example 1:

10000 DMD - node owner stake

40000 DMD - delegated stake (shared between multiple delegates)

would result in

20% upfront to the node owner

16% to the node owner because of his 20% of staked coins

64% to the delegates owning 80% of the staked coins


Example 2:

25000 DMD - node owner stake

25000 DMD - delegated stake (shared between multiple delegates)

would result in

20% upfront to node owner

40% to the node owner because of his 50% of staked coins

40% to the delegates owning 50% of the staked coins


D.6.3 Node operator share

In addition to earning rewards by being a validator candidate or a delegated staker on top of a validator, the configurable node operator share is another way to have a fair share of DMD Diamond’s epoch reward.

A configurable node operator share is a reward mechanism where a node owner delegates a share of their node owner rewards to a different node operator address. It’s designed for DMD Diamond coin holders who want to earn rewards by owning a node but don’t have the technical skills to operate it. For example, you might have the minimum 10,000 DMD Diamond coins required to be a validator candidate but lack the technical know-how to operate a blockchain node on a Linux server. A way to maintain node ownership (rather than opting to be a delegated staker on another validator candidate) and still earn node owner rewards (at the end of the epoch) is to delegate node operation to another candidate with the necessary skills, ultimately sharing the node owner rewards with them.

A node owner gets an upfront 20 percent of each epoch reward because he owns the node. From this, a percentage is shared with the node operator for his role. The node owner reward (20%) is configurable for each pool, allowing a portion of this share (0.01% - 20% (20% means 100% of the node owner reward)) to be forwarded.

It's noteworthy that node owners hold the keys to the staked DMD Diamond coins. The ability to participate in DAO voting also remains with the node owners. Node operators can only have such abilities when they simultaneously have the capacity to own a node. The configurable node operator share mechanism offers an avenue for a node hosting business to any user who wants to offer it. However, a node owner must trust any node operator they wish to use. This is because the node owner would solely bear full responsibility for any misbehavior on the node, which can result in trust score penalties.

A node operator address can be set up during the pool creation step or anytime after the pool creation in the personal profile on the Diamond UI. It is editable once per epoch. One target address can be active at a time; setting a new one disables the old one.

Node Selection through POSDAO updated

D.7 Governance

The DAO Governance module is a weighted voting module that allows validators to vote for system changes, upgrades, and other proposals and optionally approve requested funding from the DMD DAO governance funding pot.

Important: DAO Governance and POSDAO are different things. DAO Governance is a manual smart contract powering the decision-making tool to vote over proposals, POSDAO is an automated smart contract to support a fair and decentral election of active validators.

Only validator candidates registered on the permissionless network can vote in the DAO, but coin holders can stake their DMD token with any validator candidate they choose and change their affiliation at any time, with the change taking place when the Epoch changes.

To stake, coin holders use a web interface or the interface of a compatible wallet that can connect to a customized Ethereum-like network and interact with dApps via WalletConnect. The validator votes on behalf of all coins that are delegated to the validator. This way, distributed governance is enabled through delegated Proof-of-Stake.

All proposals and voting are public and transparent. This is important so that participants can delegate their stake to the validators that are voting aligned with their interests.

Link to the DAO manual