检测攻击的方法和具有攻击检测功能的装置制造方法及图纸

技术编号:5498802 阅读:167 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了检测攻击的方法和具有攻击检测功能的装置,以提高应用程序运行的安全性。该方法包括:分配至少两段存储空间;分别在所述至少两段存储空间中运行相同的指令;比较所述至少两段存储空间中运行所述指令的运行结果;根据运行结果,确定是否受到攻击。采用本发明专利技术技术方案,确保用于运行应用程序的存储空间的安全性,从而提高了应用程序运行的安全性和可靠性。

【技术实现步骤摘要】

本专利技术涉及智能卡
,尤其涉及一种检测攻击的方法和具有攻击检测功能 的装置。
技术介绍
目前,对智能卡进行攻击的手段越来越多,如通过电压脉冲、时钟脉冲、复位信号 脉冲、改变环境温度、光照、光脉冲或电磁场脉冲等手段,来修改智能卡中某段存储空间的 数据、使智能卡硬件内存发生跳变或使智能卡算术逻辑器件异常输出。因此,为提高在智能 卡存储空间运行应用程序的安全性,需要检测智能卡中的数据是否被非法篡改,以避免应 用程序的运行结果与预期结果不一致的问题,但是目前还没有提出能够有效检测智能卡的 数据是否被篡改的方法。
技术实现思路
本专利技术提供一种检测攻击的方法和装置,以提供一种检测攻击的方法和具有攻击 检测功能的装置,以提高应用程序运行的安全性。一种检测攻击的方法,包括分配至少两段存储空间;分别在所述至少两段存储空间中运行相同的指令;比较所述至少两段存储空间中运行所述指令的运行结果;根据运行结果,确定是否受到攻击。一种具有攻击检测功能的装置,包括内存分配单元,用于分配至少两段存储空间;指令运行单元,用于分别在所述内存分配单元分配的所述至少两段存储空间中运 行相同的指令;攻击检测单元,用于比较所述指令运行单元在所述至少两段存储空间中运行所述 指令的运行结果,并根据所述比较单元比较的结果,确定是否受到攻击。本专利技术实施例中,分配至少两段存储空间,并分别在所述至少两段存储空间中运 行相同的指令,再比较所述至少两段存储空间中运行所述指令的运行结果;根据运行结果, 确定是否受到攻击。采用本专利技术技术方案,一方面,提供了一种较为简单的检测攻击的方 法,确保用于运行应用程序的存储空间的安全性,从而提高了应用程序运行的安全性和可 靠性;另一方面,检测攻击是在分配的至少两段存储空间中进行,从而不需要增加新的存储 空间和其他硬件设备,不需要对智能卡进行任何改进即可实现攻击的检测,实现简单。附图说明图1为本专利技术实施例中检测攻击的方法流程图;图2为本专利技术实施例中分配存储空间的方法流程图3为本专利技术实施例中释放存储空间的方法流程图;图4为本专利技术实施例中运行数据导入指令的方法流程图;图5为本专利技术实施例中运行数据读取指令的方法流程图;图6为本专利技术实施例中运行内存操作指令的方法流程图;图7为本专利技术实施例中具有攻击检测功能装置的结构示意图。具体实施例方式针对现有技术存在的上述技术问题,本专利技术实施例提供一种检测攻击的方法和具 有攻击检测功能的装置,该检测攻击的方法可包括分配至少两段存储空间;分别在所述 至少两段存储空间中运行相同的指令;比较所述至少两段存储空间中运行所述指令的运行 结果;根据运行结果,确定是否受到攻击。采用本专利技术技术方案,一方面,提供了一种较为简 单的检测攻击的方法,确保用于运行应用程序的存储空间的安全性,从而提高了应用程序 运行的安全性和可靠性;另一方面,检测攻击是在分配的至少两段存储空间中进行,从而不 需要增加新的存储空间和其他硬件设备,不需要对智能卡进行任何改进即可实现攻击的检 测。下面结合说明书附图对本专利技术技术方案进行详细的描述。参见图1,为本专利技术实施例中检测攻击的方法流程图,该方法包括步骤101、分配至少两段存储空间。步骤102、分别在所述至少两段存储空间中运行相同的指令。步骤103、比较所述至少两段存储空间中运行所述指令的运行结果,并根据运行结 果,确定是否受攻击。上述流程步骤101中,分配至少两段存储空间,可包括接收应用程序发送的存储 空间分配请求;根据所述存储空间分配请求,为所述应用程序分配至少两段存储空间。为所 述应用程序分配至少两段存储空间,可采用以下方式,从RAM (Random Access Memory,随机 存取存储器),和 / 或 NandFlash,和 / 或 Norf lash,和 / 或 EEI3ROM(Electrically Erasable Programmable Read-Only Memory,电可擦可编程只读存储器)中,动态或静态为所述应用 程序分配至少两段存储空间。动态为所述应用程序分配至少两段存储空间时,可根据应用程序发送的存储空 间分配请求,确定出该应用程序需要分配的存储空间的大小,并从同一存储器(如RAM、 NandFlash、Norflash或EEPR0M)中为该应用程序分配至少两段存储空间(分配的每段存 储空间大于或等于所述应用程序需要分配的存储空间大小);或者,为所述应用程序分配 的至少两段存储空间归属于不同的存储器中,如其中一段存储空间归属于RAM中,其他段 存储空间归属于NandFlash、Norflash或EEPROM中。静态为所述应用程序分配至少两段存储空间时,可采用以下方式预先针对每个变量分配固定的存储空间,针对变量已知的应用程序,确定出该应 用程序所包含的变量,并将该应用程序包含的各变量所对应的存储空间确定为与所述应用 程序对应的存储空间,并建立应用程序与其对应的存储空间的对应关系;当该应用程序发 送存储空间分配请求时,根据所述对应关系,确定出与所述应用程序对应的存储空间,并将 确定出的存储空间分配给该应用程序。如,预先建立应用程序与其对应的存储空间的对应第二应用程序对应的存储空间第一应用程序对应的存储空间较佳地,上述流程步骤102中,当所述指令为数据导入指令,且该数据导入指令中 携带有待导入数据和与所述至少两段存储空间中的每段存储空间对应的偏移量时;针对所 述至少两段存储空间中的每段存储空间,在该段存储空间中对应的偏移量处,写入所述待 导入数据;步骤103中,比较分别在所述至少两段存储空间中对应的所述偏移量处写入的 数据,若相同,则确定未受到攻击;若不相同,则确定受到攻击;和/或,上述步骤102中,当所述指令为数据读取指令,且该数据读取指令中携带 有与所述至少两段存储空间中的每段存储空间对应的偏移量时,针对所述至少两段存储空 间中的每段存储空间,从该段存储空间的所述偏移量处读取数据;步骤103中,比较分别从 所述至少两段存储空间中对应的偏移量处读取的数据,若相同,则确定未受到攻击;若不相 同,则确定受到攻击;和/或,上述步骤102中,当所述指令为内存操作指令,且所述内存操作指令中携 带有数据操作命令、与所述至少两段存储空间中的每段存储空间对应的至少一个偏移量, 分别在所述至少两段存储空间中运行相同的指令,包括针对所述至少两段存储空间中的 每段存储空间,根据所述数据操作命令将该段存储空间中对应的至少一个偏移量中的数 据,进行相应的数据操作;上述步骤103中,比较所述至少两段存储空间中进行所述数据操 作得到的结果,若相同,则确定所述未受到攻击;若不相同,则确定受到攻击权利要求1.一种检测攻击的方法,其特征在于,包括分配至少两段存储空间;分别在所述至少两段存储空间中运行相同的指令;比较所述至少两段存储空间中运行所述指令的运行结果;根据运行结果,确定是否受到攻击。2.如权利要求1所述的方法,其特征在于,所述分配至少两段存储空间,包括接收应 用程序发送的存储空间分配请求;根据所述存储空间分配请求,为所述应用程序分配至少 两段存储空间。3.如权利要求1所述的方法,其特征在于,所述指令为数据导入指令,所述数据导入指 令中携带有待导入数据和与所述至少两段存储空间中本文档来自技高网...

【技术保护点】
一种检测攻击的方法,其特征在于,包括:分配至少两段存储空间;分别在所述至少两段存储空间中运行相同的指令;比较所述至少两段存储空间中运行所述指令的运行结果;根据运行结果,确定是否受到攻击。

【技术特征摘要】

【专利技术属性】
技术研发人员:于付真
申请(专利权)人:北京握奇数据系统有限公司
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1