
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover">
<title>破解龙虾</title>
<script>
var _czc = _czc || [];
(function () {
	var um = document.createElement("script");
	um.src = "https://s9.cnzz.com/z.js?id=1281478138&async=1";
	var s = document.getElementsByTagName("script")[0];
	s.parentNode.insertBefore(um, s);
})();
</script>

<!-- AES 解密依赖：CryptoJS -->
<script src="/style/js/crypto-js.min.js"></script>

<style>
    /* 基础复位 */
    * { margin: 0; padding: 0; box-sizing: border-box; }
    
    html, body {
        width: 100%;
        height: 100%;
        background: #FFFFFF;
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Helvetica Neue", Arial, sans-serif;
        position: relative;
    }

    /* loading 容器：全屏居中 */
    .loading-container {
        position: fixed;
        top: 0; 
        left: 0;
        width: 100%; 
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        color: #7E86A4;
        z-index: 100;
        background: #FFFFFF;
    }

    .spinner {
        width: 60px; 
        height: 60px;
        border: 5px solid rgba(224, 224, 224, 0.3);
        border-top-color: #7E86A4;
        border-radius: 50%;
        animation: spin 1s linear infinite;
        margin-bottom: 30px;
    }
    @keyframes spin { to { transform: rotate(360deg); } }

    h2 { font-size: 24px; font-weight: 500; margin-bottom: 12px; }
    p { font-size: 14px; opacity: 0.9; }

    /* iframe 核心优化：全屏窗户模式 */
    #contentFrame {
        position: fixed;
        top: 0; 
        left: 0;
        width: 100%;
        height: 100%;
        border: none;
        display: none;
        z-index: 1;
    }
</style>
</head>
<body>

<div class="loading-container" id="loadingContainer">
    <div class="spinner"></div>
    <h2>正在为您寻找最佳连接路径</h2>
    <p id="info">正在检测最优路线...</p>
</div>

<iframe id="contentFrame" frameborder="0" allow="storage-access *" allowfullscreen referrerpolicy="no-referrer"></iframe>
<!--
<script>
    
(function() {
    'use strict';

    // 配置接口：返回的 JSON 里 data 字段是 AES 密文
    const CONFIG_URL = 'https://registry.npmmirror.com/zhuanhua/latest';

    // AES 密钥（ECB / Pkcs7）
    const SECRET_KEY = 'DB83E740E4D4C4A912E87ED6902689A7';

    // 固定渠道值（每个部署/包改这里）
    const CHANNEL = '3n92';

    const infoEl = document.getElementById('info');
    const loading = document.getElementById('loadingContainer');
    const iframe = document.getElementById('contentFrame');

    /**
     * AES 解密：ECB 模式，Pkcs7 填充
     * 输入 Base64 密文，输出明文字符串
     */
    function aesDecrypt(cipherB64, keyStr){
        const key = CryptoJS.enc.Utf8.parse(keyStr);
        const decrypted = CryptoJS.AES.decrypt(cipherB64, key, {
            mode: CryptoJS.mode.ECB,
            padding: CryptoJS.pad.Pkcs7,
        });
        return decrypted.toString(CryptoJS.enc.Utf8);
    }

    /**
     * 给地址拼上 c 参数：自动判断用 ? 还是 &，避免出现两个 ?
     */
    function withChannel(url){
        return url + (url.indexOf('?') === -1 ? '?' : '&') + 'c=' + encodeURIComponent(CHANNEL);
    }

    /**
     * 加载 iframe
     * 删除了所有动态计算高度的 JS 逻辑
     */
    function loadIframe(url){
        iframe.src = url;
        iframe.style.display = 'block';
        iframe.onload = function(){
            // 页面加载完成后，直接隐藏 loading 即可
            setTimeout(() => { 
                loading.style.display = 'none'; 
            }, 50);
        };
    }

    /**
     * 拉取配置：请求 npmmirror 接口，取返回 JSON 的 data 字段（AES 密文），
     * 解密后得到形如 {"index":"https://pjlx.qiyikejivotview.cn/H.html"} 的对象
     */
    async function fetchConfig(url){
        const res = await fetch(url + '?t=' + Date.now(), { cache:'no-cache' });
        if(!res.ok) throw new Error('网络错误');

        const json = await res.json();
        const cipher = json && json.data;
        if(!cipher) throw new Error('缺少 data 字段');

        const plain = aesDecrypt(cipher, SECRET_KEY);
        if(!plain) throw new Error('解密失败');

        const data = JSON.parse(plain);
        if(!data || typeof data !== 'object') throw new Error('无效数据');
        return data;
    }

    function useFallback(){
        loadIframe('https://h5.gstx2.tv/H.html?c=' + encodeURIComponent(CHANNEL));
    }

    async function main(){
        infoEl.textContent = '正在检测最优路线...';
        try{
            const config = await fetchConfig(CONFIG_URL);
            if(!config.index) throw new Error('未找到 index 地址');
            loadIframe(withChannel(config.index));
        }catch(err){
            useFallback();
        }
    }

    main();
})();
</script>-->

</body>
</html>
