关于Android系统中的签名验证

Android [开发入门] 正文

关于Android系统中的签名验证

2010-05-13 09:07:39 作者:安致迷 来源: 安致迷 浏览次数: 1

Android系统要求所有安装的应用程序必需有数字签名,其实签名并非从Android平台开始,在过去从Symbian OS就开始需要签名才能发布,这样可以保证每个应用程序开发商合法ID,否则系统将不会安装和运行没有合适的签名许可的程序。无论是在设备还是模拟器上都 必须给程序建立签名才可以调试运行,而且数字签名不仅存在于所有安装的应用程序上,在使用updata.zip刷机的时候,刷机包也用到了签名验证。但是 什么是数字签名,其中的原理是什么呢?

数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。

数字签名不是指将你的签名扫描成数字图像,或者用触摸板获取的签名,更不是你的落款。

数字签名了的文件的完整性是很容易验证的(不需要骑缝章,骑缝签名,也不需要笔迹专家),而且数字签名具有不可抵赖性(不需要笔迹专家来验证)。

简单地说,所谓数字签名就是附加在数据单元上的一些数据,或是对数据单元所作的密码变换。这种数据或变换允许数据单元的接收者用以确认数据单元的来 源和数据单元的完整性并保护数据,防止被人(例如接收者)进行伪造。它是对电子形式的消息进行签名的一种方法,一个签名消息能在一个通信网络中传输。基于 公钥密码体制和私钥密码体制都可以获得数字签名,目前主要是基于公钥密码体制的数字签名。包括普通数字签名和特殊数字签名。普通数字签名算法有RSA、 ElGamal、Fiat-Shamir、Guillou- Quisquarter、Schnorr、Ong-Schnorr-Shamir数字签名算法、Des/DSA,椭圆曲线数字签名算法和有限自动机数字签 名算法等。特殊数字签名有盲签名、代理签名、群签名、不可否认签名、公平盲签名、门限签名、具有消息恢复功能的签名等,它与具体应用环境密切相关。显然, 数字签名的应用涉及到法律问题,美国联邦政府基于有限域上的离散对数问题制定了自己的数字签名标准(DSS)。

数字签名(Digital Signature)技术是不对称加密算法的典型应用。数字签名的应用过程是,数据源发送方使用自己的私钥对数据校验和或其他与数据内容有关的变量进行加 密处理,完成对数据的合法“签名”,数据接收方则利用对方的公钥来解读收到的“数字签名”,并将解读结果用于对数据完整性的检验,以确认签名的合法性。数 字签名技术是在网络系统虚拟环境中确认身份的重要技术,完全可以代替现实过程中的“亲笔签字”,在技术和法律上有保证。在公钥与私钥管理方面,数字签名应 用与加密邮件PGP技术正好相反。在数字签名应用中,发送者的公钥可以很方便地得到,但他的私钥则需要严格保密。

数字签名主要的功能是:保证信息传输的完整性、发送者的身份认证、防止交易中的抵赖发生。

数字签名技术是将摘要信息用发送者的私钥加密,与原文一起传送给接收者。接收者只有用发送的公钥才能解密被加密的摘要信息,然后用HASH函数对收 到的原文产生一个摘要信息,与解密的摘要信息对比。如果相同,则说明收到的信息是完整的,在传输过程中没有被修改,否则说明信息被修改过,因此数字签名能 够验证信息的完整性。

数字签名是个加密的过程,数字签名验证是个解密的过程。

具有数字签名功能的个人安全邮件证书是用户证书的一种,是指单位用户收发电子邮件时采用证书机制保证安全所必须具备的证书。个人安全电子邮件证书是 符合x.509标准的数字安全证书,结合数字证书和S/MIME技术对普通电子邮件做加密和数字签名处理,确保电子邮件内容的安全性、机密性、发件人身份 确认性和不可抵赖性。 具有数字签名功能的 个人安全邮件证书中包含证书持有人的电子邮件地址、证书持有人的公钥、颁发者(河南CA)以及颁发者对该证书的签名。个人安全邮件证书功能的实现决定于用 户使用的邮件系统是否支持相应功能。目前, MS Outlook 、Outlook Express、Foxmail及河南CA安全电子邮件系统均支持相应功能。使用个人安全邮件证书可以收发加密和数字签名邮件,保证电子邮件传输中的机密 性、完整性和不可否认性,确保电子邮件通信各方身份的真实性。

那apk是如何进行签名的呢?

一般签名使用的工具是Sun官方网站下载JDK,安装后产生的keytool和jarsigne两个系统工具,生成keystore。

\

然后使用生成的keystore对apk包签名。

\

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值