fingerprintjs-android
fingerprintjs-android copied to clipboard
CpuInfoProvider might return different values
Hello,
I am trying to figure it out what is happening with different fingerprints on different running. The main issue is that I found in CpuInfoProvider that reading /proc/cpuinfo multiple times, returns different values of BogoMIPS, therefore it will return different fingerprints.
For exemple reading /proc/cpuinfo at one run: 2021-08-31 00:59:15.463 15908-15938/eco.eep I/System.out: HERE: processor : 0 2021-08-31 00:59:15.465 15908-15938/eco.eep I/System.out: HERE: BogoMIPS : 33.17 2021-08-31 00:59:15.475 15908-15938/eco.eep I/System.out: HERE: processor : 1 2021-08-31 00:59:15.478 15908-15938/eco.eep I/System.out: HERE: BogoMIPS : 33.17 2021-08-31 00:59:15.482 15908-15938/eco.eep I/System.out: HERE: processor : 2 2021-08-31 00:59:15.483 15908-15938/eco.eep I/System.out: HERE: BogoMIPS : 26.08 2021-08-31 00:59:15.491 15908-15938/eco.eep I/System.out: HERE: processor : 3 2021-08-31 00:59:15.494 15908-15938/eco.eep I/System.out: HERE: BogoMIPS : 26.08
at second run: 2021-08-31 00:59:30.990 15994-16031/eco.eep I/System.out: HERE: c3e0428bf5fbd27f15932e800e87922a 2021-08-31 00:59:31.002 15994-16031/eco.eep I/System.out: HERE: processor : 0 2021-08-31 00:59:31.004 15994-16031/eco.eep I/System.out: HERE: BogoMIPS : 33.17 2021-08-31 00:59:31.009 15994-16031/eco.eep I/System.out: HERE: processor : 1 2021-08-31 00:59:31.010 15994-16031/eco.eep I/System.out: HERE: BogoMIPS : 33.17 2021-08-31 00:59:31.014 15994-16031/eco.eep I/System.out: HERE: processor : 2 2021-08-31 00:59:31.015 15994-16031/eco.eep I/System.out: HERE: BogoMIPS : 33.17 2021-08-31 00:59:31.021 15994-16031/eco.eep I/System.out: HERE: processor : 3 2021-08-31 00:59:31.024 15994-16031/eco.eep I/System.out: HERE: BogoMIPS : 33.17
at 3rd run: 2021-08-31 00:59:52.482 16083-16120/eco.eep I/System.out: HERE: processor : 0 2021-08-31 00:59:52.484 16083-16120/eco.eep I/System.out: HERE: BogoMIPS : 33.17 2021-08-31 00:59:52.488 16083-16120/eco.eep I/System.out: HERE: processor : 1 2021-08-31 00:59:52.489 16083-16120/eco.eep I/System.out: HERE: BogoMIPS : 26.08 2021-08-31 00:59:52.493 16083-16120/eco.eep I/System.out: HERE: processor : 2 2021-08-31 00:59:52.495 16083-16120/eco.eep I/System.out: HERE: BogoMIPS : 26.08 2021-08-31 00:59:52.500 16083-16120/eco.eep I/System.out: HERE: processor : 3 2021-08-31 00:59:52.503 16083-16120/eco.eep I/System.out: HERE: BogoMIPS : 26.08
Therefore the BogoMIPS in my case can be either 33.17 or 26.08, therefore the output of fingerprint will differ. Am I doing something wrong?
Hello! 👋 Thanks for the report. You are doing everything right. Looks like we need to improve this signal. Can you tell me what a device you are using?
Hello
The device is an Lenovo Tab M7 tablet. https://www.amazon.com/Lenovo-Quad-Core-Processor-Bluetooth-ZA55012US/dp/B084GZTYMW/ref=sr_1_3?dchild=1&keywords=lenovo+tab+m7&qid=1630515633&sr=8-3
I tried as well on Lenovo Tab M8 and it seems to work, but again I do not have a multitude of devices that I could try. But what I can guarantee is that /proc/cpuinfo on M7 is returning different results, and might be dangerous.
Yes, it seems we need to choose more stable lines for STABLE
fingerprint. Thanks again for the report. I'll close the issue when fixes are ready!
Reopened after automatic close. Will close it when the next release is ready.
Fixed in release 1.3.0