Android对敏感数据进行MD5加密(基础回顾)

1、在工具类的包下新建一个进行md5加密的工具类MD5Utils.java

 1 package com.example.mobilesafe.utils;
 2 import java.security.MessageDigest;
 3 import java.security.NoSuchAlgorithmException;
 4 public class MD5Utils {
 5 /**
 6 * md5加密方法
 7 * @param password
 8 * @return
 9 */
10 public static String md5Password(String password){
11 try {
12 //得到一个信息摘要器
13 MessageDigest digest = MessageDigest.getInstance("md5");
14 byte[] result = digest.digest(password.getBytes());
15 StringBuffer buffer = new StringBuffer();
16 //要把每一个byte做一个与运算0xff,0xff是十六进制,十进制为255
17 for(byte b:result){
18 //与运算
19 int number = b & 0xff;
20 String str = Integer.toHexString(number);
21 //    System.out.println(str);
22 //如果位数不够前面加个零
23 if(str.length()==1){
24 buffer.append("0");
25 }
26 buffer.append(str);
27 }
28 //标准的md5加密后的结果
29 return buffer.toString();
30 } catch (NoSuchAlgorithmException e) {
31 // TODO Auto-generated catch block
32 e.printStackTrace();
33 return "";
34 }
35 }
36 }                    

2、在HomeActivity.java中对用SharedPreferences保存的密码数据进行调用加密

 1 一处改动为第一次设置密码时把密码保存到文件中时进行md5加密:
 2 if(password.equals(password_confirm)){
 3 //一致的话,就保存密码,把对话框消掉,还要进入手机防盗页面
 4 Editor editor = sp.edit();
 5 editor.putString("password", MD5Utils.md5Password(password));
 6 editor.commit();
 7 dialog.dismiss();
 8 Log.i(TAG, "一致的话,就保存密码,把对话框消掉,还要进入手机防盗页面");
 9 }
10
11 另一处为判断从文件中读取的MD5加密后的数据和当前输入的数据md5加密后是否一样
12 if(MD5Utils.md5Password(password).equals(savePassword)){
13 //输入的密码是我之前设置的密码
14 //把对话框消掉,进入主页面
15 dialog.dismiss();
16 Log.i(TAG, "把对话框消掉,进入主页面");
17 }        
时间: 2024-10-15 13:40:37

Android对敏感数据进行MD5加密(基础回顾)的相关文章

四、Android学习第四天——JAVA基础回顾(转)

(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 四.Android学习第四天——JAVA基础回顾 这才学习Android的第四天,在程序中已经遇到了JAVA中以前不常用的一些知识点,赶紧回顾复习一下,打下基础 这里就做个简单的小结: 一.匿名内部类 匿名内部类说白了就是个没有被命名的JAVA类 在以下条件下使用匿名内部类比较适合: ①只用到该类的一个实例时 ②类在定义后被马上用到 ③类非常小(SUN推荐是在4行代码以下

android HTTP发送及MD5加密收集

发送部分: public void MyFunction{ HttpClient httpclient = new DefaultHttpClient(); //你的URL HttpPost httppost = new HttpPost("http://www.eoeandroid.com/post_datas.php"); try { List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair&

Android之简单加密–MD5 加密

在Android中需要对各种数据进行加密的操作,比如用户短信备份的数据加密.用户账户登陆的密码加密以及应用于服务器连接传递重要数据的加密,用处非常的多这里介绍一下MD5加密: 案例驱动: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 public class MD5Utils {      // 进行md5的加密运算      public static String encode(Strin

android环境下两种md5加密方式

在平时开发过程中,MD5加密是一个比较常用的算法,最常见的使用场景就是在帐号注册时,用户输入的密码经md5加密后,传输至服务器保存起来.虽然md5加密经常用,但是md5的加密原理我还真说不上来,对md5的认知目前仅仅停留在会使用的水平,想搞清楚还是要花点时间的,这是md5加密算法的相关介绍.本文主要介绍android平台下两种md5加密方式,分别为基于java语言的md5加密及ndk环境下基于c语言的md5加密. 下面代码为基于java语言的md5加密: public String getMD5

android md5加密与rsa加解密实现代码

import java.io.UnsupportedEncodingException;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException; public class MD5 {/* * MD5加密 */  public static String getDigest(String str) { MessageDigest messageDigest = null; try { mess

wemall app商城源码android开发MD5加密工具类

wemall-mobile是基于WeMall的android app商城,只需要在原商城目录下上传接口文件即可完成服务端的配置,客户端可定制修改.本文分享android开发MD5加密工具类主要代码,供技术员参考学习. package com.gzcivil.utils; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgori

Android DES AES MD5加密

AES加密: <span style="font-size:18px;">package com.example.encrypdate.util; import java.io.UnsupportedEncodingException; import java.security.InvalidKeyException; import java.security.NoSuchAlgorithmException; import java.security.SecureRand

[android] 手机卫士保存密码时进行md5加密

一般的手机没有root权限,进不去data/data目录,当手机刷机了后,拥有root权限,就可以进入data/data目录,查看我们保存的密码文件,因此我们需要对存入的密码进行MD5加密 获取MessageDigest信息摘要器对象,调用MessageDigest.getInstance(“md5”),参数:规则 调用MessageDigest对象的digest(bytes)方法,得到加密的byte[] 数组,参数:byte[] 数组,调用String对象的getBytes()方法获取到字节数

android MD5加密

public class MD5Uutils {    //MD5加密,32位    public static String MD5(String str) {        MessageDigest md5 = null;        try {            md5 = MessageDigest.getInstance("MD5");        } catch (Exception e) {            e.printStackTrace();