亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

android md5加密與rsa加解密實現代碼

2020-04-11 12:39:31
字體:
來源:轉載
供稿:網友
復制代碼 代碼如下:

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 {
messageDigest = MessageDigest.getInstance("MD5");
messageDigest.reset();
messageDigest.update(str.getBytes("UTF-8"));
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
byte[] byteArray = messageDigest.digest();
StringBuffer md5StrBuff = new StringBuffer();
for (int i = 0; i < byteArray.length; i++) {
if (Integer.toHexString(0xFF & byteArray[i]).length() == 1)
md5StrBuff.append("0").append(Integer.toHexString(0xFF & byteArray[i]));
else
md5StrBuff.append(Integer.toHexString(0xFF & byteArray[i]));
}
return md5StrBuff.toString().toUpperCase();
}
}

復制代碼 代碼如下:

import java.math.BigInteger;
import java.security.Key;
import java.security.KeyFactory;
import java.security.PublicKey;
import java.security.spec.RSAPublicKeySpec;
import javax.crypto.Cipher;
import org.bouncycastle.jce.provider.BouncyCastleProvider;
public class RSAUtil {
/**
* 加密
*
* @param message
* @return
*/
public static String encrypt(String message) {
byte[] result = null;
try {
result = encrypt(message, getPublicKey());
} catch (Exception e) {
e.printStackTrace();
}
return toHexString(result);
}
/**
* 解密
*
* @param message
* @return
*/
public static String decrypt(String message) {
byte[] result = null;
try {
result = decrypt(message, getPublicKey());
} catch (Exception e) {
e.printStackTrace();
}
return new String(result);
}
/**
* 加密(公鑰加密、私鑰加密)
*
* @param message 待加密的消息
* @param key 公鑰或私鑰
* @return
* @throws Exception
*/
private static byte[] encrypt(String message, Key key) throws Exception {
Cipher cipher = Cipher.getInstance("RSA", new BouncyCastleProvider());
cipher.init(Cipher.ENCRYPT_MODE, key);
// 注意中文的處理
return cipher.doFinal(message.getBytes("gb2312"));
}
/**
* 解密(如果公鑰加密,則用私鑰解密;如果私鑰加密,則用公鑰解密)
*
* @param message 待解密的消息
* @param key 公鑰或私鑰
* @return
* @throws Exception
*/
private static byte[] decrypt(String message, Key key) throws Exception {
Cipher cipher = Cipher.getInstance("RSA", new BouncyCastleProvider());
cipher.init(Cipher.DECRYPT_MODE, key);
return cipher.doFinal(toBytes(message));
}
/**
* 通過模長和公鑰指數獲取公鑰
*
* @param modulus 模長
* @param publicExponent 公鑰指數
* @return
* @throws Exception
*/
public static PublicKey getPublicKey() {
PublicKey publicKey = null;
String modulus = "140865665237544398577638791993321201143991791099370252934699963963887058026979531275917645451893685346013654333931757603593193739776986525943697469996693704995753266331593233395038088698299308180612215713544577462613426793519824197226393059683065343801412208205295045502348474411031999124137863144916358656019";
String publicExponent = "65537";
BigInteger m = new BigInteger(modulus);
BigInteger e = new BigInteger(publicExponent);
RSAPublicKeySpec keySpec = new RSAPublicKeySpec(m, e);
try {
KeyFactory keyFactory = KeyFactory.getInstance("RSA", new BouncyCastleProvider());
publicKey = keyFactory.generatePublic(keySpec);
} catch (Exception e1) {
e1.printStackTrace();
}
return publicKey;
}
private static final byte[] toBytes(String s) {
byte[] bytes;
bytes = new byte[s.length() / 2];
for (int i = 0; i < bytes.length; i++) {
bytes[i] = (byte) Integer.parseInt(s.substring(2 * i, 2 * i + 2), 16);
}
return bytes;
}
public static String toHexString(byte[] b) {
StringBuilder sb = new StringBuilder(b.length * 2);
for (int i = 0; i < b.length; i++) {
sb.append(HEXCHAR[(b[i] & 0xf0) >>> 4]);
sb.append(HEXCHAR[b[i] & 0x0f]);
}
return sb.toString();
}
private static char[] HEXCHAR = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
}

