0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于加密存储卡1604卡实现IC芯片卡的应用设计

电子设计 来源:维库电子网 作者:佚名 2020-12-09 09:51 次阅读

IC卡技术已经广泛应用于金融、保险、社会保障、身份识别等领域。她以她存储容量大,安全性能好,携带方便等特点,得到广大行业的普遍认同。

一 IC卡应用从技术角度来讲分三个层次:硬件层、技术层和应用层。

1 硬件层分两个方面:

1) IC卡芯片及卡的制作。IC卡芯片目前主要有国外爱尔梅特、西门子等几家公司生产。IC卡片的制作是把IC芯片封装成为一张张各式各样的卡片,这样的公司国内很多。

2) 另一方面为IC卡读写器.IC卡读写器粪通用与专用两种:通用读写器为一台单独的装置,可以用来读取不同型号的IC卡。专用读写器通常嵌入专用仪器中,例如:IC卡电话机,IC卡电表等,一般只能读取某种特定IC卡。对于上述行业中,IC卡读写器一般采用通用读写器,生产这种IC卡读写器公司,国内已经有一些,比如深圳的明华粤汉公司。但传统的通用读写器一般是把一张IC卡插入读写器中,IC卡上的密码和对于数据读取都由读写器以外的应用程序来完成,这样在一定程度上用户的信息就暴露给了应用程序的开发与维护人员。未了解决用户信息的安全过分依赖于应用程序的问题,现在已经研制出一种双卡座IC卡读写器,这种读写在原来读写器基础上增加了一个SAM卡座,用来插智能存储卡(CPU卡),SAM卡上带有加密解密程序,SAM能对用户的密钥进行加密与解密存取,核对卡上密码,加密解密存取卡中数据。这样在一定程度上隔离了IC卡的安全系统与应用程序系统之间的关系,保证了IC卡的用户独立性。

2 接口

应用系统要通过IC卡读写起来读写IC卡中的数据,这就需要IC卡读写器向应用系统提供一个读写接口,现在IC卡读写器的接口一般有普通串口,USB接口,以及无线接口,因此IC卡读写器的开发人员就的为应用系统开发人员提供一套接口程序,目前在WINDOWS平台上普遍采用提供一组动态连接库(dll)给应用系统开发人员。应用系统开发人员就调用动态连接库中函数来完成对IC卡的操作。采用普通串口读写器动态库主要完成是串口通讯的功能。

IC_DLL动态库大体设计思路如下:

IC_DLL动态库主要用来与IC卡读写器之间进行通讯,可以通过串口或并口,具体通讯方式是:IC_DLL动态库向串口或并口发送与读写器协调一致的通讯信号,而读写器则从串口接收这些通讯信号,然后根据这些通讯信号来对IC卡进行具体操作,真正直接操作IC卡是读写器,而IC_DLL动态库是利用串口或并口来操作读写器的函数库。

IC_DLL动态库大体设计方法如下:

(1)与串口的底层接口:

利用WINDOWS对硬件设备的抽象:在WINDOWS 环境下,WINDOWS对硬件设备的管理采用设备文件方式。在IC_DLL动态库中建立一个与串口或并口相关联的通讯设备文件gFile,通过读写设备文件来实现对串口或并口数据的接收与发送。

另外,利用WINDOWS的底层通讯结构COMMTIMEOUTS,DCB,COMSTAT来对通讯设备的属性进行访问与设置。

(2)IC_DLL动态库内部函数的处理机制

利用c语言丰富而强大的对内存管理和对字节的处理功能,另外还利用c语言丰富的数据类型,很方便的实现对IC卡上的存储地址的计算和数据的移位操作;利用移位操作和位操作可以实现数据在二进制位上的加密和校验,IC_DLL动态库内部对发送到串口或并口上的数据都在二进位上进行了加密,以防在串口或并口上窃取数据。

(3)IC_DLL动态库与高层接口

IC_DLL动态库采用传递参数和调用函数返回值来与高层通讯,并对高层传递过来的参数有一个合法性检查,对底层返回错误有错误处理机制和错误提示信息,对与高层使用者来说,底层与本层的处理和错误是透明的,高层使用者只须通过调用函数的返回值来判定此次操作成功与否。

3 应用层

各种行业的应用系统中是如何利用IC卡来存储与操作用户向关数据?这就要事先对IC卡上的存储空间根据用户数据进行规划,下面举一个在医疗保险系统中对1604卡的使用与规划情况:

二、IC卡的应用实例:加密存储卡1604卡在医保信息系统中的应用

1 1604卡的特点:

— 逻辑加密存储芯片

— 属于单存储器多逻辑分区结构。主存储器划分了特定的标志数据区和控制数据区之外,还将应用数据区分成四个完全隔离的子区,并在每个子区中配备了各自的读、写控制标志和写入/擦除密码以及密码输入错误计数器等逻辑控制。

— 芯片为串行传输方式,并满足ISO7816-3同步传送协议。采用低功耗的CMOS工艺制造,每字节的读取时间为2us,写周期为5ms。

— 内部设计有电压提升电路,保证使用单+5V电源电压能够完成对芯片的读写和擦除等各类编程操作。

芯片的存储单元具有至少10000次的擦除/改写循环次数,数据保存期为10年。

2 芯片的存储分区及其定义[1]:

3 IC卡的密码系统

1) 使用SC作为用户密码

2) 应用SCn、EZn为应用系统的密码控制,同时也可用来作为卡片防伪控制

3) 设置Pn=0、Rn=0,这样使得,要读数据必须在本应用系统才可读数,要进行修改数据操作必须还要核对EZn才可。

