德斯资源网10月1日消息,简介自从android退化以来,APK签名曾经成为Android的一局部,Android要求一切的apk都要签名才干装置到设备上。关于如何生成密钥以及如何签名,有很多文章。一个Apk,但是我们会从平安的角度来研讨。在对Apk文件实行反编译或逆向工程之后,应该检查哪个文件来取得最后签署使用程序的开发人员的更多信息。

反编译APK文件在解压文件或许运用apktool之后,就看如何反编译文件了。假如解压缩该文件,文件构造将如下所示。

我们正在检查META-INF文件夹,

运用Apktool反省反编译的Apk,其中包括开发者的证书细节和原始文件夹中运用的哈希算法类型,并反省META-INF文件夹。

当您依然在META-INF文件夹中时,运用keytool反省证书。

keytool-print cert-file droid rdr . RSA依据证书别名的称号,从证书颁发之日和证书设置为过时之日起,您会看到证书的一切者、国度/地域、颁发者和无效期的不同信息。

MD5、SHA1和SHA256中的证书指纹和运用的签名算法。

之前,我们讨论了生成证书。让我们从平安的角度来看。在剖析你从第三方网站下载的Android使用时,可以对使用实行反编译,检查证书,并与原使用实行比照。在运用的哈希算法上,假如使用程序例如被修正或窜改,则比拟并验证它。

生成android证书假如你反编译、重编译Android使用,需求对使用实行签名。假如不签名,该使用程序将不会装置在用户的设备上。生成证书的办法有很多,但是我们将引见三种运用keytool生成证书的办法。

办法1:

翻开您的终端:

KeyTool-Genkey-V-Keystore Awwal-别名hafsa-KeyalG RSA-keysize 2048-Validity 365其中Awwal-是密钥库的称号,Hafsa是证书的别名。运用后,它将被添加到META-INF文件夹-Keysize 2048。但是,您可以运用4096的大小,但设备存在与此或相关的成绩。但是只用2048,无效期几天。

办法二:

运用apk-signer.jar,可以从这里下载。这是一个用Java写的GUI,它可以生成一个证书并签署一个APK文件。虽然Playstore里也有安卓使用。

签署Android使用程序在您生成Android使用程序后,我们将研讨如何签署使用程序并运转您的终端:

Jarsigner-verbose -sigalg SHA1带RSA-digest alg sha1-keystore awwal medium . apkhafsa其中-sigalg是运用的签名算法。你可以运用MD5来查找一些使用,但是在验证使用的时分要运用sha1,由于它会通知你运用的哈希算法和运用的算法的弱点。

keystore-awwal是生成证书时运用的密钥库称号,hafsa是证书的别名,medium.apk是要签名的使用程序的称号。

留意:假如您运用MD5,使用程序将被视为未签名的,由于用于签名使用程序的算法很弱。

验证Android使用程序运用jarsigner来验证使用程序,以检查资源签名列表和带keysize的哈希算法。

翻开您的终端:

jarsigner-verify-verbosemeric . apk,其中只要验证才会显示它是已签名的还是未签名的,并运用detailed选项来检查证书的完好细节。

或许,您可以运用Apk signer自动完成文件名验证使用程序。

在写作的最初,虽然我们都运用java工具链,实践上,生成的CERT。RSA文件包括公钥链,还可以用openssl工具打印出pubkey证书文件,做进一步的指纹验证。

关键是签名生成的办法,这关于运用不同工具实行复制的进程至关重要。

以上就是今天所分享的内容,了解更多软件小知识,请关注德斯资源网,每天都会更新一些日常软件小知识与大家分享。