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环境下双击一键生成。

bat 复制代码
@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用户下执行。

bash 复制代码
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命令解压

bash 复制代码
gunzip 2025-11-26_02-01-24.889_UTC-ca340171.attest_keyboxes.IIP.1764122488447.output.gz.pgp

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

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

bash 复制代码
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.需要进行软连接不然就会出现以下的报错 :

bash 复制代码
## 正常情况下首次只要直接在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.需要给予文件权限否则会出现以下的报错 :

bash 复制代码
#若遇到权限问题
sudo chmod 777 *

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

rm -rf下图四个必须文件外的其他文件再进行切割key,否则会有以下报错:

4.执行python3切割key命令

bash 复制代码
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、机器未上锁,需要手动设备上锁:

设备上锁指令:

bash 复制代码
adb reboot-bootloader
fastboot oem at-lock-vboot
fastboot reboot
fastboot reboot

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

串口查看设备是否上锁:

bash 复制代码
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。

相关推荐
安卓理事人1 小时前
安卓版本升级功能
android
s***35301 小时前
怎么下载安装yarn
android·前端·后端
z***94841 小时前
使用rustDesk搭建私有远程桌面
android·前端·后端
q***06291 小时前
【细如狗】记录一次使用MySQL的Binlog进行数据回滚的完整流程
android·数据库·mysql
0***86331 小时前
图文详述:MySQL的下载、安装、配置、使用
android·mysql·adb
9***44631 小时前
SQLyog安装配置(注册码)连接MySQL
android·mysql·adb
o***11142 小时前
【MySQL】MySQL库的操作
android·数据库·mysql
4***572 小时前
MySQL 数据增删改查
android·数据库·mysql
修炼者6 小时前
Android Studio的技巧
android·android studio