资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,CPU卡读写操作与安全控制,课 程 目 标,CPU卡通信协议,CPU卡通信流程,CPU卡的读写操作,CPU卡的平安技术,工程开发CPU卡POS机,系统需求分析:,具备金融借记卡、电子钱包功能,符合中国人民银行金融卡标准。,具备脱机交易能力。,具备联机网通信能力。,操作稳定可靠。,高平安性,多应用能力,应用灵活性,工程实现之第三步软件编程,ISO/IEC7816智能卡通信协议APDU,Application Protocol Data Unit应用协议数据单元,智能卡外应用程序读写器程序与智能卡内应用程序COS进展通信的根本协议,命令与响应机制,CPU,卡的命令与响应机制,读写器程序,发送命令,COS,接收并处理命令后,回送响应,命令,APDU,命令:固定的,4,个字节命令头,+,长度可变的命令体,CLA:命令的类型 必备,INS:命令编码必备,P1、P2:具体命令参数必备,Lc:数据的长度 可选,数据域:具体的命令数据可选,Le:期望卡返回的数据长度可选,例:建立二进制文件0026,80 E0 02 00(命令头)07(Lc)0026(文件标识符)00(二进制文件类型)1f(读权限)2f(更新权限)01 00(Le,文件长度),命,令,集,响应,APDU,响应:应答体,+,应答尾,响应体:可选,可变长度数据域,由Le确定最大长度,状态位:必备,SW1、SW2:状态字节,表征当前APDU命令的处理情况,处理完成:正常处理:61XX,9000,警告错误:62XX,63XX,处理中断:执行错误:64XX,65XX,检测错误:67XX-6FXX,COS,的应用控制管理,主要功能:,提供给用顺序流程控制;,命令解释与执行:对外部输入的每条命令做语法分析,分析和检查命令参数是否正确,然后执行相应功能。,3.提供命令执行权限控制。,文件数据的操作和管理规那么,1对某个文件做操作之前,必须先选择该文件。,2按文件系统的三层构造操作,COS不支持以路径方式选择文件,所以在选择某个文件前必须先选择它的上一层文件,不允许跨层选择。卡片上电后自动选择主控文件。,3访问文件中的数据要受文件的平安属性的控制。,4对文件的建立要受该文件所属的上层文件的平安属性的控制。,文件访问方式,主文件,MF,复位后自动被选择,在任何一级子目录下可通过文件标识,3F00,或其文件名来选择,MF,专用文件,DF,通过文件名或文件标识符来选择,DF,,在,MF,下可以选择任意,DF,。如果当前文件是一个,DF,下的一个,EF,,同样可以通过选择,DF,的文件标识符或文件名来选择任意,DF,。,根本文件,对EF操作前必须先选择该文件,满足读/写条件时可用相应命令读/写,根本文件构造及操作命令,二进制构造:数据以字节为单位进展读写,,操作命令:Read Binary/Update Binary,记录构造:,1线性定长记录文件构造:以固定的长度来处理每条记录。通过逻辑上连续的记录号,可访问这类记录,2线性变长记录文件构造:每条记录的长度可以各不一样。仍然是以记录号来访问各条记录。,3循环定长记录文件构造:可看作一个环形记录队列,记录按照先进先出的原那么存储。,操作命令:Read Record/Append Record/Update Record,密钥文件构造:每个DF或MF下有且只有一个KEY文件,在任何情况下密钥均无法读出。在KEY文件中可存放多个密钥,每个密钥为一条定长记录。记录中规定了其标识、版本、算法、属性及密钥本身等内容。,RESET,;,选择,EF0026,00 A4 02 00 02 0026,;,读二进制文件,0026,00 b0 00 00 10,;,校验,PIN,00 20 00 00 02 1234,;,写二进制文件,0026,;,读二进制文件,0026,00 b0 00 00 10,实训:用卡操作,CPU,卡文件读写,命令详解:,Select File,选择文件,功能:通过文件名、文件标识符来选择智能卡中的文件。,命令报文:,例:,;,选择,EF0026,00 A4 02 00 02 0026,应答:,61XX,,表示还有,XX,数据可返回,命令详解:,Read Binary,读二进制,功能:读取二进制文件的内容,命令报文:,例:,;,读二进制文件,0026,00 b0 00 00 10,应答:读出的,16B,二进制数据,ffffffffffffffffffffffffffffffff,应答报文数据域的内容为读出的二进制文件内容,命令详解:,Update Binary,读二进制,功能:写二进制文件。,命令报文:,例:,;,写二进制文件,0026,命令详解:,Verify,校验,功能:比较校验命令数据域外部输入的个人密码与卡中存放的个人密码是否一致。,命令报文:,例:建立文件时,;,安装密钥,PIN,80 d4 00 00 0a 01 01 00 0b 0f 11 0f 33,1234,读写文件时:,;,校验,PIN,00 20 00 00 02,1234,应答:,63CX,,,X,表示允许重试次数;,63C0,锁死;,6983,失败,假设校验成功,那么平安状态存放器的值被置成该密钥的后续状态,同时错误计数器被置成初始值;假设校验错误那么错误计数器减1次;假设个人密码已被锁死,那么不能执行该命令。被锁死的个人密码可用解锁、重装指令恢复。,智能卡的平安控制,加密技术,认证技术,CPU与COS的存在使智能卡能够方便地采用,PIN校验、加密技术及认证技术等,来强化智能卡的平安性,对智能卡平安的威胁,窃听:智能卡和接口设备之间的信息流可以被截取分析,从而可被复制或插入假信号。,模拟或伪造智能卡:模拟与接口设备之间的交换信息,使接口设备无法判断出是合法的还是模拟的智能卡。,在交易中更换智能卡:在授权过程使用的是合法的智能卡,而在交易数据写入之前更换成另一张卡,因此将交易数据写入替代卡中。,修改信用卡中控制余额更新的日期:信用卡使用时需要输入当天日期,以供卡判断是否是当天第一次使用,即是否应将有效余额项更新为最高授权余额也即是允许一天内支取的最大金额,商店雇员的作弊行为:接口设备写入卡中的数据不正确,或雇员私下将一笔交易写成两笔交易,因此接口设备不允许被借用、私自拆卸或改装。,COS的平安控制管理,对智能IC卡中的静态、动态数据进展平安控制及管理。具体分为两种功能:,1.平安传输控制:明文传输方式;认证传输方式;加密传输方式;混合传输方式。,2.内部平安控制管理:一是对数据及功能如某一命令的存取执行权限的控制;二是对内部静态保密数据如加密密钥等的平安管理。,加密技术,密码体制即密码编码 :密码算法+密钥。前者是公式、法那么或程序,可以是公开的;后者是实现加密、解密时参与运算的参数,改变密钥也就改变了明文与密文的关系。,密码分析即密码破译:系指非授权者由所获密文推导获取加密算法和密钥,从而读懂密文的过程。,密钥管理:要保证信息的秘密,必须严防密钥泄露,对称密钥体制DES,为了保证信息传输过程中的平安性,A可以通过使用密钥加密的方法,把加密后的信息传给B。B收到信息后,可以使用同样的密钥解密,从而获得其中的内容。这就是所谓“对称密钥的做法,能够保证即使信息在传输过程中被截获,没有密钥的人也无法得知其中的内容。,在Internet环境中,对称密钥体制中的密钥管理成了一个头疼的事:要么大家共用一个密钥,就没有秘密可言;要么n个人相互通讯需要n(n-1)个密钥,数量太多而无法管理。,对称密钥体制DES,也称为私钥密码体制,通信双方使用一样的密钥,DES使用长度为56比特的密钥、加密长度为64比特的明文,获得长度为64比特的密文,缺陷之一是通信双方在进展通信之前需通过一个平安信道事先交换密钥。这在实际应用中通常是非常困难的,美国目前已经制定了新的数据加密标准,称作AES,非对称密钥体制RSA,因此在,Internet,环境中,需要使用非对称密钥加密。即每个参与者,都有一对密钥,可以分别指定为公钥,(PK),和私钥,(SK),,一个密钥加密的消息只有另一个密钥才能解密,而从一个密钥推断不出另一个密钥。公钥可以用来加密和验证签名;私钥可以用来解密和数字签名。每个人都可以公开自己的公钥,以供他人向自己传输信息时加密之用,只有拥有私钥的本人才能解密,保证了传输过程中的保密性。关键是需要每个人保管好自己的私钥。,非对称密钥体制RSA,也称为公钥密码体制,其理论根底是将密码建立在解某些的数学难题之上。,通信双方各有自己的私人密钥SK,并共有另一公共密钥PK。,公钥密码体制可使通信双方无需事先交换密钥就可建立起保密通信,但公钥算法要比私钥算法慢得多,在实际通信中,一般利用公钥密码体制来保护和分配交换密钥,而利用私钥密码体制加密消息。,公钥密码体制的出现为解决私钥密码体制的密钥分配开辟了一条广阔的道路。公钥密码体制主要用于认证比方数字签名、身份识别等和密钥管理等。,密钥形式分为:,消费取现密钥,DPK(00),、,圈存密钥,DLK(01),、,TAC密钥,DTK(02,),、,圈提密钥,DULK(03),修改透支限额密钥DUK(04),应用维护密钥,DAMK(05),:用于产生应用锁定解锁卡片锁定等的,MAC,PIN,解锁密钥,DPUK(06):,用于产生解锁,PIN,的,MAC,PIN,重装密钥,DRPK(07):,用于产生重装,PIN,的,MAC,外部认证密钥,DEAK(08),、内部认证密钥,DIAK,(09),Crypt,密钥,(0A):,用于增加修改密钥命令,个人密码,PIN(0B),SAM,密钥,(40),及用户自定义密钥,(80),等,认证技术,信息验证码,MACMessageAuthenticationCode,数字签名Digital Signiture,数字证书Digital Certificate,防止信息被篡改、伪造或过后否认,信息验证码MACMessageAuthenticationCode,目标:防止信息被篡改,保护信息的完整性,要求在接收时能发现被篡改的数据,手段:采用一定的算法产生附加的校验码MAC,在接收点进展检验。信息验证码MAC也称电文识别码或报文鉴别码是利用密钥对数据加密处理而形成,篡改者由于不知道密钥,也就不能针对性地伪造MAC,对数据的非法修改将很容易被发现,以保证信息的完整性。,数字签名Digital Signiture,目标:防伪造信息的真实性,防抵赖。要求收方能确认发方的签名;发方签名后,不能否认自己的签名;发生矛盾时,公证人第二方能仲裁收发方的问题。,手段:散列HASH函数+公钥算法,HASH函数:输入为一可变长输入,返回一固定长度串 输入信息的特征值,数字证书 Digital Certificate,目标:持卡人及商家的合法性。对数字签名和公钥加密技术来说,都会面临公开密钥PK的分发问题,即如何获得通讯对方的公钥并且相信此公钥是由某个身份确定的人拥有的,这就要求管理这些公钥的系统必须是值得信赖的。必须有一项技术来解决公钥与合法拥有者身份的绑定问题 数字证书Digital Certificate,手段:数字证书是一个签名文档SK,标记特定对象的公开密钥PK。该证书由一个认证中心CA签发,认证中心类似于现实生活中公证人的角色,它具有权威性,是一个普遍可信的第三方。当通信双方都信任同一个CA时,两者就可以从CA得到对方的公开密钥从而能进展秘密通信、签名和检验。,用户到CA申请私人密钥和公共密钥后,自己掌握私人密钥,而对方那么可到CA取得公共密钥。,在实施电子商务的过程中,用Internet Explorer向一个认证中心申请电子证书时,就会有一对公钥和私钥自动产生出来;私钥可以存储在智能卡中,公钥和其他身份信息比方姓名、电子邮件地址等发给认证中心。如果认证中心
展开阅读全文