如何开始使用磁条卡?

How to getting started with magnetic stripe cards?

我是磁条卡领域的新手。但是如果我对这些卡的结构一无所知,我也无法为它们开发软件。

搜索了很多,只给了我这个信息:

This cards have 3 different Tracks named Track-1, Track-2 and Track-3 in their black bar. And the density of data on each Track is different from the others.

我的问题:

  1. 磁条卡reader和烧录器有什么区别吗?或者像智能卡reader,reader也写字?

  2. 所有的readers[/writers]是否可以默认读取[/write]所有三个轨道,我们选择哪个轨道是我们程序的目标?或某些 readers [/writers] 用于 Track-1,其他一些用于 Track-2,还有一些用于 Track-3?换句话说,设备是否需要三个不同的磁头(是一个磁头?)来处理不同的轨道,还是一个磁头用于所有三个轨道?

  3. 这三个Track是可读可写的还是有些只可读的?

  4. 我们是否需要新卡才能在上面写入数据,或者我们可以清除已使用的卡并在其轨道上重新写入新数据?

  5. 在磁条卡的设备列表中有一个名为编码器的设备。这个编码器是做什么用的? Encoder和Reader或Writer有什么区别?

  6. 为什么不同轨道的数据密度和数据类型(字母或数字)不同?

  7. 任何工具、文档、规范、标准、库或入门教程?

首先,您需要阅读 ISO-7811 和 ISO-7812 磁卡标准。

然后,您需要学习如何连接最小工作示例 (MWE) 系统。幸运的是,card readers are easy to come by,你可以直接将它们连接到像 Arduino 这样的东西上。

至少举一个例子,银行卡的格式是:

% "ASCII string on track 1" ?; "ACSII string on track 2" ?; "ASCII string on track 3" ?

只是提供了串口流,所以"packets"不同类型的卡会有所不同。由于这只是一个 reader,因此将所有数据视为只读。

您还可以找到 pulling the data off of the card 的一些现有代码示例。

您还可以找到"blank" cards on SparkFun as well, but you'll need to put in some more money for a writer setup。此外,现在各种磁条刷卡都有安全功能,包括大学、信用卡等,因此部分磁条难以读取或只读等

如果您打算做一些阴暗的事情,这些工具将不起作用,这是理所当然的。

如果您打算为实验室或学校制作自己的安全系统,这些卡片很容易被聪明人克隆和破解。

如果您只是想找点乐子学习新主题,以上建议会有所帮助。

干杯!