You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用adb sideload刷入固件时签名验证失败(Techno Gk-8/Gk-8-Gl)

解决Techno Gk-8/Gk-8-Gl ADB侧载固件时签名验证失败(Error 21)的问题

问题背景

Techno Gk-8/Gk-8-Gl因DM-verity过期无法进入系统,尝试侧载官方固件或自制禁用verity压缩包时,均出现以下错误:

Supported API-3
finding_package_update....
verifying package update...
E: footer is wrong
Update package verification took 0.2s (result - 1)
E:Signature verification failed
E: error : 21

解决步骤

1. 更新Recovery至对应版本

Recovery版本过旧会导致无法识别新固件的签名格式:

  • 进入recovery模式,查看当前版本信息
  • 下载对应Gk-8/Gk-8-Gl的官方最新recovery镜像,通过fastboot刷入:
    fastboot flash recovery recovery.img
    
  • 刷入后重启至recovery,重新尝试adb sideload操作

2. 规范制作禁用DM-verity的补丁包

自制包格式或签名不符合recovery要求会触发验证失败:

  1. 解压官方固件,提取boot.img、vbmeta.img及其他核心分区镜像
  2. 使用avbtool工具修改分区镜像以禁用verity:
    # 处理boot.img,替换<boot分区大小>为设备实际值(可从scatter.txt中获取)
    avbtool add_hash_footer --image boot.img --partition_size <boot分区大小> --disable-verity --disable-verification
    # 处理vbmeta.img
    avbtool disable-verity --image vbmeta.img
    
  3. 重新打包为OTA格式zip包:
    • 保留原固件的META-INF文件夹(含updater-script等必要文件)
    • 将修改后的镜像替换原包中对应文件,压缩格式保持与官方一致(建议用标准ZIP压缩)
    • 若recovery强制要求签名,可使用测试签名工具生成签名文件放入META-INF/com/android/otacert

3. 关闭Recovery签名验证开关

部分recovery提供直接关闭验证的选项:

  • 在recovery模式中找到「高级选项」或「设置」,勾选「Disable signature verification」
  • 若没有该选项,尝试在fastboot模式执行:
    fastboot oem disable-verification
    
    执行完成后重启至recovery再侧载固件

4. 改用MTK专用工具刷入固件

ADB侧载受限于recovery验证逻辑时,换用SP Flash Tool直接刷入:

  • 安装MTK设备驱动,将设备进入Download模式(关机后按住音量下+电源键)
  • 打开SP Flash Tool,加载官方固件的scatter.txt文件
  • 点击「Download」按钮,连接设备完成刷入,重启后即可进入系统

内容的提问来源于stack exchange,提问作者Learn Shadow

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 04:02:18