开启辅助访问

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

大佬们来看看这个是什么加密

查看数: 197 | 评论数: 7 | 收藏 0
关灯 | 提示:支持键盘翻页 & lt;-左 右 ->
    组图打开中,请稍候......
发布时间: 2026-7-17 14:51

正文摘要:

https://treecoin.cn/home  授权码 TREEYHAGSFFAN3JNC2CEUR3Z8D56KBLT 点击立即浇水 协议头里面的提交数据

回复

jyfinn   陕西省咸阳市 发表于 1 小时前
aes-256-cbc和aes-256-gcm,有两层加密
石榴熟了   河南省平顶山市 发表于 昨天 18:53
用fun.工具就可以了
唐昊   河南省鹤壁市 发表于 昨天 18:45
都是大佬~
mosheng   美国 发表于 昨天 15:24
treecoin.cn "立即浇水" 加密分析

"立即浇水"按钮和流程

按钮在首页组件代码 126.21e96448.js 中:
<button class="signin-btn" disabled={vitality<0}>
   立即浇水
</button>

点击后执行 doSignIn(),流程是:

① POST /app/t → 固定密钥加密
② POST /app/signin → Session密钥加密
③ 解密响应 → 更新 vitality/continuousDays

两个加密层

┌───────────┬───────────┬──────────────────────────┬────────────────────────────────────────────┬────────────────┐
│   类型    │   算法    │         密钥来源         │                    格式                    │    使用接口    │
├───────────┼───────────┼──────────────────────────┼────────────────────────────────────────────┼────────────────┤
│ 固定密钥  │ AES-256-C │ SHA-256(固定字符串)前32  │ Base64(IV+密文) →                          │ /app/t         │
│           │ BC        │ 字节                     │ {"encryptedPayload":"..."}                 │                │
├───────────┼───────────┼──────────────────────────┼────────────────────────────────────────────┼────────────────┤
│ Session密 │ AES-256-C │ 登录后服务端返回的sessio │ {"sessionId","encryptedData","nonce","time │ /wechat/userin │
│ 钥        │ BC        │ nKey                     │ stamp"}                                    │ fo,            │
│           │           │                          │                                            │ /app/signin    │
└───────────┴───────────┴──────────────────────────┴────────────────────────────────────────────┴────────────────┘

固定密钥(可直接复现)

密钥原文: zeph-fixed-key-for-login-payload-encryption-2024
AES Key:  6e64073d57d6a7a5bda970e5bc58ec9a1a44d7db8abc96a3042cf262ca88b64a

Node.js 复现代码:

const crypto = require('crypto');
const KEY_STR = "zeph-fixed-key-for-login-payload-encryption-2024";
const AES_KEY = crypto.createHash('sha256').update(KEY_STR).digest().slice(0, 32);

function encryptFixedKey(plaintext) {
  const iv = crypto.randomBytes(16);
  const cipher = crypto.createCipheriv('aes-256-cbc', AES_KEY, iv);
  const enc = Buffer.concat([cipher.update(plaintext), cipher.final()]);
  return Buffer.concat([iv, enc]).toString('base64');
}

function decryptFixedKey(base64Data) {
  const buf = Buffer.from(base64Data, 'base64');
  const iv = buf.slice(0, 16), ct = buf.slice(16);
  const dec = crypto.createDecipheriv('aes-256-cbc', AES_KEY, iv);
  return Buffer.concat([dec.update(ct), dec.final()]).toString('utf8');
}


2368286129   河南省郑州市 发表于 昨天 14:57
a2083657 发表于 2026-7-17 14:51
提交数据不像标准加密,更像自定义混淆。把那段数据拷贝出来,用精易模块的“编码_BASE64解码”试一下,如 ...

fvyF2RfwG2iwmoGk6um0hJ3tsBAeWp9jlu8NMg2CmG5X9lx8N9ijVsS5NC+JQJU4r9+BvpksuBoafPkGAza20MopZUQo65N8DOMrIrIANQN19omwZbhamn852DN8nK7lOzxkX3OouzcP0h2i/JRDjvK6bqxcfDewuvP+WfBNwvnr4l+OqzXrgjD2bvYEIdVZUdfLYcmAhdZyG4kbmJRiWgdGWVGnDNpdQNY5MDlVLIISX5dZFzg3VFYqRZXNXmmXM47xJX+5597Fs3kicmXQ60B48lEV0gi466E7EVyI+QVgDViWTFR6Zsr2WVu0WVMc0RK3RKUv8pU4UueyXUEME6FrmipgSKN6HO922ZasYuRURTYKwwdjXEpb5f5YJ1MlFJOMfTDtAuT5SJ5ziJBI3c1qMTIjPSUK4eXgaCCT925MTGnJBBN1EIxhwoT28xyHSbcsR6/uL7PE9N6DeNyZig==  解码乱码
Marvin   安徽省铜陵市 发表于 昨天 14:55
  
子程序名返回值类型公开备 注
加密提交文本型 
参数名类 型参考可空数组备 注
原始数据文本型
变量名类 型静态数组备 注
密钥字节集 
iv字节集 
加密结果文本型 
密钥 = 到字节集 (“1234567890123456”)
iv = 到字节集 (“1234567890123456”)
加密结果 = 编码_BASE64编码 (对称加密 (到字节集 (原始数据), 密钥, #对称算法_AES_CBC, , iv))
返回 (加密结果)
子程序名返回值类型公开备 注
__启动窗口_创建完毕  
变量名类 型静态数组备 注
提交数据文本型 
返回数据文本型 
协议头文本型 
提交数据 = 加密提交 (“{”#引号“action”#引号“:”#引号“water”#引号“}”)
协议头 = “Content-Type: application/json”#换行符“Authorization: Bearer TREEYHAGSFFAN3JNC2CEUR3Z8D56KBLT”
返回数据 = 到文本 (网页_访问_对象 (https://treecoin.cn/home, 1, 提交数据, , , 协议头, , , , , , , , , , , , ))
调试输出 (返回数据)


i支持库列表   支持库注释   
spec特殊功能支持库



密钥和IV需要从网站JS源码中抓取,按实际情况替换
a2083657   山西省运城市 发表于 昨天 14:51
提交数据不像标准加密,更像自定义混淆。把那段数据拷贝出来,用精易模块的“编码_BASE64解码”试一下,如果不是再试试“字节集_还原”。  
如果还是乱码,直接抓包对比多次请求看哪些字段变化,锁定参与计算的参数。  
易语言简单测试:
```
调试输出 (编码_BASE64解码 (“STZ6NGZ6T9T9HUBVWSY”))
```
不行就贴完整数据上来。
发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备2025452707号) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表