原串
http://www.qidizi.com/d.php?pddd=kdkfj&dkfkk=%kekf
或中文串
戚笛子qidizi
密码
qidizi
或密码(含中文)
qidiiz戚笛子
加密后
531_531_531_604_537_545_550_545_528_545_604_551_539_541_603_550_604_538_546_538_587_538_550_550_550_589_543_550_543_548_544_612_550_543_548_543_543_589_613_543_549_543_548
或(中文)
55541_49140_57279_80542_80550_80555_80550_80533_80550
输入密码解密
www.qidizi.com/d.php?pddd=kdkfj&dkfkk=%kekf
或
戚笛子qidizi
代码
-------------------
var str = prompt().replace("http://",'');
var tmp = [];
for(var i=0; i < str.length; i++) {
tmp.push(str.charCodeAt(i));
}
var pwd = prompt();
str = 0;
for(i=0;i<pwd.length;i++)str += pwd.charCodeAt(i);
for(i=0;i<tmp.length;i++)tmp[i] = str - tmp[i];
tmp = tmp.join('_');
alert(tmp);
tmp = tmp.split('_');
var pwd = prompt();
p= 0;
for(i=0;i<pwd.length;i++)p+= pwd.charCodeAt(i);
for(i=0;i<tmp.length;i++)tmp[i]=p-tmp[i]*1;
eval('s=String.fromCharCode(' + tmp.join(',') + ')');
alert(s);
--------
原理.把所有的字符打成u编码数字,再加上某个数字(密码)就是加密.解密时相反
-------
用处:只是想加密url和解密js一起放到收藏夹中;使用javascript:协议调用时,点击就可以提示输入密码访问了;因为地址栏有长度限制,所以,还需要对js代码进行简化
-------
简化后代码如下,
javascript:r='for(p=prompt("p"),d=i=0;i<p.length;i++)d+=p.charCodeAt(i)';for(eval(r),u=prompt('u'),a=[],i=0;i<u.length;i++)a.push(d-u.charCodeAt(i));prompt('c','javascript:'+r+';for(u="'+a+'".split(","),i=0;i<u.length;i++)u[i]=d-u[i]*1;eval("open(\'http://\'+String.fromCharCode("+u+"))");e');e
在这句的代码后面加一个e是防止生成完成后导致页面跳转了,让它出错后就不会跳转了;
把这句代码做为一个收藏夹中的链接地址收藏,然后点击它测试
输入密码
输入要加密的url(不带http://,因为这个没必要加密,后面直接明码补充,减少url字数)
生成了加密后的链接,放到收藏夹中使用
javascript:for(p=prompt("p"),d=i=0;i<p.length;i++)d+=p.charCodeAt(i);for(u="537,545,550,545,528,545,604,551,539,541".split(","),i=0;i<u.length;i++)u[i]=d-u[i]*1;eval("location='http://'+String.fromCharCode("+u+")")
点击它测试,需要输入密码.如果输入不正确,绝对不能访问,但是能否有人进行破解就不懂了.呵呵
确定它它会自动跳转到http://qidizi.com
这样就达到加密的效果了.在firefox收藏夹中测试通过.
曾经刻,在世界之窗这个郁闷的在线收藏夹中不允许其它字符,可能是不能使用的,上传后会挨过滤,而不能正常使用