Saturday, October 10, 2009

关于(签名)和(证书)的解释

关于签名?

S60 第三版在安全性方面做了比较大的改善,对在系统中安装运行的第三方软件有更为严格的规定.
某些涉及手机软硬件安全/个人信息安全等方面的操作被做了特别的限制(比如随手机开机自动启动就是被限制的功能之一,主要是防止恶意软件)。应用程序要实现这些“被特别限制”了的功能就必须获得“签名”。也就是说要有人来为这个操作的安全性负责!未经任何签名的程序不能安装运行.

关于证书?

证书其实不是单纯放到哪个文件夹下的,证书是给需要“签名”的软件签名用的。证书不是直接用的,证书是要通过一个专门的程序打包到sis软件中的。证书的作用只是赋予程序一定的权限。你得到证书千万不要弄丢了,因为一个证书的有效期是6个月,可以为很多软件进行签名。如果证书过期了,你可以再申请一个新证书,也可以在安装的时候先把手机时间调整一下。时间调整到证书的有效期内就可以。

通常我们下载到的手机软件会有签名版和未签名版的,对于未签名的软件我们可以自已申请证书出来制作出针对自已机器的软件,通过塞班提供的SIGN工具制作出自己手机的KEY文件然后写入到要安装的软件中,然后这个软件就只能在你的手机中安装了。

简而言之,证书机制就是为了针对安全问题所采用的一种措施,它的作用主要是两点:1。证明软件的合法性。2。允许软件自启动。

我们说的签名一般指用户个人签名:
严格来说这个应该是属于“开发者签名”。因为 Symbian 为软件开发者提供一种“开发证书”,原意本来是让软件开发者作软件测试用的。这个“开发证书”是与作为测试用的机器的 IMEI 码挂钩的。使用这种证书签名的软件只能在该 IMEI 码对应的机器上使用,不能用于别的机器。我们所谓的“自签名”其实就是利用了这个方式,说白了就是你说你是开发软件的,你提供你测试机器的 IMEI 码,Symbian 颁发给你一个“开发证书”,你用这个证书签名你的“测试软件”。你自己对你自己的“开发行为”负责!如此而已。另外,开发证书自颁发日起有效期为半年.但在证书有效期内签署好了程序安装后的使用时限是没有限制的.

IMEI=International Mobile Equipment Identity =国际移动设备身份证
。这就和你的“居民身份证”类似。这东西是属于隐私范围的,Symbian 不在网站上直接输入该信息是出于保护用户隐私考虑的。

常见问题:
有许多软件都需要证书,我如果拥有一个证书了,
那那些需要证书才可以安装的软件都可以用了吗?
还是每个软件都需要不同的证书?
一个证书还能给多人使用吗?

回答:每个手机需要不同的证书,与软件无关,对应每个手机的IMEI号,一个证书一个手机使用。你有一个证书了,那那些需要证书才可以安装的软件签过名后就都可以用了。一个证书一个手机使用,其它手机无效。

为什么要“签名”?

S60 第三版在安全性方面做了比较大的改善,对在系统中安装运行的第三方软件有更为严格的规定。
某些涉及手机软硬件安全/个人信息安全等方面的操作被做了特别的限制(比如随手机开机自动启动就
是被限制的功能之一)。应用程序要实现这些”被特别限制”了的功能就必须获得“签名”。也就是说要有
人来为这个操作的安全性负责!未经任何签名的程序不能安装运行。

签名(sign):就是在应用程序的特定字段写入特定的标记信息,表示该软件已经通过了签署者的审核。
签署者对该软件的安全性负责。其中签名又大致分三种:

1. Symbian 签名。
即 Symbian(塞班)手机操作系统官方签名。通过了 Symbian 安全认证的软件才会获得 Symbian 的
签名。该类软件有最高的安全级别。在手机上能正常安装/运行/且能实现软件提供的所有功能.
获得 Symbian签名需要软件作者直接和 Symbian 官方打交道,基于多方面的原因,
并不是所有软件的作者都有能力获得这个认证的。

2. 作者签名。
软件作者在发布软件的时候就对软件进行了签名。这类软件可以在手机上安装运行(可能会遇到安全性警告,可跳过)。但不能实现那些“被特别限制”了的功能。如果某软件根本不涉及这类功能,那么软件作者也完全可能自己签名就行了。还有一种可能就是软件虽然有某部分功能属于“被特别限制”的范围,但并不是主要功能。软件作者也可能发布一个“作者签名版”,这样的版本可以正常使用大部分功能,但会丧失一些特定功能。如“来电通”软件就有这样的版,几乎全部功能都可以使用,只是不能开机自启动。

3. 用户签名。
严格来说这个应该是属于“开发者签名”。因为 Symbian 为软件开发者提供一种“开发证书”,原意本来是让软件开发者作软件测试用的。这个“开发证书”是与作为测试用的机器的 IMEI 码挂钩的。使用这种证书签名的软件只能在该 IMEI 码对应的机器上使用,不能用于别的机器。

我们所谓的“自签名”其实就是利用了这个方式,说白了就是你说你是开发软件的,你提供你测试机器的 IMEI 码,Symbian 颁发给你一个“开发证书”,你用这个证书签名你的“测试软件”。你自己对你自己的“开发行为”负责!如此而已。另外,开发证书自颁发日起有效期为半年.但在证书有效期内签署好了的程序的使用时限是没有限制的.

No comments: