jsurl地址加密
『壹』 js如何獲取地址欄加密參數
方法一:採用正則表達式獲取地址欄參數:(強烈推薦,既實用又方便!)加密參數在獲取到值後解密就可以了
functionGetQueryString(name)
{
varreg=newRegExp("(^|&)"+name+"=([^&]*)(&|$)");
varr=window.location.search.substr(1).match(reg);
if(r!=null)
returnunescape(r[2]);//解密
else
returnnull;
}
//調用方法
alert(GetQueryString("參數名1"));
alert(GetQueryString("參數名2"));
alert(GetQueryString("參數名3"));
方法二:傳統方法
functionUrlSearch(){
varname,value;
varstr=location.href;//取得整個地址欄
varnum=str.indexOf("?");
str=str.substr(num+1);//取得所有參數stringvar.substr(start[,length]
vararr=str.split("&");//各個參數放到數組里
for(vari=0;i<arr.length;i++){
num=arr[i].indexOf("=");
if(num>0){
name=arr[i].substring(0,num);
value=arr[i].substr(num+1);
this[name]=value;
}
}
}
//調用
varRequest=newUrlSearch();//實例化
alert(Request.id);
『貳』 怎麼實現頁面URL的加密
實現辦法: (1)利用彈出窗口封鎖滑鼠右鍵將下面這段代碼放在網頁HTML代碼的標志中,就可以實現封鎖右鍵,給網頁加密。
『叄』 網頁url地址參數的加密一般用什麼演算法
這個不是md5加密 應該是自定義的一種加密方式
url用加密 主要是防止在傳參的時候遇到中文 而出現亂碼問題
url傳參一般都是自定義的加密演算法 因為這種加密可以破解 這樣就知道
url所傳的參數是什麼 如果用md5的話 估計很難破解 基本上不可行
『肆』 怎麼用js來加密url的傳遞參數
加密代碼
function eb(ting)
{
//傳入要加密的url
//獲取url參數部分
var paraString = ting.substring(ting.indexOf("?")+1,ting.length);
//將加密後的參數重新組合到url中
var rul=ting.substring(0,ting.indexOf("?")+1)+escape(paraString);
//跳轉到rul頁面呢
location.href=rul;
}
解密代碼
var urlPara = location.search; //獲取參數部分
urlPara=unescape(urlPara);//對參數解密
//分析參數
function getPara(paraName){
var reg = new RegExp("[&|?]"+paraName+"=([^&$]*)", "gi");
var a = reg.test(urlPara);
return a ? RegExp.$1 : "";
}
//捕獲參數並進行操作
//window.onload = function(){
//var url= getPara("id"); //捕獲到url參數
//document.getElementById("TextBox1").value = url;
//}
『伍』 jsp url地址加密問題
jsp中url地址加密通常使用對稱加密如: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();然後就可以返回加密串了。
『陸』 如何將url加密 js加密 c#解密
js(加密):
str=encodeURI(str)
C#(解密):
HttpUtility.UrlDecode(str)
『柒』 URL請求對參數前端JS加密,後台JAVA解密
數字的話可以使用 Base62 演算法,不過這只是表面的轉換,因為演算法是寫在Js里的,稍加分析就能知道怎麼去翻轉。
如果要有效加密的話,可以使用js調用RSA演算法進行加密,這樣js中只會暴露公鑰,可以實現安全的加密。
網上多得很。
『捌』 我的url裡面需要傳遞一個參數比如<a href="a.jspkk=<%=name%>" 怎麼加密
加密JS:---------------------------------------------------------------------
function encrypt(str, pwd)
{
//判斷密鑰是否為空
if(pwd == null || pwd.length <= 0)
{
alert("請輸入密鑰");
return null;
}
//得到密鑰的字元串的Unicode碼
var prand = "";
for(var i=0; i<pwd.length; i++)
{
prand += pwd.charCodeAt(i).toString();
//alert(prand);
}
var sPos = Math.floor(prand.length / 5);//返回小於等於其數值參數的最大整數
var mult = parseInt(prand.charAt(sPos) + prand.charAt(sPos*2) + prand.charAt(sPos*3) + prand.charAt(sPos*4) + prand.charAt(sPos*5));//返回從字元串轉換得到的整數. (charAt返回 String 對象的指定索引處的字元。)
var incr = Math.ceil(pwd.length / 2);//返回數的上限
var mo = Math.pow(2, 31) - 1;//返回基數表達式的指定次冪的值
if(mult < 2)
{
alert("您輸入的密鑰過於簡單或者是長度太短");
return null;
}
var salt = Math.round(Math.random() * 1000000000) % 100000000; //Math.round是四捨五入函數。 Math.random是返回一個偽隨機數(0到1之間的double型數)
prand += salt;
while(prand.length > 10)
{
prand = (parseInt(prand.substring(0, 10)) + parseInt(prand.substring(10, prand.length))).toString();
}
prand = (mult * prand + incr) % mo;
var enc_chr = "";
var enc_str = "";
for(var i=0; i<str.length; i++)
{
enc_chr = parseInt(str.charCodeAt(i) ^ Math.floor((prand / mo) * 255));
if(enc_chr < 16)
{
enc_str += "0" + enc_chr.toString(16);
}
else
enc_str += enc_chr.toString(16);
prand = (mult * prand + incr) % mo;
}
salt = salt.toString(16);
while(salt.length < 8)salt = "0" + salt;
enc_str += salt;
return enc_str;
}
解密JS:---------------------------------------------------------------------
function decrypt(str, pwd,stu)
{
if(str == null || str.length < 8)
{
alert("您輸入的內容過短,請重新輸入");
return;
}
if(pwd == null || pwd.length <= 0)
{
alert("請輸入密鑰");
return;
}
var prand = "";
for(var i=0; i<pwd.length; i++)
{
prand += pwd.charCodeAt(i).toString();
}
var sPos = Math.floor(prand.length / 5);
var mult = parseInt(prand.charAt(sPos) + prand.charAt(sPos*2) + prand.charAt(sPos*3) + prand.charAt(sPos*4) + prand.charAt(sPos*5));
var incr = Math.round(pwd.length / 2);
var mo = Math.pow(2, 31) - 1;
var salt = parseInt(str.substring(str.length - 8, str.length), 16);
str = str.substring(0, str.length - 8);
prand += salt;
while(prand.length > 10)
{
prand = (parseInt(prand.substring(0, 10)) + parseInt(prand.substring(10, prand.length))).toString();
}
prand = (mult * prand + incr) % mo;
var enc_chr = "";
var enc_str = "";
for(var i=0; i<str.length; i+=2)
{
enc_chr = parseInt(parseInt(str.substring(i, i+2), 16) ^ Math.floor((prand / mo) * 255));
//alert(enc_chr);
enc_str += String.fromCharCode(enc_chr);
//alert(enc_str);
prand = (mult * prand + incr) % mo;
}
return enc_str;
}
encrypt:加密方法。
str:你需要加密的字元串,pwd 密匙 返回的是一串加密的密文。
decrypt:解密方法。使用密匙+密文,得到原來解密的值
『玖』 關於用JS加密視頻文件連接地址
js加密是防君子不防小人的,只能適當增加獲得源代碼的難度。如果是調試目的,建議提供兩個版本的js,一個加密一個非加密,調試的時候還是明文最方便,既然是給自己看為何還要加密。
只要是在網上能在線看的都能被下載下來。不論有沒有下載連接,直接從電腦埠截獲信息然後下載到本地。