← 返回首页

磁条编码的隐秘世界

发布时间: 2026-04-14 11:45(北京时间)

摘要: 作者深入解析磁条卡的物理与编码原理,涵盖矫顽力(LoCo/HiCo)、磁道结构(三条轨道、不同信息密度)、F2F编码的自同步机制、轨道解码标准(IATA/ABA/THRIFT)及奇校验与LSB First特性。通过铁粉实验直观展示磁道,并指出强磁铁可破坏HiCo磁条。语调冷静、技术性强,兼具实验观察与理论分析。

标签: 磁条卡, 矫顽力, F2F编码, 自同步, 轨道解码, 实验观察, 技术解析, 冷静

字数: 888

原文链接: /7402396589/QAK5raJl4

磁条卡上的黑色部分是磁条,磁条有个概念叫做矫顽力,根据矫顽力一般分为LoCo和HiCo。矫顽力代表覆盖磁条原有数据所需的磁场强度。LoCo的磁条矫顽力大概在300奥斯特左右,更容易在日常生活中被意外消磁。而HiCo的矫顽力最高能达到4000奥斯特,更难被消磁。

磁条上有三条轨道,轨道1和轨道3的信息密度是 210 BPI (Bits Per Inch),而轨道2的信息密度一般只有 75 BPI。我在已经写入数据的磁条上涂抹铁粉,可以看到很明显区分的三条轨道,每条轨道上铁粉汇聚成一道道竖线,这些就是编码后的磁道信息(图1)。

因为轨道的信息密度是不同的,从涂了铁粉的照片中也可以看到,夹在中间的轨道,竖条更加稀疏。假如有办法让这些铁粉均匀涂抹并高清扫描,说不定就可以用图像的方式解析出磁条上的所有信息。

不过磁条上信息的编码并不是简单的有磁就是原数据的bit 1,没磁就是bit 0。一般采用F2F编码的方式,有个更好听的名字叫 Aiken Biphase。磁条读卡方式就是最符合字面意思上的“刷卡”,刷过读卡器的时候磁头能感应到磁极性的翻转,所以编码上就利用了这个特性,简单说明就是逻辑0只在周期开始翻转一次,而逻辑1在周期开始和中间各翻转一次。所以逻辑1的翻转频率更高。

不直接0对应0,1对应1的原因是,这样刷卡的时候相当于没有clk,比如一串数据都是0或都是1,没办法判断数量,除非出一个刷卡的标准速度,让人类刷卡的时候要分秒不差,这显然不太可能。而采用F2F编码就能实现自同步,而且适应各种刷卡速度。

之前谈到的F2F编码其实是物理意义上的编码,当通过读卡器把F2F编码解析成比特流之后,每个轨道一般还需要用不同的方式解码。轨道一用的是IATA编码,一个字符7个比特,轨道二用的是ABA编码,每个字符占5个比特,轨道三用的THRIFT编码,每个字符也是5比特。不管是哪种编码方式,都有一个比特是奇校验,而且数据都是LSB First的。

另外,这些编码都是有做offset的。可能是因为在ASCII码表中,0x00到0x1F是控制字符。

虽然我买的都是HiCo磁条白卡,不过刚刚试了一下,拿钕铁硼磁铁在表面滑动几下,卡就读不出来了。 ​​​​

image