中文

Speranza:可用的、隐私友好的软件签名

密码学与安全 2023-09-19 v2

摘要

用于大规模开放软件分发的软件仓库是安全攻击的重要载体。软件签名提供真实性,可缓解诸多此类攻击。开发者管理的签名密钥带来可用性挑战,而基于证书的系统则引入隐私问题。本工作 Speranza 使用证书验证软件真实性,但仍通过零知识身份共承诺(zero-knowledge identity co-commitments)为签名者提供匿名性。在 Speranza 中,签名者使用自动化证书颁发机构(CA)创建私有的身份绑定签名与授权证明。验证者检查签名者是否被授权发布某个包,而不获知签名者身份。包仓库私密记录每个包的已授权签名者,但在公开映射中仅发布身份的承诺。随后,在颁发证书时,CA 向同一身份的某个不同承诺颁发证书。签名者接着创建零知识证明,表明这些是身份共承诺。我们实现了 Speranza 的概念验证。我们发现,即便对于拥有数百万包的仓库,维护者(签名)与终端用户(验证)的开销也很小(< 1 ms)。受近期密钥透明系统启发的技术将服务授权策略的带宽降至 2 KiB。该系统中的服务器开销可忽略不计。我们的评估发现,Speranza 在最大规模软件仓库的尺度上是实用的。我们还在此项目中强调实用性与可部署性。通过构建于现有技术并采用相对简单且成熟的密码学技术,Speranza 仅需数百行代码且对现有基础设施做最小改动即可部署用于大规模使用。Speranza 是一种将隐私与真实性结合以构建更可信开源软件的实用方式。

关键词

引用

@article{arxiv.2305.06463,
  title  = {Speranza: Usable, privacy-friendly software signing},
  author = {Kelsey Merrill and Zachary Newman and Santiago Torres-Arias and Karen Sollins},
  journal= {arXiv preprint arXiv:2305.06463},
  year   = {2023}
}

备注

15 pages, 5 figures