當前位置:首頁 » 密碼管理 » url加密函數

url加密函數

發布時間: 2023-09-22 01:21:45

『壹』 如何將url加密 js加密 c#解密

js(加密):
str=encodeURI(str)
C#(解密):
HttpUtility.UrlDecode(str)

『貳』 如何設置url加密

你好,url加密可用java.net.URLEncoder.encode{Base64編碼(加密字串),StringCode}這樣的方法來對url中的參數進行加密。
我們來說下如何加密
一、演算法的選擇:
對於像對url中的參數進行加密的過程,我不建議使用rea或者是二重des這樣的加密演算法,主要原因在於性能速度會受影響。建議使用對稱加密如:DES或者是PES演算法。
二、加密原理
對於一個純文本,加密後它會變成一堆亂碼,這堆亂碼包括了許多非法字元,不希望把這些字元放入bean中,因此加密完後,還要對加密結果進行besa64編碼。
加密過程:輸入口令{KEY}-->加密文本-->以besa64對加密後的結果進行編碼-->以java.net.URLEncoder.encode編碼成瀏覽器可以識別的形式-->傳輸給接受的action

『叄』 我的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:解密方法。使用密匙+密文,得到原來解密的值

『肆』 php url參數加密

用這個加密:base64_encode ( string $data )
<?php
$str = 'This is an encoded string';
echo base64_encode($str);
?>
用這個解密:base64_decode ( string $data [, bool $strict= false ] )
<?php
$str = '==';
echo base64_decode($str);
?>

『伍』 百度的url是怎麼加密的

php有mcrypt庫,但是本人用下來很爛,加密在解密字元串會多出很多原來沒有的字元,而且總是亂碼,差不多隻有sha1是比較好用的
用哈希加密非常簡單
Location('music.php?url='.sha1($_GET['url']));
但是相比php,javascript的加密技術就更厲害了,我有sha1,md5和blowfish的三種加密函數,這些都是比較常用的演算法!

熱點內容
老娘也要當間諜ftp 發布:2024-11-30 12:23:17 瀏覽:131
家裡如何安裝文件伺服器 發布:2024-11-30 12:15:35 瀏覽:352
淘寶搶貨腳本js 發布:2024-11-30 11:51:35 瀏覽:955
賽風怎麼用安卓 發布:2024-11-30 11:42:28 瀏覽:982
安卓怎麼充高會 發布:2024-11-30 11:29:49 瀏覽:657
什麼是手機本地伺服器ip 發布:2024-11-30 11:13:21 瀏覽:289
壓縮袋無泵 發布:2024-11-30 11:13:11 瀏覽:677
去角質皮面膜怎麼樣配置 發布:2024-11-30 10:44:22 瀏覽:809
證券首次開戶後為什麼沒密碼 發布:2024-11-30 10:41:57 瀏覽:317
玩具廠資料庫 發布:2024-11-30 10:41:57 瀏覽:787