巧用二维码反验票务系统数据可靠性

22.11.2018  21:33

随着互联网大数据时代的到来,旅游行业和现代网络信息技术不断融合,旅游景点所售门票也从传统的单一实体票向二维码电子票转变,网络售票逐渐已成为主要售票形式,这就对售票系统功能设计的规范、完善提出了更高的要求。今年,随着审计覆盖面加大,审计逐步开始对票务系统进行关注,笔者所在审计部门也尝试在投资项目绩效审计中嵌入将票务系统的投建与运营绩效纳入审计范畴。

笔者在对某项目票务系统进行调查发现,一般情况下,票务系统管理员对数据库有较高的操作权限,如果有人利用系统管理员的ID对系统数据做出一些修改,是难以及时被发现的。而票务系统后台数据库中记录了票种标识、人员数量、交易时间等一系列重要的信息,是反映真实业务情况的重要记录,如果信息被篡改,势必影响其他业务指标的评判,甚至被人利用从而非法获利。那么,在获取系统数据后,如何验证该数据的真实性、完整性、可靠性,便成了票务系统审计中第一道亟待攻克的难关。

经过笔者所在审计组反复讨论研究,决定将电子票二维码作为一个关键的突破口。在产生门票销售订单时,票务系统会自动生成一个唯一对应的二维码,二维码对应的是一段十六进制的字符串,字符串中同样包含了票种标识、人员数量、售票时间等重要信息,而基于系统设计的字符串生成机制和校验机制,除系统编码人员,其他人在程序之外只能看到结果,一般无法知晓字符串所包含的对应信息,而且这些字符串通过非对称秘钥加密,即使了解编码结构也无法对数据进行修改。因此,销售订单一旦生成二维码后,再想通过修改这段十六进制的字符串生成相应的信息与数据库中对应字段来匹配几乎是不可能的,也就是说,二维码或者十六进制代码一旦生成,其对应的数据库系统记录数据就是唯一的,如果后期更改数据系统数据,其生成的二维码或者十六进制代码必然与修改前的原始数据生成的二维码及十六进制代码不一致,因此,审计人员可以通过已经生成的二维码或十六进制代码反推出数据库原始数据,然后跟数据库中对应的现有数据进行对比,如果不一致,即可认定现有数据是被篡改过的,以此来验证票务系统数据的可靠性。(范芹 杨俊宏)