热门搜索 :
考研考公
您的当前位置:首页正文

sam芯片手册

来源:伴沃教育


SAM芯片手册

芯片手册.......................................................................................................................... 1 1. 一般描述................................................................................................................... 3

1.1. 目录............................................................................................................ 3 1.2. 芯片简介..................................................................................................... 3 1.3. 芯片特征..................................................................................................... 3

1.4. 1.5.

芯片框架..................................................................................................... 4 管脚定义..................................................................................................... 5

2. 控制模块................................................................................................................... 7

2.1. 章节内容..................................................................................................... 7

2.2. 2.3. 2.4.

简介............................................................................................................ 7 指令集说明 ................................................................................................. 7 寄存器描述 ............................................................................................... 10

2.5. 状态机 .......................................................................................................11 3. AES运算模块 ..........................................................................................................11

3.1. 3.2. 3.3. 3.4.

章节内容....................................................................................................11 简介.......................................................................................................... 12 特性.......................................................................................................... 12 结构描述................................................................................................... 12 3.4.1. 接口单元............................................................................................ 13 3.4.2. 3.4.3.

循环运算单元..................................................................................... 13 密钥扩展单元..................................................................................... 13

3.4.4. 控制单元............................................................................................ 13 3.5. 寄存器描述 ............................................................................................... 13 3.6. 功能描述................................................................................................... 15 4. RSA运算模块 ......................................................................................................... 16

4.1. 4.2. 4.3. 4.4.

章节内容................................................................................................... 16 简介.......................................................................................................... 16 特性.......................................................................................................... 16 结构描述................................................................................................... 17 4.4.1. 接口单元............................................................................................ 17 4.4.2. 4.4.3.

模幂控制器 ........................................................................................ 17 数据状态寄存器 ................................................................................. 17

4.4.4. 模乘运算单元..................................................................................... 17 4.5. 寄存器描述 ............................................................................................... 18 4.6.

功能描述................................................................................................... 19

1. 一般描述

1.1. 目录

1.2 芯片简介………………………………………………………………3 1.3 芯片特征………………………………………………………………3 1.4 芯片框架………………………………………………………………4 1.5 管脚定义………………………………………………………………5

1.2. 芯片简介

基于可重构算法的SAM芯片,作为可信模块用于个人计算机或者其他嵌入式系统,以保证该系统信息安全。该芯片包括RSA、AES运算模块,伪随机数产生模块,控制模块,分别用于加解密运算,指令译码和信号流的控制,内部用Wishbone作为总线,将各模块与控制模块相连。运用可重构算法,可以用较少的资源实现不同长度的加解密处理,以适应不同程度的运用,同时节约资源,节省成本。

1.3. 芯片特征

SAM芯片特征包括以下几点:

1)、完备的控制指令集,通过从外部引脚CDIO,可以对芯片的运算方式、密钥长度和工作模式进行配置,已完成不同的加解密要求;

2)、SAM包含一个控制器,该控制器的功能包括:指令译码,数据流控制,各运算模块选择,使各模块协调工作;

3)、RSA模块,该模块可重构算法设计,可以通过指令配置,选择256、512、1024和2048位的密钥对明文进行加解密运算;

4)、AES模块,该模块同样基于可重构算法,可以实现密钥长度为128、192和256位的加解密运算;

5)、伪随机数产生模块,用于产生运算所需的密钥,利用随机数作为密钥,

可以提高系统的安全性。

1.4. 芯片框架

CSCLKRSTSYN_IIO_CTLCTRL2 WISHBONE AESCONTROLRSACD_IO8BUSYREADYPRNG

1.5. 管脚定义

SYN_ICSTEST_RCLKTEST_CVss2_lVss1_lVdd1_lVdd2_lRSTTEST_IOIO_CTRLDATA7DATA61234567891011121314282726252423CTRL0CTRL1READYBUSYDATA0Vss2_rVss1_rVdd1_rVdd2_rDATA1DATA2DATA3DATA4DATA5SAM2221201918171615 编号 信号名 功能描述 信号有类型 效电平 1 2 3 4 5 6 SYN_I CS TEST_R CLK TEST_C Vss2_l CD_IO与ctrl读写信号 片选信号 测试信号 系统时钟 测试信号 第二组电源 输入 输入 输入 输入 输入 1 1 1

