智能卡系统抵抗故障攻击的方法.pdf

上传人:a1 文档编号:1496040 上传时间:2018-06-18 格式:PDF 页数:5 大小:739.65KB
返回 下载 相关 举报
摘要
申请专利号:

CN201210175194.X

申请日:

2012.05.31

公开号:

CN103455445A

公开日:

2013.12.18

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回IPC(主分类):G06F 12/14申请公布日:20131218|||实质审查的生效IPC(主分类):G06F 12/14申请日:20120531|||公开

IPC分类号:

G06F12/14

主分类号:

G06F12/14

申请人:

上海华虹集成电路有限责任公司

发明人:

张伟; 马博

地址:

201203 上海市浦东新区碧波路572弄39号

优先权:

专利代理机构:

上海浦一知识产权代理有限公司 31211

代理人:

戴广志

PDF下载: PDF下载
内容摘要

本发明公开了一种智能卡系统抵抗故障攻击的方法,步骤1,在智能卡中开辟一块内存区域用来存储函数的执行状态信息;步骤2,在每个函数的起始位置将函数执行状态设置为未执行完毕;步骤3,在每个函数的退出位置将函数执行状态设置为已执行完毕;步骤4,在智能卡返回响应前检测所有函数是否都执行完毕,如果有任何函数没有执行完毕,则可以进行异常处理。本发明能有效地防范程序流程异常问题,从而防止敏感信息泄露。

权利要求书

权利要求书
1.  一种智能卡系统抵抗故障攻击的方法,其特征在于,包括如下步骤:
步骤1,在智能卡中开辟一块内存区域用来存储函数的执行状态信息;
步骤2,在每个函数的起始位置将函数执行状态设置为未执行完毕;
步骤3,在每个函数的退出位置将函数执行状态设置为已执行完毕;
步骤4,在智能卡返回响应前检测所有函数是否都执行完毕,如果有任何函数没有执行完毕,则进行异常处理。

2.  如权利要求1所述的方法,其特征在于:步骤1所述的内存区域包括RAM、EEPROM、闪存Flash存储器。

3.  如权利要求1或2所述的方法,其特征在于:步骤1所述函数的执行状态信息是指函数执行完毕与否的数值。

4.  如权利要求1所述的方法,其特征在于:步骤2所述的函数的起始位置是指该函数程序首条代码所在的地址。

5.  如权利要求1所述的方法,其特征在于:步骤3所述的函数的退出位置是指该函数程序末条代码所在的地址。

6.  如权利要求1所述的方法,其特征在于:步骤4所述的异常处理可以是屏蔽返回数据或返回报警信息。

说明书

