【转自】http://blog.sina.com.cn/s/blog_9ed067ad0101295n.html

无论什么样的智能卡,不管是接触式的还是非接触式的,存储数据都是一个必须具备的功能。即使是只有一个5字节卡号的ID64格式的卡片也不例外,只不过卡里面的内容在出厂时就被厂家写死了,用户只能读出而不能写入或改变其内容罢了。

数据在存储介质中的存储格式往往和存储介质的容量有很大关系。容量小的存储器如E2PROM,一般以二进制的位(bit)或字节(byte)为单位;容量大的存储介质如硬盘、U盘,一般以文件的形式存储数据,文件有各种类型,文件大小只要别超过物理存储总量,几乎不受限制。

射频卡通常面向特定的应用,容量较小,所以很少像硬盘或U盘那样数据以格式和大小都不受限制的文件存储,同时多数射频卡也不以位(bit)或字节(byte)为单位执行读写操作,可能是因为射频卡的数据通过无线传输,数据传输时要调制、解调,并且要加上帧头、帧尾、同步、校验,传的字节数太少了效率太低。

射频卡中的数据一般以页(Page)、块(Block)或特定文件(File)的形式存储。

页一般包括4个字节,比如Mifare Ultralight、Hitag-1、Hitag-2、Hitag-s、ICODE2都是以4个字节为1页,每次读写以4个字节(1页)为单位;

块通常比页大,象Mifare1 S50、S70、FELICA就是以块为读写单位,一个数据块包含16字节;

容量更大的射频卡中一般以文件的形式存储数据,例如Mifare Desfire以及多数CPU卡,当然这里所谓的文件其大小和类型都受到严格限制。

智能卡(包括接触式卡和非接触式卡)中的文件一般有以下4种:

1.透明二进制文件:这是最简单也是最基础的智能卡文件,文件大小可变,写入和读出的数据多少也可变,文件里的内容被看做透明的二进制数据流,没有特定的格式;

2.线性定长记录文件:文件被分为若干个等长的区段,每个区段对应一个记录,读和写以整条的记录为单位,用记录号来识别区分每条记录;

3.线性变长记录文件:文件也是以记录为单位进行组织,但各条记录的大小可以不同,读和写以整条的记录为单位,也是用记录号来识别区分每条记录。记录的长度虽然可变,但一旦写完,后来更新的时候新记录的长度必须和原来记录的长度相同;

4.循环定长记录文件;文件以等长的记录来组织存储,与线性定长记录文件不同的是,文件里的记录数是固定的,所有记录写满了后,继续向文件里写记录将覆盖最早添加的记录。每条记录的记录号也不是固定的,最新写入记录的记录号总是1,上一次写入记录的记录号是2,依次类推。

