首页系统网页解密(html对网页的加密和解密方法大全)

网页解密(html对网页的加密和解密方法大全)

编程之家2024-01-28120次浏览

一、ASP htmlDecode 怎么解密

首先,如果编码后的字串是直接在网页上输出的,并不需要进行专门的解码,浏览器会自动进行解码后再显示出来的。

网页解密(html对网页的加密和解密方法大全)

如果你是想自己解码后用在其他的场合,那么可以自己编程把里面的数字提取出来,用ChrW()函数就可以还原为汉字了。比如ChrW(35874)的值就是“谢”字。

二、如何使用CryptoJS的AES方法进行加密和解密

首先准备一份明文和秘钥:

var plaintText='aaaaaaaaaaaaaaaa';//明文

var keyStr='bbbbbbbbbbbbbbbb';//一般key为一个字符串

参看官网文档,AES方法是支持AES-128、AES-192和AES-256的,加密过程中使用哪种加密方式取决于传入key的类型,否则就会按照AES-256的方式加密。

CryptoJS supports AES-128, AES-192, and AES-256. It will pick the variant by the size of the key you pass in. If you use a passphrase, then it will generate a 256-bit key.

网页解密(html对网页的加密和解密方法大全)

由于Java就是按照128bit给的,但是由于是一个字符串,需要先在前端将其转为128bit的才行。

最开始以为使用CryptoJS.enc.Hex.parse就可以正确地将其转为128bit的key。但是不然...

经过多次尝试,需要使用CryptoJS.enc.Utf8.parse方法才可以将key转为128bit的。好吧,既然说了是多次尝试,那么就不知道原因了,后期再对其进行更深入的研究。

//字符串类型的key用之前需要用uft8先parse一下才能用

var key= CryptoJS.enc.Utf8.parse(keyStr);

由于后端使用的是PKCS5Padding,但是在使用CryptoJS的时候发现根本没有这个偏移,查询后发现PKCS5Padding和PKCS7Padding是一样的东东,使用时默认就是按照PKCS7Padding进行偏移的。

网页解密(html对网页的加密和解密方法大全)

//加密

var encryptedData= CryptoJS.AES.encrypt(plaintText, key,{

mode: CryptoJS.mode.ECB,

padding: CryptoJS.pad.Pkcs7

});

由于CryptoJS生成的密文是一个对象,如果直接将其转为字符串是一个Base64编码过的,在encryptedData.ciphertext上的属性转为字符串才是后端需要的格式。

var encryptedBase64Str= encryptedData.toString();

//输出:'RJcecVhTqCHHnlibzTypzuDvG8kjWC+ot8JuxWVdLgY='

console.log(encryptedBase64Str);

//需要读取encryptedData上的ciphertext.toString()才能拿到跟Java一样的密文

var encryptedStr= encryptedData.ciphertext.toString();

//输出:'44971e715853a821c79e589bcd3ca9cee0ef1bc923582fa8b7c26ec5655d2e06'

console.log(encryptedStr);

由于加密后的密文为128位的字符串,那么解密时,需要将其转为Base64编码的格式。

那么就需要先使用方法CryptoJS.enc.Hex.parse转为十六进制,再使用CryptoJS.enc.Base64.stringify将其变为Base64编码的字符串,此时才可以传入CryptoJS.AES.decrypt方法中对其进行解密。

//拿到字符串类型的密文需要先将其用Hex方法parse一下

var encryptedHexStr= CryptoJS.enc.Hex.parse(encryptedStr);

//将密文转为Base64的字符串

//只有Base64类型的字符串密文才能对其进行解密

var encryptedBase64Str= CryptoJS.enc.Base64.stringify(encryptedHexStr);

使用转为Base64编码后的字符串即可传入CryptoJS.AES.decrypt方法中进行解密操作。

//解密

var decryptedData= CryptoJS.AES.decrypt(encryptedBase64Str, key,{

mode: CryptoJS.mode.ECB,

padding: CryptoJS.pad.Pkcs7

});

经过CryptoJS解密后,依然是一个对象,将其变成明文就需要按照Utf8格式转为字符串。

//解密后,需要按照Utf8的方式将明文转位字符串

