社区导航

 

搜索
查看: 536|回复: 0

[分享] 射频识别有关CPU卡

[复制链接]

5935

TA的帖子

19

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2020-1-13 20:28 | 显示全部楼层 |阅读模式

        智能卡按安全级别可以分为三类:存储器卡、逻辑加密卡和CPU卡,其中CPU卡是安全级别最高的。从“CPU”这个名字可以看出,CPU卡最大的特点就是卡片里面有一个"CPU",有了CPU我们就可以对卡片编程写入软件(COS,卡片操作系统),实现复杂的安全加密算法,所以CPU卡的安全性是最高的。与之形成对比的是,存储器卡和逻辑加密卡中没有"CPU",尽管在我们看来像MIFARE1卡看起来似乎也很智能,但M1卡里存在的仅仅是一个专用集成电路(ASIC),而不是CPU。
    说到非接触式CPU卡,就不得不提接触式CPU卡,因为就CPU卡的灵魂——COS来说,二者遵循的协议基本是一样的,都是ISO7816-4,不同之处在于二者进入COS的方式和途径,在此以复旦微电的非接触式CPU卡FM1208M01为例,与接触式CPU卡进入COS的过程对比如下图所示。

image.png

CPU卡在进入ISO7816-4协议之前所做的都是一些为卡片和读写器对话进行的准备工作。接触式CPU卡的序列比较简单,卡片插在卡座上,读写器给卡片一个复位(Reset)信号,卡片回送一个应答ATR(Answer To Reset),ATR由5部分组成:
    (1)初始字符TS:指定字符传送规则,如果是3B则高电平表示1,低电平表示0,先传送字符最低有效位;如果是3F 则高电平表示0,低电平表示1,先传送字符最高有效位。
    (2)格式字符T0:指定存在哪些接口字符以及历史字符的个数。
    (3)接口字符  :指定协议参数和协议类型
    (4)历史字符  :说明诸如制造商、芯片型号等一般信息
    (5)校验字符  :保证ATR数据的完整性,使用的是异或校验
    非接触式CPU卡得到ATS(Answer To Select)相对步骤多一些,不过这也是迫不得已,这是由卡片本身的“非接触”特性决定的。不像接触式卡片那样一卡一座,非接触式卡片由于“无源”和“免接触”,读写器的射频场中可能同时存在多张卡片,为了从多张卡片中选中一张进行操作,读写器要启动防冲突和卡选择的过程。由于不能保证射频场中的卡片都是CPU卡,所以读写器选中一张卡片后还要向卡片发送RATS命令,CPU卡会回送一个ATS响应,此ATS与接触式CPU卡的ATR也大同小异,同样由5部分组成:
    (1)长度字符TL:指出ATS的长度,不包括后面的校验字节。
    (2)格式字符T0:指定存在哪些接口字符以及卡片能接收的帧的最大长度。
    (3)接口字符  :指定协议参数和协议类型
    (4)历史字符  :说明诸如制造商、芯片型号、序列号等一般信息
    (5)校验字符  :保证ATS数据的完整性,使用的是2字节CRC校验
    完成ATR或ATS应答之后,卡片可以进行PPS(Protocol Parameter Selection)协商,也可以不协商而使用默认值。此后就进入7816-4,执行COS命令进行数据交换了。

此帖出自RF/无线论坛


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

关闭

站长推荐上一条 /5 下一条

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2020-1-26 01:47 , Processed in 0.095776 second(s), 18 queries , Gzip On, MemCache On.

快速回复 返回顶部 返回列表