公共交通ic卡技术要求内容摘要:
( IC)卡规范 第 2部分 电子钱包存折 应用规范 JR/T 中国金融集成电路( IC)卡规范 第 9部分 电子钱包扩展应用指南 安全计算方法 安全计算涉及用户卡中的所有计算类型。 包 括 数据加密计算、普通 MAC计算、消费 MAC1计算和 MAC2 认证等。 MAC总是命令或命令响应数据域中最后一个数据元素。 密钥分散计算方法 密钥分散通过分散因子产 生子密钥。 分散因子为 8字节。 a) 对于数据分组长度为 8字节的算法,密钥分散方式如下: 将主密钥 MK对分散 因子 进行处理 , 推导出一 个 16字节 长度的 子 密钥 DK,如 图 2和图 3。 JT/T XXXX— 201X 10 推导 DK左 半 部分的方法是: 第一步:将分散因子作为输入数据; 第二步:将 MK 作为 加 密密钥; 第三步:用 MK 对输 入 数据进行 3DEA 运算。 图 3 数据分组长度为 8字节的算法 推导 DK 左半部分 推导 DK 右半部分的方法是: 第一步:将分散因子求反,作为输入数据; 第二步:将 MK 作为加密密钥; 第三步:用 MK 对输入数据进行 3DEA 运算。 图 4 数据分组长度为 8字节的算法 推导 DK右半部分 JT/T XXXX— 201X 11 b) 对于数据分组长度为 16字节的算法,密钥分散方式如下: 将主密钥 MK对分散 因子 进行处理 , 推导出一 个 16字节 长度的 子 密钥 DK,如 图 4。 推导DK的方法是: 第一步: 将分散因子求反,按照“ 分散因子 ” +“分散因子的反”的顺序连接在一起,组成 16字节 输入数据; 第二步:将 MK 作为 加 密密钥; 第三步:用 MK 对输 入 数据进行 DEA加密 运算。 D E A ( e )M K ( 1 6 b y t e s )输 入 因 子 ( 1 6 b y t e s )D K ( 1 6 b y t e s ) 图 5 数据分组 长度 为 16字节的算法推导 DK 过程密钥的产生 过程密钥是在交易过程中用可变数据产生的密钥。 过程密钥产生后只能在某过程 /交易中使用一次。 图 5 和图 6 描述了电子钱包进行消费交易时产生过程密钥的机制。 这方法也用于不同交易类型的过程密钥的产生,但输入的数据取决于不同的交易类型。 a) 对于数据分组长度为 8 字节的算法, 按照如下方式 产生过程密钥 : D E A ( e )D P K左 半 部 分过 程 密 钥 ( S E S P K )输 入 数 据 I n ( 8 字 节 )D E A ( d )D P K右 半 部 分D E A ( e )D P K左 半 部 分 图 6 数据分组长度为 8字节的 算法 的过程密钥产生 b) 对于数据分组长度为 16 字节的算法, 按照如下 方式 产生过程密钥 : 第一步 : 将 输入数据 In求反 得到( ~In) ,按照 In+(~In)的顺序连接在一起,组成 16字节输入数据 In’ ; 第二步:将 DPK 作为 加 密密钥; 第三步:用 DPK 对输 入 数据 In’ 进行 DEA加密 运算 得到过程密钥。 JT/T XXXX— 201X 12 D E A ( e )D P K过 程 密 钥 ( S E S P K )输 入 数 据 I n ( 8 字 节 )I n + ( ~ I n ) ( 1 6 字 节 ) 图 7 数据分组长度为 16字节的 算法 的过程密钥产生 数据加密的计算方法 a) 对于数据分组长度为 8 字节的算法, 按照如下方式对数据进行加密 : 第一步: LD( 1 字节)表示明文数据的长度,在明文数据前加上 LD 产生新的数据块。 第二步:将该数据块分成 8 字节为单位的数据块,表示为 BLOCK BLOCKBLOCK BLOCK4 等。 最后的数据块有可能是 1~8 个字节。 第三步:如果最后(或唯一)的数据块的长度是 8 字节的话,转到第四步;如果不足 8 字节,则在其后加入 16 进制数 ‘80’,如果达到 8 字节长度, 则转到第四步;否则在其后加入 16 进制数 ‘00’直到长度达到 8 字节。 第四步: 按照图 7 所 示 的算法使用指定密钥对每一个数据块进行加密。 第五步:计算结束后,所有加密后的数据块依照 原顺序连接在一起。 图 8 数据分组长度为 8字节的 DEA数据加密算法 b) 对于数据分组长度为 16字节的算法, 按照如下方式对数据进行加密: 第一步: LD( 1 字节)表示明文数据的长度,在明文数据前加上 LD 产生新的数据块。 第二步:将该数据块分成 16 字节为单位的数据块,表示为 BLOCK BLOCKBLOCK BLOCK4 等。 最后的数据块有可能是 1~16 个字节。 第三步:如果最后(或唯一)的数据块的长度是 16 字节的话,转到第四步;如果不足16 字节,则在其后加入 16 进制数 ‘80’,如果达到 16 字 节长度,则转到第四步;否则在其后加入 16 进制数 ‘00’直到长度达到 16 字节。 第四步:按 照图 8 所 示 的算法使用 指定密钥对每一个数据块进行加密。 JT/T XXXX— 201X 13 第五步:计算结束后,所有加密后的数据块依照原顺序连接在一起。 D E A ( e )K E YB L O C K 1密 文 1D E A ( e )B L O C K 2密 文 2D E A ( e )B L O C K n密 文 n„ 图 9 数据分组长度为 16字节的 DEA数据加密算法 安全报文的计算方法 命令安全报文中 MAC 命令安全报文中的 MAC 是使用命令的所有元素(包括命令头和命令数据域中的数据)来产生的。 以保证命令连同数据能够正确完整地传送,并对发送方进行认证。 此方法适用于 WRITE KEY 命令。 a) 对于数据分组长度为 8字节的加密算法, 按照如下方式使用 DEA 加密方式产生 MAC: 第一步:终端通过向 IC 卡发 GET CHALLENGE 命 令 获得一个 4 字节随机数,后 补 4字节 16进制数 ‘00’作为 初 始值。 第二步:将 5 字节 命 令头( CLA, INS, P1, P2, Lc)和 命 令数据域中的明文 或密文数据连接在一起形成数据块。 注意 , 这里的 Lc 应是 数 据长度加上将计算出的 MAC 的 长度( 4 字 节 )后得到的实际长度。 第三步:将该数据块分成 8 字 节 为单 位的数据块, 表 示 为 BLOCK BLOCK BLOCKBLOCK4 等。 最 后 的数据块有可能是 1~8 个字节。 第四步:如果最后的数据块的长度是 8 字 节 的话,则在该数据块之后再加一个完整的 8 字节数据块 ’80 00 00 00 00 00 00 00’, 转到第 五 步。 第五步:如果最后的数据块的长度不足 8 字节 ,则在其 后 加入 16 进制数 ‘80’, 如果达到 8 字节长度 , 则转到第五步 ; 否则接着在其后加入 16 进制 数 ‘00’直到长度达到 8 字 节。 按图 9所 示的算法对这些数据块使用指定 密钥进行加密来产生 MAC。 第六步:最终取计算结果(高 4 字节)作为 MAC。 JT/T XXXX— 201X 14 图 10 安全报文中 数据分组长度为 8字节的 MAC算法 b) 对于数据分组长度为 16字节的加密算法, 按照如下方式使用 DEA 加密方式产生 MAC: 第一步:终端通过向 IC 卡发 GET CHALLENGE 命 令 获得一个 4 字节随机数,后 补 12字节16进制数 ‘00’作为 初 始值。 第二步:将 5 字节 命 令头( CLA, INS, P1, P2, Lc)和 命 令数据域中的明文 或密文数据连接在一起形成数据块。 注意 , 这里的 Lc 应是 数 据长度加上 将计算出的 MAC 的 长度( 4 字节 )后得到的实际长度。 第三步:将该数据块分成 16 字 节 为单位的数据块, 表 示 为 BLOCK BLOCK BLOCK BLOCK4 等。 最 后 的数据块有可能是 1~16 个字节。 第四步:如果最后的数据块的长度是 16字 节 的话,则在该数据块之后再加一个完整的 16 字节数据块 ’80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00’, 转到第 五 步。 第五步:如果最后的数据块的长度不足 16字节 ,则在其 后 加入 16 进制数 ‘80’, 如果达到 16 字节长度 , 则转到第五步 ; 否则接着在其后加入 16 进制数 ‘00’直到长度达到 16 字 节。 按图 10所 示 的算法对这些数据块使用指定密钥进行加密来产生 MAC。 第六步:最终取计算结果(高 4 字节)作为 MAC。 D E A ( e )K E YB L O C K 1„初 始 值D E A ( e )B L O C K 2D E A ( e )B L O C K 3D E A ( e )B L O C K nM A C 图 11 安全报文中 数据分组长度为 16字节的 MAC算法 交易中的 MAC 安全报文中的 MAC 是使用命令的所有元素(包括命令头和命令数据域中的数据)来产 JT/T XXXX— 201X 15 生的。 以保证命令连同数据能够正确完整地传送,并对发送方进行认证。 此方法适用于所有 命令 , 除 WRITE KEY 命令外。 此方法分二步完成。 先用指定密钥产生过程密钥;再用过程密钥计算 MAC。 a) 对于数据分组长度为 8字节的算法, 按照如下方式使用 DEA 加密方式产生 MAC: 第一步: 将一个 8 字 节长的 16 进制数 ‘00’ 设定为初始值 第二步:将所有输入数据按指定顺序连接成一个数据块。 第三步:将该数据块分成 8 字 节 为单位的数据块,表示为 BLOCK BLOCK BLOCKBLOCK4 等。 最 后 的数据块有可能是 1~8 个字节。 第四步:如果最后的数据块的长度是 8 字 节 的话 , 则在该数据块之后再加一个 完整的 8 字 节数据块 ’80 00 00 00 00 00 00 00’, 转 到第五步。 如果最后的数据块的长度不足 8 字 节,则在其后加入 16 进 制数 ‘80’, 如果达到 8 字节长度 , 则转到第五步 ; 否则在其后加入 16 进制数 ‘00’ 直到长度达到 8 字节。 第五步:按照 图 11所示 的算法对这些数据块使用过程密 钥 (单倍长度 ) 进行 加密来产生 MAC。 第六步:最终取计算结果(高 4 字节)作为 MAC。 图 12 交易中的 MAC算法 b) 对于数据分组长度为 16字节的算法, 按照 如下方式使用 DEA 加密方式产生 MAC: 第一步: 将一个 16 字 节长的 16 进制数 ‘00’ 设定为初始值 第二步:将所有输入数据按指定顺序连接成一个数据块。 第三步:将该数据块分成 16字 节 为单位的数据块,表示为 BLOCK BLOCK BLOCKBLOCK4 等。 最 后 的数据块有可能是 1~16个字节。 第四步:如果最后的数据块的长度是 16字 节 的话 , 则在该数据块之后再加一个完整的 16 字 节数据块 ‘80 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00’, 转 到第五步。 如果最后的数据块的长度不足 16字 节,则在其后加入 16 进 制数 ‘80’, 如果达到 16 字节长度 , 则转到第五步 ; 否则在其后加入 16 进制数 ‘00’ 直到长度达到 16 字节。 第五步:按照 图 12所示 的算法对这些数据块使用过程密 钥 进行 加密来产生 MAC。 第六步:最终取计算结果(高 4 字节)作为 MAC。 JT/T XXXX— 201X。公共交通ic卡技术要求
相关推荐
完善应急措施,是今年春运工作的首要任务。 (一)要落实安全生产主体责任。 要进一步落实安全生产主体责任,要建立健全安全生产管理制度,加强安全教育,严禁违章、超速和疲劳驾驶,要 层层签订安全责任状, 并将途中旅客上车 携带行包和托运行李的危险品检查工作列入驾驶员(含乘务员)为责任人的责任书,做到责任到岗,责任到人,做到安全监管始终与运输过程一体。 (二)把好驾驶员资质关。
加,从 2020 年到2020 年的 8 年间,全国高校毕业生由 115 万增加到 559 万,净增 444 万,平均每年 以 20%左右的速度增长,毕业生就业难的问题日益突出,虽然政府做出了巨大努力,但由于就业市场存在着供需矛盾等因素,社会就业形势依然十分严峻,在日益加大的就业压力下,相当多的高校毕业生把报考公务员作为就业的重要选择,甚至作为通向就业成功之路的唯一途径。
44213384( 段涵 ) Emial: : 1906204960 2) INTLIP03B 型 IP 网络广播终端 (带 40W 定阻功放 ) 接线图 用途: 安装于大中小学的教室,适合考试和日常外语教学,改变了教师带录音机进教室的历史,每间教室都是数字语音室 特点 : 1. 壁挂式设计,体积小巧 , 不占用宝贵的空间; 2. 采用高速工业级双核 (ARM+DSP)芯片,启动时间 ≤1 秒;
意明灯,并做到会车变换灯光,力争在光线适宜路段不开远光灯。 严格遵守交通法规,尊重人行横道的行人先行权,礼让斑马线。 遵守职业道德,谈吐文明,举止优雅,不说脏话秽语,不向车外乱扔杂物,保持道路环境卫生。 驾驶员要以塑造城市形象,维护乘客安全为己任,努力为乘客营造轻松的乘车氛围。 按时发车、间隔得当,车停稳开门、关好门起步,无违章驾驶、乱停乱放等现象 , 按规定路线行驶,不得擅自改线或越站行驶
排查专项行 3 动 ”、“安全生产月”等活动。 为加强对 活动 期间安全生产工作的组织领导, 确保 各项 活动 的顺利开展,公司成立了相应的 以 总经理 为组长,分管副 总经理 为副组长, 各部门主要负责人 为 组员 的活动 领导小组 , 负责 活动期间各项 事宜 的组 织领导、综合协调、检查督促 等 工作,为宣传活动提供强有力的组织保障。 公司 还针对各项活动 分别制定了活动方案,明确活动