二进制透明度

Android 二进制文件透明度功能可让用户对其设备上正在执行的二进制文件(例如应用、操作系统、固件)更加信任,并增强对其的信任度。当用户可以将在设备上执行的特定二进制文件(包括固件本身)追溯到原始源代码(如果有)并验证该源代码未被修改或篡改(即使是可能有权访问二进制文件签名密钥的对手)时,就可以做到这一点。

概览

软件供应链越来越容易受到攻击,从签名密钥被盗用,到可疑代码注入,再到内部人员攻击,不一而足。

为了增强对所依赖软件的信心和信任,我们可以创建具有以下属性的透明度日志:

  • 仅追加:无法以不可检测的方式删除、修改或回溯性插入日志内容
  • 经过加密保证:利用 Merkle 树数据结构来保证只写属性
  • 可公开审核:任何人都可以查询日志内容

以日志内容形式发布软件的元数据可以通过提供可验证的出处记录,提高我们信任并运行的二进制文件的可信度。

项目

到目前为止,我们推出了两种日志: