环视了一圈眾人,平克曼继续道:
“所以,那些手电筒根本就不是手电筒,或者说不只是手电筒。它们每一个都是一个经过改装的rfid收发装置。外壳是手电筒的样子,但內部的电路被全部替换了。”
“当那些嘉宾,把手电筒的光对准邀请函背面的银行卡余额时,实际上,是变相的让自己的手机,在靠近那个『手电筒』的读取区域。那个『手电筒』读取了你手机里的所有信息,这其中就包括银行卡的——卡號、持卡人姓名、有效期、以及最关键的东西——cvv。”
说话间,平克曼放下了银行卡,拿起那个黑色盒子,用手掌拍了拍。
“与此同时,舞台上的楚辰——或者更准確地说,楚辰身上或附近的某个设备——正在以同样的方式读取布莱恩·汤普森的银行卡信息。他不需要黑进银行的网络,不需要破解任何加密算法。他只是在卡片和pos机之间,插入了一个『中间人』。这个中间人做的事情很简单:拦截pos机发出的读取信號,把信號转发到卡片的晶片上,然后拦截晶片返回的信息,转发给pos机。在这个过程中,中间人可以同时做另一件事——修改信息。”
他从帆布包里拿出了第二样东西。
那是一个pos机,超市里最常见的那种,白色的外壳,灰色的按键,屏幕不大,上面显示著输入金额的界面。
平克曼把pos机放在桌上,把那个黑色盒子的天线朝向pos机,然后把那张银行卡放在了pos机的感应区。
“滴。”
pos机的屏幕上跳出了一行字:金额 20.00。然后是一行小字:请確认。
平克曼没有按確认。他把银行卡从pos机上拿开,把那张银行卡举到眼前,看著它。
“正常的交易流程,你们都知道。你在超市买东西,收银员输入金额,你把银行卡靠近pos机,pos机读取你的卡信息,向银行发起交易请求,银行验证你的帐户余额是否足够,扣款,返回成功指令,pos机列印小票。整个过程快的几秒,慢的几十秒。但在这个流程里,有一步是最脆弱的——pos机读取你的卡信息的那一步。”
他把银行卡放在桌上,又拿起那个黑色盒子。
“因为pos机和卡片之间的通讯,是无线射频通讯。它不要求物理接触。只要在有效距离內,任何人都可以发射一个射频信號,请求你的卡片返回信息。你的卡片分不清这个信號是来自商家的pos机,还是来自一个路边的陌生人的手持设备。它只知道——有一个合法的读卡器在请求读取,它应该响应。”
他把盒子举到空中,让天线对著天花板。
“楚辰的那些『手电筒』,每一个都是一个独立的读卡器。它们读取了在场所有观眾的银行卡信息,並通过某种方式——可能是蓝牙、可能是wi-fi、可能是加密的无线电波——把这些信息实时传输到了舞台上的某个中央处理设备里。那个中央处理设备里,有布莱恩·汤普森的银行卡信息。然后,他做了一个极其简单、极其粗暴、但极其有效的事情。”
平克曼把pos机拿起来,放在了自己的左手边。然后把那个黑色盒子放在了右手边。
“他把布莱恩的银行卡信息,『写入』了在场的每一张银行卡里。不是真的写入了物理晶片,而是在交易请求发出的时候,用布莱恩的信息替换了持卡人自己的信息。当莫妮卡用她的『手电筒』对著她的银行卡时,那个『手电筒』发出的不是一个读取请求,而是一个交易请求——用布莱恩的帐户向莫妮卡的帐户转帐二十万美元。pos机收到这个交易请求,看到的是布莱恩的卡信息,於是向银行发起了一笔从布莱恩帐户到莫妮卡帐户的转帐。银行系统验证了布莱恩的帐户余额——足够,於是批准了这笔交易。整个过程中,莫妮卡自己的银行卡里有没有钱,根本不重要。重要的是,布莱恩的银行卡信息在那个瞬间,被『穿』在了她的卡上。”
听到这里,林旭突然插嘴问道:
“但问题是,这样的技术很难实现啊,首先,普通的rfid收发装置,在涉及到大额转帐,根本不起作用。其次,就算在厉害的中央处理设备,也无法在短时间內完成这么大规模的运算,因为算力不够啊,除非把量子计算机给搬来。”