復制代碼 代碼如下:

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
String info = "不知道什么時候,開始喜歡這里,每個夜里都會來這里看你。";
Log.d("zhangxy",MD5.getDigest(info));
// 公鑰加密
Log.d("zhangxy",RSAUtil.encrypt(info));
// 公鑰解密(經私鑰加密)
Log.d("zhangxy", RSAUtil.decrypt("94d5ffca913465785714348f10c57c8a0226aca2c8a5294d3a32f398c4791bee8bb37873e16a7b71ed64e40ac121ec4f4bf375b881421a17a3f10789dc543ab41c26c11ba1184b2e0328ef6d354e191f7d978bd9b984e76d310e028b3412093f7296d58d9adb7f9e4b5eb6427c369ae5e919f848c7a21b7794d5985e4d3ad10a"));
}
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲乱亚洲乱妇无码| 97超碰蝌蚪网人人做人人爽| 欧美一二三视频| 久久成人av网站| 欧美精品少妇videofree| 2019日本中文字幕| 欧美老女人在线视频| 欧美日韩性生活视频| 亚洲免费小视频| 色悠悠久久88| 亚洲高清一区二| 亚洲区中文字幕| 亚洲激情成人网| 91香蕉国产在线观看| 欧美激情videoshd| 国产91精品不卡视频| 亚洲女同精品视频| 美女扒开尿口让男人操亚洲视频网站| 成人欧美一区二区三区在线湿哒哒| 欧美日韩一二三四五区| 亚洲毛片一区二区| 91av视频导航| 色偷偷偷亚洲综合网另类| 人九九综合九九宗合| 亚洲美女精品成人在线视频| 欧美国产激情18| 精品久久久久久久久久久久久| 亚洲成人av片| 精品久久久在线观看| 日韩欧美一区二区三区久久| 超碰97人人做人人爱少妇| 久久综合电影一区| 精品国产999| 久久久爽爽爽美女图片| 国产精品爽爽爽爽爽爽在线观看| 91久久久久久久一区二区| 欧美俄罗斯性视频| 国产精品亚洲自拍| 日韩欧亚中文在线| 国产精品爽黄69天堂a| 亚洲国产精品va| 69影院欧美专区视频| 国产精品日韩欧美| 亚洲国产高清高潮精品美女| 日韩av一区在线| 在线观看亚洲视频| 日韩精品在线观看一区| 久久97久久97精品免视看| 97国产suv精品一区二区62| 国产在线精品自拍| 日日噜噜噜夜夜爽亚洲精品| 91网在线免费观看| 日韩人在线观看| 亚洲毛茸茸少妇高潮呻吟| 伦理中文字幕亚洲| 91最新国产视频| 久久午夜a级毛片| 欧美激情啊啊啊| 亚洲天堂av在线免费观看| 欧美精品性视频| 国产欧美日韩中文字幕| 欧美激情喷水视频| 亚洲成人免费在线视频| 日韩一区视频在线| www.日韩.com| 久久久91精品国产| 91久久夜色精品国产网站| 亚洲国产成人精品久久久国产成人一区| 国产精品jvid在线观看蜜臀| 成人激情视频在线观看| 日韩精品福利网站| 国产91色在线|免| 精品国产一区二区三区在线观看| 日韩欧美亚洲一二三区| 欧美激情第99页| 亚洲色图综合网| 国产精品96久久久久久| 色婷婷综合久久久久中文字幕1| 久久亚洲精品成人| 日韩精品视频观看| 17婷婷久久www| 久久夜色精品国产欧美乱| 日本伊人精品一区二区三区介绍| 亚洲国产91色在线| 国产欧美在线播放| 亚洲精品91美女久久久久久久| 精品国产91久久久久久| 亚洲天天在线日亚洲洲精| 亚洲娇小xxxx欧美娇小| 欧美大全免费观看电视剧大泉洋| 国产精品电影网| 性欧美在线看片a免费观看| 最近2019中文字幕在线高清| 亚洲自拍偷拍区| 色诱女教师一区二区三区| 亚洲一区精品电影| 日韩国产欧美区| 九九久久国产精品| 午夜精品久久久久久久久久久久久| 精品亚洲永久免费精品| 韩国福利视频一区| 亚洲美女黄色片| 亚洲成人网在线观看| 欧美激情一级欧美精品| 欧美成人精品三级在线观看| 日韩免费av片在线观看| 中文字幕亚洲欧美日韩高清| 久久亚洲春色中文字幕| 久久久伊人日本| 性欧美激情精品| 欧美电影在线观看高清| 久久久亚洲精选| 亚洲一区二区三区成人在线视频精品| 中文字幕国产精品久久| 国外日韩电影在线观看| 国产精品久久一区主播| 国产综合视频在线观看| 国产福利成人在线| 国产视频综合在线| 国产精品入口福利| 成人精品一区二区三区| 欧美精品在线网站| 2020国产精品视频| 少妇激情综合网| 日韩欧美精品在线观看| 亚洲自拍偷拍网址| 97超碰蝌蚪网人人做人人爽| 在线观看免费高清视频97| 中文字幕在线看视频国产欧美| 久久亚洲综合国产精品99麻豆精品福利| 色www亚洲国产张柏芝| 精品国产成人av| 日韩国产欧美精品一区二区三区| 欧美中文在线免费| 韩国美女主播一区| 国产精品美乳一区二区免费| 在线成人激情黄色| 久久人人爽人人爽人人片av高请| 欧美极品美女视频网站在线观看免费| 久久精品国产成人| 久久综合久久88| 91av在线视频观看| 久久成人18免费网站| 久久久久国色av免费观看性色| 欧美日韩国产一中文字不卡| 日韩精品在线免费观看视频| 久久夜色精品国产欧美乱| 最近2019免费中文字幕视频三| 亚洲人a成www在线影院| 成人精品一区二区三区| 欧美精品在线免费播放| 亚洲色图激情小说| 亚洲在线观看视频| 另类天堂视频在线观看| 国产精品18久久久久久麻辣| 免费91麻豆精品国产自产在线观看| 国产欧美日韩高清| 欧美午夜精品久久久久久久| 国产精品青草久久久久福利99| 在线成人中文字幕| 国产成人avxxxxx在线看| 狠狠干狠狠久久| 欧美性生交大片免网| 91精品国产91久久久久久不卡|