haitao:
回来的路上,在地铁还就地铁磁卡系统的设计做了深入的探讨
[阅读: 500] 2005-06-26 05:07:16
初步判断:应该有2种模式:
1、进闸时,把时间和当前站编号写入磁卡,出闸时读出,据此判断是否有效、需要补票
2、磁卡里只有一个固定的ID,进闸时,读出该ID存到后台的数据库(或内存),出闸时,读出该ID与后台数据库里的进行比较,据此判断是否有效、需要补票
模式1需要反复写磁卡,而且容易被攻破(自行改写时间和站号,最多将逃掉最高票价-最低票价的金额)
模式2需要一个庞大而且交易频繁的后台数据库系统,但是不容易攻破
所以,感觉应该是模式2
另外关于充值卡(IC卡):估计是类似模式1,因为如果是模式2,万一有人以IC卡进闸,而以另一张IC卡或磁卡(它们在进闸时刷或不刷)出闸,可能导致那张IC卡异常。。。
初步估计是:IC卡进闸时,先按最高价扣除(商家永远不会吃亏的原则),同时记录时间和当前站编号,出闸时,计算实际票价,补回价差