7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 Vss1_l Vdd2_l Vdd1_l RST TEST_IO IO_CTRL DATA7 DATA6 DATA5 DATA4 DATA3 DATA2 DATA1 DATA0 Vdd2_r Vdd1_r Vss1_r Vss2_r BUSY READY CTRL1 CTRL0 第一组电源 第二组地 第一组地 全局复位信号 测试信号 控制双向数据端口方向 双向数据端口[7] 双向数据端口[6] 双向数据端口[5] 双向数据端口[4] 双向数据端口[3] 双向数据端口[2] 双向数据端口[1] 双向数据端口[0] 第四组地 第三组地 第三组电源 第四组电源 运算进行信号 运算完成信号 表明输入数据类型(高位) 表明输入数据类型(低位) 输入 输入 输入 双向 双向 双向 双向 双向 双向 双向 双向 输出 输出 输入 输入 1 1 1 1 注:其中CLK一般接晶振,SAM有两种工艺,一种3.3V,一种1.8V。

3.3V一般接6~24MHZ的晶振,1.8V工艺的一般接6MHZ的晶振。

2. 控制模块

2.1. 章节内容

2.2 简介……………………………………………………………………6 2.3 指令集说明……………………………………………………………6 2.4 寄存器描述……………………………………………………………9 2.5 状态机…………………………………………………………………10

2.2. 简介

该模块主要完成指令译码,并控制各功能模块完成指令。

2.3. 指令集说明

2.3.1功能定义

该协处理器的主要功能包括:使用AES进行加解密、使用RSA进行加解密、使用AES和RSA进行混合加解密和使用PRNG产生所需要的伪随机序列。在具体使用时,这几个功能可以细分为以下几种运算:

(1)密钥、明(密)文由用户输入,进行AES-128/192/256加(解)密运算。

(2)密钥保持不变,明(密)文由用户输入,进行AES-128/192/256加(解)密运算。

(3)密钥使用PRNG生成的随机序列,明文由用户输入,进行AES-128/192/256加密运算。

(4)密钥使用RSA运算结果,明(密)文由用户输入,进行AES-128/192/256加(解)密运算。

(5)密钥、明(密)文由用户输入,进行RSA-256/512/1024/2048加(解)

密运算。

(6)密钥保持不变,明(密)文由用户输入,进行RSA-256/512/1024/2048加(解)密运算。

(7)密钥由用户输入,明文为AES的密钥,进行RSA-256/512/1024/2048加密运算。

(8)密钥保持不变,明文为AES的密钥,进行RSA-256/512/1024/2048加密运算。

(9)密钥E/D使用上一次RSA运算结果,输入明/密文进行RSA-256/512/1024/2048运算。

(9)密钥由用户输入,明文为PRNG生成的随机序列,进行RSA-256/512/1024/2048加密运算。

(10)密钥保持不变,明文为PRNG生成的随机序列,进行RSA-256/512/1024/2048加密运算。

(11)种子由用户输入,PRNG生成伪随机序列。 (12) 种子不变,PRNG继续生产伪随机序列。

用户可以使用以上一个或者多个操作来完成所需的运算任务。下面介绍一个具体的运算任务的例子:AES-RSA混合加密。AES-RSA混合加密就是使用AES算法来进行大量数据的加解密运算,使用RSA算法来对AES的密钥进行保密传输,这样刚好克服了对称加密算法AES存在密钥传输的难题,非对称加密算法RSA有着运算速度慢的缺点。

2.3.2指令定义

用户通过DATA[7:0]输入的指令帧格式为:运算类别+输入数据+数据结束位,其中输入数据和传输结束位是可选的,当不需要外部输入数据时,则命令中不包括输入数据和数据结束位。

用户可以通过CTRL1,CTRL0信号来选择输入的是命令或者具体的数据类型。CTRL1为高位,CTRL0为低位。当CTRL[1:0]为01B时,表示DATA[7:0]上的数据为运算命令,其中DATA[3:0]表示具体运算类别,DATA[5:4]说明选择的运算模块,DATA[7:6]代表选择算法的密钥长度。

CTRL信号功能定义

CTRL[ 1:0] 00B 01B 10B 无操作 DATA[7:0]输入的数据类型 运算命令(包括进行什么类型的运输与密钥长度) 数据1(RSA的明/密文,或者是AES的明/密文,或者是RNG的种子)或者数据3(RSA的模数N) 11B 数据2(RSA的密钥E/D,或者是AES的密钥)或者数据4(RSA的常数C) DATA[7:4]运算命令定义

数值 00B 01B 10B 11B DATA[5:4] 保留 RSA运算 PRNG运算 AES运算 DATA[3:0]运算命令定义

