What does it do?
The application is used to check user account data from firebase using a QR code.
How does the application work?
There are 2 buttons on the main page. Under the Show Profile button there is a screen with a profile and a QR code. Profile data are retrieved from the FireBase database with the structure:
In the tab with QR code there is a “show QR code” button. When you click it, a number of operations are performed:
- Sets the variable with the security code to a random number
- Reads the variable from the phone ID
- Creates auth_code in FireBase in a given profile
- Sets the QR code text to the phone ID and security code connected by &, encoded in AES-128.
Now let’s move to the second screen with scanning. You click the “scan” button. You scan the QR code from the previous screen. After the scan, the application performs the following operations:
- Decodes the AES-128 encrypted string from the QR code and inserts the phone ID and security code into two separate variables. Sets the project bucket Firebase to the phone id and reads the security code set on the previous screen by generating a QR code. If the security code does not match or is not in FireBase, the application will display an error about the lack of authorization. However, if the codes match, it removes this code from FireBase so that no one else uses it and reads the name and birthday parameters, and later displays them in the application!
CheckUser.aia (12,7 KB)
I hope I helped someone. Write in the comments, report bugs and you can share modified for better this system