射频识别技术漫谈(17)——射频卡中数据的存储形式相关推荐

  1. 射频识别技术漫谈(29)——射频接口芯片TRF7960

    [转自]http://blog.sina.com.cn/s/blog_9ed067ad0101fdhv.html TRF7960系列是TI推出的载波为13.56MHz.支持ISO15693.ISO14 ...

  2. 射频识别技术漫谈(27)——CPU卡概述

    [转自]http://blog.sina.com.cn/s/blog_9ed067ad01018h0z.html 智能卡按安全级别可以分为三类:存储器卡.逻辑加密卡和CPU卡,其中CPU卡是安全级别最 ...

  3. 射频识别技术漫谈(6-10)

    射频识别技术漫谈(6)--通讯协议概述 通讯协议是通讯的双方或多方在交流时遵守的规矩,包括谁先发起通讯,先交流什么,后交流什么,一方如何问,另一方如何答等.在这里通迅的双方指的是读写器和卡片. 首先是 ...

  4. opengl中的Floatbuffer和IntBuffer与java中数据的存储方式不同的解决方法,编辑一个自己的BufferUtil工具类

    opengl中的Floatbuffer和IntBuffer与java中数据的存储方式不同的解决方法,编辑一个自己的BufferUtil工具类 参考文章: (1)opengl中的Floatbuffer和 ...

  5. datasg中数据的存储结构

    datasg中数据的存储结构 转载于:https://www.cnblogs.com/LoveFishC/archive/2012/07/27/3845623.html

  6. UDS中数据的存储(FLASH/EEPROM/RAM)

    返回UDS系列讲解总目录 UDS中数据的存储是一个容易混淆但又非常重要的点,下面我们就来简单捋一捋. ECU中用到的存储芯片通常有三种:FLASH,RAM,EEPROM. FLASH一次写入,掉电数据 ...

  7. 关于c语言中数据的存储

    数据的存储首先就要说到数据的类型,类型决定了看待内存空间的视角. c语言的数据类型分为内置类型和外置类型 1.内置类型 (1)整型 char(字符型).short(短整型).int(整型).long( ...

  8. Matlab中数据的存储方式

    简介 MATLAB提供了丰富的算法以及一个易于操作的语言,给算法研发工作者提供了很多便利.然而MATLAB在执行某些任务的时候,执行效率偏低,测试较大任务量时可能会引起较长时间的等待.未解决这个问题, ...

  9. OpenGL, GLSL, DirectX, HLSL中的矩阵存储形式

    (原文地址:http://alvincc-tech.blogspot.com/2010/10/opengl-glsl-directx-hlsl.html) OpenGL, GLSL, DirectX, ...

  10. 射频识别技术漫谈(28)——基于MF1射频卡的酒店门锁设计

    [转自]http://blog.sina.com.cn/s/blog_9ed067ad0101dupi.html 电子门锁是现代星级酒店管理电子化.智能化的重要电子设备.相较于传统的机械锁,基于RFI ...

最新文章

  1. Windows Phone开发(39):漫谈关键帧动画上篇 转:http://blog.csdn.net/tcjiaan/article/details/7550506...
  2. Jerry眼中的SAP客户数据模型
  3. c语言中小数乘法怎样写程序,四年级下册lbrack;小数乘法rsqb;知识点归纳
  4. windows 7下如何卸载重装mysql 压缩包版百度经验_windows下安装、卸载mysql服务的方法(mysql 5.6 zip解压...
  5. boost::units::unscale相关的测试程序
  6. SQL 快速入门2.1
  7. 进入IT行业,要不要参加培训班?
  8. Monkey随机性能压测初探(一)
  9. Linux 命令(129)—— passwd 命令
  10. Android AP模式下获取SSID/PASSWORD
  11. 16.高性能MySQL --- MySQL用户工具
  12. 面试官:请手写一个 webpack 4.0 配置
  13. 24种不同的ITF条形码字体版本的条形码控件Interleaved 2 of 5 Barcode Font Advantage Package...
  14. 多元素过渡理解和一点透
  15. android retrofit实例,Retrofit使用步骤
  16. Arduino 和LCD1602液晶屏 I2C接口实验
  17. 【神经网络】Pytorch构建自己的训练数据集
  18. 描述12个异性追求者(互动媒体技术作业)
  19. OneTab Plus|标签管理大师
  20. 日本行,一些随笔和照片

热门文章

  1. websockets_Websockets在数据工程中鲜为人知的模式
  2. U2000V200R018 的安装教程我们用微软的Windows7专业版示例
  3. BUS hound使用
  4. 矢量图代替PNG/JPG
  5. 《数学建模与数学实验》第5版 网络优化 习题5.9
  6. CCNA 测试题及答案 第一章
  7. 计算机博弈 基础算法 阿尔法-贝塔剪枝算法 α-β剪枝算法
  8. oracle12能卸干净吗,oracle卸载干净【设置方案】
  9. php 监听端口数据客户端ip_PHP获取客户端和服务器端IP
  10. i2cdetect i2cdump i2cget i2cset用法