For successful stimulation of this protocol I used several classes that are interconnected for the realization of the project.
- The requests and answers that are implemented are explained in the User class in the code in each step separately "Steps".
- In my opinion it is not possible to perform a Man-In-The-Middle attack because it is an asymmetric signature and verification, and each exchanged parameter is encrypted / decrypted using a symmetric key.