这种是什么加密 ? 可以解码吗 ?

simon803 2013-11-25 01:34:06
t="o8ivs5cr1LrH3WIDS7n2d09nmPN4cXTxoMml7bTSubCv7aNgLWTDy2ckKt/hRQlm3E/rgLPnZtAu6HHLVFh0ks0xpvoZiKmoTf+CGYSZKsZJiCY8pv5aJ9ErSaUz5lpdIIEVTldW0b/mD6D2TGa1/eCfpWvF8Sbwdie3y2lAmltMmthAsOzi6chynKr0ZJiKJxCeyGjVfIf/gAuYEAAarE8wku5lIEbgWTeBa8JaYGM+V92j63WKAoGzKZb3+cvwlCDRBfTjGHkVQ5b3Vv49T9n0V1jN/CYSwKYAVXhraTDlRF3VbY/WASgoqJ4MPTp5rvwnO7UtAff5iGvYOJsJOqijViep8Y8PM6+TT9TpVrLSob6WMGx2i+K3M0Nsn+0v9OTavdVl3jIzE3l4mbpUVoRxRZhfA+PeAZAqtiCpWvNwKbnPV4yrMkY3CjPF0F2V";
t=xiaom3ifg(lanxuewn_decrypt(yianmeing46f(t), '84576dfhse286g'));
document.write (t);
...全文
436 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Giberson1 2013-11-28
  • 打赏
  • 举报
回复
function xiaom3ifg(str) {
	var out, i, len, c;
	var char2, char3;
	out = [];
	len = str.length;
	i = 0;
	while (i < len) {
		c = str.charCodeAt(i++);
		switch (c >> 4) {
		case 0:
		case 1:
		case 2:
		case 3:
		case 4:
		case 5:
		case 6:
		case 7:
			out[out.length] = str.charAt(i - 1);
			break;
		case 12:
		case 13:
			char2 = str.charCodeAt(i++);
			out[out.length] = String.fromCharCode(((c & 0x1F) << 6)
					| (char2 & 0x3F));
			break;
		case 14:
			char2 = str.charCodeAt(i++);
			char3 = str.charCodeAt(i++);
			out[out.length] = String.fromCharCode(((c & 0x0F) << 12)
					| ((char2 & 0x3F) << 6) | ((char3 & 0x3F) << 0));
			break;
		}
	}
	return out.join('');
}
var yianmeing46fChars = new Array(-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
		-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
		-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 62, -1, -1, -1,
		63, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, -1, -1, -1, -1, -1, -1, -1,
		0, 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, -1, -1, -1, -1, -1, -1, 26, 27, 28, 29, 30, 31,
		32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
		50, 51, -1, -1, -1, -1, -1);
