《智能卡安全技术》PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 核实(verify)是指对智能卡的持有者的合法性的验证,也就是如何判定 一个持卡人是否经过了合法的授权的问题。
读写器鉴别IC卡的真伪(内部认证)
生生生 生生生生生N
生“ 生生生 生” 生生
生 I C生 生 生
N1=DK(M) 生生
N=N1生 生
I C生 生 生
I C生
M=EK(N) 生生
• 读写器生成随机数N,并向卡发
设采用对称密码体制
主密钥
– 在智能卡和读写器中存放相同的主密钥
子密钥
– 主密钥对某些指定的数据加密后生成子密钥
– 如:每张卡的芯片制造商的标识码的序列号或应用序列号是不相同的,且都 设置在IC卡内,因此可利用序列号进行加密生成子密钥;
会话密钥
– 用子密钥对可变数据进行加密,加密的结果即为会话密钥(或过程密钥)。 一个会话密钥仅使用一次。
生生M
I C终 生生生生生N
内部认证指令(Internal Authentication), 将随机数
送卡;
• 卡对随机数N加密成密文M(密 钥已存在卡和读写器中),并 将M送读写器;
• 读写器将M解密成明文N1;
• 读写器将明文N1和原随机数N比 较,相同则读写器认为卡是真 的。
IC卡鉴别读写器的真伪(外部认证)
生生生 生“ 生生生生
PIN输入错误限制次数 较少(如3次) 较长/可自定义(如1~ 15次)
全局/局部PIN
否
是
可修改性等其他属性
否
是
个人解锁码(PUC)
否
是
PUC: Personal Unblocking Code
PIN明码识别
• 读卡器与卡间以明码传输,在IC卡内部完成PIN的鉴别
用户
终端机
智能卡
键入PIN
发“持卡人认证”指
旦因错误计数溢出等原因自锁,也同时锁住使 用该PIN的其他应用层次。 • 局部PIN(Local PIN)
处于某一具体应用层次中,一旦因错误 计数溢出等原因自锁,则仅锁住该应用层次。
PIN功能简单汇总表
功能
简单IC卡 复杂IC卡 (如CPU卡)
PIN
无或有
有
PIN数量
一个
若干个
PIN位数
较短
较长/可自定义(如1~ 8位十进制数)
PIN
• PIN(Personal Identification Number)个人识别号是IC卡中的保密数据。 • 功能:保证只有合法持卡人才能使用该卡或卡中的某一项或几项功能,以防
止拾到该卡的人恶意使用或非法伪造。 • 错误计数器:用以记录、限制PIN输入错误的次数
PIN的类型
• 全局PIN(Global PIN) 处于系统的较高层次(如主文件)中,一
生生生
生“ 生生生生 生” 生生
I C生 生生生生生N
M=EK(N) 生生
生“ 生生生 生” 生生
N1=DK(M) 生生
生 N=N1生
生
生生生生生
生生生生生
I C生 生 生 生 生 生 生 生 生 生 生 生 生 生 生
核实
• 方法 – 验证个人识别号PIN(personal identification number); – 生物特征; – 下意识特征;
保管和使用。
2.密钥管理系统——层次结构
基本思想:用密钥保护密钥 – 用第i层的密钥Ki来保护第i+1层密钥Ki+1 – Ki本身也受到第i-1层密钥Ki-1的保护 – 下层的密钥可按某种协议不断变化; – 密钥管理系统是动态变化的
(1)三层密钥管理系统的结构
主密钥
子密钥
会话密钥
①
②
③
(2)三层密钥管理系统的举例
6.2 智能卡的安全访问机制
• 6.2.1 鉴别与核实 • 6.2.2 安全报文传送 • 6.2.3 文件访问的安全控制 • 6.2.4 数字签名/认证
6.2.1 鉴别与核实
• 鉴别(Authentication)指的是对智能卡(或者是读写设备)的合法性的 验证,即是如何判定一张智能卡(或读写设备)不是伪造的卡(或读写设 备)的问题;
并将密文M送卡;
卡将密文M解密成明文N1,并将 明文N1和原随机数N比较,相同 则卡认为读写器是真的。
鉴别
生生生
I C生
生生生生生N
生“ 生生生 生” 生生
M=EK(N) 生生
生 ቤተ መጻሕፍቲ ባይዱ C生 生 生
N1=DK(M) 生生
N=N1生 生
I C生 生 生
生 生 生 生 生 I C生 生 生 生 生 生 生 生 生 生
该PIN=卡内
令,并提交PIN码 PIN 所存密码?
否
返回错误 代码
是
继续其他操作
PIN密码识别
终终终
生 生 PIN
‘ 生生生生生’ 生生
⊕ PIN
M'=N⊕PIN
K终 终 终 f 终 f - 1终 终 / 终 终 终 终 ⊕终 终 终 终 终 终 终
生 生 生 生 M=f(M',K) 生生生生M
生” 生生
M=EK(N) 生生
生“ 生生生 生” 生生
• 读写器向卡发生成随机数命令
I C生
• 卡产生随机数N,并送读写器;
生生生生生N
• 读写器对随机数加密成密文 M(密钥已存在卡和读写器中);
•
N1=DK(M) 生生
生
N=N1生
•
生
生生生生生
生生生生生
读写器向卡发外部认证命令
(External Authentication),
第六章 智能卡安全技术
1
• 身份鉴别 • 报文鉴别 • 数据加密 • 数字签名
关键技术
主要内容
6.1 密钥管理系统 6.2 智能卡的安全访问机制 6.3 智能卡防拔插处理 6.4 智能卡的安全使用 6.5 安全操作相关的基本命令
6.1 密钥管理系统
1. 何为密钥管理? 密钥管理是一门综合性的技术,它涉及密钥的产生、检验、分配、传递、
– 如:用子密钥对交易时间或命令计数器进行加密生成会话密钥,这样即使是 同一张卡,每次使用时的会话密钥就不同,或做不同的操作,会话密钥也不 同。
3. 主密钥的生成
• 主密钥可由几个可信任的人彼此独立提出的数据组合成一个密钥,然后 对随机数进行加密运算而获得,这样主密钥的生成和变化规律就很难估 计。
4. 主密钥的下载 • IC卡中主密钥的下载
– 主密钥下载是在专门设备上进行的,下载的环境是安全的; – 但要保证IC卡上的触点的信息不能被窃取,主密钥下载后,不能再读
出,这由硬件(熔丝)和软件(COS卡内操作系统)来保证
• 读写器中主密钥的下载 – 读写器内部没有COS,不能保证主密钥不被读出,常采用安全存取模 块SAM,密钥下载到SAM模块中,加密/解密算法也在SAM中进行。
读写器鉴别IC卡的真伪(内部认证)
生生生 生生生生生N
生“ 生生生 生” 生生
生 I C生 生 生
N1=DK(M) 生生
N=N1生 生
I C生 生 生
I C生
M=EK(N) 生生
• 读写器生成随机数N,并向卡发
设采用对称密码体制
主密钥
– 在智能卡和读写器中存放相同的主密钥
子密钥
– 主密钥对某些指定的数据加密后生成子密钥
– 如:每张卡的芯片制造商的标识码的序列号或应用序列号是不相同的,且都 设置在IC卡内,因此可利用序列号进行加密生成子密钥;
会话密钥
– 用子密钥对可变数据进行加密,加密的结果即为会话密钥(或过程密钥)。 一个会话密钥仅使用一次。
生生M
I C终 生生生生生N
内部认证指令(Internal Authentication), 将随机数
送卡;
• 卡对随机数N加密成密文M(密 钥已存在卡和读写器中),并 将M送读写器;
• 读写器将M解密成明文N1;
• 读写器将明文N1和原随机数N比 较,相同则读写器认为卡是真 的。
IC卡鉴别读写器的真伪(外部认证)
生生生 生“ 生生生生
PIN输入错误限制次数 较少(如3次) 较长/可自定义(如1~ 15次)
全局/局部PIN
否
是
可修改性等其他属性
否
是
个人解锁码(PUC)
否
是
PUC: Personal Unblocking Code
PIN明码识别
• 读卡器与卡间以明码传输,在IC卡内部完成PIN的鉴别
用户
终端机
智能卡
键入PIN
发“持卡人认证”指
旦因错误计数溢出等原因自锁,也同时锁住使 用该PIN的其他应用层次。 • 局部PIN(Local PIN)
处于某一具体应用层次中,一旦因错误 计数溢出等原因自锁,则仅锁住该应用层次。
PIN功能简单汇总表
功能
简单IC卡 复杂IC卡 (如CPU卡)
PIN
无或有
有
PIN数量
一个
若干个
PIN位数
较短
较长/可自定义(如1~ 8位十进制数)
PIN
• PIN(Personal Identification Number)个人识别号是IC卡中的保密数据。 • 功能:保证只有合法持卡人才能使用该卡或卡中的某一项或几项功能,以防
止拾到该卡的人恶意使用或非法伪造。 • 错误计数器:用以记录、限制PIN输入错误的次数
PIN的类型
• 全局PIN(Global PIN) 处于系统的较高层次(如主文件)中,一
生生生
生“ 生生生生 生” 生生
I C生 生生生生生N
M=EK(N) 生生
生“ 生生生 生” 生生
N1=DK(M) 生生
生 N=N1生
生
生生生生生
生生生生生
I C生 生 生 生 生 生 生 生 生 生 生 生 生 生 生
核实
• 方法 – 验证个人识别号PIN(personal identification number); – 生物特征; – 下意识特征;
保管和使用。
2.密钥管理系统——层次结构
基本思想:用密钥保护密钥 – 用第i层的密钥Ki来保护第i+1层密钥Ki+1 – Ki本身也受到第i-1层密钥Ki-1的保护 – 下层的密钥可按某种协议不断变化; – 密钥管理系统是动态变化的
(1)三层密钥管理系统的结构
主密钥
子密钥
会话密钥
①
②
③
(2)三层密钥管理系统的举例
6.2 智能卡的安全访问机制
• 6.2.1 鉴别与核实 • 6.2.2 安全报文传送 • 6.2.3 文件访问的安全控制 • 6.2.4 数字签名/认证
6.2.1 鉴别与核实
• 鉴别(Authentication)指的是对智能卡(或者是读写设备)的合法性的 验证,即是如何判定一张智能卡(或读写设备)不是伪造的卡(或读写设 备)的问题;
并将密文M送卡;
卡将密文M解密成明文N1,并将 明文N1和原随机数N比较,相同 则卡认为读写器是真的。
鉴别
生生生
I C生
生生生生生N
生“ 生生生 生” 生生
M=EK(N) 生生
生 ቤተ መጻሕፍቲ ባይዱ C生 生 生
N1=DK(M) 生生
N=N1生 生
I C生 生 生
生 生 生 生 生 I C生 生 生 生 生 生 生 生 生 生
该PIN=卡内
令,并提交PIN码 PIN 所存密码?
否
返回错误 代码
是
继续其他操作
PIN密码识别
终终终
生 生 PIN
‘ 生生生生生’ 生生
⊕ PIN
M'=N⊕PIN
K终 终 终 f 终 f - 1终 终 / 终 终 终 终 ⊕终 终 终 终 终 终 终
生 生 生 生 M=f(M',K) 生生生生M
生” 生生
M=EK(N) 生生
生“ 生生生 生” 生生
• 读写器向卡发生成随机数命令
I C生
• 卡产生随机数N,并送读写器;
生生生生生N
• 读写器对随机数加密成密文 M(密钥已存在卡和读写器中);
•
N1=DK(M) 生生
生
N=N1生
•
生
生生生生生
生生生生生
读写器向卡发外部认证命令
(External Authentication),
第六章 智能卡安全技术
1
• 身份鉴别 • 报文鉴别 • 数据加密 • 数字签名
关键技术
主要内容
6.1 密钥管理系统 6.2 智能卡的安全访问机制 6.3 智能卡防拔插处理 6.4 智能卡的安全使用 6.5 安全操作相关的基本命令
6.1 密钥管理系统
1. 何为密钥管理? 密钥管理是一门综合性的技术,它涉及密钥的产生、检验、分配、传递、
– 如:用子密钥对交易时间或命令计数器进行加密生成会话密钥,这样即使是 同一张卡,每次使用时的会话密钥就不同,或做不同的操作,会话密钥也不 同。
3. 主密钥的生成
• 主密钥可由几个可信任的人彼此独立提出的数据组合成一个密钥,然后 对随机数进行加密运算而获得,这样主密钥的生成和变化规律就很难估 计。
4. 主密钥的下载 • IC卡中主密钥的下载
– 主密钥下载是在专门设备上进行的,下载的环境是安全的; – 但要保证IC卡上的触点的信息不能被窃取,主密钥下载后,不能再读
出,这由硬件(熔丝)和软件(COS卡内操作系统)来保证
• 读写器中主密钥的下载 – 读写器内部没有COS,不能保证主密钥不被读出,常采用安全存取模 块SAM,密钥下载到SAM模块中,加密/解密算法也在SAM中进行。