来源:卡市场信息网 作者:语馨 收编 发布时间:2008-02-21 10:54:17 字体:[大 中 小]
摘 要:目前在各个城市的公共交通系统(地铁、公交巴士等)中广泛地使用了电子车票来作为进出站的控制,其中对于最简单的单程/双程车票的应用,一般我们会使用廉价的Mifare Light 卡(芯片)或上海华虹SHC1102卡(芯片)或复旦微电子FM11RF005卡(芯片)等来作为识别载体。这些车票的封装形式、可能的物理形状为一个圆形的“Token”筹码等。
加密操作说明如下:
如果要求加密的钱包金额数据B=0x10(元),而该张单程车票的唯一卡号为A=0x0001, 控制密钥为C=0xFFFF,则该张单程车票的加密后的钱包数据D(可能)=0x1a2b3c;(注意,一般从数据D是不可能推倒出数据输入量B的准确值的,这是由DES加密算法的“不可逆推特性”所决定的,否则不能作为加密算法!)
如果要求加密的另外一张单程车票的唯一卡号为A=0x0002,而所有其它的输入量A和C都一样(也即同样在两个单程车票中存入相同的钱包金额数据B=0x10(元)),则加密算法此时的输出量D(可能)=0x2a3c4d;等等,但是绝对不可能是和前一张的输出量D(=0x1a2b3c)相同!!!à 这一特性是由加密算法(DES或3-DES或RSA或其它算法)的“不同输入量一定形成不同的输出量”这一特性来决定的!!!
尽管两张单程车票的钱包金额相同,但实际存储在单程车票内部对应的数据是完全不同的,也即达到了“一卡一密”的目的!如果有任何的数据截取行为发生,受到威胁的只是当前的这张卡片(单程车票),整个应用系统还是非常安全的、保密的!并且如果截取者要改写钱包数据到这张卡片(单程车票),则如果他不知加密算法,不知该张卡片号(输入量A)、具体钱包金额(输入量B)和应该写入卡片的钱包金额(输出量D)之间的关系,那么写入的数据(输出量D)是无法正确还原到输入量B的。(读写器在读到该数据D后将做DES逆算法,将算出的D和卡片发送的该数据D相互比较,如果不一致,则认为卡片数据已遭篡改!)
Mifare Light卡存储结构
Mifare Light卡共有384位,分为12页,每页为4个字节。存储结构如下:
( 注:_b表示取反;AC-A_b为AC-A的取反数值 )
1) 第0、1页存放着Mifare Light卡的序列号等信息,只可读。
2) 第2、3页及最后A、B两页数据块,可存贮一般的数据。
3) 和4、5页为数值块,可作为重要数据(例如钱包)使用,两字节的值以正和反两种形式存贮。只有减值操作,没有加值操作。如果不做钱包使用,则可以做为普通的数据块使用。
4)第6、7、8、9页存储着密码A(6字节)、密码B(6字节)及存取控制AC。
5)一次写操作可以操作一个页(4个字节),一次读操作可以操作两页(8个字节)。
6)第7页中的2字节(AC-A和AC-A_b)、第9页中的2字节(AC-B、AC-B_b)为数据存储控制字节,存储控制字节以正写和反写的形式各存一次。
存储控制字节AC-A和AC-B的数据格式如下,字节(byte)中每个位(bit)如果为“1”,则“使能”相应的功能;反之,如果是“0”,则关闭相应功能。
例如:如果AC-A的数据=“0xFF”=“11111111”b,则表示:
页Data1:可读、可写;
页Value:可写;
AC-A:可写;
Data2:可读、可写;
二.上海华虹 SHC1102卡
上海华虹集成电路有限公司的 SHC1102 集成电路(IC)是非接触式IC卡芯片系列中面向低成本应用的一个产品,它能够用小型天线完成与读写终端之间的射频通信,其技术和测试标准符合ISO/IEC 14443-Type A 的国际标准,具有非常强的经济性和可靠性。SHC1102 芯片适用于轨道交通AFC收费系统中的可回收单程票、防伪无线电子标签、电子门锁、身份识别及代币筹码等领域。
主要技术参数
1.工作频率:13.56 MHz
2.通信速率:106k bps
3.调制方式:ISO/IEC 14443 Type A
4.工作温度:-20℃至80℃
5.存贮容量:512 bits
6.无电池: 无线方式传递数据和能量
7.读写距离:在距读卡器天线0-40 mm区域内能正确进行数据交换和完成各项操作
8.采用半双工通讯协议
9.在无线通讯过程中通过以下机制来保证数据完整
i.---每帧有16位CRC检验
ii.---每字节有奇偶校验位
iii.---检查位数
iv.---用编码方式来区分l、0或无信息
10.数据安全性
i.---相互认证
ii.---每张卡的序列号唯一
iii.---传输密钥保护
11.灵活的的存储结构
i. ---512 位EEPROM (16 Blocks × 4 Bytes × 8 Bits )
ii. ---分为2个不同访问条件的数据区 ( DATA 1、DATA 2 )
iii. ---每个块为最小访问单位,由4个字节组成
iv. ---每个芯片可定义自己独立的密钥 (4 Bytes )
12.数据保持时间大于10年
13.擦写次数大于10万次
14.典型交易时间小于200ms
数据交易流程
当 SHC1102 芯片接收到读写器的指令后,经过指令译码,通过控制逻辑进行数据处理,并返回相应的处理结果。
当华虹 SHC1102 位于读写器的有效工作范围之外时,芯片处于无电状态,不能进行任何操作;当其进入读写器的有效工作范围,芯片上电复位,进入等待状态,在此状态下可正确接收和响应读写器发送的询卡/应答指令,并进行相互认证、读、写等操作。
数据操作指令
询卡/应答
读写器通过发出指令来确认是否有华虹非接触式IC卡产品(SHC1102)进入其操作范围,并通过应答确认产品的类型。并由产品类型确定相互之间的通讯协议和通讯速率。卡应在确认被选中后返回卡的用户码(CID)。
推荐文章
论坛热帖