DATA[7:6] RSA-256/AES保留 RSA-512/AES-128 RSA-1024/AES-192 RSA-2048/AES-256 DATA[3:0] 0000B 运算类别 密钥明文外部输入进行AES加密运算; RSA保留; PRNG保留; 0001B 密钥和明/密文外部输入进行RSA运算; 密钥密文外部输入进行AES解密运算; 输入种子,PRNG生成随机数; 0010B 密钥使用RNG结果,明文外部输入,进行AES加密运算; 密钥输入,明/密文使用AES的密钥,进行RSA运算; 种子不变PRNG生成随机数; 0011B AES保留; 密钥输入,明/密文使用RNG结果,进行RSA运算; PRNG保留; DATA[3:0] 0100B

运算类别 密钥使用RSA结果,明文外部输入,进行AES加密运算;

密钥不变,明/密文外部输入更新,进行RSA运算; PRNG保留; 0101B 0110B 0111B 1001B 其余

密钥使用RSA结果,密文外部输入,进行AES解密运算; 密钥不变,明/密文使用AES的密钥,进行RSA运算; PRNG保留; 密钥不变,明文外部输入更新,进行AES加密运算; 密钥不变,明/密文使用RNG结果,进行RSA运算; PRNG保留; 密钥不变,密文外部输入更新,进行AES解密运算; RSA密钥E使用RSA运算结果,明/密文外部输入进行运算; PRNG保留; 读运算结果; 保留; 2.4. 寄存器描述

该模块包含一个2048位的数据寄存器和2个1位状态寄存器。

数据寄存器用于存储各运算模块的运算结果:1)、RSA加解密后的结果;2)、AES加解密后的结果;3)、伪随机数模块生成的随机数。当指令选择相应模块进行计算时,在运算模块给出完成标志后,会由外部管脚接收到输出指令,在输出指令被成功译码之后,运算模块会将结果先送到数据寄存器中,然后由低位到高位,每8位数据为一组进行输出。下图是控制模块的结构框图。

控制单元数据寄存器状态寄存器控制状态机

图2.1 控制单元结构框图

状态寄存器用于寄存该模块状态机的现态和末态。

2.5. 状态机

控制单元主要由有限状态机(FSM)来实现,整个设计分成7个状态:Idle、Command_in、Data_in、Data_supplement、Run、Output、Error。具体各个状态之间的转换关系如图2.2所示。

Command_inData_inResetIdleErrorData_supplementRunOutput图2.2 系统状态机

3. AES运算模块

3.1. 章节内容

3.2 简介………………………………………………………………11 3.3 特性………………………………………………………………11 3.4 结构描述…………………………………………………………12 3.5 寄存器描述………………………………………………………13 3.5 功能描述…………………………………………………………14

3.2. 简介

该模块基于可重构算法设计,可以通过指令实现密钥长度为128、192和256位的AES运算。

3.3. 特性

AES运算模块可以执行以下操作:

密钥、明(密)文由用户输入,进行AES-128/192/256加(解)密运算; 密钥保持不变,明(密)文由用户输入,进行AES-128/192/256加(解)密运算;

密钥使用PRNG生成的随机序列,明文由用户输入,进行AES-128/192/256加密运算;

密钥使用RSA运算结果,明(密)文由用户输入,进行AES-128/192/256加(解)密运算。

3.4. 结构描述

密钥寄存器循环运算单元正/反S盒明文寄存器正/反行位移正/反列混合结果寄存器接口单元密钥加运算控制单元密钥扩展单元初始密钥缓存密钥扩展运算

图3.1 AES结构框图

3.4.1. 接口单元

接口单元是外部总线和内部算法运算单元之间的桥梁,提供与加解密运算单元之间数据分组的交换和密钥的输入,传递各种控制信号和状态信号。 3.4.2. 循环运算单元

循环运算单元是实现加密和解密运算的主体部分。接收到启动信号后该模块顺序接收来自接口单元的输入分组,存放在一个128位的寄存器组中(即State阵列),接着根据是加密操作还是解密操作展开轮函数的迭代。S盒代换、行位移、列混合、密钥加变换都在这里实现,其中密钥加变换需要由密钥扩展单元提供轮密钥。由密钥长度指定的轮数的迭代完成后,模块发出输出有效信号,等待外部将运算结果读出。 3.4.3. 密钥扩展单元

密钥扩展单元为不同密钥长度的加解密运算实时地提供所需的轮密钥。该模块包括以下操作:正向和逆向的密钥扩展,密钥建立(解密时初始密钥的预计算),以及初始密钥的存储。 3.4.4. 控制单元

