[JSP]如何加密URL中.jsp?后面的参数?
发布网友
发布时间:2022-04-25 22:48
我来回答
共3个回答
热心网友
时间:2022-06-18 09:05
先将参数加密 然后在接收的时候解密
至于第二个问题,我想可以在加密的时候对数据长度进行处理,长度不符合逻辑的禁止访问,或者是加密的参数有特殊的关联,通过特殊标记判断是否符合标准,提交数据只能做到这一步了,其余的只能是服务器端解决了
热心网友
时间:2022-06-18 09:06
加密参数是jsp参数传递中的一种安全措施,加密方法如下:
建议使用对称加密如:DES或者是PBE算法。
加密算法如下:
public static String encrypt(String key, String plainText) throws Exception {
String encryptTxt = "";
try {
byte[] salt = new byte[8];
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(key.getBytes());
byte[] digest = md.digest();
for (int i = 0; i < 8; i++) {
salt[i] = digest[i];
}
PBEKeySpec pbeKeySpec = new PBEKeySpec(key.toCharArray());
SecretKeyFactory keyFactory = SecretKeyFactory
.getInstance("PBEWithMD5AndDES");
SecretKey skey = keyFactory.generateSecret(pbeKeySpec);
PBEParameterSpec paramSpec = new PBEParameterSpec(salt, ITERATIONS);
Cipher cipher = Cipher.getInstance("PBEWithMD5AndDES");
cipher.init(Cipher.ENCRYPT_MODE, skey, paramSpec);
byte[] cipherText = cipher.doFinal(plainText.getBytes());
String saltString = new String(Base64.encode(salt));
String ciphertextString = new String(Base64.encode(cipherText));
return saltString + ciphertextString;
} catch (Exception e) {
throw new Exception("Encrypt Text Error:" + e.getMessage(), e);
}
使用方法:
把jsp?后面的参数作为参数传入encrypt();然后就可以返回加密串了。
热心网友
时间:2022-06-18 09:06
那就没办法,以为你在网上找不到,帮找一个.说实在的,我不会,呵呵.