Rahasak is a highly scalable blockchain platform for enterprise applications that was developed with a collaboration of engineers and academic researchers. Rahasak is not only a blockchain platform, it's a framework to build and deploy highly scalable enterprise applications with microservices-based architecture. Following are the main components of the Rahasak.
- Aplos Service - Smart contract service implemented using Scala functional programming language and Akka actors. It supports concurrent transaction execution on the blockchain.
- Storage Service - Apache Cassandra-based block, transaction, and asset storage. It supports sharding-based data replication.
- Lokka Service - Block creating service implemented using Scala and Akka streams.
- Rahasak-ML - Federated machine learning service. It allows to build and share ML models in a privacy-preserving manner.
- Rahasak-CA - Certificate authority that issues certificates for peers and clients in the Rahasak blockchain.
- Apache Kafka - Apache Kafka-based distributed publisher/subscriber service. it used for consensus and the message broker.
Rahasak introduced real-time transaction enabled novel scalable validate-execute-group blockchain architecture. The proposed architecture built using Apache-Kafka-based consensus and reduces the overhead of the order-execute architecture in traditional blockchain systems. Backpressure operations on scalable real-time applications are handled with Reactive Streaming based methodology.
Rahasak supports functional programming and an actor-based concurrent smart contract platform Aplos. All blockchain-based software programs and the messages that pass between them are written as Scala functional programming language-based Akka actors. Aplos identified as a Smart Actor platform since it supports concurrent transaction execution blockchain using actor-based concurrency handling.
Rahasak blockchain is designed using Microservices-based architecture. The consensus handling, smart contracts, asset storage, and block generation functions are implemented in independent microservices services in the Rahasak blockchain. Each blockchain node contains four different microservices 1. storage, 2. aplos, 3. lokka, 4. rahasak-ml. All these microservices are dockerized and available for deployment using Kubernetes.
Rahasak used Apache Cassandra-based storage as the blockchain asset storage. All the assets stored in the storage indexed on an elastic search-based full-text search API. Rahasak facilitates the full-text search of blockchain data by using this search API. Rahasak blockchain elastic search API can be plugged with Kibana, Grafana like analytic dashboards. In this way, we make blockchain more scalable, secure, structured, and meaningful for further data analytics.
Rahasak blockchain comes with federated-learning-based machine learning service Rahasak-ML. The data on the different blockchain peers can be analyzed and built the machine learning models in a privacy preserving manner using federated learning. Rahasak-ML supports Pytroch, Pysyft, and TensorFlow-federated machine learning integrations.