Let me thank you first for running a very nice forum with some nice tutorials!
First, some background:
* I've managed to unlock the bootloader
* I have extracted the device pac file with original .img files and I've been using those as my base
* The device is running Android 10 by default and uses the Unisoc SC9863A as a SoC
I've noticed that this tablet seems to have the AVB (Android Verified Boot) system activated, and comes with a vbmeta-sign.img in the pac package.
I've been following this Hovatek tutorial on AVB vbmeta signing
I have extracted all the keys from the vbmeta-sign and they are all of correct size and seem to be ok:
Code:
% ls -la
1032 Oct 9 21:33 vbmeta_boot_signature.hex
1032 Oct 9 21:34 vbmeta_dtbo_signature.hex
1032 Oct 9 21:38 vbmeta_l_ldsp_signature.hex
1032 Oct 9 21:38 vbmeta_l_lgdsp_signature.hex
1032 Oct 9 21:37 vbmeta_l_modem_signature.hex
1032 Oct 9 21:35 vbmeta_odmko_signature.hex
1032 Oct 9 21:39 vbmeta_pm_sys_signature.hex
1032 Oct 9 21:34 vbmeta_recovery_signature.hex
1032 Oct 9 21:36 vbmeta_socko_signature.hex
1032 Oct 9 21:36 vbmeta_vbmeta_system_signature.hex
1032 Oct 9 21:37 vbmeta_vbmeta_vendor_signature.hex
Using those keys, I have tried several different things, having a self-signed boot.img and separately self-signed recovery.img, but both of those ended up in a boot loop. Then I decided to try to not change any keys, I just did:
Code:
avbtool make_vbmeta_image --key rsa4096_vbmeta.pem --algorithm SHA256_RSA4096 --flag 2 \
--chain_partition boot:1:keys/vbmeta_boot_signature.hex \
--chain_partition dtbo:10:keys/vbmeta_dtbo_signature.hex \
--chain_partition recovery:2:keys/vbmeta_recovery_signature.hex \
--chain_partition socko:11:keys/vbmeta_socko_signature.hex \
--chain_partition odmko:12:keys/vbmeta_odmko_signature.hex \
--chain_partition system:3:keys/vbmeta_vbmeta_system_signature.hex \
--chain_partition vendor:4:keys/vbmeta_vbmeta_vendor_signature.hex \
--chain_partition l_modem:6:keys/vbmeta_l_modem_signature.hex \
--chain_partition l_ldsp:7:keys/vbmeta_l_ldsp_signature.hex \
--chain_partition l_gdsp:8:keys/vbmeta_l_lgdsp_signature.hex \
--chain_partition pm_sys:9:keys/vbmeta_pm_sys_signature.hex \
--padding_size 16384 \
--output vbmeta_custom.img
And then added the padding (using vbmeta_pad.py), and pushed the image using fastboot:
`fastboot flash vbmeta vbmeta_custom.img`
Unfortunately even this, without any changed boot/recovery partitions results in a boot loop. So I can't even seem to get a functioning vbmeta-sign.img for some reason. Is this somehow different in Android 10? I can see, that I have a vbmeta_system and vbmeta_vendor entry at least in the signature image. Could that be significant?
Any help is appreciated. My main goal would be to switch the alldocube default OS to LineageOS or some similar more open operating system to run on it. And as there is no ready TWRP image for this device - and I'm not sure if I could make it run even if I had one as the AVB protection is there, rooting for now is a good start for my endeavors.
I'm fairly good with linux and machines, so I don't really need any details. Just hints on where to go next?