yashsingh1/xdaforums huggingface dataset:
[Asus Transformer TF700] d.l.i.w:
UPDATE: Asus has updated the servers. Older protocols for HTTPS, which are required for older Android versions, are no longer supported. Unfortunately, some additional steps are needed for the unlock now. See this post for step by step instructions.

I recently got my hands on a Asus TF700T with a locked boot loader. The official unlock app did not work, so I took a closer look. What I found is that the Asus servers are still up and running, but connection fails due to certificate pinning. And that can be dealt with ;)

So here are the instructions:

The device must be rooted. KingoRoot (the app) worked for me.

Download the unlock bundle from the link below. I didn't find a way to directly attach files here.

Copy both apks to /system/app, change the permission to 0644

For this, a remount of the system partition may be needed:

mount -o remount,rw -t ext4 /dev/block/mmcblk0p1 /system

DMClient.apk replaces the original DMClient.apk and DMClient.odex (i.e. you have to rename/move/delete the .odex file)

The modified unlock app cannot be installed like any other and must be installed that way

Reboot the device. On startup Android shows that one app is optimized (that's DMClient). The unlock app is now installed.

Use the unlock app. Google account does not matter.

Watch logcat to get some more information on what the unlock app does. On success the device immediately reboots, so redirect adb logcat to a file if you want to keep the log.

I only tested on a TF700T with WW SKU, V10.6.1.14.10. I assume that other firmware versions work as well.

The unlock app for TF700T also supports TF201, TF300T, TF300TG, and TF300TL, but a modified DMClient is needed.

In case something goes wrong and your device gets stuck at the boot screen, this advice may be helpful:

Bricked my Asus TF300T? Manual JB update

First, my device failed to get the OTA Update because I deleted some system apps (see my original post). Then I found this post where another user restored original APKs in /system/apps and manage...

android.stackexchange.com

(thanks @DieAbrissbirne)

Download links

Unlock app and DMClient for TF700T

https://leo.pfweb.eu/dl/OaKdx

Spoiler content hidden.

DMClient for TF300T

https://leo.pfweb.eu/dl/vUHnp

DMClient for TF300TG

https://leo.pfweb.eu/dl/xphHy

DMClient for TF201

https://leo.pfweb.eu/dl/pKvEA

Spoiler content hidden.

---------------------------------------------------------------------

Unlock app and DMClient for TF701T

https://leo.pfweb.eu/dl/2AcpB

DMClient for ME301T (also seems to work for ME302KL)

https://leo.pfweb.eu/dl/uiJPN
[Asus Transformer TF700] 2020tf700:
Dealing with this same issue, but can't get your method to work... Do I need to already have the v7 unlock tool installed before this? And do I just remove the DMClient.odex file from /system/app since there is only the replacement file for DMClient.apk?

Any help is appreciated!
[Asus Transformer TF700] d.l.i.w:
You don't need the original unlock app. I recommend uninstalling it. DMClient.odex is not needed, you can rename or delete it. I don't know what happens if you keep it as is.

At which point does it fail?

Is the unlock app installed after restart? If not, check the permissions of both files. It must be 644 (-rw-r--r--).

If you can start the modified unlock app: Do you get an error message? Is there anything relevant in logcat (search for "unlock")? Is the internet connection ok?
[Asus Transformer TF700] 2020tf700:
-rw-r--r-- root root 442064 2020-09-02 22:19 UnLock_App_V7_update.apk

Removed both DMClient.apk and .odex and don't have any original unlock apps installed. But I don't have the modified unlock app installed after restart.
[Asus Transformer TF700] d.l.i.w:
Which firmware version do you have?

The permissions look good. Basically all apks in /system/app should have the same owner and permissions.

If I understand correctly, you have removed the original DMClient.apk and DMClient.odex and copied the modified one from the download. Is the permission correct?

If permissions are ok, it's hard to say, what is wrong. I would suggest to rename UnLock_App_V7_update.apk to something else (maybe unlock.apk) and reboot the device. This forces a reinstall. Best would be if you could watch logcat during startup. The log will tell you why the installation fails.

Edit: Are you sure, the app is not installed? Depending on the locale it may not be literally translated as "unlock app". The icon is a gear with a lock.
[Asus Transformer TF700] 2020tf700:
JOP40D.US_epad-10.6.1.14.10-20130801

W/ActivityManager( 524): No content provider found for permission revoke: file:///data/local/tmp/UnLock_App_V7_update.apk
W/ActivityManager( 524): No content provider found for permission revoke: file:///data/local/tmp/UnLock_App_V7_update.apk
I/PackageManager( 524): Copying native libraries to /data/app-lib/vmdl1192069982
W/PackageParser( 524): Exception reading classes.dex in /data/app/vmdl1192069982.tmp
W/PackageParser( 524): java.lang.SecurityException: META-INF/MANIFEST.MF has invalid digest for classes.dex in /data/app/vmdl1192069982.tmp
W/PackageParser( 524):	at java.util.jar.JarVerifier.invalidDigest(JarVerifier.java:131)
W/PackageParser( 524):	at java.util.jar.JarVerifier.access$100(JarVerifier.java:53)
W/PackageParser( 524):	at java.util.jar.JarVerifier$VerifierEntry.verify(JarVerifier.java:123)
W/PackageParser( 524):	at java.util.jar.JarFile$JarFileInputStream.read(JarFile.java:119)
W/PackageParser( 524):	at java.io.BufferedInputStream.read(BufferedInputStream.java:304)
W/PackageParser( 524):	at android.content.pm.PackageParser.loadCertificates(PackageParser.java:447)
W/PackageParser( 524):	at android.content.pm.PackageParser.collectCertificates(PackageParser.java:634)
W/PackageParser( 524):	at com.android.server.pm.PackageManagerService.installPackageLI(PackageManagerService.java:7959)
W/PackageParser( 524):	at com.android.server.pm.PackageManagerService.access$1900(PackageManagerService.java:180)
W/PackageParser( 524):	at com.android.server.pm.PackageManagerService$5.run(PackageManagerService.java:6108)
W/PackageParser( 524):	at android.os.Handler.handleCallback(Handler.java:725)
W/PackageParser( 524):	at android.os.Handler.dispatchMessage(Handler.java:92)
W/PackageParser( 524):	at android.os.Looper.loop(Looper.java:137)
W/PackageParser( 524):	at android.os.HandlerThread.run(HandlerThread.java:60)
E/PackageParser( 524): Package com.asus.unlock has no certificates at entry classes.dex; ignoring!

Does this SO post make sense as the issue? stackoverflow DOT com/questions/44386464/android-app-installation-failed-package-com-my-app-has-no-certificates-at-entry
[Asus Transformer TF700] d.l.i.w:
That's interesting. The app isn't signed at all, that's why "normal install" does not work. But as system app things worked for me and there was no error.

Besides rooting the device I had unlocked developer options and allowed install from unknown sources. But I wouldn't expect these to make any difference.

Is there anything about DMClient in the log? The same applies here. It would be strange if it works for one and not for the other.
[Asus Transformer TF700] 2020tf700:
Got it to work. After digging a bit deeper into the logs I think it was confused because I had already installed and uninstalled the original unlock tool. It was complaining about the unlock package already existing, etc.

So, I just went all the way back to a factory reset to remove everything and then did your original steps and it worked. I was watching logcat and it didn't say anything about the unlock package for the time it worked too btw. I guess uninstalling the original and restarting wasn't enough to truly get rid of it enough without a factory reset.

Thanks for your help and effort to put this together!
[Asus Transformer TF700] d.l.i.w:
Great! Do you mean, there was no output from the unlock app at all? There should have been some information starting with

/****Unlock

. However, it does not persist reboot, so you have to watch live or redirect to a file.
[Asus Transformer TF700] 2020tf700:
I was watching it live and did a find on the output for 'unlock' once it restarted and didn't see anything but I suppose I could have missed it.
[Asus Transformer TF700] d.l.i.w:
It's only a couple of lines so indeed easy to miss. Thanks for the feedback :good:
[Asus Transformer TF700] iserver:
Didn't work for me, unfotunatly :(. I still get message - "Failed to unlock your device, please try again later".

Device: TF300TG.

FW: WW_epad-10.4.3.9-20121106

Android: 4.1.1

Tried to reset to factory settings. Didn't help either.

Please, tell me - can I use V7 apk with Android 4.2 / 4.2.1 or i need patched version of Unlock_V8.apk ?

Of course, I changed variable values in request URL.
[Asus Transformer TF700] d.l.i.w:
Obviously DMClient is specific to each device model. So, the modified DMClient is not compatible with devices other than TF700T.

Is the original firmware for the TF300TG available somewhere? If so, I might be able to create a modified DMClient also for this model, but I can't promise anything.
[Asus Transformer TF700] Down0038:
So I am fairly early into this root / unlock of my new tf700t.

I rooted / unlocked my old tf300t at least 8 years ago now.

I recently dusted it off and immediately after getting 7.1.2 installed on it and having it set up just right, stepped on it by accident.

So I bought a tf700t and have been trying to root it for a whole day with out success....

I have successfully upgraded the boot loader from 10.4.4.25 to WW 10.6.1.14.8 and gotten Motochopper to root.

Can you go over the tools and method you used to put the two files from the package into the system/apps folder with he new permissions?

When I try and move the files my go-to rooted file explorer (Ghost commander) refuses to change the permissions or move the files.

Is it possible that GhostCommander and TotalCommander simply don't work with the motochopper version of rooting? or am I missing something more fundamental?

I get that given the age of the tablet I will not be able to unlock with the normal v7 unlocker and b/c Asus are bastards.

What a Deus-ex it was to find a post from only a few weeks ago on the topic.

I love XDA.
[Asus Transformer TF700] d.l.i.w:
Total Commander worked for me just fine. It asked if the system partition should be mounted writable and then copied the files. The same with setting permissions.

I used KingoRoot, because Motochopper does not work on the latest firmware, but this shouldn't make any difference. You could try to copy the files via adb shell.

I was quite surprised that the Asus servers are still running and functional. The only issue is that the original unlock app does not trust the new server certificates.
[Asus Transformer TF700] Down0038:
"the device is unlocked"
[Asus Transformer TF700] mak8tack:
Thanks for this work! Dusted off an old TF700T, but I'm unable to unlock, with the following logs (grepped for unlock):

I/ActivityManager( 520): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.asus.unlock/.EulaActivity} from pid 835
I/ActivityManager( 520): Start proc com.asus.unlock for activity com.asus.unlock/.EulaActivity: pid=1715 uid=1000 gids={41000, 3003, 1015, 1028, 3002, 3001, 1006, 3007}
I/ActivityManager( 520): START u0 {cmp=com.asus.unlock/.UnLockActivity} from pid 1715
D/DMServerUnlock( 1715): get DMServer Response retry count = 3
I/*** Unlock: md5 input( 1715): 50465d2a5837unknown8bf0d93b7649a513c736f4016495a5ec5b2ab8a0dm_servernEEd_query_STATe
I/*** Unlock: request( 1715): [url]https://mdm.asus.com/DMServer/DeviceState?id=50465d2a5837&AUTH=OsYXBMvoh62t24Ukl025Lw&ACTION=get[/url]
D/DMServerUnlock( 1715): index of line: 3
D/DMServerUnlock( 1715): DM Server Response: 105
I/ActivityManager( 520): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.asus.unlock/.EulaActivity} from pid 835
I/UnLockActivity( 1715): ============= UnLockActivity onStart =======================
I/UnLockActivity( 1715): ============= UnLockActivity onResume =======================
D/DMServerUnlock( 1715): get DMServer Response retry count = 3
I/*** Unlock: md5 input( 1715): 50465d2a5837unknown8bf0d93b7649a513c736f4016495a5ec5b2ab8a0dm_servernEEd_query_STATe
I/*** Unlock: request( 1715): [url]https://mdm.asus.com/DMServer/DeviceState?id=50465d2a5837&AUTH=OsYXBMvoh62t24Ukl025Lw&ACTION=get[/url]
D/DMServerUnlock( 1715): index of line: 3
D/DMServerUnlock( 1715): DM Server Response: 105
D/DMServerUnlock( 1715): get DMServer Response retry count = 3
I/*** Unlock: md5 input( 1715): 50465d2a5837unknown8bf0d93b7649a513c736f4016495a5ec5b2ab8a0dm_servernEEd_query_STATe
I/*** Unlock: request( 1715): [url]https://mdm.asus.com/DMServer/DeviceState?id=50465d2a5837&AUTH=OsYXBMvoh62t24Ukl025Lw&ACTION=get[/url]
D/DMServerUnlock( 1715): index of line: 3
D/DMServerUnlock( 1715): DM Server Response: 105

I fear I have one of those TF700's that doesn't have a valid serial number, so it can't unlock?
[Asus Transformer TF700] d.l.i.w:
For me unlock worked, although the Asus website did not recognize the serial number when I tried to register my device.

I don't know what the response 105 means, but this does not necessarily mean an error. It could be that the modified DMClient was not installed correctly.

Which firmware version do you have? Did you do a factory reset before?
[Asus Transformer TF700] mak8tack:
Yes, I factory reset before installing. I had rooted with Kingo Root / Superuser, but had to root via ADB, because I couldn't download and run the apk directly on the tablet after the factory reset. I did allow it to install all the associated root utilities/apps. I used a console/terminal app called "Material Terminal" (by Yaroslav Shevchuk) installed by the play store to su, mv the DMClient and Unlock_App_v7 apk files to /system/app and chmod 0644 them... every reboot shows it "Optimizing the app".

I have Android v 4.2.1 Kernel version 3.1.10-gb1a9af5 dated Aug 1 2013

I'll probably try doing another factory reset, root, and install again just to be sure.
[Asus Transformer TF700] solo786:
Does someone have a correct version of Kingoroot apk that does work for ICS tf700t please :fingers-crossed:? I tried all i've found it doesnt work

EDIT: Found it

The tutorials works!!! Thank you very much :)))

TF700T 4.2.1 - 10.6.1.14.10-20130801
[Asus Transformer TF700] OnkiTomm:
same here ... and the same model TF300T.

I can browse asus.com and any other site with native browser, but get that "network connection error" with the unlock v7 and v8.

Did someone solve this?
[Asus Transformer TF700] Stealth75:
Hi , Im trying to run Kingoroot and I keep getting "download error". Anyone else encountered this?

My internet connection is fine.
[Asus Transformer TF700] Stealth75:
Thanks very much for the post but I'm not sure how this is supposed to work. I can't root my TF201 because the bootloader's locked and I can't access the system drive through ES Explorer to try and unlock it because I'm not rooted.

Any ideas?
[Asus Transformer TF700] Stealth75:
Hi, I'm a total newbie here but I was wondering if I could bother you for one thing? I've got mitmproxy set up on Windows (with no VB as you suggested). It seems to be working fine on windows but I cannot get the rrpoxy to work in any way, shape or form on my tf201. (I've tried connecting through my phone as well but no luck)

I feel like I'm putting a hostname in the wrong place or not putting one somewhere, coudl you please show me a screenshot of your proxy settings on your android device?

I feel like I'm so close!

Thanks in advance

Stealth
[Asus Transformer TF700] maisomenos:
Hello. If you are at mitmproxy stage I guess you managed to root the tablet with kingoroot app, but Just to be clear: you can root with kingoroot right away without unlocked bootloader. You will need root to use ES explorer.

Regarding mitmproxy: the concept of the proxy is to reroute the connection from the tablet to the computer running mitmproxy, the computer will than foreward your requests. For this to work you need both devices to be connected to the same wifi, and you need to explicitly tell your tablet to use your computer as a proxy, by specifing the hostname on the tablet wifi settings. In this case the hostname will be the Local IP of the computer running mitmproxy.

To get the IP you need to open powershell on your pc where mitmproxy is running, run the command ipconfig and scroll down untill you find the section about LAN/Wi-Fi and copy "address ipv4". It will be in the form of 192.168.1.x (this is the LOCAL ip assigned to your computer). Note that the local IP is not always the same and may change as soon as you disconnect the pc from the wifi and connect it back again, so double check it.

That said, try to follow again the link https://xdaforums.com/t/howto-unlock-tf700t-in-2020.4157143/post-85097463.

You can skip the whole first section (importing an image into vb), since we are using mitmproxy directly from windows.

Skip the first 4 images of the second section (preparing and running mitmproxy), since it explains how to get the IPv4 of the Virtual Machine. Instead you get the IP with "ipconfig" command as I explained. Open mitmproxy web interface on windows and edit the settings as shown in the images. Additionaly on the "Edit options" uncheck "block_global" option.

For the third section (Setting up your tablet) follow all the steps. The only difference is on step 4, where you need to type the IPV4 that we found with ipconfig as the hostname. Install the certificates on the tablet as explaind on step 6 and 7 and you should be good to go.
[Asus Transformer TF700] Ice_83:
i could set up the mitmproxy and it seems to show logs when i access websites from the tablet. I downloaded the certificate on the tablet, but https websites dont open. It would say in the logs for e.g. asus.com:

"Client TSL handshake failed. The client may not trust the proxy's certificate for asus.com:443 (OpenSSL Error([('SSL routines', 'tls_early_post_process_client_hello'. 'version too low')]))"

@maisomenos , anything you could perhaps help with advice? appreciate your help, Im stuck.

Thanks!!
[Asus Transformer TF700] Stealth75:
Thanks so much for your response and all yoru advice.

I did finally get rooted but I had to use dr. fone, Kingo Root just wouldn't work for me.

The above looks the same as what I was doing but I'll give it the old college try again. Although I may have totally stuffed up. I'm not sure what I've done but I ried to uninstall/reinstall mitmproxy and now every time I run "mitmweb" in the terminal it just tells me it's an unrecognised command.

Oh well, I'll keep playing today and see how I go. :)
[Asus Transformer TF700] maisomenos:
I'm not sure what is the problem. Did you follow the whole procedure?
[Asus Transformer TF700] maisomenos:
No problem. Just look for mitmproxy on the windows search bar.

On my PC mitmproxy is located here: "C:\Program Files (x86)\mitmproxy\bin\mitmweb.exe".
[Asus Transformer TF700] Stealth75:
I was having other issues with work apps trying to WFH so I got annoyed and reset my llaptop. I'll see how it goes Thursday when I'm back at "work".

Cheers☺️
[Asus Transformer TF700] Ice_83:
I did.

1. As instructed, I adjusted the wifi settings on the tablet to go through the mitmproxy, it seems to work. Mitmproxy settings is running with settings adjusted per instructions. Also unticked "block global".

2. I then downloaded as instructed the android certificate on the tablet by typing mitm.it in the browser.

3. After that if I try to go to any https site from the tablet I get the error I quoted (it is shown in the logs of mitmweb), it seems the certificate is not recognized properly. The non-https sites work ok.

What could that be? Any ideas? Of course the unlocking tool is not working because of this.
[Asus Transformer TF700] Arsenick:
If this can help you I sucessfully unlocked my tf201 yesterday using the virtualbox image shared in this thread. I had already used mitmproxy in the past and considered myself in control with my mitmproxy setup but I was not. I lost soooooo many time trying to workaround this.. I suspect I had a problem with the certificate I generated a while ago so here's my suggestion.

If you don't already tried with the virtualbox image, try it, don't be like me! :P
[Asus Transformer TF700] Ice_83:
Hi. Thank you. I did try the VB, it has issues with my LAN, so it doesn't work Out of the (V) box lol. I didn't try troubleshoot like change lan drivers etc, don't deal with Linux normally. Thought windows mitmproxy might be easier as the guide said one can use either. But thanks!!
[Asus Transformer TF700] Arsenick:
If I recall I had to change/update the nic settings on the vm if this can help. Good luck!!
[Asus Transformer TF700] Stealth75:
Hi @maisomenos , have you had any luck with this yet? I'm getting the same error. :(

Thanks

Stealth
[Asus Transformer TF700] maisomenos:
@Stealth75 @Ice_83

Just for you to know I didn't come up the full procedure, I just tried to unlock my device and gathered info through the whole thread. After some troubleshooting I succeeded and decided to post a summary of how I managed to do it. Most of the info come from this thread, a few things I managed by myself.

I think the whole point of all this steps (and someone correct me if i'm wrong), is that to unlock the device you need the app to "asks" permission to asus servers. The problem is that since the device is old, the security protocols for the network are not up to date (while the servers protocols are up to date), and without any sort of external solution you won't be able to contact the severs.

That seems exactly the problem that you are having: "version is too low".

Unfortunately mitmproxy alone is not enough,. First time I tried to unlock I didn't care about rooting and changing the DMClient, I thought it was unnecessary, but it didn't work. When I tried the whole thing It worked.

That said, sorry if I sound redundant but I will ask you again: Did you follow the whole procedure? https://xdaforums.com/t/howto-unlock-tf700t-in-2020.4157143/post-85255809 . Did you download the right DMClient for your device? What device are you trying to unlock?

If you need I can make a zip with the apks that I used: KingoRoot, DMClient, Unlocker_app, EsExplorer.

Keep in mind that I tested with the TF201. I beleive is the same for the others but I didn't test them by myself. Maybe is something related to your device...

I would love to help you but I'm not sure I am capable of helping any further.

I beleive @Beeble1983 managed to unlock following my comment. Did you find any difficulty or something was not clear? Did you have to find some workaround in addition to what I wrote? I am trying to gather as much infos as possible to help.
[Asus Transformer TF700] Ice_83:
Yes, i followed exactly the procedure you summarized. All steps worked smoothly till i had this issue on the step 5 with mitmweb. I am not able to open any httpS websites from the tablet (and yes, i also have TF201). I can open http sites ok. I think there is some issue in the mitmweb set up since the certificate seems to be fresh.

I tried to use the VB with Ubuntu and mitmweb but it didnt recognize my LAN, so i may need to try some things there or try to use another PC. I thought someone can recommend the fix as Im not an expert user and the solution could be trivial for a knowing person. But i did try to follow the instructions precisely.

Thank you for your work by the way summarizing your success, please dont take me wrong, i appreciate this and your help. If you cant help further, thats totally fine. the worst which can happen is that old tablet of mine will go to garbage which would be a pity but fine. It is amazing how perfectly fine hardware becomes trash after a few years as it depends on the standards of everything else around it! :)