在Symbian操作系统上开发的手机程序必须进行数字签名,才能在手机终端上安装成功。数字签名机制能够有效阻止恶意手机程序的传播,并保护软件开发商和手机用户的合法权益。那么,如何进行Symbian数字签名呢?目前主要有三种方式:开放签名(Open Signed)、鉴定签名(Certified Signed)和快速签名(Express Signed)。
开放签名又分为两种:在线开放签名(Open Singed Online)和离线开放签名(Open Singed Offline)。开放签名可以使开发者轻松对sis程序进行签名,以做测试或个人使用。使用开放签名将不再需要发布者证书(Publisher ID)、内容证书(Content ID)和Symbian Signed帐号,并且完全免费。开发者可以通过此途径为受限于某个手机串号(IMEI)的单个设备进行方便、快捷、免费的一次性签名服务。因此,开放签名特别适用于开发初期对程序进行调试和测试工作,当所有的编程和测试工作完成之后,就需要对手机程序进行推广了。由于开放签名有IMEI的限制,每在一个手机上安装都需要进行签名,显得非常繁琐。
鉴定签名使用Symbian的B型根证书对sis文件进行签名,可以使用Symbian OS的标志,签名后程序不能再修改,否则无法安装。鉴定签名需要购买Publisher ID,并注册Symbian Signed帐号。鉴定签名需要由独立的测试机构对手机程序进行测试,测试通过后才能进行签名。测试费用由测试公司指定,标准的Symbian应用程序的测试费用一般为185欧元(约合人民币2000元)。测试周期一般为4到5个工作日。如果没有通过测试,需要根据测试公司反馈的信息进行修改,并提交修改后的应用程序给测试公司重新测试,直到通过测试为止。关于再次测试的费用,由测试公司指定,MphasiS公司(中文联系,上海有办事处)的定价为160欧元(约合人民币1730元)。鉴定签名后的程序没有IMEI的限制,可以使用更多的能力(Capabilities),并可以在所有手机上进行安装。但由于鉴定签名需要进行独立的测试,需要花费一定的时间和费用,不利于程序的快速部署,因此Symbian提供了一种更快捷的签名方式——快速签名。
快速签名也使用Symbian的B型根证书对sis文件进行签名,不能使用Symbian OS的标志,签名后程序不能再修改,否则无法安装。快速签名需要购买Publisher ID和Content ID,并注册Symbian Signed帐号。快速签名不需要进行独立的测试工作,但Symbian可能会随机抽检。被抽检到的程序会被Symbian送到独立的测试机构进行测试,费用由Symbian承担。如果程序没有通过测试,则Symbian会注销你快速签名的资格,这也就意味着你下一次必须进行鉴定签名;直到鉴定签名通过后,Symbian才会恢复你快速签名的资格。快速签名后的程序也没有IMEI的限制,并可以在所有手机上进行安装。下面详细介绍快速签名的整个流程。
1. 购买Publisher ID。国内用户一般向深圳沃通购买,费用大约为1600元人民币,有
效期为1年,到期后需要续费,并提供一个新的Publisher ID;如果1年后你不需要更新软件,也没有其他的开发需求,则你没有必要续费申请新的Publisher ID。购买时需要提供公司的营业执照、电话收费单、技术联系人身份证和邮箱等,通过身份证明并付款后1到2个工作日内会颁发证书。下面介绍一下获取证书的过程:打开IE浏览器,在“工具”的“Internet 选项”中选“内容”,再点击“证书”就可以看到签名证书,我们需要把已经安装到IE中的证书导出为.pfx格式,然后使用证书格式转换工具将.pfx格式证书转换为双证书文件,同时记住证书的私钥密码,后面给sis文件签名时需要用到。另外,获取Publisher ID时,Symbian会提供给你一个吊销证书的密码,以作证书外泄时吊销证书之用。
2. 购买Content ID。费用大约为20美元,确保使用快速签名前已有Content ID。Content ID的有效期为10年。使用Content ID打包后的sis文件有效期为10年。Content ID会放在你的Symbian Signed帐号里,每对一个sis文件进行一次快速签名,就会使用一个Content ID。
3. 申请UID。可以在Symbian Signed帐号里申请受保护的UID段号,每个帐号每天最多能申请20个UID段号(UID段号是免费的)。申请到UID段号后,替换掉程序中所有的原来的UID号。
4. 自测试。替换UID后,重新编译生成sis文件,使用Open Signed签名后安装到手机上,并按照Symbian Signed最新的测试标准对程序进行标准化测试。测试时需要记录每一个条款的测试情况,是通过、失败、还是符合其例外条款。后面提交快速测试时需要填写测试的结果。
5. 打包。自测试通过后,使用双证书文件(Publisher ID)重新签名sis文件,签名的命令为:signsis myapp.sis myapp.sisx mycert.cer mykey.key mypassword,其中mypassword就是第1步提到的证书的私钥密码。用签名验证工具验证刚签名的sis文件,确认sis文件已被正确签名。将签好名后的sis文件、pkg文件、readme.txt和UserGuide.txt四个文件打包成zip文件。其中,readme.txt主要介绍程序发布时的一些注意事项,UserGuide.txt主要介绍程序如何使用。注意,打包后的zip文件不能包含路径,否则提交快速测试时会失败。
6. 提交快速签名。登录Symbian Signed帐号,上传打包好的zip文件后,按照Express Signed的向导一直进行,最后提交下载即可。
在快速签名的过程中,有几点是需要特别注意的,下面一一列出:
1. 注册Symbian Signed帐号时必须使用企业邮箱,否则会导致注册失败。且注册Symbian Signed帐号时使用的企业邮箱必须和申请Publisher ID时提供的技术联系人的邮箱相同。
2. 发出申请Publisher ID的请求之后,到获取到Publisher ID之前,不能重装操作系统,否则可能会导致无法成功接收Publisher ID。
3. zip打包文件中readme.txt提到的程序版本号必须与pkg文件中的版本号、程序关于对话框中的版本号相同,否则可能会导致测试失败。
4. 如果sis文件中嵌入了别的sis文件,则这些嵌入的sis文件也必须是已经签过名的,否则可能会导致快速签名失败。
Symbian快速签名流程详解
最新推荐文章于 2019-07-30 17:13:06 发布