首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在sparkle中签名

如何在sparkle中签名
EN

Stack Overflow用户
提问于 2014-01-21 09:51:31
回答 1查看 2.5K关注 0票数 2

谁能告诉我如何签署更新的mac应用程序的火花。我查过https://github.com/sparkle-project/Sparkle/wiki/publishing-an-update

但idea.Please并没有告诉我

这是由完成的吗?除了签署更新的开发人员id之外,还有什么其他的方法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-21 10:30:04

事实上,正如你所提到的文件中所指出的,你可以:

(A)使用Apple developer证书共同设计您的应用程序--您应该使用Apple的签名工具和工作流来完成这一任务。如果您想使用命令行样式,则在以下行中:

  • 协同设计:codesign -f -s "$identity" "$somepath"
  • 应享权利:codesign --entitlements "$entitlements_path" --resource-rules "$tpl" -f -s "$identity" "$somepath"

你可以在苹果:https://developer.apple.com/library/mac/documentation/Security/Conceptual/CodeSigningGuide/Procedures/Procedures.html上找到更多关于这一点的信息。

或者(B)如果不能/不会codesign,那么仍然可以使用DSA密钥对更新本身进行签名。这个是在您链接的页面中记录的。基本上,您应该使用Sparkle提供的脚本:ruby sign_update.rb path_to_your_update.zip path_to_your_dsa_priv.pem

然后,您应该将签名添加到附录中。

如果你真的想自己做这件事,那么你可以启动openssl并进行一些工作--但同样,为什么不使用Sparkle漂亮的脚本呢?)

代码语言:javascript
复制
# Generate keys
/usr/bin/openssl dsaparam 1024 < /dev/urandom > dsaparam.pem
/usr/bin/openssl gendsa dsaparam.pem -out dsa_priv.pem
/usr/bin/openssl dsa -in dsa_priv.pem -pubout -out dsa_pub.pem
rm dsaparam.pem

# Sign the update
/usr/bin/openssl dgst -sha1 -binary < "${dmgFinal}" | /usr/bin/openssl dgst -dss1 -sign "dsa_priv.pem" | /usr/bin/openssl enc -base64

希望这能有所帮助。

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

https://stackoverflow.com/questions/21254574

复制
相关文章

相似问题

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