function yianmeing46f(str) { // 此函数相当于加密函数,它的加密方式,先把字符串中每个字符转换成unicode编码,
	var c1, c2, c3, c4;
	var i, len, out;
	len = str.length;
	i = 0;
	out = "";
	while (i < len) {
		do {
			c1 = yianmeing46fChars[str.charCodeAt(i++) & 0xff]
		} while (i < len && c1 == -1);
		if (c1 == -1)
			break;
		do {
			c2 = yianmeing46fChars[str.charCodeAt(i++) & 0xff]
		} while (i < len && c2 == -1);
		if (c2 == -1)
			break;
		out += String.fromCharCode((c1 << 2) | ((c2 & 0x30) >> 4));  // 关键部分:这里是编码的关键,它这样编码后,是不能被解码的,因为你不能找到以中国                                                              //逆向解析的方式。
		do {
			c3 = str.charCodeAt(i++) & 0xff;
			if (c3 == 61)
				return out;
			c3 = yianmeing46fChars[c3]
		} while (i < len && c3 == -1);
		if (c3 == -1)
			break;
		out += String.fromCharCode(((c2 & 0XF) << 4) | ((c3 & 0x3C) >> 2));
		do {
			c4 = str.charCodeAt(i++) & 0xff;
			if (c4 == 61)
				return out;
			c4 = yianmeing46fChars[c4]
		} while (i < len && c4 == -1);
		if (c4 == -1)
			break;
		out += String.fromCharCode(((c3 & 0x03) << 6) | c4)
	}
	return out
}
function long2str(v, w) {
	var vl = v.length;
	var sl = v[vl - 1] & 0xffffffff;
	for ( var i = 0; i < vl; i++) {
		v[i] = String.fromCharCode(v[i] & 0xff, v[i] >>> 8 & 0xff,
				v[i] >>> 16 & 0xff, v[i] >>> 24 & 0xff);
	}
	if (w) {
		return v.join('').substring(0, sl);
	} else {
		return v.join('');
	}
}
function str2long(s, w) {
	var len = s.length;
	var v = [];
	for ( var i = 0; i < len; i += 4) {
		v[i >> 2] = s.charCodeAt(i) | s.charCodeAt(i + 1) << 8
				| s.charCodeAt(i + 2) << 16 | s.charCodeAt(i + 3) << 24;
	}
	if (w) {
		v[v.length] = len;
	}
	return v;
}
function lanxuewn_decrypt(str, key) {
	if (str == "") {
		return "";
	}
	var v = str2long(str, false);
	var k = str2long(key, false);
	var n = v.length - 1;
	var z = v[n - 1], y = v[0], delta = 0x9E3779B9;
	var mx, e, q = Math.floor(6 + 52 / (n + 1)), sum = q * delta & 0xffffffff;
	while (sum != 0) {
		e = sum >>> 2 & 3;
		for ( var p = n; p > 0; p--) {
			z = v[p - 1];
			mx = (z >>> 5 ^ y << 2) + (y >>> 3 ^ z << 4) ^ (sum ^ y)
					+ (k[p & 3 ^ e] ^ z);
			y = v[p] = v[p] - mx & 0xffffffff;
		}
		z = v[n];
		mx = (z >>> 5 ^ y << 2) + (y >>> 3 ^ z << 4) ^ (sum ^ y)
				+ (k[p & 3 ^ e] ^ z);
		y = v[0] = v[0] - mx & 0xffffffff;
		sum = sum - delta & 0xffffffff;
	}
	return long2str(v, true);
}
t = "o8ivs5cr1LrH3WIDS7n2d09nmPN4cXTxoMml7bTSubCv7aNgLWTDy2ckKt/hRQlm3E/rgLPnZtAu6HHLVFh0ks0xpvoZiKmoTf+CGYSZKsZJiCY8pv5aJ9ErSaUz5lpdIIEVTldW0b/mD6D2TGa1/eCfpWvF8Sbwdie3y2lAmltMmthAsOzi6chynKr0ZJiKJxCeyGjVfIf/gAuYEAAarE8wku5lIEbgWTeBa8JaYGM+V92j63WKAoGzKZb3+cvwlCDRBfTjGHkVQ5b3Vv49T9n0V1jN/CYSwKYAVXhraTDlRF3VbY/WASgoqJ4MPTp5rvwnO7UtAff5iGvYOJsJOqijViep8Y8PM6+TT9TpVrLSob6WMGx2i+K3M0Nsn+0v9OTavdVl3jIzE3l4mbpUVoRxRZhfA+PeAZAqtiCpWvNwKbnPV4yrMkY3CjPF0F2V";
t = xiaom3ifg(lanxuewn_decrypt(yianmeing46f(t), '84576dfhse286g'));
document.write(t);
Giberson1 2013-11-28
  • 打赏
  • 举报
回复
我想帮你格式化下代码,再帮你注解了代码,详见注释 另外告诉你一个结论,这些编码不能解码,因为它用的是单向编码。
  • 打赏
  • 举报
回复
自己写的函数加密的,没什么意思,最后用firebug什么的看下dom结构什么都有了,只能骗小白,只会查看源代码的
孟子E章 2013-11-28
  • 打赏
  • 举报
回复
页面上放一个 <textarea id=x></textarea> 最后一行改成 document.getElementById("x").value=t; 即可
lzpggg 2013-11-28
  • 打赏
  • 举报
回复
javascript加密等于拖了裤子放屁,一般是那种半吊子的程序员搞的,有这功夫不如多做点实事。
天际的海浪 2013-11-28
  • 打赏
  • 举报
回复
其实js的加密都大同小异,就是对字符串和 Unicode 编码进行转换处理。 最后把转换好的字符串用document.write(),eval(),execScript()来输出或执行。 想破解加密非常简单,一般不用知道人家代码是怎么加密的,只要把document.write(),eval(),execScript()这几个系统函数(方法)重新定义一下、加密就不攻自破了。 比如: function eval(t) { window.clipboardData.setData("Text",t); } 就可以把本来是要用eval执行的解密代码复制到剪切板。
simon803 2013-11-28
  • 打赏
  • 举报
回复
楼上的,麻烦说明白点哦 。。 怎么加密的 ? 能不能解密 。 如果我要修改加密不分,如何从新加密。
simon803 2013-11-27
  • 打赏
  • 举报
