Javaでurl暗号化処理を実現する方法の例
本明細書の例は、Javaがurl暗号化処理を実現する方法を説明する。皆さんに参考にしてあげます。具体的には以下の通りです。
URL URL 16は暗号化ツールを入力します。
http://tools.jb51.net/password/urlencodepwd
MD 5オンライン暗号化ツール:
http://tools.jb51.net/password/CreateMD5Password
雷、快速、旋風URL暗号化/復号ツール:
http://tools.jb51.net/password/urlrethunder
オンラインハッシュ/ハッシュアルゴリズム暗号化ツール:
http://tools.jb51.net/password/hash_encrypt
オンラインMD 5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160暗号化ツール:
http://tools.jb51.net/password/hash_md 5_share
オンラインshar 1/shar 224/shar 256/shar 384/shar 512暗号化ツール:
http://tools.jb51.net/password/sha_アンコール
javaアルゴリズムに関する詳細について興味がある読者は、当駅のテーマを見ることができます。「Javaデータ構造とアルゴリズム教程」、「Java操作DOMノード技術のまとめ」、「Javaファイルとディレクトリの操作テクニックのまとめ」、「Javaキャッシュ操作テクニックのまとめ」
本論文で述べたように、皆さんのjavaプログラムの設計に役に立ちます。
package test;
import java.security.Key;
import java.security.SecureRandom;
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
public class ThreeDES {
public static String crypt(String content,String password,int i){
try {
KeyGenerator generator = KeyGenerator.getInstance("AES");
generator.init(new SecureRandom(password.getBytes()));
Key key = generator.generateKey();
generator = null;
if(i == 1){
return getEncString(content,key);
}
else if(i == 2){
return getDesString(content,key);
}
} catch (Exception e) {
return null;
}
return null;
}
/**
* String ,String
*
* @param strMing
* @return
*/
private static String getEncString(String strMing,Key key) {
byte[] byteMi = null;
byte[] byteMing = null;
String strMi = "";
BASE64Encoder base64en = new BASE64Encoder();
try {
byteMing = strMing.getBytes("UTF8");
byteMi = getEncCode(byteMing,key);
strMi = base64en.encode(byteMi);
} catch (Exception e) {
e.printStackTrace();
} finally {
base64en = null;
byteMing = null;
byteMi = null;
}
return strMi;
}
/**
* String ,String
*
* @param strMi
* @return
*/
private static String getDesString(String strMi, Key key) {
BASE64Decoder base64De = new BASE64Decoder();
byte[] byteMing = null;
byte[] byteMi = null;
String strMing = "";
try {
byteMi = base64De.decodeBuffer(strMi);
byteMing = getDesCode(byteMi,key);
strMing = new String(byteMing, "UTF8");
} catch (Exception e) {
e.printStackTrace();
} finally {
base64De = null;
byteMing = null;
byteMi = null;
}
return strMing;
}
/**
* byte[] ,byte[]
*
* @param byteS
* @return
*/
private static byte[] getEncCode(byte[] byteS,Key key) {
byte[] byteFina = null;
Cipher cipher;
try {
cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE, key);
byteFina = cipher.doFinal(byteS);
} catch (Exception e) {
e.printStackTrace();
} finally {
cipher = null;
}
return byteFina;
}
/**
* byte[] , byte[]
*
* @param byteD
* @return
*/
private static byte[] getDesCode(byte[] byteD,Key key) {
Cipher cipher;
byte[] byteFina = null;
try {
cipher = Cipher.getInstance("AES");
cipher.init(Cipher.DECRYPT_MODE, key);
byteFina = cipher.doFinal(byteD);
} catch (Exception e) {
e.printStackTrace();
} finally {
cipher = null;
}
return byteFina;
}
public static void main(String[] args) {
System.out.println(ThreeDES.crypt("bindMobile=13023130171&fenjihao=107", "bbbbb", 1));
System.out.println(ThreeDES.crypt("GT+F0fcFNGiq73/+FaX9pK9n9zqxwqz9sZ7MQdSp1BxWJXWn7EwnvniQpAOaGi0W", "bbbbb", 2));
}
}
PS:暗号解読に興味のある友達は、当駅のオンラインツールも参照できます。URL URL 16は暗号化ツールを入力します。
http://tools.jb51.net/password/urlencodepwd
MD 5オンライン暗号化ツール:
http://tools.jb51.net/password/CreateMD5Password
雷、快速、旋風URL暗号化/復号ツール:
http://tools.jb51.net/password/urlrethunder
オンラインハッシュ/ハッシュアルゴリズム暗号化ツール:
http://tools.jb51.net/password/hash_encrypt
オンラインMD 5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160暗号化ツール:
http://tools.jb51.net/password/hash_md 5_share
オンラインshar 1/shar 224/shar 256/shar 384/shar 512暗号化ツール:
http://tools.jb51.net/password/sha_アンコール
javaアルゴリズムに関する詳細について興味がある読者は、当駅のテーマを見ることができます。「Javaデータ構造とアルゴリズム教程」、「Java操作DOMノード技術のまとめ」、「Javaファイルとディレクトリの操作テクニックのまとめ」、「Javaキャッシュ操作テクニックのまとめ」
本論文で述べたように、皆さんのjavaプログラムの設計に役に立ちます。