Namespaces

Variants
Actions

Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries over the next few weeks. Thanks for all your past and future contributions.

Symbian Signed (Chinese)

From Wiki
Jump to: navigation, search
Article Metadata

文章
Levin_Wei 在 04 Jun 2010 创建
最后由 hamishwillee 在 15 Dec 2011 编辑

Needs-update.pngThis article needs to be updated: If you found this article useful, please fix the problems below then delete the {{ArticleNeedsUpdate}} template from the article to remove this warning.

Reasons: hamishwillee (07 Sep 2011)
Symbian Signed options have changed. In particular

  • DevCertRequest is no longer used to get DevCerts,
  • Open Signed is no longer a program name
    • Open Signed Online has been discontinued as it is not needed (anyone can get devcerts through site)
    • Open Signed Offline term no longer used - we just have Developer Certificates downloaded from site.

本文主要介绍Symbian Sign的内容,并且给出一些相关链接。如果以后Symbian Sign流程有所改变,将会在本文进行更新。尽管一下所有的内容都适用于Qt在Symbian平台上的应用签名,开发者也可以详细参阅在Symbian基金上的文章:Qt & Application Signing

User_guide: Symbian Signed

Note.pngNote: :我们正在完善以下地区(中国, 香港, 澳门, 台湾)的发布过程,在不久的将来,个人开发者在Ovi Store上发布产品时,即可享受免费的签名服务。

具体推出时间我们将会另行通知。对由此给您造成的不便表示歉意。
如有疑问,欢迎与mailto:publishtoovi.support@nokia.com联系!


Contents

Symbian应用签名介绍

Symbian平台安全保障

能力(Capability)

Capability模型的目的是确保:只有获信任的应用才能使用某些敏感API的接口和系统资源。对于非信任的自签名的应用来说,用户可以在应用被安装时授予某些许可,如发送短消息(SMS)及读写用户数据等。然而,有许多capabilities则只授予给通过Symbian Signed认证的应用。由于能力模型的使用,一方面可以使得Symbian平台上的API可以更加开放,同时也可以使得终端用户放心地使用使用过敏感API接口的应用,因为这些应用是经过严格测试,并且可以通过签名找到最原始的开发商。带有开发商签名的应用是可以信任的。对于Symbian平台的手机厂商来说,绝不是想通过签名来赚取一些钱,而是可以使得最终的用户能够信任自己所安装的应用,毕竟手机是一个非常个人的手持设备,而且有很多私人的信息。不可信任的应用在没有控制的情况下使用非常敏感的API接口极易导致手机系统的破坏,严重的情况下,会导致私人信息的泄露。另外值得指出的是,Symbian Sign 测试是由第三方公司独立完成的,收取的任何费用和诺基亚没有任何关系。对于大多数的应用(60%)来说,开发者可以开发具有用户能力的应用,而不用使用到非常敏感的接口,在这种情况下,开发可以自签名自己的应用,而不用花任何额外的费用。

数据锁定(Data caging)

数据锁定的目标是:控制对文件系统的访问(access)以保证数据安全。每个应用都有其自己的private目录用于储存私有数据,且不允许其他应用访问(除非该应用具有足够的capabilities)。某个应用能访问文件系统中其private目录之外的大部分区域,但是也有限制。如果与终端制造商之间没有协议,储存可执行文件的/sys目录是不允许访问的,而保存诸如位图等应用资源文件的/resource目录则为只读。为能访问那些特定的目录,某个应用需要具备一些capabilities。对终端中特定目录的capability需求如下表所示:

目录 (包括子目录) 需要的能力
读访问 写访问
/resource None TCB
/sys AllFiles TCB
/private/<ownSID> None None
/private/<otherSID> AllFiles AllFiles
/<other> None None

这里的SID指的是应用独有的安全ID(SecureID)。每个应用都有自己的安全ID及按照安全ID而定义的独有的私有目录,如c:/private/20000001。 应用的SecureID一般是由在工程文件.mmp中的UID3来决定的(如果没有特别定义的话)。由于Data Caging 的使用,可以使得应用的一些文件在没有得到应有的能力下(需要签名),免受恶意的修改或删除。

Symbian Sign开始使用时间

从S60 3rd 平台开始,Symbian Sign成为必须有的流程。

能力分类

  • 用户能力 (User capabilities): LocalServices, ReadUserData, WriteUserData, NetworkServices, UserEnvironment, (Location)
  • 系统能力第一套 (System capability set 1): (Location),SwEvent, ProtServ, TrustedUI, PowerMgmt, SurroundingDD, ReadDeviceData, WriteDeviceData
  • 系统能力第二套 (System capability set 2):CommDD, DiskAdmin, MultimediaDD, NetworkControl
  • 制造商能力 (Manufacturer):AllFiles, DRM, TCB

如果一个应用没有在mmp文件中申明足够的能力的话,在运行中就会显示KErrPermissionDenied(-46)错误代码。对于Symbian开发者来说,可以使用在Carbide IDE中的Capability Scanner来扫描应用需要的最小能力集。能力的详细分类内容在下面图中给出

UID