说明书智能卡系统抵抗故障攻击的方法
技术领域
本发明涉及一种智能卡系统抵抗故障攻击的方法。
背景技术
智能卡芯片通常采用硅片制成。硅片的电性能会随着不同的环境参数而变化。例如,硅片的电性能将随着不同的电压、温度、光、电离辐射以及周围电磁场的变化而改变。攻击者将通过改变这些环境参数,来试图引入一些错误的行为,包括对芯片的程序流引入故障。通常,攻击者会迫使芯片做出错误的决定,允许访问存储器中的保密数据。这种行为在正常情况下是不允许的。
参见图1所示,芯片的程序流是由通过COS(片内操作系统)来完成的。COS首先要接收指令,接收到指令后解析该指令要完成何种功能,然后根据解析出来的功能需求操作硬件完成相应的操作,最后返回对于这条指令的响应。
当COS正在运行时故障被引入,使得芯片的程序流发生改变,当前函数不正常退出。程序执行流程可能跳出既定的操作,而去执行错误的代码,返回的错误响应,其中可能包含了敏感的或是保密的信息。
发明内容
本发明要解决的技术问题是提供一种智能卡系统抵抗故障攻击的方法,能有效地防范程序流程异常问题,从而防止敏感信息泄露。
为解决上述技术问题,本发明的智能卡系统抵抗故障攻击的方法,包括如下步骤:
步骤1,在智能卡中开辟一块内存区域用来存储函数的执行状态信息;
步骤2,在每个函数的起始位置将函数执行状态设置为未执行完毕;
步骤3,在每个函数的退出位置将函数执行状态设置为已执行完毕;
步骤4,在智能卡返回响应前检测所有函数是否都执行完毕,如果有任何函数没有执行完毕,则可以进行异常处理。
目前智能卡内部的COS缺乏安全防护,容易受到故障攻击。本发明通过在函数内部开始位置添加标识信息和在其退出的位置清除标识信息,并检测标识信息是否都被清除,来判断函数是否异常退出。从而在COS层面有效地抵抗因故障攻击导致的程序运行异常问题,防止异常敏感信息的泄露;能够为芯片提供可靠的安全防护。
采用本发明的方法只有在程序流程中的函数才会完成设置执行状态信息的操作,相对于整个COS来说对执行速度的影响微乎其微。而且其代码量占总代码量比例相当小,不会影响对内存限制很大的芯片上的使用。
附图说明
下面结合附图与具体实施方式对本发明作进一步详细的说明:
图1是COS控制流程示意图;
图2是智能卡系统抵抗故障攻击的方法控制流程示意图。
具体实施方式
结合图2所示,所述智能卡系统抵抗故障攻击的方法,包括如下步骤:
步骤1,在智能卡中开辟一块内存区域用来存储函数的执行状态信息。所述内存区域可以是RAM(随机存储器)、EEPROM(电可擦可编程只读存储器)或Flash(闪存)等存储器。所述函数的执行状态信息是指函数执行完毕与否的数值。
步骤2,在每个函数的起始位置将函数执行状态设置为未执行完毕。所述函数的起始位置是指该函数程序首条代码所在的地址。
步骤3,在每个函数的退出位置将函数执行状态设置为已执行完毕。所述函数的退出位置是指该函数程序末条代码所在的地址。
步骤4,在智能卡返回响应前检测所有函数是否都执行完毕,如果有任何函数没有执行完毕,则可以进行异常处理。所述异常处理可以是屏蔽返回数据、响应返回报警信息等方式,而不是返回错误的数据,从而防止敏感信息被泄露。
下面是本发明的一个实施例,在该实施例中使用32位系统下的c语言程序做解释,具体流程如下:
第一步,定义一个int型的全局变量g_flag,相当于开辟了一个4字节的内存空间。设定g_flag的每一位标识一个函数。标识信息的值都设定为1,并初始化为非1。
第二步,每个函数的执行状态在起始位置设置为未执行完毕,将每个函数对应的全局变量g_flag的标识位写1。
第三步,每个函数的执行状态在退出位置设置为已执行完毕,将函数对应的全局变量g_flag的标识位清0。
第四步,在返回响应前检测各个函数的执行状态是否都是执行完毕状态,即g_flag是否为0。如果不为0表明至少存在一个函数异常结束,进行异常处理。
综上所述,本发明能够有效的防止因故障的导入而引起的程序流异常。其关键步骤在于:通过设置和检测函数的执行状态,来进行异常检测;通过这种方法能够在不影响COS执行效率的前提下,防止程序流出现异常,避免敏感的信息泄露。
COS的好坏影响着芯片的安全,一个好的COS能够更有效的保护芯片防止被攻击。本发明使得COS具有更强的鲁棒性,能够有效的抵抗故障攻击。当故障被导入时,COS能够发现异常从而可以采取应对的措施。
本发明并不限于上文讨论的实施方式。以上对具体实施方式的描述旨在于为了描述和说明本发明涉及的技术方案。基于本发明启示的显而易见的变换或替代也应当被认为落入本发明的保护范围。以上的具体实施方式用来揭示本发明的最佳实施方法,以使得本领域的普通技术人员能够应用本发明的多种实施方式以及多种替代方式来达到本发明的目的。

智能卡系统抵抗故障攻击的方法.pdf_第1页
第1页 / 共5页
智能卡系统抵抗故障攻击的方法.pdf_第2页
第2页 / 共5页
智能卡系统抵抗故障攻击的方法.pdf_第3页
第3页 / 共5页
点击查看更多>>
资源描述

