Andy Freer (Dash Incubator) has updated the
Dash Service Architecture diagram:
![](https://ip.bitcointalk.org/?u=https%3A%2F%2Fi.imgur.com%2FObbpdpK.png&t=665&c=ARaysVjJtsAZRw)
Some of the Dash Platform components briefly explained:
Tenderdash is the main underlying technology in Dash Platform to manage our state transitions for Dash Platform Dapps. It uses its own blockchain to register these Dapp state transitions. Any data related to Dapps, including DashPay (usernames) will be stored on that separate blockchain.
DAPI is a connection interface that allows anyone in the Dash P2P network to access data from our Core and Platform blockchain, without having to host a full node (and thus full blockchain). It's a major leap forward for anyone who wants to integrate with or build upon the Dash network.
ABCI is the logic that is plugged into Tenderdash, in our case it's Drive. ABCI is just a general term to describe such logic.
Envoy is a reverse proxy. It serves several purposes: it's an HTTP server, load balancer, DDoS shield (to some extent), and it's also a GRPC server for clients who connect directly through a binary protocol.
TFS (Transaction Filter Stream) are bloom filters etc for tx functions.
P2P network:
P2P network is anything connecting via P2P protocol (which in crypto today is everything, unless you want to trust a 3rd party on some level) In the diagram, I've tried to convey the topological innovation of DAPI whereby the system is designed to cater for a new type of client in crypto networks, i.e. stateless client-server type connections (direct from browser e.g. HTTP or gRPC), which the system is designed to serve directly at scale whilst staying decentralized . This is established through the MN network which is incentivized to do this or penalized for not doing it well enough, with the incentives scaling with the demand.
With the release of Dash Platform, any P2P connection essentially becomes a 'backend' task and we have a 'frontend' of users connecting via browser and mobile. The core principle is derived from an issue in P2P scaling whereby the paradigm is that users give and take to a network (seed and leech). In reality, most users just want to take (just connect and use the service). This architecture is designed to do that in a decentralized way whilst maintaining incentives, minimizing trust, access from any device and in a stateless way so everything is stored in our P2P network which effectively becomes like a cloud, which is why it shows the HTTP users at the bottom
Check out the following gource videos with the 2021 updates so far for Dash Core and Dash Platform:
a) One minute OpenGL visualization video showing all
Dash Core updates since December 2020.
Overview of Dash Core V17 developer commit actions on GitHub:
https://www.reddit.com/r/dashpay/comments/nt43l8/one_minute_opengl_visualization_video_showing_all/![](https://ip.bitcointalk.org/?u=https%3A%2F%2Fi.imgur.com%2FPeDeuA6.png&t=665&c=fG3Xeq17Q_p6oQ)
b) One minute OpenGL visualization video showing all
Evolution updates since December 2020.
Overview of Dash Platform V17, V18 and V19 developer commit actions on GitHub:
https://www.reddit.com/r/dashpay/comments/nq1ld8/one_minute_opengl_visualization_video_showing_all/![](https://ip.bitcointalk.org/?u=https%3A%2F%2Fi.imgur.com%2FqqDB9YV.png&t=665&c=eG_Yr5rTW2w3Hw)
So I've done some further digging ...
Reminder: We have only implemented a select set of OPCODES, check DIP20 for details.
DIP20 implements the 'P_CHECKDATASIG OPCODE' for example:
The opcode OP_Checkdatasig is a Script operation that checks the validity of a signature using a message and public key. Essentially the operation calculates the hash within a transaction in order to validate signatures in an automated way. OP_Checkdatasig allows for data to be imported that can be validated through the use of an oracle. The opcode has facilitated some very cool concepts on the BCH network like a noncustodial escrow system, an onchain SLP* token auction console, a recurring payment system, an endowment platform, and an onchain game of chess.
(*) The Simple Ledger Protocol (SLP for short) is basically a token platform. Tokens can be used to represent almost anything, from deeds, titles, and stocks to video game items, collectibles, and even vote.
https://www.reddit.com/r/dashpay/comments/nli9lw/dash_improvement_proposal_dip20_activation_of_btc/
V17 Migration Status:Activation:![](https://ip.bitcointalk.org/?u=https%3A%2F%2Fi.imgur.com%2Fmtme0Jl.png&t=665&c=IIzKheESsrSiTw)
SPORK_23_QUORUM_POSE true
Status:![](https://ip.bitcointalk.org/?u=https%3A%2F%2Fi.imgur.com%2Fuq9N23A.png&t=665&c=XlqgfLv0x80biQ)
Over 80% of the MN network is now running on V17:
![](https://ip.bitcointalk.org/?u=https%3A%2F%2Fi.imgur.com%2F1bqAqXC.png&t=665&c=PD21bm3aHwt2-g)
Stay connected with the Dash Community through Reddit, Discord and/or Twitter:
https://www.reddit.com/r/dashpay/ (subreddit has about 41K members with activity increasing)
http://staydashy.com/ (takes you to the chat rooms on Discord with generally +300 users online)
https://twitter.com/DashpayThere's a MyDashWallet tip bot active both on Reddit and Discord =)
[moderator's note: consecutive posts merged]