WebWallet - Architecture

For the purpose clarifying some architectural features, comparing WebWallet to Bitcoin could be helpful. In terms of transaction finality and environment, WebWallet is meant to be used for transaction clearing on the Web. Bitcoin, in contrast, could be described as transaction settlement for the Internet.

World Wide Web

  • Client-server Architecture Despite the current and future advantages of decentralized, peer-to-peer networks such as BitTorrent and Bitcoin, the client-server model will probably continue to be widely used on the Web and other large-scale real-time systems. Therefore, there is room for a transactional model that makes design choices and trade-offs in order to be suitable for this architecture.

  • Logical Decentralization
    Although the Bitcoin network is organizationally decentralized, it is still logically centralized. By contrast, the Web as an information space is both organizationally and logically decentralized. WebWallet naturally aims to resemble the latter, so that wallet applications can run independently and maintain their own state as any other web application.

  • Publishing Autonomy
    Bitcoin is a decentralized currency because its transactions are processed without a central authority. However, currency issuance is centralized in the mining process. WebWallet makes a trade-off to favor decentralized issuance over decentralized clearing, just like the Web favors decentralized publishing over consensus-driven content curation.

Microservices

For the sake of modularity and separation of concerns, WebWallet's internal architecture defines separate components for storing transaction documents, clearing transaction requests, and consolidating transaction records. Interactions with a WebWallet API server will require internal interactions with one or more loosely-coupled or autonomous microservices.

  1. Hashtable: a database service for storing transaction documents.
  2. Graphstore: a database service for clearing transaction requests.
  3. Blockstack: a service for grouping and securing transaction records.

results matching ""

    No results matching ""