yashsingh1/xdaforums huggingface dataset:
[Magisk] Keiuran:
I get that, it's just there's a lot of reading and things you need to set up for in order to find a good working fingerprint. Someone that's around the forums all the time and understands the nitty-gritty already probably doesn't find it to be that big of a deal, but for noobs like myself it's a bit overwhelming. Especially with how much information is kind of spread out in the forum amongst various topics and posts in those topics that you need to read to really understand what's going. I don't think baby feeding is the right way to go, but this finger print finding process is definitely one of the more complicated things I've had to do for my phone and I think there should be more comprehensive post about how to do it should probably be made. Or maybe a way to automate the process of finding a random fingerprint from a dump of random build.prop and vender-build.prop files.
[Magisk] badabing2003:
In addition to that, you can also extract a print from a physical device

View attachment 6056507

There are people who are willing to spoon feed.

🎣 Pif Game Theory 🎣

Cooperate or Defect? This is an experiment to test if cooperation truly works (I personally believe that it does, but let's put it to test) What does this have anything to do with PIF? Well, I'm glad that you asked. In the spirits of holiday...

xdaforums.com
[Magisk] V0latyle:
That's what @TheFreeman193's PIFS script does. Granted, his dump is fairly small, compared to some others - the Tadiphone dump is some 266 vendors, each with many subprojects, but there are still some working prints in there.

As for guides on how to do it yourself, there's a few; see this one for example.

The easiest way to do it IMO is to use PixelFlasher. All you have to do is connect your phone to your PC, run Pixel Flasher, go into the PIF Manager, and select "Get TheFreeman193 Random PIF"
[Magisk] Keiuran:
See but I didn't even know PixelFlasher had that kind of functionality until just now. Heck I was actually directed to use the Play Integrity Fix made by the other guy before osm0sis forked his version in the Pixel 8 Pro thread as it hasn't been updated yet. Then that got broken and I tried osm0sis for a bit and then even that stopped working, so I then pulled my fingerprint off my pixel 2 xl but that one was already dead and didn't work. Luckily someone was kind and helped me out via pm and I have a working fingerprint now.

My issue with this journey is that I feel like it could've been greatly simplified and less of a scavenger hunt for information, git repos, and tools. Instead a lot of the more recent information really only seems available if you dig into the various threads/topics enough. The only real upside I saw to the current state of things is most of the people here are pretty helpful and nice with questions so it is possible to be successful. It just takes a good bit of more time than expected for someone diving into this all fresh.
[Magisk] V0latyle:
I understand, but...

It's really not as hard as it seems.

Follow this guide and keep picking random prints until you get one that works.

Or, explore Tadiphone and try some for yourself.
[Magisk] osm0sis:
Broken guide link there. You probably meant mine? https://xdaforums.com/t/module-play-integrity-fix-safetynet-fix.4607985/page-177#post-89189572

👍
[Magisk] V0latyle:
I was linking @simplepinoi177's guide. I forgot to remove /unread from the link
[Magisk] osm0sis:
Also good! Since it's long-winded mine for beginners. 🙃
[Magisk] :
I`ve been following this thread for a few weeks and was happy PIF 14.6 was still working. Until a few days ago.

Now I finally had to do something since I couldn`t reinstall apps I already bought (I don*t use google pay).

I installed @osm0sis PiFork v5 and used @TheFreeman193`s pickaprint.sh. Working on a S5e with latest official LOS20. Quite easy if you get your ass up. A big THANK YOU, guys!

Fun fact: a TAB S2 is still working with PIF 14.8 (!) and LOS17.

Edit: add a Pixel5 with LOS20
[Magisk] niko26:
Hm, I don't understand. Can you help me please?

1) Why custom.pif.json? I thought I would import the fingerprint from a plain device without any modifications. I this case maybe from my Pixel 4. It has to be unmodified, right?

2) Can you post the exact steps to transfer the pif from an unmodified device such as the Pixel 4?

3) if I don't need the actual device, you're saying I can just use the firmware image for my Pixel 4 available from Google directly?

4) if this works, why does not everyone just download the Google Pixel firmware images and extract the pif?
[Magisk] V0latyle:
What do you mean, "modifications"?

You haven't been reading the last couple pages, have you?

🔧 [MODULE] Play Integrity Fix (SafetyNet fix)

PLAY INTEGRITY FIX This module tries to fix Play Integrity and SafetyNet verdicts to get a valid attestation. BEFORE YOU START: - Your ROM must be signed with a private key from maintainer, you can check with this command: unzip -l...

xdaforums.com

"PIF" means Play Integrity Fix

Unmodified phones don't need to be "fixed" but each Android build has a fingerprint

Yes, if you chose to go this route you would just need to extract the build.prop from either /vendor or /product

I don't know? Because they think it's too difficult?

Honestly all you have to do is use Pixel Flasher, click the "Get TheFreeman193 Random PIF" button, push the print to your device, and test it. You don't need to worry about using speciic ones. But, if you wan to improve your chances that a particular print will work, then yes - you can pick a build from a device of your choosing, process the build.prop in Pixel Flasher, and follow the same process to push the print to your device.
[Magisk] mingaldrichgan:
1) I think they misunderstood your question. If you had a rooted device with PIF and a working custom.pif.json, you could just copy that file over. If you have an unrooted Pixel 4, you might be able to use PixelFlasher to extract its fingerprint and convert it into the required custom.pif.json format, but there is no guarantee that it will work.

2) I haven't done this myself so I won't be providing steps; the PixelFlasher and PIF forums should have more info.

3) Yes.

4) I did. But there are many firmware images for each device, and many of those fingerprints have already been banned, so you will have to be patient and keep trying until you find one that works.
[Magisk] TotallyAnxious:
Alternative to this is https://termux.dev/en/ (developer doesn't update play store version anymore)
[Magisk] tom1807:
Pixel is a good start, the other 2 are not working for getting a working print.

Pixel 4 was released with Android 10 = won't work

Pixel 6 was released with Android 12 = won't work

Pixel was released with Android 7.1, very good candidate that it works.

But, if you updated it to Android 10, then the FP is useless.

Get an older (hint) image from this and try to extract the boot.img.

Cheers

Tom
[Magisk] blu.italia:
Yes in play store I don't certified. I am on poco x3 surya with crdroid 10.1.
[Magisk] Umgak:
Where'd you get that idea? I have 3 working PIF jsons from A10 on a phone that released with 7.1.1. As long as it released prior to 8, all of its props are candidates.
[Magisk] DougMG:
While I like and use Termux I would not call it maintained as the F-droid and Github versions have not been updated in 2 years.
[Magisk] TotallyAnxious:
The GitHub is still active. 2 weeks ago for the main branch, 3 months ago for the play store branch, so it looks like they might revive the play store version. https://github.com/termux/termux-app/branches/all

You can check GitHub actions for automatically made builds with latest commits for Termux. Here is the latest build from GitHub actions. https://github.com/termux/termux-app/actions/runs/7378253068

I just found this but here's an updated fork of Termux for those that want monet or a version getting updates outside of GitHub actions. Read the readme to see information on running on Android 12+. The root instructions persist after a reboot with my Pixel 7 Pro on A14. The magisk module seems to work, but I already ran the root commands so I can't confirm. https://github.com/HardcodedCat/termux-monet
[Magisk] V0latyle:
Not entirely true...we've discovered several builds work from Pixel 6a down to PIxel 2

I'm using a Pixel 5 print on my Pixel 5

Not necessarily

As a general rule though, yes - if device launched with Android 7.1.1 or earler, and was updated to at least Android 8, the print should work. API 25 seems to be the ticket

In private testing it hasn't been quite so cut and dry, and we are still working to determine why some prints work and some don't

That's probably why, you're using a custom ROM. I'm not totally sure how to fix this though because I don't quite know how Play Store and DroidGuard are linked

Even this doesn't seem to be a hard and fast rule. Pixel 5 launched with Android 11...
[Magisk] simplepinoi177:
I know exactly how you feel/felt (I even said those exact words verbatim! in said guide) -- so much so I even made a guide trying to spell it out in a non-Android-technical fashion. It is very much not concise, but then again, it's because it has to be explained in plain speak and trying to be as comprehensive and detailed for "noobs" takes a lot more words & explanation (of course on top of my long-windedness....😅) If you want to check it out as it should address most of what you were saying; if you are willing to endure the plain-speak-so-it's-drawn"outness" of it....

How to search & find your own fingerprints [noob friendly]: A Comprehensive Guide w/ tips & Discussion for Complete Noobs (from one)

It seems Google has banned more than 95% of custom fingerprints, so this thread/guide has kind been laid to the wayside. But it's still a great resource to understanding the foundations of fingerprints and all that... This is for any/all utterly...

xdaforums.com

The Pixel Flasher tool has the "Pif Print" under Device that will output it in the window, or the get props adb command -> copy the fields into a text file and save it as a build.prop -> use the script mentioned in the All-time top liked post everything is being based on
[Magisk] droidman1992:
Wow, so I decided to replace Play Integrity Next with a more permanent solution and decided to move to osm0sis module v6 with TheFreeman193 pickaprint.sh and the first fingerprint that I tried passed both basic and device. Thank you all for this work.
[Magisk] simplepinoi177:
lucky....some have claimed to go through 200 before finding one, and some doing more without any success....
[Magisk] V0latyle:
I'm not familiar with Linux console; would this work for a droidguard kill script?

sudo killall com.google.android.gms.unstable

What would I need for it to report "successful" or "failed"?

Also is anyone else experiencing timeouts from PI checks?
[Magisk] Nergal di Cuthah:
PlayStore took roughly two seconds so i don't see a timeout. Sorry, tried
[Magisk] zgfg:
Do it between testing Play Integrity with two different (custom) PIF json files

If you eg pass the Device Integrity with the first json, then you kill gms.unstable, and you do no more pass Device Integrity with the second json - then gms.unstable was successfully killed, restarted by PI test and PIF module triggered to re-read pif json file

Or if you 'kill' gsm.unstable, remove working json and you still pass Device Integrity, then you didn't successfully kill (and PIF module still actually spoofs with the old pif json file)

You can also check in the logcat, when you test PI - if it was killed, then you will see how PIF re-reads prints from the json file. Alternatively, you would have to reboot the phone every time when you want to test another PIF json file
[Magisk] V0latyle:
No, I mean if I want the script to report that the process was successfully killed
[Magisk] zgfg:
Run it second time and it should say No such process
[Magisk] matfcb:
Only method from this link https://github.com/daboynb/PlayIntegrityNEXT/tree/main/Gms apk to use with play integrity next gets my Xiaomi Mi 9 Pro 5G basic and device passed.
[Magisk] zgfg:
Or, instead of running twice, use

killall -v

(verbose), it will print if the process was killed
[Magisk] badabing2003:
Or

killall com.google.android.gms.unstable # Or any other command that you want
if [ $? -eq 0 ]; then
echo "Kill Success!"
else
echo "Kill Failure. Error code: $?"
fi
[Magisk] V0latyle:
But that's for running it directly in terminal, no?

ok, I will save this to a script and see what happens

I don't need sudo?
[Magisk] zgfg:
In the second post I suggested (more simple) verbose mode😬

killall -v
[Magisk] zgfg:
You don't need if you're already running as superuser

Eg:

su
whoami
killall -v com.google.android.gms.unstable
exit

Or execute command by command as superuser:

su -c whoami
su -c killall -v com.google.android.gms.unstable
[Magisk] WhoIsJohnGalt1979:
Quick question, when one is transitioning from one version of PIF to another (v5 to v6) while using the same fingerprint, do we need to wipe Store, Wallet, GSM data?
[Magisk] zgfg:
Thanks for v9.0. It works on my 'weird' Xiaomi 12.5..I just ignore its suggestions from the installation time (I don't really need SNF module, and I do need the PIF module), it hooks and makes me pass Device and Basic Integrity 👍
[Magisk] Fishawy:
Many thanks for your hard work to support this community.
[Magisk] sawdoctor:
I'm running latest magisk canary with Displax 2.4_1.3 on stable 14 with the pixel fold. I pass device and basic with it. Hope that helps
[Magisk] drahtwurst:
i had PlayIntegrityFix_v8.7.zip installed. it worked for all but one banking app

the germand commerzbank banking app. it still detects root and wont work. had this trouble for a while. anybody found a solution?

now magisk 26.3 tells me to update PlayIntegrityFix with two files. one would be PlayIntegrityFix_v9.0.zip. i am not shure about the second, is it safetynet-fix-v2.4.0-MOD_2.0.zip?

btw. rooted+android 13/LOS 20 + microG installed
[Magisk] hyad94:
Hello, try Shamiko (by lsposed devellopers) instead of magisk hide if it's not the already the case, sure devellopers and more recent that magisk hide. After installation, Go to magisk, modules, and check shamiko, if you see this emoji => 😋 on description, everything is working fine, if not follow instructions. Dont forget to go in magisk options and add your banking app to the exclusion list.

Im not sure either, about the second module to use with playintegrity v9.0...
[Magisk] jons99:
version 9 doesn't work for me where can I find older versions why you delete old releases from github and force people to only use the latest release it might not work for everyone
[Magisk] HRSE:
I have V8.4 if you don't mind getting it from a stranger on the Internet.

This version works for me, so I don't bother downloading/trying newer versions (until some app complains again).
[Magisk] hope-faith:
I am on Samsung Galaxy S9 rooted with Magisk Canary and running displax safetynet fix v2.4.0_Mod_2.0. I am unable to pass "strong integrity." How can I fix it?
[Magisk] drahtwurst:
should i remove PlayIntegrityFix_v8.7 | hideprops | systemless hosts before?
[Magisk] drahtwurst:
have you tried PlayIntegrityFix? or tried what hyad94 said?
[Magisk] hope-faith:
Thanks taking the time out of your day to respond. So just to confirm, all I have to do is install "PlayintegeityFix_v8.4.zip" along side Displax safetynet mod and I will be able to pass "strong integrity"?
[Magisk] drahtwurst:
i am not shure. its different for every fon/rom combination. i understood either modules but you can try both. i dont think it will harm, if it doesnt work, try the other option with shamiko + PlayIntegrityFix. i tried many different options/versions/combinations. if it does not help, uninstall. dont forget to reboot inbetween.

and let us know what worked for you ;-)
[Magisk] UberNorse:
You will not pass strong integrity any longer. Ignore it.
[Magisk] zgfg:
How many times it was asked and answered that you CANNOT pass STRONG (it cannot be spoofed)

Read also post #1, and open module's description in GitHub or in your Magisk app - it's elsewhere noted that you must not expect Strong Integrity

Go back to u rooted Stock firmware and relock your Bootloader - then you can enjoy Strong Integrity (that's why it is Strong)
[Magisk] mcreuter83:
Hey,

V9 not working....View attachment 6018073
[Magisk] UberNorse:
Have you tried it in combination with USNF Mod 1.3? That's what I am using and I pass fine.
[Magisk] jimbob00:
can you upload v8.7 please newest version dont work for me but v8.7 did. thanks
[Magisk] jimbob00:
same
[Magisk] UberNorse:
The new versions didn't work for me by themselves either but the dev recommends using them in combination with USNF as well. Now I run 9.0 PI Fix with USNF Mod 1.3 and all is well.

EDIT - He actually recommends (at least for the P7Pro) that if USNF Mod 1.3 works dont use his module but I am and don't have any bugs. If I do I'll revert to either only a USNF version that passes or PI Fix version that passes. Happy for now though.
[Magisk] jimbob00:
thanks
[Magisk] V0latyle:
Right...but again, this is for a script, not running in terminal

I'm not at all familiar with Linux commands and variables
[Magisk] fbirraque:
I never did it and after more than 20 modules updates (pif.json) everything still works flawlessly.
[Magisk] zgfg:
Don't understand what's the question then

You can execute the whole script as a superuser, then all commands will be executed as superuser

Eg

su -c <script path and name>
[Magisk] Nergal di Cuthah:
When i do (via copy paste) the killall command i get "no such process"

(this is what i get whenever i try this command). Pixel6p6. I know pixelflasher succeeds because my FP shows when i logcat but when i try to kill it myself i get this error.

View attachment 6056692
[Magisk] zgfg:
Changing the nodule version has nothing with that

You may want to do it when you switch from not passing PI to the passing status (so eg, when you install the correct pif json)
[Magisk] zgfg:
Make one PI test with SPIC, PI checker, or even test by YASNAC, and then execute killall again

Them, it should find and kill the gsm.unstable
[Magisk] Nergal di Cuthah:
Nope :(

tried integrity checker > killall fails

Tried yasnac > killall fails
[Magisk] badabing2003:
what root system are you using?

Magisk?
[Magisk] zgfg:
Must be gms, not gsm😁

su -c killall -v com.google.android.gms.unstable
[Magisk] tom1807:
Not on my Pixel 6 with A14, tested A7.1 FP and A8 FP, they worked.

A8.1.0 to A10 FP failed.

For A10 I used the 2nd last image of A10 and the FP also failed..

Using the @osm0sis fork with Pixelflasher.

I have one working FP with API 26, so there are exemptions.

Cheers

Tom
[Magisk] zgfg:
Not all FPs require 1st API to be lowered to 25

You can put 25 to any - if it was passing with higher, it will still pass with 25.

But some pass only with 1st API lowered to 25 (or 24 or 23, with the same results)

A month ago I tested thousands and found few hundreds that worked for me (and I'm still using them, and actually with the older version of the module since I didn't bother to adapt the json files to the later extended format) and only for minority of them it was really necessary to lower the API
[Magisk] V0latyle:
K. Let me start over. I want to write a script that I can use to manually kill Droidguard, so I don't have to type it out longhand in terminal.

I know the terminal command is (elevated terminal) killall com.google.android.gms.unstable

and I know that a script is a text file with .sh extension

so how do I put the two together? does the script have to be in a particular place for automatic su? or if I'm executing it from somewhere that normally doesn't require root permissions, such as /sdcard, do I have to add something to the command to give it su?

Basically I know absolutely nothing about scripting or Linux commands and the information I'm finding on Linux scripting is pretty overwhelming so I'm trying to find very basic and direct answers here; sorry if I've missed the obvious

"no such process" means that the process isn't running so it's already been killed

I think when I got the spelling wrong I saw "no process found" or something along those lines but it seems "no such process" can mean both?
[Magisk] sdmatto:
My ask (more detail below): Can Play Integrity Fix (using 0sm0sis Fork, preferably) be made to work on a Pixel 8 Pro running modded (see below) GrapheneOS, with sandboxed Google Services Framework, Google Play Services, and Google Play Store? If so, how (looking for help/guidance)?

More detail:

The "modded" means that I have both (i) rooted (using "Magisk-Delta"), and (ii) bootloader locked (using "avbroot"), my P8P running GrapheneOS.

The reason I "modded" the stock GrapheneOS on my P8P was to get root, which provided me with:

(i) automatic call recording (nice to be able to fully utilize phone functionality by living in one-party consent state!),

(ii) backups of app data (not just APKs) (to make app data backup, and time spent setting up new build, easy), and

(iii) (hopefully) Play Integrity Fix (so I can get media apps and (possibly) banking working).

The reason I "bootloader locked" my rooted P8P was to (i) make it a little more secure than unlocked bootloader, and (ii) hopefully assist in passing Play Integrity.

I have followed this thread silently for a while, and have been able to use both the provided scripts and the Pixel Flasher tool, together with my rooted Moto Z2 Force, to identify (and save) 12 working custom.pif.json files (including 2 from the first generation Pixels!); these work on a rooted Moto Z2 Force running a hybrid Verizon/Sprint ROM (Verizon for the Android 9; Sprint for the radio and bootloader firmware). So, thanks to all for that!

However, when I apply these identified, working (on Moto Z2 Force only) custom.pif.json files to my rooted, bootloader locked P8P running GrapheneOS (with sandboxed Google apps), I cannot get the desired "Device is certified" attestation in the Play Store app.

Thanks in advance for any help/guidance!
[Magisk] mongodbbbb:
After installing the osmosis module and required json file, the fingerprint doesn't change even after reboots. Does anyone know why this might happen? Device is an Oppo A9 CPH1938 with Android 11
[Magisk] V0latyle:
I think this should work, because root (and Magisk) has been systemless for quite some time, since Android 6.0. So, if you aren't changing anything in /system, you shouldn't cause a problem with your selfsigned locked bootloader.

Unfortunately, because you are selfsigned, your verified boot state is YELLOW, and this won't help you with Play Integrity. So. Secure? Yes. Convenient? No.

As for Play Store device certification, as I related to @berndbread, this is likely due to the fact that you're using a custom ROM. GraphenOS has not been CTS approved, so you'd need to spoof props for Play Store to think it's running on a CTS approved build. I don't know exactly how to do this, sorry, and I don't think Play Integrity Fix will help.

I am not completely sure what relationship there is between what DroidGuard sees (for Play Integrity) and how that affects what Play Store reports.
[Magisk] osm0sis:
You're likely looking at the wrong thing. If you have an actual custom.pif.json you made that should work, then check the logcat.
[Magisk] Keiuran:
I didn't even know you could get root without unlocking bootloader. Wouldn't that allow a strong integrity pass if you used PIF with it?

Also what terminal app do you guys recommend?
[Magisk] V0latyle:
You can't "get" root without unlocking bootloader. The bootloader lock prevents modifying and flashing images, so you won't be able to root.

You -can- relock the bootloader if your boot image and system image are signed with a key that you install - but since this is self signed, your verified boot state will reflect this, and as far as Play Integrity is concerned, is no more trusted than unlocked bootloader.

The only circumstance in which locking the bootloader will help you pass Play Integrity is if you revert back to bone stock - OEM software with the OEM key.
[Magisk] Nergal di Cuthah:
Yup canary magisk two terminal progs both sane results