日本免费精品_最新日韩一区_亚洲视频一区在线_a在线视频观看_天天射夜夜骑_粉嫩av一区二区三区_欧美中日韩免费视频_综合图区欧美_国内精品美女在线观看_午夜精品久久久久久久男人的天堂

首頁 > 編程 > Java > 正文

java 易懂易用的MD5加密(可直接運行)(2)

2020-03-24 17:09:23
字體:
來源:轉載
供稿:網友
程序全文如下:
復制代碼 代碼如下:
package com.neusoft.test.util.crypt;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.security.MessageDigest;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import javax.crypto.Cipher;
import javax.crypto.SecretKey;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.DESedeKeySpec;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
/**
* p Title:加密解密測試 /p
*
* p Description: 加密解密 /p
*
* p Date : 2005-08-11 /p
*
* p Copyright: Copyright (c) 2005 neusoft /p
*
* p Company: neusoft /p
*
* @author mengk
* @version 1.00
*
* p ------------------------------------------------------------ /p
* p 修改歷史 /p
* p 序號 日期 修改人 修改原因 /p
* p 1 /p
*/
html' target='_blank'>public class Endecrypt {
/**
* 進行MD5加密
* @param String 原始的SPKEY
* @return byte[] 指定加密方式為md5后的byte[]
*/
private byte[] md5(String strSrc)
{
byte[] returnByte = null;
try
{
MessageDigest md5 = MessageDigest.getInstance("MD5");
returnByte = md5.digest(strSrc.getBytes("GBK"));
}
catch(Exception e)
{
e.printStackTrace();
}
return returnByte;
}
/**
* 得到3-DES的密鑰匙
* 根據接口規范,密鑰匙為24個字節,md5加密出來的是16個字節,因此后面補8個字節的0
* @param String 原始的SPKEY
* @return byte[] 指定加密方式為md5后的byte[]
*/
private byte[] getEnKey(String spKey)
{
byte[] desKey=null;
try
{
byte[] desKey1 = md5(spKey);
desKey = new byte[24];
int i = 0;
while (i desKey1.length & 24) {
desKey[i] = desKey1[i];
i++;
}
if (i 24) {
desKey[i] = 0;
i++;
}
}
catch(Exception e){
e.printStackTrace();
}
return desKey;
}
/**
* 3-DES加密
* @param byte[] src 要進行3-DES加密的byte[]
* @param byte[] enKey 3-DES加密密鑰
* @return byte[] 3-DES加密后的byte[]
*/
public byte[] Encrypt(byte[] src,byte[] enKey)
{
byte[] encryptedData = null;
try
{
DESedeKeySpec dks = new DESedeKeySpec(enKey);
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DESede");
SecretKey key = keyFactory.generateSecret(dks);
Cipher cipher = Cipher.getInstance("DESede");
cipher.init(Cipher.ENCRYPT_MODE, key);
encryptedData = cipher.doFinal(src);
}
catch(Exception e)
{
e.printStackTrace();
}
return encryptedData;
}
/**
* 對字符串進行Base64編碼
* @param byte[] src 要進行編碼的字符
*
* @return String 進行編碼后的字符串
*/
public String getBase64Encode(byte[] src)
{
String requestValue="";
try{
BASE64Encoder base64en = new BASE64Encoder();
requestValue=base64en.encode(src);
//System.out.println(requestValue);
}
catch(Exception e){
e.printStackTrace();
}

return requestValue;
}
/**
* 去掉字符串的換行符號
* base64編碼3-DES的數據時,得到的字符串有換行符號
* ,一定要去掉,否則uni-wise平臺解析票根不會成功,
* 提示“sp驗證失敗”。在開發的過程中,因為這個問題讓我束手無策,
* 一個朋友告訴我可以問聯通要一段加密后 的文字,然后去和自己生成的字符串比較,
* 這是個不錯的調試方法。我最后比較發現我生成的字符串唯一不同的 是多了換行。
* 我用c#語言也寫了票根請求程序,沒有發現這個問題。
*
*/
private String filter(String str)
{
String output = null;
StringBuffer sb = new StringBuffer();
for(int i = 0; i str.length(); i++)
{
int asc = str.charAt(i);
if(asc != 10 && asc != 13)
sb.append(str.subSequence(i, i + 1));
}
output = new String(sb);
return output;
}
/**
* 對字符串進行URLDecoder.encode(strEncoding)編碼
* @param String src 要進行編碼的字符串
*
* @return String 進行編碼后的字符串
*/
public String getURLEncode(String src)
{
String requestValue="";
try{

requestValue = URLEncoder.encode(src);
}
catch(Exception e){
e.printStackTrace();
}

return requestValue;
}
/**
* 3-DES加密
* @param String src 要進行3-DES加密的String
* @param String spkey分配的SPKEY
* @return String 3-DES加密后的String
*/
public String get3DESEncrypt(String src,String spkey)
{
String requestValue="";
try{


//得到3-DES的密鑰匙
byte[] enKey = getEnKey(spkey);
//要進行3-DES加密的內容在進行/"UTF-16LE/"取字節
byte[] src2 = src.getBytes("UTF-16LE");
//進行3-DES加密后的內容的字節
byte[] encryptedData = Encrypt(src2,enKey);


//進行3-DES加密后的內容進行BASE64編碼
String base64String = getBase64Encode(encryptedData);
//BASE64編碼去除換行符后
String base64Encrypt = filter(base64String);

//對BASE64編碼中的HTML控制碼進行轉義的過程
requestValue=getURLEncode(base64Encrypt);
//System.out.println(requestValue);
}
catch(Exception e){
e.printStackTrace();
}

return requestValue;
}
/**
* 對字符串進行URLDecoder.decode(strEncoding)解碼
* @param String src 要進行解碼的字符串
*
* @return String 進行解碼后的字符串
*/
public String getURLDecoderdecode(String src)
{
String requestValue="";
try{

requestValue = URLDecoder.decode(src);
}
catch(Exception e){
e.printStackTrace();
}

return requestValue;
}
/**
*
*進行3-DES解密(密鑰匙等同于加密的密鑰匙)。
* @param byte[] src 要進行3-DES解密byte[]
* @param String spkey分配的SPKEY
* @return String 3-DES解密后的String
*/
public String deCrypt(byte[] debase64,String spKey)
{
String strDe = null;
Cipher cipher = null;
try
{
cipher=Cipher.getInstance("DESede");
byte[] key = getEnKey(spKey);
DESedeKeySpec dks = new DESedeKeySpec(key);
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DESede");
SecretKey sKey = keyFactory.generateSecret(dks);
cipher.init(Cipher.DECRYPT_MODE, sKey);
byte ciphertext[] = cipher.doFinal(debase64);
strDe = new String(ciphertext,"UTF-16LE");
}
catch(Exception ex)
{
strDe = "";
ex.printStackTrace();
}
return strDe;
}
/**
* 3-DES解密
* @param String src 要進行3-DES解密的String
* @param String spkey分配的SPKEY
* @return String 3-DES加密后的String
*/
public String get3DESDecrypt(String src,String spkey)
{
String requestValue="";
try{


//得到3-DES的密鑰匙

//URLDecoder.decodeTML控制碼進行轉義的過程
String URLValue=getURLDecoderdecode(src);

//進行3-DES加密后的內容進行BASE64編碼

BASE64Decoder base64Decode = new BASE64Decoder();
byte[] base64DValue = base64Decode.decodeBuffer(URLValue);

//要進行3-DES加密的內容在進行/"UTF-16LE/"取字節
requestValue = deCrypt(base64DValue,spkey);
}
catch(Exception e){
e.printStackTrace();
}
return requestValue;
}
public static void main(String[] args) {
Endecrypt test = new Endecrypt();
String oldString = "毒素發";
String SPKEY = "1234";
System.out.println("1。分配的SPKEY為: "+SPKEY);
System.out.println("2。的內容為: "+oldString);
String reValue = test.get3DESEncrypt(oldString,SPKEY);
reValue = reValue.trim().intern();
System.out.println("進行3-DES加密后的內容: "+reValue);
String reValue2 = test.get3DESDecrypt(reValue,SPKEY);
System.out.println("進行3-DES解密后的內容: "+reValue2);
}
}

