磁気カードで遊んだ記録 〜李下に冠を正さず〜

                                                                                           2017/12/28 7M4MON

概要

MagSpoof (by Samy Kamkar)というクレジットカードなどの磁気カードをエミュレーションする、ぁゃιぃ オープンソース・ハードウェアがあるのですが、
これに手を加えて日本で普及している「JIS X 6302-2 附属書JA  『おもて面磁気ストライプ付き識別カード』 」の記録/再生装置を製作しました。


特徴



JIS X 6302-2 附属書JA 『おもて面磁気ストライプ付き識別カード』について

日本で普及している診察券や会員証、ポイントカードなどは、いわゆる JIS-II タイプのカードというもので、
(国際)クレジットカードの記録方式とは磁気の記録形式やデータのフォーマットが異なります。
規格書はこちらのページにありますが、必要なものを簡単にまとめると下記の通りです。


クレジットカード JIS-IIのカード
記録面

トラック数
2 1
トラック番号
1
2
---
ビット構成
7
5
8(7+Parity)
最大文字数
79
40
69+3
開始文字
%
;
0x7F(DEL)
終了文字
? 0x7F(DEL)
文字に対するビットシフト
32
48
0
区切り文字 ^
= 規定無し
通称 ジスイチ
ジスニ
主な使用国
全世界
日本

規格書を読んでも分からなかったのですが、水平冗長検査文字(LRC 文字) の初期値?は国際規格が0で、国内規格は0xFFのようでした。

STXとETXが同じですが、逆方向のスワイプはLRCチェックで弾くことが可能です。

ハードウェアについて

読取り&記録モードについて

  
MagCardReaderからの追加機能としては
といったところです。

ソースコードなど

githubに置きましたのでご自由にどうぞ


余談