《智能卡系统抵抗故障攻击的方法.pdf》由会员分享,可在线阅读,更多相关《智能卡系统抵抗故障攻击的方法.pdf(5页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 103455445 A(43)申请公布日 2013.12.18CN103455445A*CN103455445A*(21)申请号 201210175194.X(22)申请日 2012.05.31G06F 12/14(2006.01)(71)申请人上海华虹集成电路有限责任公司地址 201203 上海市浦东新区碧波路572弄39号(72)发明人张伟 马博(74)专利代理机构上海浦一知识产权代理有限公司 31211代理人戴广志(54) 发明名称智能卡系统抵抗故障攻击的方法(57) 摘要本发明公开了一种智能卡系统抵抗故障攻击的方法,步骤1,在智能卡中开辟一块内存区域用来存储函。

2、数的执行状态信息;步骤2,在每个函数的起始位置将函数执行状态设置为未执行完毕;步骤3,在每个函数的退出位置将函数执行状态设置为已执行完毕;步骤4,在智能卡返回响应前检测所有函数是否都执行完毕,如果有任何函数没有执行完毕,则可以进行异常处理。本发明能有效地防范程序流程异常问题,从而防止敏感信息泄露。(51)Int.Cl.权利要求书1页 说明书2页 附图1页(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书1页 说明书2页 附图1页(10)申请公布号 CN 103455445 ACN 103455445 A1/1页21.一种智能卡系统抵抗故障攻击的方法,其特征在于,包括如下步骤:步。

3、骤1,在智能卡中开辟一块内存区域用来存储函数的执行状态信息;步骤2,在每个函数的起始位置将函数执行状态设置为未执行完毕;步骤3,在每个函数的退出位置将函数执行状态设置为已执行完毕;步骤4,在智能卡返回响应前检测所有函数是否都执行完毕,如果有任何函数没有执行完毕,则进行异常处理。2.如权利要求1所述的方法,其特征在于:步骤1所述的内存区域包括RAM、EEPROM、闪存Flash存储器。3.如权利要求1或2所述的方法,其特征在于:步骤1所述函数的执行状态信息是指函数执行完毕与否的数值。4.如权利要求1所述的方法,其特征在于:步骤2所述的函数的起始位置是指该函数程序首条代码所在的地址。5.如权利要求。

4、1所述的方法,其特征在于:步骤3所述的函数的退出位置是指该函数程序末条代码所在的地址。6.如权利要求1所述的方法,其特征在于:步骤4所述的异常处理可以是屏蔽返回数据或返回报警信息。权 利 要 求 书CN 103455445 A1/2页3智能卡系统抵抗故障攻击的方法技术领域0001 本发明涉及一种智能卡系统抵抗故障攻击的方法。背景技术0002 智能卡芯片通常采用硅片制成。硅片的电性能会随着不同的环境参数而变化。例如,硅片的电性能将随着不同的电压、温度、光、电离辐射以及周围电磁场的变化而改变。攻击者将通过改变这些环境参数,来试图引入一些错误的行为,包括对芯片的程序流引入故障。通常,攻击者会迫使芯片。

5、做出错误的决定,允许访问存储器中的保密数据。这种行为在正常情况下是不允许的。0003 参见图1所示,芯片的程序流是由通过COS(片内操作系统)来完成的。COS首先要接收指令,接收到指令后解析该指令要完成何种功能,然后根据解析出来的功能需求操作硬件完成相应的操作,最后返回对于这条指令的响应。0004 当COS正在运行时故障被引入,使得芯片的程序流发生改变,当前函数不正常退出。程序执行流程可能跳出既定的操作,而去执行错误的代码,返回的错误响应,其中可能包含了敏感的或是保密的信息。发明内容0005 本发明要解决的技术问题是提供一种智能卡系统抵抗故障攻击的方法,能有效地防范程序流程异常问题,从而防止敏。

6、感信息泄露。0006 为解决上述技术问题,本发明的智能卡系统抵抗故障攻击的方法,包括如下步骤:0007 步骤1,在智能卡中开辟一块内存区域用来存储函数的执行状态信息;0008 步骤2,在每个函数的起始位置将函数执行状态设置为未执行完毕;0009 步骤3,在每个函数的退出位置将函数执行状态设置为已执行完毕;0010 步骤4,在智能卡返回响应前检测所有函数是否都执行完毕,如果有任何函数没有执行完毕,则可以进行异常处理。0011 目前智能卡内部的COS缺乏安全防护,容易受到故障攻击。本发明通过在函数内部开始位置添加标识信息和在其退出的位置清除标识信息,并检测标识信息是否都被清除,来判断函数是否异常退。

7、出。从而在COS层面有效地抵抗因故障攻击导致的程序运行异常问题,防止异常敏感信息的泄露;能够为芯片提供可靠的安全防护。0012 采用本发明的方法只有在程序流程中的函数才会完成设置执行状态信息的操作,相对于整个COS来说对执行速度的影响微乎其微。而且其代码量占总代码量比例相当小,不会影响对内存限制很大的芯片上的使用。附图说明0013 下面结合附图与具体实施方式对本发明作进一步详细的说明:说 明 书CN 103455445 A2/2页40014 图1是COS控制流程示意图;0015 图2是智能卡系统抵抗故障攻击的方法控制流程示意图。具体实施方式0016 结合图2所示,所述智能卡系统抵抗故障攻击的方。

8、法,包括如下步骤:0017 步骤1,在智能卡中开辟一块内存区域用来存储函数的执行状态信息。所述内存区域可以是RAM(随机存储器)、EEPROM(电可擦可编程只读存储器)或Flash(闪存)等存储器。所述函数的执行状态信息是指函数执行完毕与否的数值。0018 步骤2,在每个函数的起始位置将函数执行状态设置为未执行完毕。所述函数的起始位置是指该函数程序首条代码所在的地址。0019 步骤3,在每个函数的退出位置将函数执行状态设置为已执行完毕。所述函数的退出位置是指该函数程序末条代码所在的地址。0020 步骤4,在智能卡返回响应前检测所有函数是否都执行完毕,如果有任何函数没有执行完毕,则可以进行异常处。

9、理。所述异常处理可以是屏蔽返回数据、响应返回报警信息等方式,而不是返回错误的数据,从而防止敏感信息被泄露。0021 下面是本发明的一个实施例,在该实施例中使用32位系统下的c语言程序做解释,具体流程如下:0022 第一步,定义一个int型的全局变量g_flag,相当于开辟了一个4字节的内存空间。设定g_flag的每一位标识一个函数。标识信息的值都设定为1,并初始化为非1。0023 第二步,每个函数的执行状态在起始位置设置为未执行完毕,将每个函数对应的全局变量g_flag的标识位写1。0024 第三步,每个函数的执行状态在退出位置设置为已执行完毕,将函数对应的全局变量g_flag的标识位清0。0。

10、025 第四步,在返回响应前检测各个函数的执行状态是否都是执行完毕状态,即g_flag是否为0。如果不为0表明至少存在一个函数异常结束,进行异常处理。0026 综上所述,本发明能够有效的防止因故障的导入而引起的程序流异常。其关键步骤在于:通过设置和检测函数的执行状态,来进行异常检测;通过这种方法能够在不影响COS执行效率的前提下,防止程序流出现异常,避免敏感的信息泄露。0027 COS的好坏影响着芯片的安全,一个好的COS能够更有效的保护芯片防止被攻击。本发明使得COS具有更强的鲁棒性,能够有效的抵抗故障攻击。当故障被导入时,COS能够发现异常从而可以采取应对的措施。0028 本发明并不限于上文讨论的实施方式。以上对具体实施方式的描述旨在于为了描述和说明本发明涉及的技术方案。基于本发明启示的显而易见的变换或替代也应当被认为落入本发明的保护范围。以上的具体实施方式用来揭示本发明的最佳实施方法,以使得本领域的普通技术人员能够应用本发明的多种实施方式以及多种替代方式来达到本发明的目的。说 明 书CN 103455445 A1/1页5图1图2说 明 书 附 图CN 103455445 A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1