4) 各个应用系统分别有自己的两个密码(SCn、EZn),使得应用系统之间数据具有安全性。

注意:由于所有卡片的SCn、EZn都完全相同,那么系统对于这两个密码的保护就相当重要,它称为系统安全性的唯一保证,可以采取其它密码保护措施。

4 IC卡的个人化操作

1)个人化流程,如图1所示。

2)密码控制

用户密码只有一个,但不同的应用系统分别对这个用户密码使用DES算法将会产生不同的结果,这样可以保证不同的应用系统,不可对其它应用系统的数据进行修改。但这带来的一个问题是,用户修改密码必须在总发行机构,必须同时对所有应用系统使用DES算法重新计算一次。

个人化之前:

(1)只有总密码,总密码可读,四个分区密码无效(即核对无效),但可以设置密码

(2)制造商代码区不能修改,其它所有区域均可读写擦,只由总密码控制

个人化之后:

(1)总密码不可读,四个分区密码有效,所有密码均不可读

(2)发行区、个人代码区不可修改,但可读

(3)一区密码有错误计数器,其它分区密码没有错误计数器。

(4)错误计数达到8次,则IC卡锁死。

4)用户数据存储规划:

用户数分四个部分:

a.版本信息:应用一区的前两个字节。

b.用户基本信息: 应用一区的前512各字节。

c.用户就诊结算数据: 应用一区的剩下字节。

d.用户身份识别数据:应用二区

5)IC卡的使用方法:如图2所示

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    455

    文章

    50721

    浏览量

    423165
  • 封装
    +关注

    关注

    126

    文章

    7874

    浏览量

    142896
  • 读写器
    +关注

    关注

    3

    文章

    656

    浏览量

    38842
收藏 人收藏

    评论

    相关推荐

    存储卡介绍

    存储卡介绍 各种存储卡特性及参数分析
    发表于 09-10 16:32 40次下载

    3250不读存储卡维修图

    3250不读存储卡
    发表于 09-01 17:45 1131次阅读
    3250不读<b class='flag-5'>存储卡</b>维修图

    手机存储卡

    手机存储卡              支持存储卡即手
    发表于 12-19 13:13 533次阅读

    MMC存储卡

    MMC存储卡 MMC(MultiMediaCard,多媒体存储卡)由SanDisk和Siemens公司在1997年发起,与传统的移动存储卡相比,其最明显的外在特征是尺寸更加微缩——只有
    发表于 12-19 13:14 2474次阅读

    miniSD存储卡

    miniSD存储卡              miniSD是在数码相机,PDA等所用的Flash Memory Card(中文名:快闪
    发表于 12-19 13:21 753次阅读

    首个32 GB microSDHC存储卡问世

    首个32 GB microSDHC存储卡问世      SanDisk(闪迪)宣布,闪迪专为手机打造的的大容量、移动式存储卡 ——32 gigabyte (GB)1 闪迪 microSDHC存储卡——现已上
    发表于 03-25 17:20 1121次阅读

    什么是加密存储

    什么是加密存储 加密存储内嵌芯片
    发表于 04-01 17:46 560次阅读

    逻辑加密,逻辑加密是什么意思

    逻辑加密,逻辑加密是什么意思 逻辑加密存储卡(Smart Card With Securi
    发表于 04-02 13:35 4773次阅读

    单片机控制AT88SC1604的应用实例

    本文介绍了目前应用较为广泛的AT88SC1604逻辑 加密 的特点和工作原理,同时给出了通过单片机控制操作IC的的应用实例及程序。 前言
    发表于 09-28 20:00 3911次阅读
    单片机控制AT88SC<b class='flag-5'>1604</b><b class='flag-5'>卡</b>的应用实例

    选购存储卡的秘诀

    随着NAND 3D闪存技术的发展,存储卡的容量价格比正逐渐朝着喜人的趋势发展,50元左右就可以买到64GB容量的产品。问题来了,存储卡如何区分优良中差?哪个类别和价位的存储卡最适合我们呢?
    的头像 发表于 05-20 11:11 3552次阅读

    天嵌科技:闪存SD存储卡16G-存储卡

    天嵌科技:闪存SD存储卡16G-存储卡
    的头像 发表于 10-16 15:47 1920次阅读
    天嵌科技:闪存SD<b class='flag-5'>存储卡</b>16G-<b class='flag-5'>存储卡</b>

    存储卡的工作方式

    如果用作程序,则可以在存储卡上装载用户程序。这种情况下,存储卡将替代设备的内部装载存储器,且内部装载存储器的数据被擦除。然后完全可以从
    的头像 发表于 10-30 16:06 2211次阅读

    S7-1200的SIMATIC存储卡

    如果用作程序,则可以在存储卡上装载用户程序。这种情况下,存储卡将替代设备的内部装载存储器,且内部装载存储器的数据被擦除。然后完全可以从
    的头像 发表于 01-18 11:15 3366次阅读

    如何使用S7-1200 CPU的存储卡呢?

    S7-1200 CPU 使用的存储卡为 SD 存储卡中可以存储用户项目文件,有如下3种功能
    的头像 发表于 02-26 09:53 1902次阅读
    如何使用S7-1200 CPU的<b class='flag-5'>存储卡</b>呢?

    S7-1200 CPU 存储卡的应用分析

    S7-1200 CPU 使用的存储卡为 SD 存储卡中可以存储用户项目文件,有如下3种功能: 作为 CPU 的装载存储区,用户项目
    发表于 03-15 11:11 1075次阅读
    S7-1200 CPU <b class='flag-5'>存储卡</b>的应用分析