控制单元产生控制循环运算单元和密钥扩展单元的协调工作的控制信号,主要工作是根据不同密钥长度的加密或解密过程的要求来控制密钥扩展和循环运算单元的运算轮数和具体的运算顺序。

3.5. 寄存器描述

从上图可知,模块在接口单元中定义了三个寄存器,分别为密钥寄存器、加解密数据寄存器和结果寄存器,当芯片状态标志信号READY和BUSY均为低电平时,三个寄存器分别被以下指令影响。

密钥寄存器:输入如下指令后,若控制管脚IO_CTRL=1,CRTL0=1,CRTL1=1;

时,密钥寄存器的内容被来自外部输入的数据更新。 DATA[7:0]=

01(10/11)11 0000 AES密钥明文外部输入进行加密运算,密钥长度128(192、256)b 01(10/11)11 0001 AES密钥密文外部输入进行解密运算 当输入如下指令时,密钥寄存器的值被随机数生成器生成的随机数更新。 DATA[7:0]=

01(10/11)11 0010 AES密钥使用RNG结果,明文外部输入,进行加密运算 01(10/11)11 0011 AES密钥使用RNG结果,密文外部输入,进行解密运算 当输入如下指令时,密钥寄存器的值被RSA模块处理过的数据更新。 DATA[7:0]=

01(10/11)11 0100 AES密钥使用RSA结果,明文外部输入,进行加密运算 01(10/11)11 0101 AES密钥使用RSA结果,密文外部输入,进行解密运算 当输入如下指令时,密钥寄存器的值保持不变。 DATA[7:0]=

01(10/11)11 0110 AES密钥不变,明文外部输入更新,进行加密运算 01(10/11)11 0111 AES密钥不变,密文外部输入更新,进行解密运算 加解密数据寄存器:当控制管脚IO_CTRL=1,CRTL0=0,CRTL1=1;时,该寄存器的值在AES运算前会被来自输入管脚的CDIO信号更新。

结果寄存器:输入指令DATA[7:0]=01(10/11)11 1001后,该寄存器的值被AES运算的结果更新。

3.6. 功能描述

下图是AES模块进行一次完整加密过程的时序图。在片选信号CS为高时,系统可以正常工作,I_O信号为1时,双向接口的DATA[7:0]作为输入信号使用,CTRL(为了书写方便,CTRL代表CTRL1和CTRL0且CTRL1在前)信号=01B时,说明当前DATA[7:0]输入的是指令,指令70H表明系统要进行AES加密运算,且长度为128B,密钥和明文均由外部输入;下个SYN_I下降沿,CTRL=10B,说明此时DATA[7:0]输入的是明文的密钥,由于DATA[7:0]位宽为8B,所以需要16个时钟完成密钥的输入; 在CTRL=11B,表明DATA[7:0]此时输入密钥数据,同样需要16个SYN_I下降沿完成输入;然后CTRL=01B,输入指令FF,表明数据已输入完毕,开始计算,当READY信号变为低电平,说明计算完毕可以输出结果;然后CTRL=01B,由DATA[7:0]输入指令79H,AES加密后的结果在下个时钟开始输出,同时I_O变低电平,DATA[7:0]作为数据输出信号,输出同样需要16个周期,之后READY信号也被拉高,表明系统现在空闲,可以接收新指令开始新任务。

解密过程在时序上与加密完全一样,只是在第一次输入指令时,输入的为71H。

若需要更长的密钥长度,只需将输入指令改为A0或者F0,密钥长度对应为192B和256B。

ASE控制指令集:数据输入SAM芯片时,IO_CRTL=1;数据从SAM芯片输

时,IO_CRTL=1;

CTRL=01,表示输入指令;

CTRL=10,表示输入明文或者密文,只有一种,即:128bit CTRL=11,表示输入密钥,密钥长度有三种,128bit,192bit,或者256bit

加解密后的结果都是128bit。

4. RSA运算模块

4.1. 章节内容

4.2 简介………………………………………………………………15 4.3 特性………………………………………………………………15 4.4 结构描述…………………………………………………………15 4.5 寄存器描述………………………………………………………16 4.6 功能描述…………………………………………………………18

4.2. 简介

该模块基于可重构算法设计,可以通过指令实现密钥长度为256、512、1024和2048B的RSA运算。

4.3. 特性

RSA运算模块可以完成以下操作,所有操作均适用于以上四种长度的密钥: 明文和密钥均由外部输入进行运算;

