I am building an application on flutter to record the attendance process at my university using the qr code, but I have a problem in terms of reliability, which is:
How do I prevent any student from recording attending his classmate from the same mobile phone, what is the solution in order to obtain reliability.. I was thinking of getting the device identifier such as the "imei" to ensure that the person records his attendance by himself, but it is no longer available now in android 10. What is the solution,
Does There any external device ID?
2
Answers
if you just want something to identify each device, why not hash a student name, and college number.. and store that hash locally, then so that the student gets verified, he will be required to provide that name, number.. and so hash it and check if it is the one that is saved at the first time so in general it will be:
This was my idea if you want to follow an offline approach, using NFC, bleutooth..
if you want a quick online solution, just use Firebase anonymous authentication.
Anything that makes it difficult for you to buy a new phone and easily migrate your old phone data to the new phone will be discouraged by the retailers and the OS vendors. And tying a user’s data to a hardware ID does this, and is made nearly impossible if not extremely difficult.
What you can do is store a unique ID in something like shared-preferences, and then use that to ensure that you’re talking to the same user. That data will migrate properly when the user buys their new phone, and everyone happily makes money.