主要观点:
- 作者购买 TicketMaster 音乐会门票,其采用 Mobile Entry(SafeTix)系统,以旋转条形码形式发放,而非普通 printable PDF 票。
- 这种旋转条形码存在诸多问题,如去年作者参加另一场音乐会时,因手机无网络导致条形码无法加载,入场受阻,且公司无电话支持,场馆员工也 helpless。
- TicketMaster 营销称 SafeTix 可防诈骗和转售,但作者认为其存在矛盾,如称截图或打印票不可扫描却又称离线保存的票可随时使用。
- 作者通过反向工程发现 TicketMaster 条形码的格式及生成机制,包括其中的 TOTP 等信息,还找到了生成有效条形码所需的 token、secrets 等。
- 作者指出通过这些信息可在自定义应用中复制 TicketMaster 的条形码甚至转售门票,且 TicketMaster 使 token 提取变得容易,同时对 rawToken 的生命周期未知。
关键信息:
- TicketMaster 采用 Mobile Entry(SafeTix)系统,以旋转条形码形式发放门票。
- 条形码存在网络问题导致入场受阻等情况,公司无电话支持。
- TicketMaster 营销与实际技术存在矛盾。
- 反向工程发现条形码格式及生成机制,包括 TOTP 等。
- 可通过提取 token 等信息复制和转售门票,TicketMaster 使 token 提取容易,rawToken 生命周期未知。
重要细节:
- 旋转条形码是 PDF417 条形码,编码 UTF-8 文本,蓝色扫过的部分是 CSS 动画,无法防止截图扫描。
- 条形码中的数据包括 Base64 编码数据、两个六位数及 unix 时间戳,前两个六位数类似 TOTP,base64 数据可能是随机 bearer 令牌。
- 通过 Chrome DevTools 发现 TicketMaster API 中的相关信息,如 token 等,以及生成条形码数据的函数。
- 安装 oathtool 验证 TOTP 的生成,eventKey 和 customerKey 分别用于生成两个 TOTP,unix 时间戳用于服务器端验证。
- 关于 rawToken 生命周期,仅在 TicketMaster 开发者 API 文档中的一份 obscure 文档中有提及,可能 20 小时有效。
- 作者制作了 TicketGimp 应用可渲染 SafeTix 条形码。
结论:作者对 TicketMaster 表示强烈不满,认为其产品和营销存在问题,呼吁开发者应谨慎使用权力,避免滥用技术排除他人。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。