This document contains high level features developed in Release 1.0.0.
The MOSIP 1.0 is a functional release of the mosip platform with the core modules of pre-registration, registration processor, registration client, mosip commons, and id authentication. The sections below highlight the salient features available in each of these modules. More details are available in the documentation in the documentation repo in the mosip github project.
Email /phone number based Login using OTP
Applications are associated with email or phone number
OTP is used with email or phone number for logging into the portal
Support for multiple applications and appointments in a login
Enter data beforehand
Upload documents
Book or cancel time slots for registration
Issuance of Pre-registration ID with QR code
Data entered here is synced to Registration Client
Notification and the acknowledgement slip is sent to registered email or phone number
No password stored as we support only OTP based login
Virus scan on server for uploaded documents
Multiple language support with data in two languages
Primary language has to be one of the languages
Virtual keyboard for data entry
Transliteration support
Library has to be provided
Public API set
Reference Implementation for Pre-registration UI
Registering residents for ID issuance
Updating resident’s details
Finding resident’s ID
Can serve residents with Pre-registration ID and walk-ins
Option to collect demographic and biometric data of resident
Support for biometric exception scenario
Support for guardian for registering minors
Support for integration with devices such as printer, scanner or GPS device
Issuance of Registration ID with QR code
Officer and supervisor model
Secure and trusted environment
TPM
Encryption
Can work offline
Data sync service
Packets
Packet status sync
Master data
Pre-registration data
Configuration
Biometric based login for Operators
Use of MDS (MOSIP Device Service) for biometric device interfacing
Multiple language support
Virtual keyboard
Transliteration
Tested on Windows with Oracle JDK 9
Reference implementation for Registration UI
Process flow for ID life-cycle
Application packets for Registration Client
Requests from resident portal
Performs validations
Validate trust and security - Virus checks, machine and device checks
Validate the identity of officer and supervisor
Validate the data received including quality of biometrics captured
Performs Uniqueness checks
Identifies duplicate applicants - demographic and biographic
Works with ABIS for biometric uniqueness check
Takes Actions on ID
Supports ID creation and Issuance, ID update & Lost ID
Sends Notifications
Sends the ID information to external Printing & Delivery System
VertX EventBus with lightweight messaging for stages
An apache camel bridge manages the flow of the packet through the stages
Each flow has its own camel specification
Integration stages can be added into the flow as needed
Failed stages are rerun by the flow
Stages have to be atomic and self aware, but agnostic of other stages
No transaction control at the flow level
Throughput for each stage is decided based on hardware available
Packets are decrypted in memory and used
HTTP based stages are possible too
Stores the Identify information
Identity data & documents
Offers APIs for ID operations
ID Updates
Virtual ID Support
Limited Retrieval API
Retrieve non-biometric information
Retrieve biometrics for ABIS and Auth operations
Activate & Deactivate ID
Block ID
Lock biometrics authentication
Multiple keys for encryption
Different fields in the row use different keys
Different rows use different keys
Limited API functionality
No multiple record selection
No wildcard searches
Distributed Storage
Part RDBMS
Part DFS
Extensive Tokenization and Hashing
Ref Ids used everywhere as opposed to the UIN
No plain text storage
Identity verification services
Yes/no API confirms identity claimed
Works with Virtual ID
Supports multiple levels of confidence and trust
Single and multi-factor authentication
Supports OTP, demographic, biometric factors
e-KYC based authentication
Returns selected non biometric attributes excluding ID
Policy based sharing of data
Authorization/Consent
OTP based consent mechanism linked to transaction being authorized or consented to
Partner Ecosystem
API Key and Policy driven usage
Trust and security validations are performed on the request
Registered Devices, Authorized Partners
Uses a third party SDK for biometrics comparison
Call to authentication is a single request, OTP generation is a prior step
UIN/VID based authentication requests can be made
Recommended configuration is VID only
Currently works off the ID Repo
Easy to plug in validations such as liveness detection
Supports L0/L1 MDS Specifications for clients
Domain feature and transaction feature for inter-op and authorization support
Ability to tracks application status
Manage ID
Download printable card with QR code
Update of demographic data
Request for re-print of card
Privacy features
View authentication history
Block and unblock authentication modes
On demand creation and revocation of Virtual ID/Alias ID
API only at present
Portal and App reference implementations are not available yet
Email, Phone Number based login
JWT support for session
Configurable log retention period
This release is with real biometrics. This means that MOSIP Platform is now integrated with SDK, MDS (MOSIP Device Service), ABIS (Automated Biometrics Identification System) and Biometric devices. Also, this version is tested for Biometric functionalities. Non-functional requirements (Performance, Scale and Security) will be taken up in subsequent releases.
Modules included
Pre-Registration
Registration Client
Registration Processor
ID Authentication
Administration
Reference GUI implementation of Pre-Registration and Registration Client.
Modules not included
Partner Management
Resident Services
Reference GUI implementation of Administration
Module-wise features released as part of this release can be found here
Includes Functional requirements, Process flows, Architecture and High level design, Developer documentation etc.
Link to Platform Documentation
Low level design documents for respective modules is found below:
Functional test documentation is found here.
MOSIP Platform can be configured to be used for Real Biometrics. Please find the guide to configure MOSIP for biometrics.
Pre Registration - Browser support
Chrome 74.0.3729)
Deployment Script Environment
Microsoft Azure
Registration Client – OS version
Windows 10 (English version) with TPM 2.0
Camera
Logitech / Default windows camera
Scanner
Canon lide 120
GPS
GlobalSat BU-353-S4
Biometrics standard
CBEFF format (Version - 0.9.0)
MOSIP Device Service (MDS)
Version - 0.9.1
SMS gateway
MSG91, Infobip
Registration Client – face capture
OpenImaj - This is licensed for demo purpose only
Keystore
SoftHSM
Antivirus
ClamAV
Maps
OpenstreetMap
Supporting key based digital signatures, not using digital certificates
Transliteration
ICU4J (Library with French, Arabic languages)
The code and automation tests are available on GitHub. The code needs to be built and deployed as per the procedure documented in Building And Deploying MOSIP. We will actively support System Integrators during their first deployment.
Testing Scope
1. In scope [↑]
Modules Tested
Pre-registration (UI & Server)
Registration Client (UI & APIs)
Kernel (APIs)
Registration Processor (Server)
ID Authentication (APIs)
ID Repository (APIs)
Administration (UI & APIs)
Version Tag Tested
1.0.0
Test Methodology
Manual
Test Automation
Types of testing
Smoke
Functional
Integration
Regression
Testing Levels
Configuration Parameters tested for
Browser Support
Pre-Registration
Chrome – 78.0.3904.108
OS Support
Registration Client
Windows 10
Language Support
French, Arabic, English
2. Not in scope [↑]
NFR Testing
Scalability Testing
Performance Testing
Security Testing
Configuration Testing
Testing is done for one set of approved production configuration
Changing the configuration parameters for various values (boundary values) and testing the impact of each such value on the platform code will be taken up in subsequent releases.
3. Executive Summary – Consolidated Quality Status [↑]
1
Kernel
Test Automation
PASS
2
Pre-Registration
Test Automation
PASS
3
Registration Client
Tested Manually
Test Automation
PASS
4
Registration Processor
Tested Manually
Test Automation
PASS
5
ID Authentication
Test Automation
PASS
6
ID Repo
Test Automation
PASS
7
Pre-Registration to Registration Client integration testing
Tested Manually
PASS
8
Registration Client to Registration Processor integration testing
Tested Manually
PASS
9
Registration Processor to IDA integration testing
Tested Manually
PASS
10
IDA to ID Repo
Tested Manually
PASS
4. Types of Testing [↑]
Smoke Testing
Tests to ensure basic workflows works fine
Functional Testing
Tests to ensure functionality of each module and overall system work fine in accordance with the given requirements
Integration Testing
Tests to ensure the inter module functionality works fine and in accordance with the integration requirements
Regression Testing
Tests to ensure that any change doesn't break existing functionality
5. Test Execution Summary [↑]
ABIS
Automated Biometric Identification System
API
Application Programming Interface
ID
Identity
IDA
Identity Authentication
MOSIP
Modular Open Source Identity Platform
NFR
Non-Functional Requirements
OTP
One Time Password
SDK
Software Development Kit
TBD
To Be Determined
TOTP
Temporary One Time Password
UIN
Unique Identification Number
WIP
Work In Progress
CBEFF
Common Biometric Exchange Formats Framework
HSM
Hardware Security Module
TPM
Trusted Platform Module
SDK
Software Development Kit
MDS
MOSIP Device Service
Refer to properties file at