您的位置:

php怎么获取apk的md5(php获取文件md5)

本文目录一览:

获取APK/签名文件的SHA1证书,MD5

在发布应用的时候,需要通过keystore文件对apk包进行签名,才能发布到市场上。

在使用微信平台服务时或者其他需要提供MD5值的时候,该如何获取APK/签名文件的SHA1证书,MD5呢?

提供三种种方式:

1.通过Android Studio的命令输入来获取:

keytool -list -v -keystore xxx.jks

keytool -list -v -keystore xxx.keystore

2.通过解压apk来获取:

1) 将apk修改后缀为 .rar文件后解压;

2) 进入解压后的META-INF目录,该目录下会存在文件CERT.RSA

3) 在该目录下打开cmd,输入命令 :keytool -printcert -file CERT.RSA

3.通过Eclipse获取

依次在 Eclipse 中打开 Window - Preferances - Android - Build。

Well done!

如何查看apk的keystore的md5值

第一种方法,使用keytool

首先我们得在系统的环境变量中配置下keytool,keytool是位于我们JDK安装的bin目录下,如下图

在环境变量中配置一下path,如下图

然后进入到通过cmd打开控制台,进入cmd定位到.Android文件夹下。如下图:

输入keytool -list -v -keystore debug.keystore得到三种指纹证书,选取SHA1类型的证书,密匙口令是android,就可以获取到MD5和SHA1(注意如果不输入-v的话就只会出现SHA1的值),如下图:

这里就拿到了调试用的MD5和SHA1值,如果对命令使用不会的情况可以使用keytool查看使用帮助的指令。

第二种方法,使用AS中的Terminal

AndroidStudio中自带了终端Terminal,我们可以直接在里面进行操作。如下图:

在这里首先得进入到C盘的,用户的.android路径下。其它操作同第一个种方法一样,如下:

当然在这里我们只是获取的调试用的MD5和SHA1.

获取apk中的MD5和SHA1,前提是你知道密匙

首先先解压apk,获取到其中的META-INF文件夹底下的CERT.RSA。如下图:(这里的是解压在D盘的测试文件夹下)

用指令keytool -printcert -file D:\testtool\META-INF\CERT.RSA进行解析。如下图:

如果你有keystore的话,想获取MD5和SHA1的话,用法前面有介绍,如下图:

好了到这里就结束了,在实际开发中为了避免注册时弄错签名,建议时打包后在获取apk的签名.

php怎么获取apk的md5

由于需要判断上传的文件是否被修改过,需要记录上传文件的md5值,这里记录一下获取文件md5值的方法。

if(isset($_FILES['multimedia']) $_FILES['multimedia']['error']==0)

{

$file_name = $_FILES['multimedia']['name'];

$size = getimagesize($_FILES['multimedia']['tmp_name']);

$type = $_FILES['multimedia']['type'];

$original = $_FILES['multimedia']['tmp_name'];

$md5 = md5_file($original);

echo $md5;

}

md5_file()

md5_file() 函数计算文件的 MD5 散列。md5() 函数使用 RSA 数据安全,包括 MD5 报文摘译算法。如果成功,则返回所计算的 MD5 散列,如果失败,则返回 false。

语法:md5(string,raw)

参数string,必需。规定要计算的文件。

参数charlist,可选。规定十六进制或二进制输出格式:TRUE - 原始 16 字符二进制格式;FALSE - 默认。32 字符十六进制数。

?php

$filename = "test.txt";

$md5file = md5_file($filename);

echo $md5file;

?

存储 "test.txt" 文件的 MD5 散列:

?php

$md5file = md5_file("test.txt");

file_put_contents("md5file.txt",$md5file);

?

在本例中,我们将检测 "test.txt" 是否已被更改(即是否 MD5 散列已被更改):

?php

$md5file = file_get_contents("md5file.txt");

if (md5_file("test.txt") == $md5file)

{

echo "The file is ok.";

}

else

{

echo "The file has been changed.";

}

?

itjob网上有很多相关例子

输出:

The file is ok.

php中如何使用MD5码

首先介绍一下PHP中MD5函数的使用方法:

?php

$pswd1=md5("cenusdesign");

echo $pswd1; //运行结果为:fc60ec37d1c08d5b0fb67a8cd934d5ba

$pswd2=md5("Cenusdesign");

echo $pswd2; //运行结果为:067577d9fc109c80538c81d6f02bd293

?

显然,经过md5加密后,原本“cenusdesign”转变成了一组32位的字符串,而且,即使是一个字母的大小写变化,这组字符串就会发生巨大的变化。

Cenus Design建议把用户注册时,将密码首先经过MD5转换,然后将转换加密后的数据库。在用户登陆时,也将密码先进行MD5转化,再和数据库中那组经过MD5加密的字符串进行比较。这样,就可以做到在不知道用户确切密码的情况下完成密码的比对操作。