回复
<script language =javascript>
function xiaom3ifg(str){var out,i,len,c;var char2,char3;out=[];len=str.length;i=0;while(i<len){c=str.charCodeAt(i++);switch(c>>4)
{case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:out[out.length]=str.charAt(i-1);break;case 12:case 13:char2=str.charCodeAt(i++);out[out.length]=String.fromCharCode(((c&0x1F)<<6)|(char2&0x3F));break;case 14:char2=str.charCodeAt(i++);char3=str.charCodeAt(i++);out[out.length]=String.fromCharCode(((c&0x0F)<<12)|((char2&0x3F)<<6)|((char3&0x3F)<<0));break;}}
return out.join('');}
var yianmeing46fChars=new Array(-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,-1,0,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,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1);
function yianmeing46f(str)
{var c1,c2,c3,c4;var i,len,out;len=str.length;i=0;out = "";while(i<len)
{do
{c1=yianmeing46fChars[str.charCodeAt(i++)&0xff]}while(i<len&&c1==-1);if(c1==-1)
break;do
{c2=yianmeing46fChars[str.charCodeAt(i++)&0xff]}while(i<len&&c2==-1);if(c2==-1)
break;out+=String.fromCharCode((c1<<2)|((c2&0x30)>>4));do
{c3=str.charCodeAt(i++)&0xff;if(c3==61)
return out;c3=yianmeing46fChars[c3]}while(i<len&&c3==-1);if(c3==-1)
break;out+=String.fromCharCode(((c2&0XF)<<4)|((c3&0x3C)>>2));do
{c4=str.charCodeAt(i++)&0xff;if(c4==61)
return out;c4=yianmeing46fChars[c4]}while(i<len&&c4==-1);if(c4==-1)
break;out+=String.fromCharCode(((c3&0x03)<<6)|c4)}
return out}
function long2str(v,w){var vl=v.length;var sl=v[vl-1]&0xffffffff;for(var i=0;i<vl;i++)
{v[i]=String.fromCharCode(v[i]&0xff,v[i]>>>8&0xff,v[i]>>>16&0xff,v[i]>>>24&0xff);}
if(w){return v.join('').substring(0,sl);}
else{return v.join('');}}
function str2long(s,w){var len=s.length;var v=[];for(var i=0;i<len;i+=4)
{v[i>>2]=s.charCodeAt(i)|s.charCodeAt(i+1)<<8|s.charCodeAt(i+2)<<16|s.charCodeAt(i+3)<<24;}
if(w){v[v.length]=len;}
return v;}
function lanxuewn_decrypt(str,key){if(str==""){return"";}
var v=str2long(str,false);var k=str2long(key,false);var n=v.length-1;var z=v[n-1],y=v[0],delta=0x9E3779B9;var mx,e,q=Math.floor(6+52/(n+1)),sum=q*delta&0xffffffff;while(sum!=0){e=sum>>>2&3;for(var p=n;p>0;p--){z=v[p-1];mx=(z>>>5^y<<2)+(y>>>3^z<<4)^(sum^y)+(k[p&3^e]^z);y=v[p]=v[p]-mx&0xffffffff;}
z=v[n];mx=(z>>>5^y<<2)+(y>>>3^z<<4)^(sum^y)+(k[p&3^e]^z);y=v[0]=v[0]-mx&0xffffffff;sum=sum-delta&0xffffffff;}
return long2str(v,true);}
t="o8ivs5cr1LrH3WIDS7n2d09nmPN4cXTxoMml7bTSubCv7aNgLWTDy2ckKt/hRQlm3E/rgLPnZtAu6HHLVFh0ks0xpvoZiKmoTf+CGYSZKsZJiCY8pv5aJ9ErSaUz5lpdIIEVTldW0b/mD6D2TGa1/eCfpWvF8Sbwdie3y2lAmltMmthAsOzi6chynKr0ZJiKJxCeyGjVfIf/gAuYEAAarE8wku5lIEbgWTeBa8JaYGM+V92j63WKAoGzKZb3+cvwlCDRBfTjGHkVQ5b3Vv49T9n0V1jN/CYSwKYAVXhraTDlRF3VbY/WASgoqJ4MPTp5rvwnO7UtAff5iGvYOJsJOqijViep8Y8PM6+TT9TpVrLSob6WMGx2i+K3M0Nsn+0v9OTavdVl3jIzE3l4mbpUVoRxRZhfA+PeAZAqtiCpWvNwKbnPV4yrMkY3CjPF0F2V";
t=xiaom3ifg(lanxuewn_decrypt(yianmeing46f(t), '84576dfhse286g'));
document.write (t);
</script>
这是所有代码。
萧萧可乐 2013-11-26
  • 打赏
  • 举报
回复
反正不是MD5。。。
simon803 2013-11-25
  • 打赏
  • 举报
回复
这种代码看不出是什么加密吗 ?
天际的海浪 2013-11-25
  • 打赏
  • 举报
回复
document.write (t); 改成 alert(t);
Null_Reference 2013-11-25
  • 打赏
  • 举报
回复
这个看不出来是什么加密方式。
  • 打赏
  • 举报
回复
document.write('<textarea>'+t+'</textarea>')
似梦飞花 2013-11-25
  • 打赏
  • 举报
回复
xiaom3ifg(lanxuewn_decrypt(yianmeing46f(t), '84576dfhse286g')); 你找找这几个方法看看是不是

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