`
yiminghe
  • 浏览: 1433733 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Nokia 的智能操作系统

阅读更多

   Nokia 收购了 Sympian 的全部股份 ,我也终于第一次 用上了 S60 (N82拍照强机) ,过年前入手,到现在搞搞证书 ,装装软件, 研究了一下 单单安全设计方面 令我 惊叹不已 ,怪不得到现在 S60还没有病毒出现,想起了 曾经的一门课 : 密码学与网络安全 ,当时脑子都要绕晕了 ,S60 却是完美的实现了 RSA 的 安全体系 ,很好很好

 

 

   转载一篇 , 缅怀一下 曾经的 网络安全学习 时期

 

 

 

Symbian智能手机系统中代码签名的原理浅析
2008-09-10 12:38

转自http://mi2006.5d6d.com/thread-1058-1-1.html
随着手机技术的发展,人们的生活越来越离不开手机。昨天只能用来打电话的手机,今天却像电脑一样占有不可取代的地位。以前需要随身携带笔记本才能做到的任务,现在只需要一部智能手机就可以做到了。然而随着手机重要性的增加,其安全性也越来越受到关注。我们都不希望手机像电脑一样首要病毒的侵害,所以在 symbian公司退出的最新版本s60第三版系统中引入了数字签名技术以保证系统不会受到病毒的攻击。对需要高权限的安装程序要受到审核并进行签名以验证其安全性和不被篡改。



现在数字签名就好像好像手写签名一样受到认可,其可靠性可以把病毒阻止的系统之外。其实现主要依靠于的非对称密钥加密和信息摘要技术。其主要技术概述如下:



1、非对称密钥加密:

非对称密钥加密也称公钥加密。它使用两个密钥构成一对,一个用于加密,一个用于解密,其他密钥都无法解密这个消息,包括用于加密的密钥。两个密钥中,一个是公钥,一个是私钥,私钥保密,公钥公开,用公钥加密的信息只有私钥才能解开。这样传递信息时无须传递私钥解决了对称密钥加密时密钥传递的问题。其缺点是加密/解密速度慢,产生密钥长于消息不利于传递。当前应用较多的是RSA算法,其算法基于大数的因数分解困难性。



2、消息摘要:

消息摘要又称散列(Hash),对一段信息产生唯一的一个数字标识,是消息的指印或汇总,就像人类的指纹一样起着识别的作用。它要求如下:1、给定一个消息,应很容易求出唯一消息摘要;2、给定消息摘要,应该很难求出原来的消息;3、给定两个消息,求出的消息摘要应该不同。常用算法有MD5和SHA-1。



数字签名基于这样一个事实,如果我们用自己的私钥加密消息,那么任何持有公钥的人都可解密消息,这样做虽然无法保证消息不被外泄,但是因为只有拥有私钥的人才可以加密消息,所以可以相信其消息确实来源于私钥持有人。



Symbian的代码签名流程如下:



1、   申请证书;

2、   发放证书;

3、   使用证书对程序签名;

4、   安装程序验证真实性。



1、 申请证书

首先我们要有私钥,私钥可能是我们自己生成的,也可能是symbian公司生成的。这里假设私钥为我们自己生成。Symbian的数字证书一般采用RSA 或DSA算法,这里以RSA算法为例。我们用自己的私钥产生公钥,用私钥加密开发者信息等申请资料的消息摘要(这里用SHA-1算法),将公钥和申请资料及消息摘要一并生成csr申请文件。



将csr文件上传到塞班的服务器上。由symbian公司进行验证。Symbian通过上传的公钥可以解开csr里面的信息,即消息摘要。通过SHA-1 算法计算申请资料的消息摘要进行核对,确定其来源真实性后,symbian用自己的RSA的私钥对上面的信息的信息摘要做数字签名。然后后再加上 verisign发给symbian的证书,这个证书的目的是证明上面信息是symbian发布的。然后就完了成整个证书。Verisign是权威的数字证书机构,有权向个人和组织签发数字证书。



2、 发放证书



证书制作好后,就可以发放给开发者使用。这个数字证书是一个cer后缀的计算机文件。其内容经过编码处理,可以在计算机上通过程序查看其主要信息。 Symbian发放的数字证书如前面所提实际上包含两个证书,一个为symbian发布的证书,一个是Verisign发布的证书。其结构在satyam 标准中定义,最新版本是X.509V3,symbian的证书采用的就是这个版本。



(1)、第一个证书里面是些基本的信息,有证书的有效期、发布证书的机构 symbian、授权给的公司和开发者持有私钥对应的公钥。文件末尾还包含一个数字签名。这里是symbian对上面信息的一个数字签名。所以要验证上面信息的正确性和完整性只要用SHA-1算法对上面的信息计算得出一段信息摘要。用symbian公司的RSA的公钥解开这个密文得到一段明文比较这段明文和信息摘要的一致性就能验证上面信息的是否是由symbain发出的。因为如果上面的信息被修改过用SHA-1产生的信息摘要和明文就不会一致。这样数字签名就失效了。而且能用symbian的RSA的公钥解开的密文必须要由symbian的RSA的私钥才能做出来而symbian的RSA的私钥只才 symbian的签证专用的服务器里才会有的。所以其他人是无法伪造这个数字签名的。如果签名正确就足以证明上面信息是symbian发布的。绝不是其他人发布的。而且上面的信息保持着完整性和正确性。



(2)、第二个证书里面同样包含一些基本的信息。里面有使用的算法,以及发布者的信息、授权者的信息、证书的有效期和symbian的RSA的公钥。最后开始的是Verisign公司对上面所有信息的数字签名。使用的算法是SHA-1 和RSA。这里有Verisign的对应的RSA公钥同样能验证这个数字签名的有效性。



3、 使用证书对程序签名


(1)、首先用对应的消息摘要算法(这里是SHA-1)对要签名的软件产生一段信息摘要。

(2)、用私钥文件对这个信息摘要进行加密。

(3)、把这个经过加密的信息摘要和数字证书里的两段内容一起附加到软件程序文件的头部。这样签名工作就已经做好了。



4、安装程序验证真实性

(1)、我们为什么会相信数字证书真实可信?答案在于根CA证书。根证书是权威证书机构为验证数字证书的有效性而发布的证书,包含该机构的公钥。在手机出厂前手机就已经安装了很多根证书。期中就包含Verisign公司的RSA算法的公钥。由这个公钥就可以验证数字证书里第二段内容的Verisign公司的数字签名。如果这个时候失败则手机显示“证书错误,请与应用程序供应商联系”,如果成功的话手机系统就会信任这个数字签名里包含的symbian的一个 RSA公钥。因为有且只有公钥才能验证私钥的签名。所以就可以判断这个信息的却为Verisign公司发布绝无伪造和篡改过。所以程序可以信任那个 symbian的一个RSA公钥。


(2)、有了一个可信任的symbian的一个RSA公钥。就可以验证开发证书里的第一段内容symbian的数字签名。如果失败还是显示“证书错误,请与应用程序供应商联系”,成功的话手机系统就可以信任里面开发者的公钥。还有这个签名中包含的有效期,申请的能力,开发者的资料。由于这些信息是用 symbian的RSA私钥签名的,有了可信任的symbian的一个RSA公钥,就可以完全说明这些信息是symbian发布和承认的。


(3)、有了上面可信任的资料,把已经用私钥加密过的消息摘要,用刚才信任的那个公钥解开得到软件的信息摘要。然后再次计算软件的信息摘要。比较这两个信息摘要是否完全相同。不同则显示软件已损坏,相同说明软件未被篡改过和保持着完整性。如果没有出错就开始软件的安装了。


经过如此严格的验证过程后,系统的安全就有了足够的保障。病毒的制作者无法通过symbian公司的检测无法得到数字证书,而那些获得数字证书的软件绝不会威胁到系统的安全。通过对其代码签名的分析,只要symbian和Verisign的私钥不被泄露或破解,任何第三方就无法制作可以获得手机信任的证书,但是要获得手机信任并非只有制作证书这一条路。我们知道在手机里验证证书有效性的是根证书,那么只要替换掉系统的根证书整个验证过程也就失效了。很不幸的就是现在已经有了可以做到替换掉系统根证书的方法,但是由于其复杂性还不可能被病毒利用,所以现在来看,symbian系统还是安全的。




 
  • 大小: 782.1 KB
分享到:
评论

相关推荐

    智能手机操作系统 Nokia_3300

    智能手机操作系统开发,Nokia_3300系统操作系统(英文版),学习手机操作系统必备参考资料。

    智能手机操作系统介绍

    智能手机操作系统介绍,包括NOKIA ANDROID OPHONE IPHONE所有常用操作系统。

    Android操作系统开发

    2010年末数据显示,仅正式推出两年的操作系统的Android已经超越称霸十年的诺基亚Symbian系统,跃居全球最受欢迎的智能手机平台。Android的主要竞争对手是苹果的IOS,微软的WP7以及RIM的Blackberry OS。

    诺基亚N770如何获得root权限

    诺基亚N770如何获得root权限,诺基亚智能操作系统米果系统

    五大操作系统比较.doc

    在国内,安装有Symbian操作系统的手机多为诺基亚生产,酷派、多普 达则是WindowsMobile的主要支持者,代表产品有酷派N900+(WindowsCE6.0操作系统) 、酷派F800(WindowsCE6.0操作系统)、等。 Symbian Symbian是一...

    诺基亚N770网上安装中文方法

    诺基亚N770网上安装中文方法,诺基亚N770智能操作系统meego

    NSS NOKIA刷机利器

    诺基亚刷机必备 它可以刷新Nokia 智能,非智能的系统 如果忘了密码,只要按下面的操作就可以搞定了 使用NSS解锁码: 第1步:把手机用数据线连上电脑(用PC套件或数据线驱动)。 第2步:打开“NSS”软件点右上角...

    Nokia E71 中文用户手册

    诺基亚E71是诺基亚公司于2008年11月推出的一部采用Symbian 9.2 S60 3.1(S60第三版FP)操作系统的商务智能3G手机。 诺基亚E71采用了金属超薄机身设计,机身厚度仅仅为10毫米,并采用了QWERTY全键盘设计。在屏幕上,...

    智能手机操作系统编程 Symbian及60系列【最好的中文电子教程】

    PDF格式电子书,由浅入深,适合希望学习S60编程但还没有入门,或是刚刚入门的朋友。 希望对各位有所帮助。

    中国智能手机市场分析报告.doc

    (图) 2010年9月中国智能手机市场产品关注排名 (表) 2010年9月中国智能手机市场最受用户关注的十五款产品及参数 排名 "产品名称 "上市时间 "操作系统 "摄像头像素(万) "最新报价 " "1 "诺基亚 5230 "2009 "Symbian ...

    如何从卡上启动诺基亚N770

    如何从卡上启动诺基亚N770,诺基亚智能手机米果系统操作

    诺基亚超级密码计算器

    计算诺基亚手机密码,用于n6670等系列的Symbian 操作系统的智能手机.

    2011年10月中国智能手机市场分析报告.pdf

    1、不同操作系统智能手机关注比例 2、不同像素智能手机关注比例 3、不同屏幕尺寸智能手机关注比例 4、不同外观设计智能手机关注比例 5、支持3G的智能手机关注比例 6、支持GPS功能的智能手机关注比例 四、智能...

    【智能手机发展史】手机发展史简介.docx

    具有开放性的操作系统,拥有独立的核心处理器(CPU)和内存,可以安装更多的应用程序,使智能手机的功能可以得到无限扩展。 4.人性化,可以根据个人需要扩展机器功能。 5.功能强大,扩展性能强,第三方软件支持多。 ...

    GGTV-s60v3智能

    IT168.com-85926GGTV 诺基亚 n80 n81 n82 诺基亚n97 等等 支持塞班s60v3智能操作系统手机,用手机看电视

    艺帆智能手机生产企业官方网站模板

    智能手机的涉及范围已经布满全世界,因为智能手机具有优秀的操作系统、可自由安装各类软件、完全大屏的全触屏式操作感这三大特性,所以完全终结了前几年的键盘式手机。其中苹果、三星、诺基亚、HTC这四大品牌在全...

    智能手机销售话术.doc

    我详细给您说明一下 连载 10:系统介绍:安卓(Android)系统是全世界最受欢迎的智能手机平台,就像电脑中的 windows操作系统一样.应用软件丰富,而且不需要越狱,系统开放度高。比iPhone等其 他手机更强调搜索功能...

    nokia 6681拆解

    拍照外观设计:直板上市日期:2005年5月手机制式:GSM支持频段:|900/1800/1900MHz|铃声系统:48和弦屏幕参数:26万色TFT屏 176×208pix 2.1英寸 摄像功能:内置130万CMOS摄像头操作系统:系统类型:Symbian通话时间:180-360...

    Android智能手机调研报告.doc

    2010年末数据显示,仅正式推出两年的操作系统的Android已经超越称霸十年的诺基亚S ymbian系统,跃居全球最受欢迎的智能手机平台。Android的主要竞争对手是苹果的IOS ,微软的WP7以及RIM的Blackberry OS。 2 Android...

Global site tag (gtag.js) - Google Analytics