密钥由外部输入,对AES的密钥进行加解密运算;

密钥由外部输入,对随机数生成器生成的随机数进行加解密运算;

密钥保持不变,明文由外部输入;

密钥保持不变,对AES的密钥进行加解密运算;

密钥保持不变,对随机数生成器生成的随机数进行加解密运算;

4.4. 结构描述

模幂运算模幂控制器接口单元模乘运算单元模乘控制器数据寄存器状态寄存器模乘运算单元

RSA算法硬件实现架构

4.4.1. 接口单元

接口单元是外部总线和内部算法运算单元之间的桥梁,提供与加解密运算单元之间数据的交换和密钥的输入,传递各种控制信号和状态信号。 4.4.2. 模幂控制器

模幂控制器负责控制模乘运算单元的循环运算以及接口单元和模乘运算单元对数据、状态寄存器的读写。 4.4.3. 数据状态寄存器

数据、状态寄存器用来保存一些输入数据、中间运算结果、输出结果和若干运算状态说明。 4.4.4. 模乘运算单元

模乘运算单元就是在模幂控制器的控制下进行一次次的模乘运算,其内部可

分为模乘运算器和模乘控制器,其中模乘运算器就是模乘运算所需要使用的一些逻辑与存储单元,模乘控制器则负责控制模乘运算器的循环运算来获得模乘运算的结果。

4.5. 寄存器描述

与AES相比,RSA运算更为复杂,需要的时间更多,密钥长度也要长得多,其密钥由三部分组成,分别为E、N和C(三个变量的具体含义可参考RSA算法,这里不做描述),长度最大都为2048B,所以需要三个寄存器分别存储三个变量。所以,RSA运算模块共有五个寄存器,分别用于存储密钥的三个构成变量:E,N,C;一个明文寄存器和一个结果寄存器。

由RSA运算模块的特性可知,RSA的密钥有只有一个来源,就是外部输入;而其明文有三个来源,分别是外部输入,随机数和AES模块的密钥。具体到运算中用哪个来源更新寄存器的值由相关指令决定。下面进行具体说明。 E/N/C寄存器:在输入指令 DATA[7:0]=

00(01/10/11)01 0001 00(01/10/11)01 0010 00(01/10/11)01 0011 密钥外部输入,密钥长度256(512/1024/2048)b 密钥外部输入,密钥长度(512/1024/2048)b 密钥外部输入,密钥长度256(512/1024/2048)b 256 后,若控制信号 CTRL=

11 10 11 输入RSA的E 输入RSA的N 输入RSA的C 在输入指令

DATA[7:0]=

00(01/10/11)01 0100 00(01/10/11)01 0101 00(01/10/11)01 0110 RSA密钥寄存器值不变 RSA密钥寄存器值不变 RSA密钥寄存器值不变 明文寄存器:在输入指令 DATA[7:0]=

00(01/10/11)01 0001/00(01/10/11)01 0100 明文外部输入 后,若CTRL=

10 输入RSA的明/密文 若输入指令 DATA[7:0]=

00(01/10/11)01 0010/00(01/10/11)01 0101 RSA明/密文使用AES的密钥 若输入指令 DATA[7:0]=

00(01/10/11)01 0011/00(01/10/11)01 0110 明/密文使用RNG结果 结果寄存器:输入指令 DATA[7:0]=

00(01/10/11)01 1001 输出RSA运算结果 4.6. 功能描述

下图是RSA的一次完整运算过程,RSA的密钥和明文均由外部输入,密钥长度为256B,下面具体分析其时序。

在片选信号CS有效的前提下,I_O信号为高,此时DATA[7:0]作为输入管脚,当CTRL=01B时,DATA[7:0]作为指令数日,且DATA[7:0]=11H说明将要进行RSA256B运算,密钥明文外部输入;然后CTRL分别为10B,11B,10B,11B,DATA[7:0]用于数据输入,分别输入RSA的明文,E,N和C;当CTRL=01,

DATA[7:0]=FFH说明数据输入完毕,开始进行运算, 计算完毕后READY信号变低,此时CTRL=01B,由DATA[7:0]输入输出数据指令19H,下个周期开始,I_O变低,由DATA[7:0]输出运算后的结果,输出完毕后,READY信号重新变高,此时可以接收新指令开始新任务。

RSA其他操作的时序与上过程类似,区别在于:当密钥保持不变时,不需要进行密钥输入;当明文用到其他模块的数据时,不需要输入明文,其他在时序上没有区别。

