Performance Report
Overview
The eSignet Performance Testing Report provides a comprehensive analysis of the system’s responsiveness, reliability, and scalability under various operational conditions. It captures key performance metrics such as throughput, resource utilization and memory consumption. This report is designed to help stakeholders understand how eSignet performs in real-world scenarios, identify potential bottlenecks, and guide future optimizations to ensure a seamless and secure authentication experience.
Summary
Load tests were conducted to assess the performance and stability of eSignet APIs. The mock-identity-system was used to artificially induce 1,3 and 5 second delay in 3 different tests to check for performance variability under different response times.
During each of the three 10‑hour test windows, the system successfully processed ~1.9 million authentications originating from 100,000 unique identities, maintaining a steady throughput of ~50 transactions per second. Throughout the test, all API response times consistently remained close to the 100‑millisecond SLA target (not including the artificial mock delay).
A Resource Calculator is provided to help estimate their hardware requirement to achieve similar performance at a larger scale.
No major performance degradation or bottlenecks were observed throughout the test duration. Based on the results, this module is assessed to be stable, performant, and ready for release. However, few issues have been recognized, documented and will be addressed in future release.
Performance Improvements
In this release the core authentication engine has been migrated from Java to Go, for better long-term sustainability, performance and efficiency. Go, as a runtime, has been judged to be better suited to the kind of high-throughput, low-latency authentication workloads that a national identity backend needs to sustain. Improvements have been made in caching, connection management. Go configs have also been tuned to match varying possible auth response times.
Test Environment
Deviation from the default
mock-identity-systemservice was used as an Identity authentication provider. The response delay was set to 1,3 and 5 seconds in three different tests.
Software Under Test
Following ‘Images’ were under the scope of ‘Performance Testing’, and will be transferred as mosipid images
Modules Segregation
mosipqa/eSignet:2.0.x
release-2.0.x
mosipqa/oidc-ui:2.0.x
release-2.0.x
mosipqa/mock-identity-system:0.14.x
release-0.14.x
Repo used is mosip/eSignet-mock-service
Test Data
Performance data load was populated before the run to ensure realistic results.
mosip_mockidentitysystem
Mock_identity
100,000
100,000
Test Design
Test Duration: 10-Hours
Test Type: Load Test
Ramp Up: 15 mins
Total TPS: 50
Workload Model
S01 OTP Authentication
S01 T01 Initiate PAR Endpoint
100
80%
40
1,440,000
S01 T02 Send Authorize Endpoint
100
S01 T03 Flow Meta Endpoint
100
S01 T04 1 Authentication Flow - Start Endpoint
100
S01 T04 2 Authentication Flow - ACR Endpoint
100
S01 T04 3 Authentication Flow - Individual ID Endpoint
100
S01 T04 4 Authentication Flow - OTP Endpoint
100
S01 T04 5 Authentication Flow - Consent Endpoint
100
S01 T05 Obtain Authorization Code Endpoint
100
S01 T06 Obtain Access Token Endpoint
100
S01 T07 User Info Endpoint
100
S02 Biometric Authentication
S02 T01 Initiate PAR Endpoint
100
20%
10
360,000
S02 T02 Send Authorize Endpoint
100
S02 T03 Flow Meta Endpoint
100
S02 T04 1 Authentication Flow - Start Endpoint
100
S02 T04 2 Authentication Flow - Select acr Endpoint
100
S02 T04 3 Authentication Flow - Individual ID Endpoint
100
S02 T04 4 Authentication Flow - Bio Endpoint
100
S02 T04 5 Authentication Flow - Consent Endpoint
100
S02 T05 Obtain Authorization Code Endpoint
100
S02 T06 Obtain Access Token Endpoint
100
S02 T07 User Info Endpoint
100
Test Results
Performance test execution results
Test 1
Application Name
eSignet (under 5 second mock response delay)
Test Duration
7/9/26, 1:56 PM - 11:56 PM (10-Hours)
Number of parallel threads
802
Status
GREEN
Test 2
Application Name
eSignet (under 3 second mock response delay)
Test Duration
8/9/26, 10:27 AM – 8:27 PM (10-Hours)
Number of parallel threads
516
Status
GREEN
Test 3
Application Name
eSignet (under 1 second mock response delay)
Test Duration
8/9/26, 9:00 PM - 9/9/26 7:00 PM (10-Hours)
Number of parallel threads
191
Status
GREEN
Test Reports
Test 1 - under 5 second mock response delay
Date: 7/9/26 (10 Hours)
# Samples
Min
Average
95% Line
Max
Error %
S01 OTP Authentication
S01 T01 Initiate PAR Endpoint
/oauth2/par → POST
1,582,426
4
9
15
275
0.0%
S01 T02 Send Authorize Endpoint
/oauth2/authorize → GET
1,582,426
6
14
25
272
0.0%
S01 T03 Flow Meta Endpoint
/flow/meta → GET
1,582,426
13
22
35
293
0.0%
S01 T04 1 Authentication Flow - Start Endpoint
/flow/execute(start) → POST
1,582,422
6
13
24
282
0.0%
S01 T04 2 Authentication Flow - ACR Endpoint
/flow/execute(select-acr) → POST
1,582,420
6
13
24
280
0.0%
S01 T04 3 Authentication Flow - Individual ID Endpoint
/flow/execute(submit-uin) → POST
1,582,418
5,010
5,019
5,031
5,667
0.0%
S01 T04 4 Authentication Flow - OTP Endpoint
/flow/execute(submit-otp) → POST
1,582,205
5,013
5,024
5,037
5,301
0.0%
S01 T04 5 Authentication Flow - Consent Endpoint
/flow/execute(consent) → POST
1,581,984
5,015
5,030
5,046
5,322
0.0%
S01 T05 Obtain Authorization Code Endpoint
/oauth2/auth/callback → POST
1,581,754
6
15
27
260
0.0%
S01 T06 Obtain Access Token Endpoint
/oauth2/token → POST
1,581,750
5
12
22
263
0.0%
S01 T07 User Info Endpoint
/oauth2/userinfo → GET
1,581,748
6
13
23
231
0.0%
S02 Biometric Authentication
S02 T01 Initiate PAR Endpoint
/oauth2/par → POST
359,798
4
9
16
93
0.0%
S02 T02 Send Authorize Endpoint
/oauth2/authorize → GET
359,794
6
15
31
256
0.0%
S02 T03 Flow Meta Endpoint
/flow/meta → GET
359,793
13
24
42
286
0.0%
S02 T04 1 Authentication Flow - Start Endpoint
/flow/execute(start) → POST
359,792
6
13
27
221
0.0%
S02 T04 2 Authentication Flow - Select acr Endpoint
/flow/execute(select-acr) → POST
359,791
6
13
24
231
0.0%
S02 T04 3 Authentication Flow - Individual ID Endpoint
/flow/execute(submit-uin) → POST
359,791
6
13
24
256
0.0%
S02 T04 4 Authentication Flow - Bio Endpoint
/flow/execute(submit-otp) → POST
359,791
5,012
5,024
5,039
5,283
0.0%
S02 T04 5 Authentication Flow - Consent Endpoint
/flow/execute(consent) → POST
359,739
5,017
5,032
5,054
5,295
0.0%
S02 T05 Obtain Authorization Code Endpoint
/oauth2/auth/callback → POST
359,686
6
15
30
199
0.0%
S02 T06 Obtain Access Token Endpoint
/oauth2/token → POST
359,682
5
12
22
130
0.0%
S02 T07 User Info Endpoint
/oauth2/userinfo → GET
359,680
6
12
23
129
0.0%
Test 2 - under 3 second mock response delay
Date: 8/9/26 (10 Hours)
# Samples
Min
Average
95% Line
Max
Error %
S01 OTP Authentication
S01 T01 Initiate PAR Endpoint
/oauth2/par → POST
1,611,896
4
7
11
162
0.0%
S01 T02 Send Authorize Endpoint
/oauth2/authorize → GET
1,611,893
6
13
22
290
0.0%
S01 T03 Flow Meta Endpoint
/flow/meta → GET
1,611,893
13
35
86
268
0.0%
S01 T04 1 Authentication Flow - Start Endpoint
/flow/execute(start) → POST
1,611,893
6
40
89
268
0.0%
S01 T04 2 Authentication Flow - ACR Endpoint
/flow/execute(select-acr) → POST
1,611,893
6
42
89
3124
0.0%
S01 T04 3 Authentication Flow - Individual ID Endpoint
/flow/execute(submit-uin) → POST
1,611,893
3,010
3,054
3,100
3877
0.0%
S01 T04 4 Authentication Flow - OTP Endpoint
/flow/execute(submit-otp) → POST
1,611,757
3,013
3,063
3,118
3673
0.0%
S01 T04 5 Authentication Flow - Consent Endpoint
/flow/execute(consent) → POST
1,611,619
3,018
3,066
3,127
3295
0.0%
S01 T05 Obtain Authorization Code Endpoint
/oauth2/auth/callback → POST
1,611,483
6
29
75
302
0.0%
S01 T06 Obtain Access Token Endpoint
/oauth2/token → POST
1,611,469
5
11
27
190
0.0%
S01 T07 User Info Endpoint
/oauth2/userinfo → GET
1,611,462
6
11
17
222
0.0%
S02 Biometric Authentication
S02 T01 Initiate PAR Endpoint
/oauth2/par → POST
359,593
4
19
56
192
0.0%
S02 T02 Send Authorize Endpoint
/oauth2/authorize → GET
359,590
6
27
86
239
0.0%
S02 T03 Flow Meta Endpoint
/flow/meta → GET
359,590
13
36
88
258
0.0%
S02 T04 1 Authentication Flow - Start Endpoint
/flow/execute(start) → POST
359,590
6
29
80
239
0.0%
S02 T04 2 Authentication Flow - Select acr Endpoint
/flow/execute(select-acr) → POST
359,585
6
28
77
257
0.0%
S02 T04 3 Authentication Flow - Individual ID Endpoint
/flow/execute(submit-uin) → POST
359,582
6
25
73
247
0.0%
S02 T04 4 Authentication Flow - Bio Endpoint
/flow/execute(submit-otp) → POST
359,578
3,012
3,042
3,099
3296
0.0%
S02 T04 5 Authentication Flow - Consent Endpoint
/flow/execute(consent) → POST
359,552
3,017
3,051
3,121
3344
0.0%
S02 T05 Obtain Authorization Code Endpoint
/oauth2/auth/callback → POST
359,522
6
25
75
229
0.0%
S02 T06 Obtain Access Token Endpoint
/oauth2/token → POST
359,519
5
21
71
236
0.0%
S02 T07 User Info Endpoint
/oauth2/userinfo → GET
359,519
6
32
91
273
0.0%
Test 3 - under 1 second mock response delay
Date: 8/9/26 (10 Hours)
# Samples
Min
Average
95% Line
Max
Error %
S01 OTP Authentication
S01 T01 Initiate PAR Endpoint
/oauth2/par → POST
1,617,619
4
7
11
105
0.0%
S01 T02 Send Authorize Endpoint
/oauth2/authorize → GET
1,617,613
7
15
35
119
0.0%
S01 T03 Flow Meta Endpoint
/flow/meta → GET
1,617,613
14
35
63
120
0.0%
S01 T04 1 Authentication Flow - Start Endpoint
/flow/execute(start) → POST
1,617,613
7
27
52
273
0.0%
S01 T04 2 Authentication Flow - ACR Endpoint
/flow/execute(select-acr) → POST
1,617,613
7
24
47
134
0.0%
S01 T04 3 Authentication Flow - Individual ID Endpoint
/flow/execute(submit-uin) → POST
1,617,613
1,011
1,032
1,056
1,687
0.0%
S01 T04 4 Authentication Flow - OTP Endpoint
/flow/execute(submit-otp) → POST
1,617,567
1,014
1,037
1,062
1,707
0.0%
S01 T04 5 Authentication Flow - Consent Endpoint
/flow/execute(consent) → POST
1,617,520
1,018
1,042
1,069
4,605
0.0%
S01 T05 Obtain Authorization Code Endpoint
/oauth2/auth/callback → POST
1,617,474
6
17
36
122
0.0%
S01 T06 Obtain Access Token Endpoint
/oauth2/token → POST
1,617,474
6
11
19
99
0.0%
S01 T07 User Info Endpoint
/oauth2/userinfo → GET
1,617,469
6
10
13
78
0.0%
S02 Biometric Authentication
S02 T01 Initiate PAR Endpoint
/oauth2/par → POST
360,350
4
12
28
88
0.0%
S02 T02 Send Authorize Endpoint
/oauth2/authorize → GET
360,350
7
21
51
112
0.0%
S02 T03 Flow Meta Endpoint
/flow/meta → GET
360,350
14
28
54
123
0.0%
S02 T04 1 Authentication Flow - Start Endpoint
/flow/execute(start) → POST
360,350
7
18
43
114
0.0%
S02 T04 2 Authentication Flow - Select acr Endpoint
/flow/execute(select-acr) → POST
360,350
7
17
43
126
0.0%
S02 T04 3 Authentication Flow - Individual ID Endpoint
/flow/execute(submit-uin) → POST
360,349
7
18
42
105
0.0%
S02 T04 4 Authentication Flow - Bio Endpoint
/flow/execute(submit-otp) → POST
360,349
1,013
1,032
1,065
1,131
0.0%
S02 T04 5 Authentication Flow - Consent Endpoint
/flow/execute(consent) → POST
360,339
1,018
1,040
1,076
1,157
0.0%
S02 T05 Obtain Authorization Code Endpoint
/oauth2/auth/callback → POST
360,329
6
18
46
108
0.0%