mirror of
https://github.com/violettoolssite/CFspider.git
synced 2026-04-05 11:29:03 +08:00
Update gitignore: add decrypt-pages and remove x27cn-pages/index.html from repo
This commit is contained in:
6
.gitignore
vendored
6
.gitignore
vendored
@@ -15,10 +15,10 @@ edgetunnel_proxy.py
|
||||
test.py
|
||||
test_*.py
|
||||
*.html
|
||||
!x27cn-pages/index.html
|
||||
|
||||
# 机密文档 - 不上传
|
||||
# 机密文件 - 不上传
|
||||
x27cn-pages/X27CN_ALGORITHM.md
|
||||
x27cn-pages/index.html
|
||||
decrypt-pages/
|
||||
|
||||
# 镜像输出目录
|
||||
mirror/
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1.0"><title>CFspider Decrypt</title><style>*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Segoe UI',Tahoma,sans-serif;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);min-height:100vh;display:flex;justify-content:center;align-items:center;padding:20px}.c{background:rgba(255,255,255,.05);backdrop-filter:blur(10px);border-radius:20px;padding:40px;max-width:900px;width:100%;box-shadow:0 8px 32px rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.1)}h1{color:#e94560;text-align:center;margin-bottom:10px;font-size:2rem}.s{color:#888;text-align:center;margin-bottom:30px;font-size:.9rem}.g{margin-bottom:20px}label{display:block;color:#fff;margin-bottom:8px;font-weight:500}textarea,input[type="text"]{width:100%;padding:15px;border:2px solid rgba(233,69,96,.3);border-radius:10px;background:rgba(0,0,0,.3);color:#fff;font-size:14px;font-family:'Consolas',monospace;transition:all .3s}textarea:focus,input:focus{outline:none;border-color:#e94560;box-shadow:0 0 15px rgba(233,69,96,.3)}textarea{min-height:180px;resize:vertical}.b{width:100%;padding:15px;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;margin-top:10px}.p{background:linear-gradient(135deg,#e94560,#f45c73);color:#fff}.p:hover{transform:translateY(-2px);box-shadow:0 5px 20px rgba(233,69,96,.4)}.x{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.2)}.x:hover{background:rgba(255,255,255,.2)}.r{margin-top:25px;padding:20px;background:rgba(0,0,0,.3);border-radius:10px;display:none}.r.w{display:block;animation:f .3s}@keyframes f{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.t{color:#4ade80;margin-bottom:15px;font-weight:600}.o{background:rgba(0,0,0,.4);padding:15px;border-radius:8px;word-break:break-all;font-family:'Consolas',monospace;color:#4ade80;font-size:13px;max-height:400px;overflow-y:auto}.fr{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}.fr:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.fk{color:#60a5fa;font-weight:bold;margin-bottom:4px}.fv{color:#4ade80;word-break:break-all;cursor:pointer}.fv:hover{color:#86efac}.vl{color:#fbbf24;font-weight:bold}.cs{color:#4ade80;text-align:center;margin-top:10px;font-size:14px;display:none}.cs.w{display:block;animation:f .3s}.i{background:rgba(96,165,250,.1);border:1px solid rgba(96,165,250,.3);border-radius:10px;padding:15px;margin-bottom:20px;color:#93c5fd;font-size:13px;line-height:1.6}.i code{background:rgba(0,0,0,.3);padding:2px 6px;border-radius:4px;font-family:'Consolas',monospace}.bg{display:flex;gap:10px;margin-top:15px;flex-wrap:wrap}.bg .b{flex:1;min-width:150px;margin-top:0}.jv{background:rgba(0,0,0,.5);border-radius:8px;padding:15px;margin-top:15px;white-space:pre-wrap;font-family:'Consolas',monospace;font-size:12px;color:#e2e8f0;max-height:300px;overflow-y:auto}.jk{color:#60a5fa}.js{color:#4ade80}.jn{color:#fbbf24}.jb{color:#f472b6}.jl{color:#9ca3af}.tg{display:flex;gap:5px;margin-bottom:15px}.tb{padding:8px 16px;background:rgba(255,255,255,.1);border:none;border-radius:8px;color:#888;cursor:pointer;transition:all .2s}.tb.a{background:#e94560;color:#fff}.tb:hover:not(.a){background:rgba(255,255,255,.2)}</style></head><body><div class="c"><h1>CFspider Decrypt</h1><p class="s">v3.3</p><div class="i">Access <code>/x2727admin</code> for encrypted data</div><div class="g"><label>Input</label><textarea id="d0"></textarea></div><button class="b p" id="d2">Decrypt</button><div class="r" id="d3"><div class="t">Result</div><div class="tg"><button class="tb a" id="t0">Format</button><button class="tb" id="t1">JSON</button><button class="tb" id="t2">Raw</button></div><div id="v0" class="o"></div><div id="v1" class="jv" style="display:none"></div><div id="v2" class="o" style="display:none"></div><div class="bg"><button class="b x" id="b0">VLESS</button><button class="b x" id="b1">UUID</button><button class="b x" id="b2">JSON</button></div><div class="cs" id="d4">Copied!</div></div></div>
|
||||
<script>
|
||||
var _$=[],_$$=null,_$$$=null;(function(){var _0=window,_1=String,_2=Array,_3=parseInt,_4=Math,_5=Object,_6=JSON,_7=Uint8Array,_8=TextEncoder,_9=TextDecoder,_a=document,_b=navigator,_c=setTimeout,_d=function(_){return _a.getElementById(_)},_e=function(_){return _1.fromCharCode.apply(null,_)};
|
||||
var _kf=(function(){var _p1=[0x78,0x32,0x37],_p2=[0x63,0x6e],_p3=[0x32,0x30,0x32,0x36],_m1=_4.floor,_m2=_4.pow,_s1=function(_a){return _a.map(function(_b){return(_b^0x5a)^0x5a})},_s2=function(_a,_b){var _r=[];for(var _i=0;_i<_a.length;_i++){_r.push(_a[_i]^(_b[_i%_b.length]))}_r=_r.map(function(_x){return _x^0});return _r},_g=function(){var _t1=_s1(_p1),_t2=_s2(_p2,[0]),_t3=_s1(_p3);return _e(_t1.concat(_t2).concat(_t3))};return _g})();
|
||||
function _z(){var _a=[120,50,55,99,110,50,48,50,54],_b=[];for(var _i=0;_i<_a.length;_i++){var _c=_a[_i];_c=(_c+256-_i)%256;_c=(_c+_i)%256;_b.push(_c)}return _e(_b)}
|
||||
var _i2=function(_,__,___,$){var _0=new _8().encode($),_1=new _7(256),_2=new _7(256),_3=new _7(256);for(var _4=0;_4<256;_4++){var _5=_0[_4%_0.length];_1[_4]=(_5^(((_4<<3)-_4+13)&255))&255;var _6=(((_4<<7)+(_4<<5)+(_4<<2)+(_4<<1)+_4+89)&255);_2[_4]=_6;_3[_6]=_4}return[_1,_2,_3,_0]};
|
||||
var _j2=function(_,__,___,$){var _0=$.reduce(function(_1,_2){return _1^_2},0),_1=[_0];for(var _2=0;_2<_.length;_2++){_0=(_0+_[_2]+__[(_2+128)&255])&255;_1.push(_0)}return _1};
|
||||
var _k2=function(_,__,___,$,_0){var _1=new _7(_.length);for(var _2=0;_2<_.length;_2++){var _3=_[_2],_4=_0[_2];_3=((_3-((_2<<1)+_2)-_4+512)&255);_3=((_3>>>5)|(_3<<3))&255;_3=___[_3];_3=_3^__[_2&255];_1[_2]=_3}return _1};
|
||||
var _l2=function(_){if(!_)return'';if(_.indexOf('<')>-1&&_.indexOf('>')>-1){var __=_.match(/<([0-9a-fA-F]{1,4})>/g);if(__&&__.length>0){return __.map(function($){return $.replace(/[<>]/g,'')}).join('')}}if(/^[0-9a-fA-F]+$/.test(_.trim()))return _.trim();var $=_.replace(/[^0-9a-fA-F]/g,'');if($.length%2!==0)$=$.substring(0,$.length-1);return $};
|
||||
var _m2=function(_){if(!_)return null;var $=_l2(_);if($.length<4)return null;if($.length%2!==0)$=$.substring(0,$.length-1);var _key=_kf();var _0=_i2($,null,null,_key),_1=_0[0],_2=_0[1],_3=_0[2],_4=_0[3];var _5=new _7($.length/2);for(var _6=0;_6<_5.length;_6++){_5[_6]=parseInt($.substr(_6*2,2),16)}var _7a=_j2(_5,_1,_2,_4),_8a=_k2(_5,_1,_3,_4,_7a);try{return new _9('utf-8',{fatal:false}).decode(_8a)}catch(_9a){return new _9('utf-8').decode(_8a)}};
|
||||
var _n2=function(_){_=_.trim();try{var __=_6.parse(_);if(__.d)return __.d;if(__.data)return __.data}catch($){}var _0=_.match(/"d"\s*:\s*"([^"]+)"/);if(_0)return _0[1];var _1=_.match(/"data"\s*:\s*"([^"]+)"/);if(_1)return _1[1];var _2=_.replace(/\s/g,'');if(/^[0-9a-fA-F]+$/.test(_2)&&_2.length>=20)return _2;var _3=_.match(/[0-9a-fA-F]{20,}/);if(_3)return _3[0];return _};
|
||||
var _o2=function(_){if(typeof _!=='string')_=_6.stringify(_,null,2);_=_.replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>');return _.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g,function(__){var $='jn';if(/^"/.test(__)){$=/:$/.test(__)?'jk':'js'}else if(/true|false/.test(__)){$='jb'}else if(/null/.test(__)){$='jl'}return'<span class="'+$+'">'+__+'</span>'})};
|
||||
var _p2=function(){var _=_d('d0').value.trim();if(!_){alert('Input required');return}try{var $=_n2(_),_0=_m2($);if(!_0)throw new Error('Failed');_$$=_0;try{_$$$=_6.parse(_0);var _1='';for(var _2 in _$$$){if(_$$$.hasOwnProperty(_2)){var _3=_$$$[_2],_4=_2==='vless'||(typeof _3==='string'&&_3.indexOf('vless://')===0),_5=typeof _3==='object'?_6.stringify(_3,null,2):_3;_1+='<div class="fr"><div class="fk">'+_2+':</div><div class="fv'+(_4?' vl':'')+'" data-k="'+_2+'">'+_5+'</div></div>'}}_d('v0').innerHTML=_1;_d('v1').innerHTML=_o2(_$$$);_d('v0').querySelectorAll('.fv').forEach(function(_6a){_6a.onclick=function(){var _7=this.getAttribute('data-k');if(_$$$&&_$$$[_7]!==undefined){var _8=typeof _$$$[_7]==='object'?_6.stringify(_$$$[_7]):String(_$$$[_7]);_q2(_8)}}})}catch(_9){_$$$=null;_d('v0').innerHTML='<code>'+_0+'</code>';_d('v1').innerHTML='<span style="color:#f87171">Not JSON</span>'}_d('v2').textContent=_0;_d('d3').classList.add('w');_r2('v0')}catch(_a){alert('Error: '+_a.message)}};
|
||||
var _q2=function(_){_b.clipboard.writeText(_).then(function(){_s2a()}).catch(function(){var __=_a.createElement('textarea');__.value=_;_a.body.appendChild(__);__.select();_a.execCommand('copy');_a.body.removeChild(__);_s2a()})};
|
||||
var _r2=function(_){['v0','v1','v2'].forEach(function(__){_d(__).style.display=__===_?'block':'none'});['t0','t1','t2'].forEach(function(__,_0){_d(__).classList[_0===(['v0','v1','v2'].indexOf(_))?'add':'remove']('a')})};
|
||||
var _s2a=function(){var _=_d('d4');_.classList.add('w');_c(function(){_.classList.remove('w')},2000)};
|
||||
var _t2=function(){var _='';if(_$$$){_=_$$$.vless||_$$$.l||'';if(!_){for(var __ in _$$$){if(_$$$.hasOwnProperty(__)){var $=_$$$[__];if(typeof $==='string'&&$.indexOf('vless://')===0){_=$;break}}}}}if(!_&&_$$){var _0=_$$.match(/vless:\/\/[^\s"]+/);if(_0)_=_0[0]}if(_){_q2(_)}else{alert('VLESS not found')}};
|
||||
var _u2=function(){var _='';if(_$$$){_=_$$$.uuid||_$$$.UUID||_$$$.u||''}if(!_&&_$$){var __=_$$.match(/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i);if(__)_=__[0]}if(_){_q2(_)}else{alert('UUID not found')}};
|
||||
var _v2=function(){if(_$$)_q2(_$$)};
|
||||
_d('d2').onclick=_p2;_d('t0').onclick=function(){_r2('v0')};_d('t1').onclick=function(){_r2('v1')};_d('t2').onclick=function(){_r2('v2')};_d('b0').onclick=_t2;_d('b1').onclick=_u2;_d('b2').onclick=_v2;
|
||||
_d('d0').onpaste=function(){var _=this;_c(function(){if(_.value.trim().length>50)_p2()},100)};
|
||||
})();
|
||||
(function(_x,_y){var _z=function(_w){while(--_w){_x['push'](_x['shift']())}};_z(++_y)})([],0x1a7);
|
||||
</script></body></html>
|
||||
Reference in New Issue
Block a user