html教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
国产午夜精品久久| 精品乱人伦一区二区三区| 欧美国产小视频| 亚洲开心激情| 欧美日韩激情一区| 日本免费看黄| 国产黄色在线免费观看| 精品全国在线一区二区| 国产三级做爰在线观看| 国产福利一区二区在线精品| 精品日韩欧美在线| 77777_亚洲午夜久久多人| 日韩亚洲欧美中文字幕| 精品国产1区2区3区| www.xxxx精品| 欧美日韩国产中字| 日韩视频在线一区二区三区| 亚洲成年人影院在线| 久久久91精品| 精品国产乱码一区二区| 国产无套粉嫩白浆在线2022年 | 午夜精品一区二区三区视频免费看| 一级日本免费的| 国产在线中文字幕| 亚洲丝袜一区| 国产拍揄自揄精品视频麻豆| 日韩国产成人| 色综合久久88色综合天天免费| 色综合影院在线| 国产福利一区二区| 欧美日韩亚洲91| 国产h片在线观看| 日韩中文字幕在线观看视频| 日韩精品免费视频一区二区三区| 91精品久久久久| 日韩免费视频一区二区视频在线观看| 日韩高清不卡| 国产一级免费看| 在线观看一区| 久久久99精品久久| 日本不卡视频一区| 日韩欧美999| 亚洲精品欧美二区三区中文字幕| 国产福利三区| 欧美日韩高清在线| 日韩欧美在线中文字幕| 亚洲男人在线| 日韩精品不卡一区二区| 日韩不卡一区二区| 亚洲国产午夜精品| 精品久久久三级| 日韩欧美一级精品久久| 日韩欧美三级在线| 午夜影院在线观看欧美| 日韩av不卡在线观看| 国产欧美日韩精品在线| 精品视频在线视频| 在线视频你懂得一区| 国产欧美在线观看| 中文字幕综合在线| 国产成人综合av| 色综合婷婷久久| 91精品国产乱码久久蜜臀| 精品综合久久久久| 在线黄色国产电影| 欧洲一级精品| 国产乱国产乱老熟300| 日本а中文在线天堂| 亚洲三级免费看| 人人做人人澡人人爽欧美| www.中文字幕在线| 欧美日韩国产首页| 亚洲九九精品| 色欧美日韩亚洲| 日韩国产一区三区| 欧美日韩综合视频网址| 91精品国产91久久久久| 亚洲欧美日本国产专区一区| 中文字幕在线精品| 国产激情在线视频| 国产一卡二卡3卡4卡四卡在线| 日韩欧美国产免费播放| 亚洲高清精品视频| 91精品在线免费| 国产欧美日韩在线观看| www.老鸭窝.com| 日韩视频免费直播| 福利一区二区| 亚洲久草视频| av丝袜在线| 欧美日韩精品欧美日韩精品 | 日韩www在线| 国产成人精品综合久久久| 欧美中文字幕在线视频| 自拍日韩亚洲一区在线| 久久91精品久久久久久秒播| 92久久精品| 欧美日韩中文字幕日韩欧美| 欧美日韩中文字幕在线| 国产视频一区三区| 中文字幕第一页在线播放| 国产高清精品二区| 中文在线日韩| 欧美日韩久久久| 日韩中文字幕国产| 午夜福利一区二区三区| 精品亚洲国内自在自线福利| 亚洲综合在线不卡| 视频一区三区| 7799精品视频天天看| 精品久久电影| 亚洲国产欧美日韩在线| 精品欧美日韩| 亚洲三级免费看| 精品在线一区二区三区| 日韩欧美三级在线| 黄色国产网站在线观看| 一区二区三区四区五区视频在线观看| 91精品国产91久久久久久不卡| av一区二区高清| 欧美日韩国产亚洲一区| 中文字幕综合在线| 国产字幕在线看| 国产乱国产乱老熟300| 视频一区二区中文字幕| 91麻豆精品国产91久久久使用方法 | 91精品国产综合久久香蕉最新版| 日韩精品在线网站| 日本精品在线中文字幕| aa国产成人| 欧美激情一区二区三区在线| 欧美日韩国产一中文字不卡| 久久久久久91| 日本免费看黄| 国产在线观看精品| 亚洲视频电影在线| 国产成人精品999在线观看| 九九九精品视频| 国产欧美日韩中文字幕| 国产欧美综合视频| 伊人中文字幕在线观看| 日韩精品视频免费看| 欧美另类久久久品| 国产男女av| 欧美日韩国产区| 日韩精品视频中文在线观看| 日韩欧美不卡视频| 国产在线第一页| 亚洲福利视频专区| 日韩午夜高潮| 日韩在线a电影| 日本黄色一区二区| 日韩精品在线观看网站| 国产激情在线视频| 日韩精品一二三四区| 国产999在线观看| 精品国产1区二区| 日韩中文字幕在线视频观看| 欧美日韩精品不卡| 国产网站av| 精品久久久精品| 国产日韩在线亚洲字幕中文| 区日韩二区欧美三区| 欧美日韩综合视频网址| 亚洲欧美中文字幕| www..com日韩| 欧美日韩日本视频| 国产欧美日韩不卡免费| 日韩国产欧美亚洲| 国产高清在线观看| 日韩视频专区| 精品在线网站观看| 久久久综合av| 欧美日韩在线观看一区| 色欧美日韩亚洲| 日韩在线视频精品| 日韩中文字幕亚洲| 在线国产99| 97最新国自产拍视频在线完整在线看 | av免费在线网站| 99国产一区| eeuss一区| 91精品在线观看入口| 99久久精品国产成人一区二区| 欧美在线视频二区| 欧美va亚洲va日韩∨a综合色| 日本亚洲欧美天堂免费| 三级网站免费观看| 日本亚洲欧美| 91精品婷婷国产综合久久| 在线视频第一页| 欧美日韩在线视频首页| 91精品免费观看| 精品久久在线| 樱花草www在线| 91精品久久久久久久久久| 亚洲第一视频| h片精品在线观看| www高清在线视频日韩欧美| 亚洲热在线观看| 韩国v欧美v日本v亚洲| 久久久另类综合| 国产午夜精品视频免费不卡69堂| 亚洲欧美中文在线视频| 国产高潮久久久| 日韩欧美中文第一页| 免费在线播放av| 久久久91精品| 中文在线一区| 国产欧美日韩最新| 亚洲综合在线小说| 日韩午夜中文字幕| 午夜私人影院在线观看| 日韩欧美字幕| 欧美久久一二三四区| 国产日韩中文字幕在线| 成人a在线观看| 日韩精品―中文字幕| 欧美日韩午夜在线视频| 国产精品视频福利一区二区| 日韩欧美国产高清| 91精品在线免费| 日韩高清在线不卡| 欧美色视频一区二区三区在线观看 | 国产aa精品| 亚洲福利精品在线| 欧美高清一级片在线| 日韩在线视频二区| 久久中文精品| 日韩在线不卡| 国产乱码在线观看| 亚洲图片小说综合| 日韩视频在线一区二区三区| av一卡二卡| 视频一区中文字幕国产| 欧美日韩精品不卡| aaa大片在线观看| 日韩三级视频在线播放| 精品亚洲综合| 国产乱国产乱老熟300部视频| 日韩精品视频在线播放| 91久久精品国产91性色69| 午夜黄色小视频| 国产欧美日韩在线| 亚洲一级影院| 在线精品视频免费播放| 日韩欧美在线影院| 久久精品www| 欧美在线视频一区二区| 日韩中文欧美| 亚洲中午字幕| 精品免费视频| 日韩欧美在线视频| 99色在线视频| 欧美日韩第一区日日骚| 日韩亚洲国产欧美| 久久91精品久久久久久秒播| www日韩在线观看| 中文字幕国产亚洲| 亚亚洲欧洲精品| 精品在线91| 欧美日韩免费精品| 日韩视频专区| 日本精品在线| 91精品国产经典在线观看| 国产视频aaa| 久久精品国产2020观看福利| 成片免费观看| 91久久精品国产| 日韩欧美在线综合网| 天天综合天天添夜夜添狠狠添| 欧美sm一区| 精品日韩av| 欧美日韩尤物久久| 欧美日韩国产91| 91精品在线观| 亚洲黄在线观看| 日韩视频一区| 亚洲高清视频在线| 日韩精品在线第一页| 亚洲视频一二三四| 免费在线视频一级不卡| 国产三级免费观看| 欧美日韩在线观看一区| 中文字幕在线视频第一页| 午夜高潮免费视频| 国产卡1卡2卡三卡在线| 99国产成 人 综合 亚洲欧美| 精品在线网站观看| 欧美亚洲另类制服自拍| 最新中文在线视频| 欧美乱大交xxxxx另类| 日韩免费精品| 国产在线导航| 91精品国产手机| 一区二区在线观看不卡| 91精品国产91| 日韩精品在线免费观看| 91精品在线国产| 国产婷婷一区二区| 国产免费播放一区二区| 精品日韩欧美在线| 日韩不卡av| 欧美日韩国产一二三| 午夜国产视频 | 欧美日韩国产三级| 日韩色在线观看| 日韩欧美一二三四区| 综合激情一区| 欧美日韩精品在线视频| 欧美日韩三级一区| 97天天综合网| 亚洲欧美韩国综合色| 国产免费不卡av| 亚洲免费精品| 久久综合久久综合九色| 高清国产一区| 国产99对白在线播放| 免费高清视频日韩| 综合激情一区| 99精品999| 视频一区日韩| 日韩精品视频免费播放| 九一精品国产| 精品免费久久久| 欧美日韩国产一区中文午夜| 欧美日韩中文字幕在线观看| 久久99久久久欧美国产| 一级日本免费的| 中文字幕在线视频第一页| 激情久久99| 国产日韩av一区| 日韩精品在线看| 欧美 日韩 综合| 午夜国产在线视频| 久久中文精品| 国产美女主播视频一区| 午夜影院在线观看欧美| 日韩欧美亚洲日产国| 久久精品女人| 欧美久久在线| 欧美日韩国产亚洲一区| 亚洲国内精品视频| 亚洲一卡二卡在线观看| 黄色欧美日韩| 日韩国产成人| 国产 欧美 在线| 色欧美日韩亚洲| 不卡视频一区二区| 久久综合久久综合九色| 综合图区亚洲白拍在线| 亚洲欧洲日产国码av系列天堂| 日韩欧美高清在线视频| 久草视频观看| 91精品国产日韩91久久久久久| 欧美乱大交xxxxx免费| 99视频在线看| 亚洲综合日韩中文字幕v在线| 欧美日韩激情在线一区二区三区| 91精品国产综合久久福利| 精品欧美久久久| 欧美日韩激情在线一区二区三区| 黄色欧美日韩| 日本精品二区| 婷婷久久综合网| 亚洲中文字幕一区| 91精品国产丝袜白色高跟鞋| 精品日韩在线| 欧美日韩国产不卡| 黄色一级大片在线免费看国产一| 中文字幕日韩在线观看| 91精品国产自产观看在线| 国产乱国产乱300精品| 日韩三级精品电影久久久| 香蕉av一区| 欧美日韩久久不卡| 中文字幕在线中文字幕二区| 中文字幕日韩高清| 国产午夜精品视频| 日本免费在线视频不卡一不卡二| 国产高清精品在线| 欧美中文字幕视频在线观看| 亚洲第一视频网站| 色综合久久88色综合天天免费| 成年人看的羞羞网站| 91精品国产自产在线观看永久∴| 亚洲成av人片| 日韩不卡高清视频| 日韩免费高清一区二区| 顶级网黄在线播放| 国产欧美高清在线| 日本不卡免费高清视频| 日韩欧美综合| 欧美亚洲专区| 亚洲羞羞网站| 久久香蕉av| 国产 日韩 欧美 综合| 中文字幕亚洲二区| 一级免费a一片| 日韩精品视频中文字幕|