kaputnikGo / PilferShushJammer

Light Android AOSP application to test microphone jamming techniques to combat Cross-Device Tracking (XDT)
216 stars 25 forks source link

(Help+ Issue? ) Guide for settings #46

Closed soilentgreen closed 2 years ago

soilentgreen commented 2 years ago

(If There is a guide, I didn’t find it so sorry. If this is not the place to ask this, please delete it).

There is a few things in settings that I do not have idea what they are and help will be appreciated.

1) What is AudioRecord buffer read lock? After close the app it back to disable. An issue? 2) What the difference between VoIP and default, and what should I choose? 3) What the difference between TEST and NUHF and what should I choose? 4) There is a possibility to choose between NOISE, TONES, SHADOWS and sine, square, sawtooth.

Thanks again.

kaputnikGo commented 2 years ago
  1. instead of merely accessing the hardware mic buffer, the read lock puts a programmatic lock on it, it can be a more robust mic block and also can use more CPU cycles and therefore battery power. most settings will revert to a "safe" low battery usage state because this app can cause problems fro those that forget how it is set.
  2. VoIP has been given elevated privileges in Android (not many people make Telephony phone calls anymore) and by declaring Pilfershush to be a VoIP app (it isn't) it can get that elevated access so that other apps will not be able to break it.
  3. Test is just audible sounds so that you can test that your phone speaker is working etc.
  4. Noise is a version of whitenoise which is random sounds played over all frequencies with no weighting, tones are for more specific frequencies within a particular range, shadow is a prototype function that will not work on existing Android hardware. Waveforms are selected depending on what you are trying to block.

Active jamming is unlikely to block NUHF beacons because there arent that many of them and they are all quite different. To block it would require the Active jammer to be making sounds that cover the specific beacon signal frequencies and at an amplitude that can confuse the SDK on the phone trying to decipher it. Its a theoretical function that remains in the app because who knows if beacons will become more prevalent. I didn't think the obfuscated privacy nightmare of QR codes would become popular/ubiquitous, and then Covid happened.

Also I don't have any where I live so I can't test it, and would prefer to test against a real beacon before I claim that this app can block them. But it might, especially if you know the beacon signal to are trying to jam. But the best option to try to cover all beacons would be the Noise function, Square wave, drift speed 10, carrier at 19kHz, drift limit 1000 Hz

soilentgreen commented 2 years ago

Thank you very much for the explanation. It gave me a general idea of ​​how the app works, I think I’ll stay with with the default settings.