`
zhaohaolin
  • 浏览: 1004489 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

关于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。

\"></p>
<p>然后使用生成的keystore对apk包签名。</p>
<p style=

分享到:
评论

相关推荐

    android原生系统签名文件

    在Android操作系统中,签名文件扮演着至关重要的角色,它们确保了系统的安全性和完整性。本文将深入探讨"android原生系统签名文件"的相关知识点,以及压缩包中提供的各个文件的用途。 首先,Android系统使用签名来...

    android8.1系统签名所需文件

    在Android操作系统中,系统签名是确保应用程序和系统组件安全性的关键环节。对于Android 8.1 Oreo(API级别27)来说,开发者如果想要创建一个系统应用或者修改系统组件,必须遵循特定的签名流程。这里我们将深入探讨...

    Android so文件签名验证源代码

    为了确保安全性和防止恶意篡改,Android系统对这些本地库进行了签名验证。本文将基于给定的"Android so文件签名验证源代码"主题,详细阐述Android SO文件的签名过程、NDK(Native Development Kit)的使用以及签名...

    Android 系统签名文件

    在Android操作系统中,系统签名文件扮演着至关重要的角色,它确保了应用和系统的安全性和完整性。Android系统签名是为了验证应用程序或系统更新是否来源于可信的源,并且未经篡改。这个过程涉及到一系列的安全机制,...

    android系统权限签名

    在Android系统中,权限签名是一项至关重要的安全机制,它确保应用程序的合法性和完整性。这个工具,源自Android的源代码,允许开发者为他们的应用程序添加系统权限的签名,从而使其能够访问和操作那些通常需要更高...

    android10 apk签名文件

    在Android系统中,APK签名是一个至关重要的过程,它确保了应用的完整性和开发者身份的验证。在Android 10中,这个过程没有本质的变化,但随着系统的更新,签名文件的作用和安全要求更加严格。本篇文章将深入探讨...

    android 系统签名工具

    每个APK文件在打包后都会包含一个数字签名,这个签名验证了应用的代码和资源没有被修改过。当用户尝试安装应用时,Android系统会检查签名,只有签名有效且与开发者信息匹配的应用才能成功安装。 二、签名的重要性 ...

    Android4.4 系统签名

    2. **signapk.jar**:这是Android签名工具,它包含用于签署APK的Java代码。开发者或打包工具使用这个JAR文件来生成签名过的APK,使其能够在Android设备上安装和运行。 3. **platform.x509.pem**:这是一个X.509证书...

    Android系统签名工具.rar

    在Android系统中,签名工具是开发过程中的重要组成部分,它确保了应用的完整性和安全性。这里我们关注的是"signapk.jar",这是一个用于对APK文件进行签名的专用工具,通常由Google提供,用于Android系统的签名流程。...

    Android 系统签名.zip

    在Android操作系统中,系统签名是一项至关重要的安全机制,它确保了系统的完整性以及应用程序的权限管理。这个名为"Android 系统签名.zip"的压缩包包含了用于Android系统签名的关键文件,让我们逐一了解它们的作用。...

    Android 系统签名工具,解压可用 自带openssl环境

    Android系统签名工具是Android开发过程中不可或缺的一部分,主要用于确保应用程序或系统的安全性和完整性。...同时,它也提醒我们,理解和掌握Android签名机制对于保障应用和系统的安全性至关重要。

    Android4.2 系统签名

    综上所述,Android 4.2系统签名涉及到安全的密钥对生成、签名工具的使用以及签名验证的过程。理解并正确执行这些步骤对于Android开发来说是必不可少的,因为它直接关系到应用的安全性和用户体验。

    Android系统签名APK

    综上所述,Android系统签名APK是Android平台上的一种高级权限获取方式,涉及到密钥管理、签名过程、权限验证等多个环节,对于系统开发者和维护者来说是至关重要的。同时,系统签名也需要遵循严格的流程和安全规范,...

    Android-5.1系统签名文件

    在Android操作系统中,系统签名文件扮演着至关重要的角色,确保应用和系统的安全性和完整性。针对“Android-5.1系统签名文件”这个主题,我们主要关注三个关键组件:`platform.pk8`、`platform.x509.pem`以及`...

    Android4.4.2系统签名文件

    **一、Android签名机制** Android系统采用基于公钥加密的数字签名技术,以确保安装在设备上的应用或系统更新是由可信任的源发布的。每个Android应用在发布时都需要一个签名证书,这个证书用于对APK文件进行签名,...

    android系统签名工具

    在Android平台上,每个安装到设备上的应用都必须被数字签名,这个签名验证了应用的来源,并且保证了应用在安装或更新时不会被篡改。签名过程包括生成密钥对(公钥和私钥)以及使用私钥对APK进行签名。 `keytool`是...

    一种Android数字签名验证机制漏洞探析.pdf

    本文深入探讨了Android系统数字签名验证机制中存在的一类漏洞,以及其成因和可能的解决方案。首先,文章介绍了数字签名和验证过程的基本原理,随后详细分析了Android系统数字签名机制的具体作用及其潜在的漏洞。 在...

    Android 5.1 系统应用签名工具

    签名过程确保了APK文件未经篡改,因为任何修改都会导致签名验证失败,从而防止恶意代码的注入。 `platform.x509.pem`是一个X.509证书,它是公钥基础设施(PKI)的一部分,包含了一个公钥和相关的元数据,如证书持有...

    Android studio系统签名工具包.rar

    在Android开发中,系统签名是确保应用程序能够与操作系统安全交互的关键步骤。Android Studio系统签名工具包是为了帮助开发者方便地对系统应用进行签名而设计的。这个压缩包包含了一些必要的脚本和工具,使得这一...

Global site tag (gtag.js) - Google Analytics