数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 6009|回复: 4

对直饮水水卡的技术讨论以及部分疑问

[复制链接]
发表于 2021-8-18 22:19:47 | 显示全部楼层 |阅读模式
大佬勿喷,也请不法分子远离,地处八线城市,本人没有对卡片无关数据作打码(因为懒),想要盗刷者自重
以下是正文
最近闲来无事,研究了一下小区直饮水机的水卡运作
使用读卡软件(喜闻乐见的m1 classic tool)能够读出所有扇区(默认密码)
结果如下
当水卡余额为63元时

刷过一次后(-1.5元)

问题来了,可以看出,在扇区一的5~7位为金额
甚至连校验位都没有
许多人看到这立马高兴了
大呼:“直接改扇区不就完了”
但是我亲自刷过一次卡后,就不这么想了
究其原因,在于刷卡机制
1.放好水桶
2.刷卡(此时显示余额),只需刷一次,不需要将卡放在读卡器上
3.按下出水键
4.等待水满自动停水(定时)
5.结束
可以看到,刷卡时并没有直接扣除卡内金额,所以说卡内的金额只是为了显示方便,真正的余额在网络端储存是吗?
而且我读取卡内数据是先在机子上刷一下,确认余额后再在手机上刷的
应该每次刷卡,机子都会同步卡内余额,所以卡内金额数据意义是什么?
欢迎大家探讨

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
发表于 2021-8-19 14:51:04 | 显示全部楼层
我们这边的饮水机运营方解释说,刷卡时,显示的是当前余额,同时自动刷掉1.5元,然后机器出一桶水。如果你不需要接满一桶水,那么可以再图中再次刷卡,把没出完水的余额(1.5元之内的余额)再刷回卡里面。如果你接满1.5元的水了,那就扣掉费用了,也就是说你在刷卡时显示的余额,是没有刷卡前的,实际上是已经扣掉了1.5元。你可以试试,深夜没人用水,刷一下卡,别接水,这时用手机读卡,看看是不是已经被扣掉1.5了,然后再刷卡,扣掉的又刷回来了?我们这边是这种操作,不知你们那边是什么流程,可以试试出水途中刷卡,是否能停止出水?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-8-19 21:25:32 | 显示全部楼层
谢谢,试过了,确实是这样
也就是说只要知道那个写卡密码
任何人都能更改卡内数据
我之前看到有专门软件破解写卡密码,这样任何人也能改数据,看来这种卡保密性并不高
回复 支持 反对

使用道具 举报

发表于 2021-8-20 08:45:37 | 显示全部楼层
eeerrr 发表于 2021-8-19 21:25
谢谢,试过了,确实是这样
也就是说只要知道那个写卡密码
任何人都能更改卡内数据

确实可以改,但是,这个运营方发卡,每个卡号都会有个数据库记录,你充了多少钱,后期他们应该会将机器内的刷卡总数据上传比较,或者机器内就存着,这个卡号的充值记录,如果比较有差异,比如你充了100,赠送20,总共120,你如果没有刷完这120可能看不出来,如果刷卡金额大于120了,这个就会被查出问题来,这个时候他们可以将这个卡号冻结,刷不了了,因为卡不实名,可能他们当下找不到这个人,如果这个人去问为啥刷不了了,这个就会被抓住了。而且这个卡,同一家的制水机,不同小区的,不能通用,这个估计也是方便他们管理。
回复 支持 反对

使用道具 举报

发表于 2021-8-31 10:56:55 | 显示全部楼层
这可能是一种冗余备份的设计.
净水机主用方式是联网后台数据库进行结算,IC卡只是起'到标识用户ID的作用,同时明文存储余额.当净水机离网,不能连接后台数据库时,就会临时使用IC卡内的余额数据,保证用户正常用水.再次恢复联网后,把IC卡内交易记录传回后台服务器,校验后进行数据同步.
净水机脱网不能连接后台数据库的情况会发生,但极少,且时间短.发生这种情况时,重要的是保障用户用水不中断,至于是否把用户用水记录全部记录下来并扣费,这不重要.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-6-14 09:58 , Processed in 0.343201 second(s), 11 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表