android签名证书(Android签名生成工具)
虽然上面我们使用的都是 java 工具链的东西,其实生成的 CERT.RSA 文件内,包含了公钥链,也完全可以使用 openssl 工具打印出
引言从Android演进开始,APK签名就已经成为Android的一部分,并且android要求所有Apks都必须先签名,然后才能将其安装在设备上关于如何生成密钥以及如何签名的文章很多一个Apk,但我们将从安全角度进行研究。
在对Apk文件进行反编译或反向工程之后,应查看哪个文件,以获取有关最初对应用进行签名的开发人员的更多信息
反编译APK文件解压缩文件或使用apktool后,取决于如何对文件进行反编译,如果解压缩文件,则文件结构将如下所示。
我们正在查看META-INF文件夹,正在查看使用Apktool进行的反编译Apk,它在原始文件夹中包括有关开发人员的证书详细信息以及所使用的哈希算法的类型等,并检查META-INF文件夹当您当前仍位于META-INF文件夹中时,使用keytool检查证书。
keytool-printcert-fileDROIDRDR.RSA根据证书别名的名称,从证书颁发之日和证书设置为过期起,您将看到所有者,国家/地区,颁发者,证书有效性的不同信息MD5,SHA1和SHA256中的证书指纹以及所使用的签名算法。
之前,我们谈论了生成证书,让我们从安全角度来看它,在分析您从第三方网站下载的Android应用程序时,您可以反编译该应用程序并查看该证书并将其与原始应用程序进行比较,在使用的哈希算法上,如果应用程序可能已被修改或篡改,则将其进行比较验证。
生成Android证书如果您反编译并重新编译android应用程序,则需要对应用程序进行签名,如果不签名,则该应用程序将不会安装在用户设备上有多种生成证书的方法,但是,我们将介绍使用keytool生成证书的三种方法。
方法1:打开您的终端:keytool-genkey-v-keystoreawwal-aliashafsa-keyalgRSA-keysize2048-validity365其中 awwal —是密钥库名称,hafsa是证书别名,使用后将被添加到META-INF文件夹-keysize 2048中,但是您可以使用4096大小,但是设备存在与此有关的问题或者。
但仅使用2048,有效期为几天方法2:使用可在此处下载的apk-signer.jar这是用Java编写的GUI,可生成证书并进行签名一个APK文件尽管Playstore中也有一个Android应用程序
签署Android应用程序在您已经生成了Android应用程序之后,我们将研究如何对应用程序进行签名,运行您的终端:jarsigner-verbose-sigalgSHA1withRSA-digestalg
SHA1-keystoreawwalmedium.apkhafsa其中-sigalg是使用的签名算法,您可以使用MD5找到一些应用程序,但是在验证应用程序时使用SHA1,因为它将告诉您使用的哈希算法以及使用的算法的弱度。
密钥库— awwal是生成证书时使用的密钥库名称的名称,hafsa是证书的别名,而medium.apk是要签名的应用程序的名称注意:如果您使用MD5,则该应用程序将被视为未签名应用程序,因为用于签署应用程序的算法很弱。
验证Android应用程序使用jarsigner验证应用程序,以查看资源签名列表以及具有keysize的哈希算法打开您的终端:jarsigner-verify-verbosemedium.apk其中仅验证将显示它是签名还是未签名,并使用详细选项查看证书的完整详细信息。
或者,您可以使用Apk签名者来自动完成文件名验证应用写在最后虽然上面我们使用的都是 java 工具链的东西,其实生成的 CERT.RSA 文件内,包含了公钥链,也完全可以使用 openssl 工具打印出 pubkey 证书文件,并可做进一步的指纹校验。
关键是生成签名的方法,这个对于使用不同的工具复现过程很关键。Happy coding :_)我是 @程序员小助手 ,持续分享编程知识,欢迎关注。
- 标签:
- 编辑:李松一
- 相关文章
-
lol自动关闭(LOL对战助手总是自动关闭)
有着掌上LOL之称的掌盟,在一开始的时候其实就是个查战绩的,大部分用户都是LOL玩家,用它看看好友在不在线,网恋对象有没有偷偷带妹子,借…
-
取消焦点(取消焦点视频模式)
一周新闻要点!
- 取消焦点(取消焦点视频模式)
- 清除上网痕迹(360浏览器怎么清除上网痕迹)
- 清除上网痕迹(360浏览器怎么清除上网痕迹)
- wow随机副本(wow副本任务大全)
- wow随机副本(wow副本任务大全)