UID(UID3)使用来唯一标示应用的
Symbian Signed网站申请的UID。关于UID的详细描述,开发者可以在登录后,参阅UID Q&As

* 0x20000000 - 0x2FFFFFFF 受保护的UID, 适用于进行Symbian签名的应用
* 0xA0000000 - 0xAFFFFFFF 不受保护的UID, 适用于自签名应用

仅供开发使用的UID:

•0xE0000000 - 0xEFFFFFFF

Symbian Sign分类

自签名(Self-Signed)

  • 只能使用User capabilities
  • 对于一个自签名的应用程序,用户会被告知“该应用程序是不可信的”,用户可以决定中止安装
  • 在诺基亚E系列手机的用户必须更改设置,以允许自签名的应用程序安装(E系列手机出厂设置不允许自签名的应用安装)
  • 自签名应用使用的是UID分类中的不受保护UID
  • 如果用户想自签名一个应用,可以参考文章怎么用自签名证书签名一个SIS文件
  • 如果用户使用的是Carbide自带的自签名证书,该证书的有效期只有半年,所以可以通过cmd->makekeys -cert -expdays 3650来生成一个自定义有效期的其签名证书

开放式签名(Open Sign)

  • Open Signed online不需要Publisher ID,但一次只限一个IMEI号,对接受下载链接的Email地址没有要求,马上可以得到签名后的sis文件的下载链接,该链接在发出后30天内有效,得到的sis文件的证书有效期为36个月。
  • Open Signed Online签名流程图:

OpenSignedOnline1.png
OpenSignedOnline2.png

  • Open Signed offline需要Publisher ID,下载DevCertRequest,按照该软件中提示,填写相应内容,获得my.csr文件,该csr文件中限制1000个IMEI号,然后上传到SymbianSign,获得相应的.cer文件,与申请Publisher ID时获得的.key文件对应用进行签名。在申请SymbianSign账号时,EMail地址不可以是GMail、yahoo这些公共域名邮箱,必须是SymbianSign认可的公司域名邮箱。马上可以得到相应的cer文件,该cer文件有效期为36个月。
  • Open Signed Offline签名流程图:

OpenSignedOffline1.png
OpenSignedOffline2.png

  • 预签名的应用的UID可以是任意的UID,但如果是由Symbian Signed主页申请得来的UID,那么Open Signed Offline的Publisher ID必须与申请该UID的账号相匹配。

快签(Express-Signed)

  • 需要Publisher IDSymbianSign账号
  • 快签应用使用的是UID分类中的受保护的UID (0x2xxxxxxx)
  • 方便、快捷的签名方式,没有IMEI号限制
  • 每次签名都需要花费一个Content ID,下面给出Symbian Sign的相应资费
  • 认证的sis文件会被Symbian Signed Test House随机抽查测试。如果发现被乱用,账号将被冻结不能使用快签,直至该应用被测试公司完全通过。
  • 大约85%的应用可以使用这种方式签名
  • 直接在本地先用signsis和publisher ID的证书(.cer)进行签名,签名好以后的sis文件和一个.pkg文件,一个readme.txt文件一起打包成一个zip文件。在SymbianSign网站上花费一个Content ID进行签名,整个签名过程大概10分钟,中途如果屏幕自动休眠了,签名会失败。但是没事,重新签一次就可以了。签名成功才扣一个Content ID,不成功不扣Content ID。
  • Symbian Signed测试标准
  • ExpressSigned签名流程图:

ExpressSigned1.png
ExpressSigned2.png

认证签名(Certified-Signed)

CertifiedSigned1.png
CertifiedSigned2.png

开发商签名(Symbian Signed for Nokia)

注意:

  • 如果进行签名的证书是从网上依靠Publisher ID申请得来的,并且进行签名的应用使用的UID也是从网上依靠Publisher ID申请得来的,那么,这两个Publisher ID必须是同一个
  • 从2010/3/9起,Express Signed的费用从之前的20USD降到€10,Certified Signed的费用从之前的大约€185降到€150
  • 从2010/3/9起,Sogeti成为Certified Signed的唯一Test House
  • 从2010/3/1起,NSTL和MPhasis不再是Certified Signed的Test House

签名种类、能力、时间对照表

各种签名与能力对照表2.png

注意:上图中红色颜色沟出的能力Location,在3rd fp2之后才归为User Capabilities,在3rd fp2之前该能力属于System Capabilities

Symbian Sign相关内容

怎么获得Publisher ID

签名应用程序注销

  • 签名的应用程序可以被Symbian Signed注销,使得该应用不可以安装
  • 手机需要打开该功能,在安装的时候连接到注销服务器,进行检查该应用是否可以安装
  • 检查流程图:

CheckSign.png

SymbianSigned(Certified-Signed)以及JavaVerified认证测试已在中国落地

联系方式及提交流程请参考: SymbianSigned(Certified-Signed)以及JavaVerified认证测试已在中国落地

Symbian Signed相关链接

应用测试和认证入门
Symbian Signed官网
Symbian Signed Wiki文章
Symbian Signed指导
How to creating and sign a sis file

This page was last modified on 15 December 2011, at 05:15.
2828 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×