md5加密方法

    xiaoxiao2022-07-13  168

    MD5Utils类:

    public class MD5Utils { /** * md5加密方法 * @param password * @return */ public static String md5Password(String password) { try { // 得到一个信息摘要器 MessageDigest digest = MessageDigest.getInstance("md5"); byte[] result = digest.digest(password.getBytes()); StringBuffer buffer = new StringBuffer(); // 把没一个byte 做一个与运算 0xff; for (byte b : result) { // 与运算 int number = b & 0xff;// 加盐 String str = Integer.toHexString(number); // System.out.println(str); if (str.length() == 1) { buffer.append("0"); } buffer.append(str); } // 标准的md5加密后的结果 return buffer.toString(); } catch (NoSuchAlgorithmException e) { // TODO Auto-generated catch block e.printStackTrace(); return ""; } } }

    Activity中调用:

    注册密码:确定两次输入密码相同后,保存加密后的密码。

     

    sp = getSharedPreferences("config", MODE_PRIVATE); // 取出密码 String password = et_setup_pwd.getText().toString().trim();//第一次输入密码 String password_confirm = et_setup_confirm.getText().toString().trim();//再次输入的密码 if(TextUtils.isEmpty(password) || TextUtils.isEmpty(password_confirm)){ Toast.makeText(HomeActivity.this, "密码为空", Toast.LENGTH_SHORT).show(); return; } //判断是否一致才去保存 if(password.equals(password_confirm)){ //一致的话,就保存密码,把对话框消掉,还要进入手机防盗页面 Editor editor = sp.edit(); editor.putString("password", MD5Utils.md5Password(password));//保存加密后的密码 editor.commit(); dialog.dismiss(); Log.i(TAG, "一致的话,就保存密码,把对话框消掉,还要进入手机防盗页面"); Intent intent = new Intent(HomeActivity.this,LostFindActivity.class); startActivity(intent); }else{ Toast.makeText(HomeActivity.this, "密码不一致", Toast.LENGTH_SHORT).show(); return ; }

    再次登陆时验证密码:

    String password = et_setup_pwd.getText().toString().trim();//得到输入框的密码 String savePassword = sp.getString("password", "");//取出上一步保存的加密后的密码 if(TextUtils.isEmpty(password)){ Toast.makeText(HomeActivity.this, "密码为空", Toast.LENGTH_SHORT).show(); return; } //将输入的密码进行md5加密后和之前保存到加密密码进行比较 if(MD5Utils.md5Password(password).equals(savePassword)){ //输入的密码是我之前设置的密码 //把对话框消掉,进入主页面; dialog.dismiss(); Log.i(TAG, "把对话框消掉,进入手机防盗页面"); Intent intent = new Intent(HomeActivity.this,LostFindActivity.class); startActivity(intent); }else{ Toast.makeText(HomeActivity.this, "密码错误", Toast.LENGTH_SHORT).show(); et_setup_pwd.setText(""); return; }

     

    最新回复(0)