首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >代码签名证书

代码签名证书
EN

Stack Overflow用户
提问于 2011-01-11 12:40:42
回答 2查看 705关注 0票数 1

我有许多不同的项目,这些项目正在成熟到我将为它们购买代码签名证书的程度。我对代码签名证书的理解是,它意味着在我的用户群和开发人员(我)之间建立信任关系。为此,购买一个代码签名证书并使用相同的证书对我的所有项目进行签名将是有意义的。但是,我也知道代码签名证书的另一个功能是加密部署的某些部分,以确保在用户安装产品之前产品不会被篡改。我的理解是,证书(或任何加密方法)在不同数据(在本例中是我的多个项目)上使用的频率越高,它就变得越不安全(我知道,我在这里有点泛化)。

所以,我的问题是:

我应该每次部署都获得一个代码证书,还是只有一个并用它对它们进行签名?

(我也理解这可能是一个稍微主观的问题,所以如果是这样的话,也许我们可以简单地为这两个选项提供利弊。)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-01-11 15:07:52

简而言之:您可以对所有项目使用相同的证书。

长长的答案:

  • 在代码签名过程中没有加密。数字签名提供完整性(代码未被篡改)和真实性(您是作者),但不提供机密性(所有内容仍以明文形式存在)
  • 公钥加密系统安全性基于以下事实:从公钥中查找私钥非常困难(从计算上讲)。这是通过复杂的数学问题来实现的,比如大数的因式分解或离散对数。但同一密钥进行的大量签名不应削弱此密钥(例如,有证书颁发机构或时间戳颁发机构每天使用同一密钥执行数千次签名)。
票数 1
EN

Stack Overflow用户

发布于 2013-05-01 00:41:03

你必须权衡两方面:

由于所有代码/脚本只有一个证书,它只需要记住一个密码,而且更容易处理;但是,如果它需要被撤销(出于安全原因,您需要执行撤销检查),则在到处部署替换密码之前,不会运行任何代码/脚本!(每个部署都有一些沙箱,因此一个被撤销的部署确实会阻止其他部署的工作。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4654246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档