var decryptedStr= decryptedData.toString(CryptoJS.enc.Utf8);

console.log(decryptedStr);//'aaaaaaaaaaaaaaaa'

三、html加密解密代码

<HTML><HEAD><TITLE>纯真过往-方宁-加密/解密HTML源代码</TITLE>

<META content="text/html; charset=gb2312" http-equiv=Content-Type>

<META content="script,windows" name=keywords>

<STYLE>.tablinks A{COLOR: blue}

.tablinks A:visited{ COLOR: blue}

.tablinks A:hover{COLOR: brown}

input{ font-family: Tahoma; font-size: 9pt; color:#000080}

body,textarea{ font-family: Tahoma; font-size: 9pt; color: blue}

</STYLE>

</HEAD>

<BODY bgColor=#D6D3CE leftMargin=0 marginwidth="0" scroll=no oncontextmenu="self.event.returnValue=false">

<div align="center">

<center>

<TABLE border=0 cellPadding=0 cellSpacing=0 width="600">

<TBODY>

<TR>

<TD align=left vAlign=top>

<div align="center" style="width: 598; height: 42">

<div align="center">

<font color="#0066ff">加密页面源代码脚本</font>

</div>

<p><font color="#800000">将你的页面源代码粘贴在下面的框内,要包括所有的标签例如html

, head, body等。</font></p>

</div>

<P align=center>

<P align=left><!--webbot bot="HTMLMarkup" startspan-->

<SCRIPT language=JavaScript>

var i=0;

var ie=(document.all)?1:0;

var ns=(document.layers)?1:0;

function generate()/* Generation of"Compilation"*/

{

code= document.pad.text.value;

if(code)

{

document.pad.text.value='纯真过往-方宁正在加密中...请等待!';

setTimeout("compile()",1000);

}

else alert('纯真过往-方宁提醒您:还没有放入要加密的网页代码!')

}

function compile()/* The"Compilation"*/

{

document.pad.text.value='';

compilation=escape(code);

document.pad.text.value="<script>\n<!--\ndocument.write(unescape(\""+compilation+"\"));\n//-->\n<\/script>";

i++;

alert("(纯真过往)已将所选内容加密成功!请点预览查看效果!");

}

function selectCode()/* Selecting"Compilation" for Copying*/

{

if(document.pad.text.value.length>0)

{

document.pad.text.focus();

document.pad.text.select();

}

else alert('纯真过往-方宁提醒您:没有任何内容可以选定!')

}

function preview()/* Preview for the"Compilation"*/

{

if(document.pad.text.value.length>0)

{

pr=window.open("","Preview","scrollbars=1,menubar=1,status=1,width=700,height=320,left=50,top=110");

pr.document.write(document.pad.text.value);

}

else alert('纯真过往-方宁提醒您:没有任何内容可以预览!')

}

function uncompile()/* Decompiling a"Compilation"*/

{

if(document.pad.text.value.length>0)

{

source=unescape(document.pad.text.value);

document.pad.text.value=""+source+"";

}

else alert('纯真过往-方宁提醒您:请把你需要解密的代码放到此处!')

}

//-->

</SCRIPT>

<TABLE border=0 cellPadding=0 cellSpacing=0 width="100%">

<TBODY>

<TR>

<TD width="100%"><!-- Compilation Panel-->

<FORM method=post name=pad align="center"><TEXTAREA cols=58 name=text rows=11 style="BACKGROUND-COLOR:#f0f0f0;width=100%"></TEXTAREA><BR><p align="center"><INPUT name=compileIt onclick=generate() type=button value=加密>

<INPUT name=select onclick=selectCode() type=button value=选定>

<INPUT name=view onclick=preview() type=button value=预览>

<INPUT name=retur onclick=uncompile() type=button value=解密>

<INPUT name=clear type=reset value=清除>

</FORM><!-- Compilation Panel--></TD></TR></TBODY></TABLE><!--webbot bot="HTMLMarkup" endspan-->

</table>

</center>

</div>

<p align="center"><a rel="external nofollow" href=" " target="_blank">纯真过往-方宁

;

</BODY>

fakepath(js获取文件上传路径(解决出现fakepath的问题))bt3u盘版(bt3安装教程及激活成功教程教程)