J2EE配置文件加密
来源:互联网 发布:ubuntu svn库创建 编辑:程序博客网 时间:2024/06/06 03:52
public
class
SecurityHelper
{
/**
* 加密
* @param text 待加密内容
* @param key 密钥
* @return 密文
*/
public
static
String DESEncrypt(String text, String key)
{
try
{
// 进行3-DES加密后的内容的字�?
DESedeKeySpec dks =
new
DESedeKeySpec(key.getBytes());
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(
"DESede"
);
SecretKey skey = keyFactory.generateSecret(dks);
Cipher cipher = Cipher.getInstance(
"DESede"
);
cipher.init(Cipher.ENCRYPT_MODE, skey);
byte
[] encryptedData = cipher.doFinal(text.getBytes());
// 进行3-DES加密后的内容进行BASE64编码
BASE64Encoder base64en =
new
BASE64Encoder();
return
base64en.encode(encryptedData);
}
catch
(Exception e){
e.printStackTrace();
return
text;
}
}
/**
* 解密
* @param text 待解密内容
* @param key 密钥
* @return
*/
public
static
String DESDecrypt(String text, String key)
{
try
{
// 进行3-DES加密后的内容进行BASE64解码
BASE64Decoder base64Decode =
new
BASE64Decoder();
byte
[] base64DValue = base64Decode.decodeBuffer(text);
// 进行3-DES解密后的内容的字�?
DESedeKeySpec dks =
new
DESedeKeySpec(key.getBytes());
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(
"DESede"
);
SecretKey skey = keyFactory.generateSecret(dks);
Cipher cipher = Cipher.getInstance(
"DESede"
);
cipher.init(Cipher.DECRYPT_MODE, skey);
byte
[] encryptedData = cipher.doFinal(base64DValue);
return
new
String(encryptedData);
}
catch
(Exception e)
{
e.printStackTrace();
return
text;
}
}
}
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
public
class
FileEncrypt {
public
static
void
Encrypt()
{
InputStream inputStream;
try
{
inputStream =
new
FileInputStream(
"src/main/resources/config.properties"
);
FileOutputStream fos =
new
FileOutputStream(
"src/main/resources/configEncrypt.properties"
);
Scanner scanner =
new
Scanner(inputStream,
"UTF-8"
);
String text = scanner.useDelimiter(
"\\A"
).next();
scanner.close();
String encode = SecurityHelper.DESEncrypt(text,
"as!2e4b4%1b6e2&ba5.-011b?720f-=+"
);
System.out.println(
"============================加密前============================="
);
System.out.println(text);
System.out.println(
"============================加密后============================="
);
System.out.println(encode);
fos.write(encode.getBytes(
"UTF-8"
));
fos.flush();
fos.close();
}
catch
(Exception e) {
e.printStackTrace();
}
}
public
static
void
DEcrypt()
{
InputStream inputStream;
try
{
inputStream =
new
FileInputStream(
"src/main/resources/configEncrypt.properties"
);
FileOutputStream fos =
new
FileOutputStream(
"src/main/resources/configDecrypt.properties"
);
Scanner scanner =
new
Scanner(inputStream,
"UTF-8"
);
String text = scanner.useDelimiter(
"\\A"
).next();
scanner.close();
String code = SecurityHelper.DESDecrypt(text,
"as!2e4b4%1b6e2&ba5.-011b?720f-=+"
);
System.out.println(
"============================解密前============================="
);
System.out.println(text);
System.out.println(
"============================解密后============================="
);
System.out.println(code);
fos.write(code.getBytes(
"UTF-8"
));
fos.flush();
fos.close();
}
catch
(Exception e) {
e.printStackTrace();
}
}
public
static
void
main(String[] args)
{
Encrypt();
DEcrypt();
}
}
- J2EE配置文件加密
- J2EE 组件配置文件
- j2ee tomcat 配置文件学习
- j2ee web.xml配置文件
- Java J2EE读取配置文件
- 加密配置文件 和 解密配置文件
- 网站配置文件加密
- hibernate配置文件加密-base64
- 对配置文件进行加密
- Hibernate配置文件加密解决方案
- 如何为配置文件加密
- C#配置文件加密
- JAVA,hibernate配置文件加密
- 加密配置文件节点
- 数据库配置文件加密
- 数据库配置文件加密
- 数据库配置文件加密
- Properties配置文件数据加密
- 方兴未艾的计算广告学——微软亚洲研究院高级研究员 刘铁岩
- Oracle 取前10条记录
- iOS多线程的初步研究(七)-- dispatch对象
- 动态规划之Help Jimmy
- 用java导入导出excel如何去掉软回车和硬回车
- J2EE配置文件加密
- 高性能 Windows Socket 组件 HP-Socket v2.3.1-beta-1 发布
- 定义点TPoint类,获取点的纵坐标,对点进行平移动
- 配置IIS应用程序池
- 多线程操作数据库 (CoreData)
- Oracle实现分组统计记录
- jquery选择器-根据多个属性选择E[attr=val][attr=val]
- unity3d学习笔记(十五)--利用Loading界面异步过渡游戏场景
- Flex读取离线地图CacheMap