當前位置:首頁 » 密碼管理 » 地址參數加密

地址參數加密

發布時間: 2023-03-13 19:26:26

㈠ 如何在URL中傳遞加密的參數

方法一:採用正則表達式獲取地址欄參數:( 強烈推薦,既實用又方便!)加密參數在獲取到值後解密就可以了function GetQueryString(name){ var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if(r!=null) return unescape(r[2]); //解密 else return null;} // 調用方法alert(GetQueryString("參數名1"));alert(GetQueryString("參數名2"));alert(GetQueryString("參數名3")); 方法二:傳統方法function UrlSearch() { var name,value; var str=location.href; //取得整個地址欄 var num=str.indexOf("?"); str=str.substr(num+1); //取得所有參數stringvar.substr(start [, length ] var arr=str.split("&"); //各個參數放到數組里 for(var i=0;i 0){ name=arr[i].substring(0,num); value=arr[i].substr(num+1); this[name]=value; } } } //調用var Request=new UrlSearch(); //實例化alert(Request.id);

㈡ 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裡面需要傳遞一個參數比如<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:解密方法。使用密匙+密文,得到原來解密的值

㈣ 網頁url地址參數的加密一般用什麼演算法

這個不是md5加密 應該是自定義的一種加密方式

url用加密 主要是防止在傳參的時候遇到中文 而出現亂碼問題

url傳參一般都是自定義的加密演算法 因為這種加密可以破解 這樣就知道

url所傳的參數是什麼 如果用md5的話 估計很難破解 基本上不可行

java 中 url地址欄里傳的數字值,如何加密

現在很多加密演算法的 比如你可以使用XXTea加密。前端使用post請求,請求之前將你要傳的參數 組合成一個json格式,之後進行XXTea加密,加密完之後 將加密得到的字元串放到post 請求數據中。後台加一個攔截器,拿到你的請求地址以及加密字元串,然後將字元串解密 得到一個map,再通過request得到的ParamRequestWrapper 將解密後的參數放回去,這樣你的方法就可以照常拿到數據了。

㈥ 如何加密url後的數字參數

加密參數是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];
}

㈦ JAVA如何對URL進行加密和解密啊

一般我們都是通過在地址里,再加個驗證密鑰參數,來做安全驗證,如果參數被改,把加密後的值跟驗證密鑰做對比就不一樣,程序做下判斷,拒絕訪問就行。
第二種方法,真要加密,就找個可逆的加密演算法(自己搜),把地址參數字元串加密後,到服務端獲取到這串加密字元,解密後,再分解參數。

熱點內容
文件夾粉碎不了 發布:2025-05-19 20:05:41 瀏覽:239
安卓怎麼把軟體放進全局 發布:2025-05-19 20:03:55 瀏覽:686
安卓手機如何看最真實的型號 發布:2025-05-19 19:58:59 瀏覽:7
U盤超級加密2008 發布:2025-05-19 19:44:32 瀏覽:453
燈帶編程軟體 發布:2025-05-19 19:32:30 瀏覽:285
如何判斷伺服器被多少人訪問 發布:2025-05-19 19:27:45 瀏覽:123
編程stata 發布:2025-05-19 19:12:18 瀏覽:513
解壓命令gz 發布:2025-05-19 19:11:37 瀏覽:823
linux下的程序開發 發布:2025-05-19 18:55:02 瀏覽:927
該文件夾未包含 發布:2025-05-19 18:54:17 瀏覽:195