vr-shopxo-plugin/shopxo/app/plugins/vr_ticket/service
Council be9643b471 fix(phase4.1): 修正短码设计为【明文goods_id + 混淆ticket_id】
正确设计:
- 前4位:goods_id 明文 base36(直接可读)
- 后5位:ticket_id 经 Feistel8 混淆(保护 ticket_id)

编码流程:
1. goods_id → 4位 base36 明文
2. ticket_id → 5位 base36 → Feistel8 → 5位混淆密文
3. 拼接为9位短码

解码流程 O(1):
1. 前4位 base36_decode → goods_id
2. 用 goods_id 派生 key → Feistel8 解密后5位 → ticket_id
3. 无需暴力搜索,goods_id_hint 仅用于校验

优势:
- 解码 O(1),无需暴力搜索
- goods_id 明文暴露(可接受,ticket_id 仍被保护)
- ticket_id 受 Feistel8 混淆保护
2026-04-22 23:49:00 +08:00
..
AuditService.php refactor(vr_ticket): full plugin restructure - Admin.php root pattern + Hook.php 2026-04-17 00:46:00 +08:00
BaseService.php fix(phase4.1): 修正短码设计为【明文goods_id + 混淆ticket_id】 2026-04-22 23:49:00 +08:00
SeatSkuService.php feat(Phase 3): 演播室选择器+层级售罄灰化+短码Feistel架构规划 2026-04-22 16:39:39 +08:00
TicketService.php feat(Phase 2): 完成票务商品前端展示层 2026-04-20 05:22:07 +08:00