## 第一张卡

-----------------------------

金额 | 扇区数据

:--- |:---

56.77 | 3C 48 2D 16 05 B7 00 00 00 02 02 00 00 FD 00 B7

56.65 | 35 37 21 16 00 C8 00 00 00 02 02 00 00 FD 00 C8

56.15 | F8 04 EF 15 00 FB 00 00 00 02 02 00 00 FD 00 FB

56.00 | F7 F5 E0 15 00 0A 00 00 00 02 02 00 00 FD 00 0A

55.00 | 6B 91 7C 15 00 6E 00 00 00 02 02 00 00 FD 00 6E

## 另一张卡

-----------------------------

金额 | 扇区数据

:--- | :---

12.20 | C1 C8 C4 04 00 37 00 00 00 01 01 00 00 FE 00 38

10.00 | EA EB E8 03 00 14 00 00 00 01 01 00 00 FE 00 15

00.00 | 01 00 00 00 00 FF 00 00 00 01 01 00 00 FE 00 00

## 算法分析

-----------------------------

- 第三位和第四位是金额

`2D 16 -> 162D -> 5677 -> 56.77`

- 第二位是第三位, 第四位, 第五位的和

`48 = 2D + 16 + 05`

- 第六位与第十六位是第二位取反

`B7 = NOT 48`

- 第一位是异或第二位到第十五位的值

`3C = 48 XOR 2D XOR 16 XOR 05 XOR B7 XOR 00 XOR 00 XOR 00 XOR 02 XOR 02 XOR 00 XOR 00 XOR FD XOR 00`

## 引用

-----------------------------

- [水卡算法分析](http://bbs.pediy.com/thread-217379.htm)