RSA控制指令:数据输入SAM芯片时,IO_CRTL=1;数据从SAM芯片输时,

IO_CRTL=1;

CTRL=01,表示输入指令;

CRTL=10时,表示输入明/密文或者是密钥N; CRTL=11时,表示输入密钥E或者密钥C

5. 芯片配置方式

5.1. 总体系统框图

E2promI2CPCRS232SAM单片机射频模块LED显示键盘 键盘:用于控制读/写卡器工作和输入用户验证码; LED显示:用于显示读卡器的输出结果; SAM:加密、解密模块;

5.2. MCU与SAM连接

ResetCSControlSAMReadySynMCUIO_ctrlDATA

6. 典型应用实例

一个实际应用要求如下:

(1)发RFID卡公司也是发售读写器的公司,RFID卡只是物理层的资料存储介质。 (2)SAM模块对发卡公司和使用读写器的公司都是黑瞎子,不需要了解其工作原理。 (3)发卡公司通过密码管理器产生一对公钥KC和私钥KS。

(4)发卡公司通过密码管理器产生一组公钥和私钥对:(KC1,KS1)、(KC2,KS2)、(KC3,KS3)、(KC4,KS4)、……。发卡公司销售读写器时,选择分配一对密钥KCi,KSi,并用KSi把KC加密写入SAM模块。KCi授权给使用读写器的用户。

(5)发卡公司在销售RFID时,随机产生RFID识别码RX,并用KS加密写进RFID。

明文RX → 密文EX RSA加密KS

(6)RX作为一个对称加密密钥,对数据内容m进行进行加密,加密后的数据存入RFID。 明文m → 密文E

RX

(7)RDID存储的资料为(EX,E),仅能用带有SAM模块的读写器来阅读EX或修改E。 (8)阅读EX,用户用KCi由SAM模块获得KC,用KC由SAM把EX解密为RX 。 (9)阅读或修改E,获得卡上的RX 后,通过SAM把E解密为m,或把m加密成E。

选择分配一对密钥(KCi,KSi),并用KSi把KC加密成KCx写入读卡器中。读卡器发卡公司首先利用随机数发生器生成一个随机数RX;其次使用KS来加密对称加密密钥RX,得到EX;智能卡KCi授权给使用读写器的用户用户

发卡公司初始化配置过程图

KC用户操作端KCim使用用户私钥KCi来解密KCx得到发卡公司的公钥KC。使用发卡公司的公钥KC来解密EX,得到RX。RXEXRFID智能卡(EX,E)E写卡:将明文m使用RX加密得到密文E,写入智能卡读卡:从智能卡上读出密文E使用RX解密得到明文m使用单位操作智能卡过程图

RFID读卡系统操作分为启动、预读数据、用户验证和读/写卡两个操作。其中用户验证在密码学原理上是通过2次RSA运算来完成,而读/写卡操作则是通过AES解/加密来完成。具体操作流程如下:

启动:

启动操作是上电完成后必须要进行的操作,目的是为了启动射频读写芯片。 ■启动命令为:

FA 02 01 04 FB ■预读数据操作:(将RFID智能卡上面的EX和E,其中EX为256比特,所以需要读2次)

FA 02 24 04 FB(读E,128比特,读数据块4的内容)

FA 02 25 05 FB(读EX,高128比特,读数据块5的内容) FA 02 26 06 FB(读EX,低128比特,读数据块6的内容)

■身份验证第一次RSA运算(RSA_256输入明文密钥进行运算): FA 02 04 11 FB(命令)

FA 21 30 70D03977CD267875241809016ABF13313872A41D7C2E18A6FBA494D91680B979 FB(输入256比特密文,这个密文就是把KC加密后的密文)

FA 21 E00000000000000000000000000000000000000000000000000000000000010001 FB(输入解密密钥E)

FA 21 F0 B872048E00FFD2AAC48E4E00254760F1884C04B1BFAC3DD07B3622D398171869 FB(输入解密密钥 N)

FA 21 C0 2047b495161b2464e45da8f03feb7f0bf8b389462c7f9d3c33f55e51cb1a00e0 FB(输入解密密钥C)

FA 02 0A FF FB(命令,表示数据输入完成) FA 02 42 19 FB(读结果命令) 结果:10001

■ 身份验证第二次RSA: FA 01 05 FB 结果1001

■ 读卡操作(AES运算)

FA 01 06 FB

结果00112233445566778899aabbccddeeff

因篇幅问题不能全部显示,请点此查看更多更全内容

Top