Android-EDLA RK3576谷歌ATTESTION-KEY从申请到烧录以及验证谷歌认证标志全流程 - 详解

RK3576谷歌ATTESTION-KEY从申请到烧录以及验证谷歌认证标志全流程

首次申请ATTESTION-KEY

在这里插入图片描述

材料文件夹:

在这里插入图片描述

材料详情:

1.一份报告
#生成报告命令:
run gts -m GtsEdiHostTestCases
2.设备信息

在这里插入图片描述

3.一个txt文件

txt文件内容是每个key文件的ID,有多少个ID就能申请到多少个key。该txt文件可以使用bat脚本在windows环境下双击一键生成。

@echo off
setlocal enabledelayedexpansion
:: 前缀,长度必须小于 32
set "name=ZETWERK3IN120251123"
:: 输出文件
set "out=%name%.txt"
:: 如果文件已存在,先清空
break > "%out%"
:: 循环生成 1~10000
for /L %%i in (1,1,10000) do (
    set /a n=100000+%%i
    set "sn=!n:~-5!"
    echo %name%!sn!>>"%out%"
)
endlocal

生成效果如下:

在这里插入图片描述

4.一个pgp_public_key公钥

这个pgp_public_key公钥用我们部门廖主管的。(GPG 密钥生成、导入、导出、加密、解密操作说明单独一篇文章来介绍)

再次申请ATTESTION-KEY

只需要上面的一个txt文件和pgp_public_key公钥即可。
申请ATTESTION-KEY网址:https://partner.android.com/approvals/
进入该网址需要android合作伙伴账号目前用的潘俊的。

详细流程如下:

在这里插入图片描述

在这里插入图片描述

关于第四步,编辑pgp_public_key:就是将材料文件夹中的public-file.key用记事本打开,复制其全部内容填入下方输入框中,提交即可。

在这里插入图片描述

Device name就是FINGERPRINT的第三个属性:
BUILD_FINGERPRINT := Teachmint_X/Teachmint_X/IIP: ( P L A T F O R M V E R S I O N ) / (PLATFORM_VERSION)/ (PLATFORMVERSION)/(BUILD_ID)/ ( B F B U I L D N U M B E R ) : (BF_BUILD_NUMBER): (BFBUILDNUMBER):(TARGET_BUILD_VARIANT)/$(BUILD_VERSION_TAGS)
在这里插入图片描述

在这里插入图片描述

点击上传txt文件并提交:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

下载后可以得到密钥:2025-11-26_02-01-24.889_UTC-ca340171.attest_keyboxes.IIP.1764122488447.output.gz.pgp

下图是切割key需要准备的环境:

在这里插入图片描述

使用gpg命令解密

在Linux终端下使用gpg命令不要su,不然gpg命令会找不到。除了执行gpg命令外其他命令建议都su一下,在root用户下执行。

gpg --decrypt --output 2025-11-26_02-01-24.889_UTC-ca340171.attest_keyboxes.IIP.1764122488447.output.gz 2025-11-26_02-01-24.889_UTC-ca340171.attest_keyboxes.IIP.1764122488447.output.gz.pgp

解密后的文件格式是以gz结尾的压缩包。

在这里插入图片描述

使用gunzip命令解压

gunzip 2025-11-26_02-01-24.889_UTC-ca340171.attest_keyboxes.IIP.1764122488447.output.gz.pgp

解密后的文件格式是以output结尾的文件。

在这里插入图片描述

复制并重命名为xml结尾的文件

cp 2025-11-26_02-01-24.889_UTC-ca340171.attest_keyboxes.IIP.1764122488447.output 2025-11-26_02-01-24.889_UTC-ca340171.attest_keyboxes.IIP.1764122488447.output.xml

在这里插入图片描述

切割key

1.需要进行软连接不然就会出现以下的报错 :

在这里插入图片描述

## 正常情况下首次只要直接在gpg_IIP目录下执行以下指令就好
sudo ln -s libcrypto.so.1.0.0 /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
## 若软链接下没有libcrypto.so.1.0.0文件可以通过CP命令拷贝过去,然后再重新执行上面的指令
cp -rf libcrypto.so.1.0.0 /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0
## 如果出现失败的情况 执行以下指令 再重新执行上面的指令
sudo mv /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0 /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0.bak
##更新动态链接器缓存
sudo ldconfig
-------------------------------验证指令---------------------------------------
##查询是否链接成功
strings /usr/lib/x86_64-linux-gnu/libcrypto.so.1.0.0 | grep OPENSSL_1

2.需要给予文件权限否则会出现以下的报错 :

在这里插入图片描述

#若遇到权限问题
sudo chmod 777 *

3.最后只留必须的这四个文件再进行切割key

在这里插入图片描述

rm -rf下图四个必须文件外的其他文件再进行切割key,否则会有以下报错:
在这里插入图片描述

4.执行python3切割key命令

python3 spitfile.py 2025-11-26_02-01-24.889_UTC-ca340171.attest_keyboxes.IIP.1764122488447.output.xml 1

在这里插入图片描述

在这里插入图片描述

切割成功后的key在out加密目录下无法直接拷贝出来,先手动复制拷贝到其他目录就不会加密了,然后再拷贝出来。

烧录验证谷歌认证标志

先擦除key

用瑞芯微上位机工具,在loadder模式下,点击高级功能中的擦除所有按钮,擦除扇区成功后,重新烧录一个通过谷歌认证的软件

PS:擦除扇区成功后,必须要重新烧录一个通过谷歌认证的软件。切记不要在擦除扇区成功后以及上位机烧录过程中断电,会导致主板挂掉,需要短接主板用瑞芯微上位机工具重新烧录。

在这里插入图片描述

软件烧录成功后可在版本信息中查看ATTESTION-KEY状态:

在这里插入图片描述

烧录key

将key重命名为attestation.kdb放在U disk根目录下,在工厂菜单进行烧录。
在这里插入图片描述

key烧录成功后可在版本信息中查看ATTESTION-KEY状态:
在这里插入图片描述

查看谷歌认证标志

查看机器认证状态:Play Store -> Settings -> About -> Play Protect certification

不能显示已认证,⼀般有两种情况:

1、机器未上锁,需要手动设备上锁:

设备上锁指令:

adb reboot-bootloader
fastboot oem at-lock-vboot
fastboot reboot
fastboot reboot

设备上锁重启后会卡在logo,再执行一次fastboot reboot,或者在串口下按下Ctrl + C即可正常启动。

串口查看设备是否上锁:

getprop | grep state
[ro.boot.vbmeta.device_state]: [locked]说明设备已上锁。
2、机器未烧Key

确认完以上两点,进入谷歌商店查看机器认证状态:Play Store -> Settings -> About -> Play Protect certification

在这里插入图片描述

点击Fix device issue
在这里插入图片描述

若仍显示Couldn’t fix device certification issue,重启设备后再次尝试Fix device issue。
在这里插入图片描述

Fix device issue后就会有谷歌认证标志了。

在这里插入图片描述


**备注:**后期发现,先擦除扇区成功后,重新烧录一个通过谷歌认证的软件,没烧key也有认证标志:是因为之前有认证标志的时候上传过CSR。

posted @ 2026-01-28 11:56  clnchanpin  阅读(1)  评论(0)    收藏  举报