## 4 Discussion and Result Analysis
### Security Analysis  
Regarding the novel authentication factor developed in this paper, namely, the second factor of the proposed MFA mechanism, the password space would be given by calculating all the possible combinations out of the following:  
* All the possible combinations of 4 images pulled from the user's uploaded set of images.
* All the possible combinations of 8 images pulled from the generic image database.
* All the user's registered types of relations.
* Al the predefined types of relations.  
The password space could then be calculated using the following formula:  
\[(^{\mathrm{s1}}\mathrm{C_{4}}\times{}^{\mathrm{s2}}\mathrm{C_{8}})\times(^{ \mathrm{d}}\mathrm{C_{2}}\times\mathrm{R}) \tag{1}\]  
In this formula, s1 represents the number of images the user uploaded to the database and s2 represents the number of images stored in the generic image database. C stands for the binomial coefficient (also known as combination number or simply combinations) and is used to calculate how many ways one can choose k items from n items without repetition and without order. R stands for the number of available types of relations, including both the predefined types, and the ones registered by the user.  
It is a fact that the more images and types of relations the user has available for his or her authentication, the bigger the password space would be and, therefore, the more secure it would be. Consequently, the mechanism was designed and developed to not only require a minimum of 9 images to be uploaded initially, but also to enforce the user keeping the uploading images after every authentication until a total of 20 images are stored in the database. The mechanism, once in production, is thought to have at least 10 predefined types of relations, and it encourages the user to register at least 5 of his or her own. Similarly, the generic image database is thought to have a minimum of 500 images once the mechanism is in a production stage.  
Having said that, password space would be given by the following equation:  
\[(^{\mathrm{20}}\mathrm{C_{4}}\times{}^{\mathrm{500}}\mathrm{C_{8}})\times(^{ \mathrm{d}}\mathrm{C_{2}}\times 15) \tag{2}\]  
This would result in a password space of 39,933,078,553,126,253,137,500.  
With this number, the mechanism achieves a much larger password search space compared to the commonly used 6-digit OTP (like Google Authenticator's), which has a password search space of 1,000,000.  
Figure 12: User acceptance results.  
However, the security of this novel mechanism does not reside solely on password space, considering that the mechanism is based on the user recognizing elements that are only known to him/her out of a larger set of deceiving elements, meaning that the user is able to select images that they keep privately in their personal device, as well as relations that only they know, causing the entropy to be larger.  
Taking this into account, as well as the fact that every time there is a wrong attempt the images displayed are refreshed and changed, common attacks like shoulder surfing, brute force, and key logging do not pose any threat. Remembering, or having knowledge of which images are selected by the user and the correct relation, is really of no use since every authentication attempt would be different. In Table 3 there is a comparison of the security of the proposed mechanism with other similar solutions. Unlike other graphical passwords, our proposed mechanism can bypass the mentioned attacks, thanks to the refresh feature of the mechanism, alongside the unique and personalized characteristics of the authentication elements.