Xaya Architecture — Under the Hood

The Xaya Blockchain

The Xaya blockchain is a fork of Namecoin. Namecoin was the first official fork (and altcoin) of Bitcoin.

How do games work?

The Xaya platform enables computationally complex games (or applications) to run fully decentralised, trustless and permissionless.

The Architecture

Games that run on the Xaya platform in a fully decentralised way have the following software components:

  • Xaya node / daemon (xayad)
    — Also normally the users wallet
  • Game State Processor (GSP)
    — This computes the state of the game from moves it requests in blocks for a particular game
    — The developers game logic sits here and utilizes the libxayagame library:
    https://github.com/xaya/libxayagame
    — libxayagame handles all blockchain complexity so that the developer only needs to consider coding the game’s logic
  • Game front end
  • Electrum SPV wallet: https://github.com/xaya/electrum-chi
    — A fork of the Bitcoin (or namecoin) Electrum wallet.
    — Very light, yet secure
    — It has been modified to allow name (account) functionality as with the xayad full node daemon
  • Charon: https://github.com/xaya/charon/blob/master/doc/protocol.md
    “Charon allows users to access game-state data from a GSP running on a remote server through XMPP. In other words, one or more GSP processes can connect to an XMPP server and listen there for requests, and players can connect as well using a custom XMPP client, which is then able to send requests to the GSP connections.”
  • XID: https://github.com/xaya/xid
    “Xaya ID (XID) is an application built on the XAYA platform that turns each Xaya name into a secure digital identity.”
    — “These identities are meant to be used inside the Xaya ecosystem, e.g. on chat systems or market places in Xaya games. They can, however, be used by any other application as well. For instance, websites can enable “login with Xaya” to use secure, password-less authentication. Or messaging systems can use Xaya identities for the secure exchange of key fingerprints for end-to-end encryption.”
    — Find out more about
    XID here
  • XMPP Server (Ejabberd) > https://ejabberd.im/
    — A high performance messaging application
    — Utilises a plugin for external authentication with XID name associations for users to login to the system without requiring the server to save any username or passwords. Essentially Xaya accounts can log in securely onto the XMPP server.
    https://github.com/xaya/xid/tree/master/ejabberd

Can we make it more trustless and secure, and still be lite?

Yes, this can be done using a system not dissimilar to DPoS style blockchains.

What about Game Channels?

Game Channels allow for decentralised, trustless, real-time gameplay while also reducing blockchain bloat.

Games in development

Two games that are currently under development by Autonomous Worlds Ltd (the company that maintains the Xaya project) are Taurion and Soccer Manager Elite. Both games are decentralised, trustless, and permissionless. (There are other games under development on the Xaya platform.)

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store