In this blog, we will see news about the Falcon project launched by NPCI on 29 August 2023.
For that, we should know some terms like,
What is NCPI?
What is Kubernetes?
What is Hyper ledger fabric?
What is the Falcon project actually?
If we get answers to all the above questions then only, we understand the Project Falcon.
National Payments Corporation of India
The National Payments Corporation of India (NPCI) is the very first organization in the Indian financial ecosystem, playing a crucial role in transforming and modernizing the country’s payment and settlement systems. Established in 2008, NPCI is a not-for-profit organization that operates under the guidance and supervision of the Reserve Bank of India (RBI) and the Indian Banks’ Association (IBA). It remains a key driver of India’s journey towards a cashless economy.
NPCI continues to expand its services and collaborate with various stakeholders to promote a cashless and digitally inclusive economy in India
Key points about NPCI
- Genesis and Purpose: NPCI was established to drive financial inclusion, promote digital payments, and develop a robust and efficient payment infrastructure in India.
- Ownership Structure: NPCI is owned by a consortium of major banks in India, including public-sector and private-sector banks.
- Financial Inclusion: NPCI has played a significant role in advancing financial inclusion by providing low-cost and accessible digital payment solutions to remote and underserved areas of India.
- Innovation and Technology: NPCI is at the forefront of technological advancements in the payment industry, continually introducing new features and services to enhance user experience and security.
- Regulatory Oversight: NPCI operates under the regulatory framework of the RBI and is subject to their guidelines and supervision.
- Global Recognition: NPCI’s UPI system has gained international acclaim for its simplicity and efficiency, and it serves as a model for other countries looking to adopt similar payment systems.
- Security Measures: NPCI strongly emphasizes security and employs various measures to safeguard digital transactions and customer data.
- Financial Stability: NPCI’s systems are designed to ensure the stability and reliability of the Indian financial ecosystem, reducing risks associated with payment processing.
Key Services offered by NPCI:
- UPI (Unified Payments Interface): A real-time interbank payment system that allows instant fund transfers between banks using mobile phones. As per the press release of NPCI, UPI is fast, free, and secure performing over 8 billion transactions every month.
- IMPS (Immediate Payment Service): Facilitates interbank electronic funds transfer on a 24/7 basis.
- NEFT (National Electronic Funds Transfer): A nationwide payment system for transferring funds from one bank account to another.
- RTGS (Real-Time Gross Settlement): Facilitates high-value, real-time fund transfers between banks.
- AEPS (Aadhaar Enabled Payment System): Enables Aadhaar-based transactions.
- BBPS (Bharat Bill Payment System): Centralized bill payment system for various utility bills.
- NCMC (National Common Mobility Card): Allows seamless travel payments across various modes of transportation.
- NACH (National Automated Clearing House): Facilitates bulk and repetitive electronic transactions like salary payments, dividends, and more.
By considering the below statistics we can able to imagine how NPCI performing a crucial role in the banking sector.
Kubernetes
The name Kubernetes originates from Ancient Greek, meaning ‘pilot’, i.e. while driving an aircraft pilot manages everything the same here Kubernetes.
Kubernetes is an open-source container orchestration system for automating software deployment, scaling, and management. Originally designed by Google, the project is now maintained by the Cloud Native Computing Foundation (CNCF) since 2016.
Kubernetes manages containerized workloads and services, that facilitate both declarative configuration and automation.
Kubernetes automates operational tasks of container management and includes built-in commands for deploying applications, rolling out changes to your applications, scaling your applications up and down to fit changing needs, monitoring your applications, and more—making it easier to manage applications.
Kubernetes networking work?
Kubernetes networking works by creating pods and services. A pod is a group of one or more containers that are deployed together and share a network namespace and IP address. Containers within a pod can communicate with each other using a localhost. Services are used to expose one or more pods to the outside world.
Key Features of Kubernetes (in Bullet Points):
- Container Orchestration: Kubernetes manages containers (e.g., Docker) and ensures they are running in desired states.
- Cluster Management: It organizes containers into clusters of nodes, abstracting the underlying infrastructure.
- Automated Scaling: Kubernetes can automatically scale applications up or down based on resource usage or defined policies.
- Service Discovery: It provides DNS-based service discovery and load balancing for containers within the cluster.
- Rolling Updates: Supports zero-downtime updates by gradually replacing old containers with new ones.
- Self-Healing: Monitors application health and automatically replaces or reschedules containers in case of failures.
- Declarative Configuration: Describes desired application state in YAML or JSON, allowing easy versioning and reproducibility.
- Resource Management: Allocates CPU, memory, and other resources to containers, preventing resource contention.
- Storage Orchestration: Manages storage volumes and attaches them to containers as needed.
- Networking: Kubernetes provides networking solutions to connect containers within and outside the cluster.
- Secrets and ConfigMaps: Securely manage sensitive data and configuration settings for applications.
- Multi-Cloud and Hybrid: Can run on various cloud providers and on-premises infrastructure, promoting portability.
- Extensibility: Kubernetes has a rich ecosystem of plugins (e.g., custom resource definitions) and extensions.
- Role-Based Access Control (RBAC): Granular control over who can access and modify resources within the cluster.
- Observability: Supports monitoring and logging tools for gaining insights into application performance.
- Community and Ecosystem: Kubernetes has a large and active community, contributing to its continuous improvement.
- Compatibility: Supports various container runtimes, including Docker, containerd, and CRI-O.
- Horizontal and Vertical Scaling: Can scale both the number of instances (horizontal) and the resources allocated to a container (vertical).
- Self-Service Portals: Allows developers to define and manage their applications without direct interaction with operations teams.
- Customization: Highly configurable through its extensive API and configuration options.
Hyperledger Fabric Overview:
Hyperledger Fabric is an open-source enterprise blockchain platform developed under the Linux Foundation’s Hyperledger project. It’s designed to provide a framework for building permissioned blockchain networks for businesses and consortiums.
Key Features of Hyperledger Fabric
- Permissioned Blockchain: Hyperledger Fabric allows organizations to control access to the network, making it suitable for business consortia and enterprise use.
- Modular Architecture: Its modular design enables plug-and-play components, including consensus algorithms, identity management, and storage solutions.
- Smart Contracts (Chaincode): Fabric supports smart contracts, known as chaincode, which are written in familiar languages like Go, JavaScript, and Java.
- Private Data: Allows for confidential transactions and data sharing between authorized parties while maintaining privacy.
- Pluggable Consensus: Supports various consensus algorithms, including Practical Byzantine Fault Tolerance (PBFT), Kafka, and Raft.
- Channel Support: Fabric enables the creation of private channels within the network, where transactions are visible only to specific participants.
- Permissioned Membership: Network participants are authenticated and authorized, ensuring trust and security.
- Identity Management: Integrates with various identity solutions, including certificate authorities (CAs) and LDAP, for user and peer authentication.
- Endorsement Policies: Defines criteria for approving and endorsing transactions, offering fine-grained control over consensus.
- Scalability: Fabric is designed for scalability, with support for multiple organizations, nodes, and channels.
- Pluggable Database Support: Supports multiple databases, including LevelDB and CouchDB, for storing ledger data.
- Rich Querying: Allows for complex queries of blockchain data using Chaincode.
- Interoperability: Hyperledger Fabric can be integrated with other Hyperledger projects and blockchain platforms.
- Rich SDKs: Provides SDKs for popular programming languages to facilitate application development.
- Governance Model: Offers tools for network administrators to manage and govern the blockchain network.
- Permissioned and Confidential Transactions: Ensures that only authorized parties can access and transact with specific data.
- Versioning and Upgrades: Supports the ability to upgrade the network and chaincode while maintaining data integrity.
- Integration with Existing Systems: Can integrate with existing enterprise systems and legacy databases.
- Auditing and Compliance: Provides tools for auditing and compliance with regulatory requirements.
- Active Community: Hyperledger Fabric has a thriving community of developers and contributors.
As per NPCI officials, Falcon is an open-source project that combines Hyperledger fabric deployment with Kubernetes. It is designed to streamline the deployment and management of Hyperledger Fabric-based blockchain networks on Kubernetes clusters. This tool simplifies the complex process of setting up, configuring, and maintaining Fabric nodes, peers, orderers, and channels within a Kubernetes environment. The project empowers developers and administrators to effortlessly deploy and scale secure and robust Hyperledger Fabric networks with the flexibility and scalability of Kubernetes.
NPCI says “Whether you’re a blockchain enthusiast, developer, or enterprise seeking to harness the power of distributed ledger technology using Hyperledger Fabric, the deployment helper for Kubernetes is your go-to solution for efficient, reliable, and automated Fabric network deployment”.
Features offered by Falcon
- CA Management (Root CA, TLS CA & Intermediate CAs)
- Peer Creation
- Orderer Creation
- Channel Management
- Chaincode Lifecycle Management (Install, Approve, Commit and CC Upgrades)
- Cryptographic operations support and certification management
- Domain Name support and SNI Based Routing
- Ingress resource provisioning
- File Registry support for centralized config files
- Support for Hyperledger Fabric 2.3+
- Multi-zone, Multi-DC, Private Network (On-prem DCs) deployment support
Roadmap of Falcon
- Multi-channel support
- Automatic certificate renewal
- GUI-based deployment support
- Optional Fabric Explorer
- Optional Fabric Operations Console
- Observability stack
- Key Management using HSM / Vault
Production Readiness
Falcon is utilized across multiple blockchain projects within NPCI.
Bottom line
About Falcon, we will say that it simplifies the deployment of fabric networks.