一种量化评估安全芯片安全性的方法及系统的制作方法

xiaoxiao2020-10-23  14

一种量化评估安全芯片安全性的方法及系统的制作方法
【技术领域】
[0001] 本发明设及巧片检测技术领域,具体地说设及一种量化评估安全巧片安全性的方 法及系统。
【背景技术】
[0002] 随着信息技术的迅猛发展,对信息安全性的要求也越来越高。电子设备一般采用 运行密码算法的安全巧片来保证信息的安全性,然而安全巧片中的加密算法易受到错误注 入攻击,常见的错误注入攻击包括;电压和时钟突变错误,激光诱导错误,X射线和离子束 注入错误等,因此,对安全巧片的安全性的评估显得尤为重要。
[0003]早在1996年就提出了通过CRT-RSA的错误注入攻击方法来检测安全巧片的安全 性。但现有的错误注入分析攻击方法都是先对安全巧片进行剖片处理,再人为地对加密算 法注入一定时间的错误,最后分析正确和错误的加密结果来评估它的安全性,W及破解加 密算法的密钥,测试的效率非常低,而且无法量化,因此无法在时间、空间上对两款或者多 款安全巧片的安全性进行定量的比较,当然也无法从两款或者多款安全巧片中选取出适用 于某种应用场合的安全性高的安全巧片了。

【发明内容】

[0004]为此,本发明所要解决的技术问题在于现有技术中对安全巧片的安全性的检测方 法需要的测试的效率非常低,无法在时间、空间上对两款或者多款安全巧片的安全性进行 定量的比较。
[0005]为解决上述技术问题,本发明的技术方案如下:
[0006]本发明提供了一种量化评估安全巧片安全性的方法,包括:
[0007]对待评估安全巧片进行错误注入攻击,W确定所述安全巧片在空间上的易受错误 注入攻击的敏感点,其中所述敏感点具有面积S,所述面积S是错误注入攻击的面积;
[000引对所述敏感点进行错误注入攻击,确定每个所述敏感点易受错误注入攻击的敏感 时间长度;
[0009]确定所述安全巧片在时间、空间上的敏感区域
其中n表示所述敏感 点的个数,t(i)表示第i个敏感点的敏感时间长度,i为正整数。
[0010] 根据所述安全巧片的总面积、所述安全巧片完成一次加/解密所需要的总时间W及所述安全巧片在时间、空间上的敏感区域,对所述安全巧片的安全性进行量化评估。
[0011] 本发明所述的量化评估安全巧片安全性的方法,所述对待评估安全巧片进行错误 注入攻击,W确定所述安全巧片在空间上的易受错误注入攻击的敏感点包括:
[0012] 根据所述安全巧片的总面积和一次错误注入攻击的面积,在所述安全巧片上划分 出多个需要错误注入攻击的点的位置;
[0013]顺次对每个所述需要错误注入攻击的点进行错误注入攻击,将错误注入攻击下加 /解密结果产生有效错误的点标记为易受错误注入攻击的敏感点。
[0014] 本发明所述的量化评估安全巧片安全性的方法,在所述对待评估安全巧片进行错 误注入攻击,W确定所述安全巧片在空间上的易受错误注入攻击的敏感点之后,还包括
[0015] 对所述安全巧片在空间上的安全性进行量化评估,所述安全巧片在空间上的安全 性Sw=n/N,其中N表示需要错误注入攻击的点的个数,n表示所述敏感点的个数,Sw越 大,所述安全巧片在空间上的安全性越低,反之越高。
[0016] 本发明所述的量化评估安全巧片安全性的方法,所述对所述敏感点进行错误注入 攻击,确定每个敏感点易受错误注入攻击的敏感时间长度,包括:
[0017] 选择一个所述敏感点,在一个加/解密周期内,W-个时钟周期或者多个时钟周 期作为攻击时长对该敏感点进行一轮或多轮错误注入攻击,直至遍历整个所述加/解密周 期,据此确定该敏感点易受错误注入攻击的敏感时间长度;
[0018] 对所述安全巧片进行复位;
[0019] 移位到与该敏感点相邻的下一个敏感点,重复进行上述操作,直到遍历完所有的 敏感点,确定每个敏感点易受错误注入攻击的敏感时间长度。
[0020] 本发明所述的量化评估安全巧片安全性的方法,所述选择一个所述敏感点,在一 个加/解密周期内,W-个时钟周期或者多个时钟周期作为攻击时长对该敏感点进行一轮 或多轮错误注入攻击,直至遍历完整个加/解密周期,据此确定该敏感点易受错误注入攻 击的敏感时间长度包括:
[0021] 选择一个所述敏感点;
[0022] 设定每轮错误注入攻击的攻击时长;
[0023] 在一个加/解密周期内,W-个时钟周期或者多个时钟周期作为攻击时长对该敏 感点进行一轮或多轮错误注入攻击,直至遍历整个所述加/解密周期,并记录每轮错误注 入攻击的开始时间和结束时间,且每轮错误注入攻击的时长均为所述攻击时长;
[0024] 分析每轮错误注入攻击下所述加/解密运算的加/解密结果,判断是否产生有效 错误,如果是,将该轮错误注入攻击的开始时间和结束时间标记为敏感时间段,反之不标 记;
[0025] 根据所述敏感时间段计算出该敏感点的敏感时间长度。
[0026] 本发明所述的量化评估安全巧片安全性的方法,所述安全巧片的安全性表示为:
[0027]
[002引其中n表示所述敏感点的个数,t(i)表示第i个敏感点的敏感时间长度,S表示一 次错误注入攻击的面积,M表示所述安全巧片的总面积,T表示所述安全巧片完成一次加/ 解密所需要的时间,i为正整数,的值越大,所述安全巧片的安全性越低,反之越高。
[0029] 本发明还提供了一种量化评估安全巧片安全性的系统,包括:
[0030] 敏感点确定模块,用于对待评估安全巧片进行错误注入攻击,W确定所述安全巧 片在空间上的易受错误注入攻击的敏感点,其中所述敏感点具有面积S,所述面积S是错误 注入攻击的面积;
[0031] 敏感时间长度确定模块,用于对所述敏感点进行错误注入攻击,确定每个所述敏 感点易受错误注入攻击的敏感时间长度;
[0032] 敏感区域确定模块,用于确定所述安全巧片在时间、空间上的敏感区域
其中n表示所述敏感点的个数,t(i)表示第i个敏感点的敏感时间长度,i 为正整数。
[0033] 安全性评估模块,用于根据所述安全巧片的总面积、所述安全巧片完成一次加/ 解密所需要的总时间W及所述安全巧片在时间、空间上的敏感区域,对所述安全巧片的安 全性进行量化评估。
[0034] 本发明所述的量化评估安全巧片安全性的系统,所述敏感点确定模块包括:
[0035] 划分单元,用于根据所述安全巧片的总面积和一次错误注入攻击的面积,在所述 安全巧片上划分出多个需要错误注入攻击的点的位置;
[0036] 敏感点标记单元,用于顺次对每个所述需要错误注入攻击的点进行错误注入攻 击,将错误注入攻击下加/解密结果产生有效错误的点标记为易受错误注入攻击的敏感 点。
[0037] 本发明所述的量化评估安全巧片安全性的系统,还包括:
[003引空间评估模块,用于对所述安全巧片在空间上的安全性进行量化评估,所述安全 巧片在空间上的安全性S0s=n/N,其中N表示需要错误注入攻击的点的个数,n表示所述敏 感点的个数,Sw越大,所述安全巧片在空间上的安全性越低,反之越高。
[0039] 本发明所述的量化评估安全巧片安全性的系统,所述敏感时间长度确定模块包 括:
[0040] 敏感时间长度获取单元,用于选择一个所述敏感点,在一个加/解密周期内,W- 个时钟周期或者多个时钟周期作为攻击时长对该敏感点进行一轮或多轮错误注入攻击,直 至遍历完整个加/解密周期,据此确定该敏感点易受错误注入攻击的敏感时间长度;
[0041] 复位单元,用于对所述安全巧片进行复位;
[0042] 移位单元,用于移位到与该敏感点相邻的下一个敏感点,重复进行上述操作,直到 遍历完所有的敏感点,确定每个敏感点易受错误注入攻击的敏感时间长度。
[0043] 本发明所述的量化评估安全巧片安全性的系统,所述敏感时间长度获取单元包 括:
[0044] 选择子单元,用于选择一个所述敏感点;
[0045] 设定子单元,用于设定每轮错误注入攻击的攻击时长;
[0046] 检测子单元,用于在一个加/解密周期内,W-个时钟周期或者多个时钟周期作 为攻击时长对该敏感点进行一轮或多轮错误注入攻击,直至遍历完整个加/解密周期,并 记录每轮错误注入攻击的开始时间和结束时间,且每轮错误注入攻击的时长均为所述攻击 时长;
[0047] 敏感时间段标记子单元,用于分析每轮错误注入攻击下所述加/解密运算的加/ 解密结果,判断是否产生有效错误,如果是,将该轮错误注入攻击的开始时间和结束时间标 记为敏感时间段,反之不标记;
[0048] 计算子单元,用于根据所述敏感时间段计算出该敏感点的敏感时间长度。
[0049]本发明所述的量化评估安全巧片安全性的系统,所述评估模块将所述安全巧片的 安全性表示为:
[(K)加]
[0化1] 其中n表示所述敏感点的个数,t(i)表示第i个敏感点的敏感时间长度,S表示一 次错误注入攻击的面积,M表示所述安全巧片的总面积,T表示所述安全巧片完成一次加/ 解密所需要的时间 ,i为正整数,的值越大,所述安全巧片的安全性越低,反之越高。
[0052]本发明的上述技术方案相比现有技术具有W下优点:
[0化3]本发明提供了一种量化评估安全巧片安全性的方法及系统,通过对待评估安全巧 片进行错误注入攻击,W确定安全巧片在空间上的易受错误注入攻击的敏感点,其中敏感 点具有面积S,所述面积S是错误注入攻击的面积,再对敏感点进行错误注入攻击,确定每 个敏感点易受错误注入攻击的敏感时间长度,之后确定安全巧片在时间、空间上的敏感区
,其中n表示所述敏感点的个数,t(i)表示第i个敏感点的敏感时间长度, i为正整数,最后根据安全巧片的总面积、安全巧片完成一次加/解密所需要的总时间W及 安全巧片在时间、空间上的敏感区域,对安全巧片的安全性进行量化评估。因此,根据本发 明实施例的量化评估安全巧片安全性的方法及系统,能够在空间和时间上对安全巧片的安 全性进行量化评估,提供了能够准确评估安全巧片安全性的方法及系统,有利于挑选出适 用于某种情况的安全性高的安全巧片,确保信息安全。
【附图说明】
[0054]为了使本发明的内容更容易被清楚的理解,下面根据本发明的具体实施例并结合 附图,对本发明作进一步详细的说明,其中
[0化5]图1是根据本发明实施例的量化评估安全巧片安全性的方法的流程图;
[0056] 图2是根据本发明实施例的量化评估安全巧片安全性的方法中步骤S1的具体流 程图;
[0057] 图3是根据本发明实施例的量化评估安全巧片安全性的方法中步骤S2的具体流 程图;
[005引图4是根据本发明实施例的量化评估安全巧片安全性的方法中步骤S21的步骤框 图;
[0059] 图5是根据本发明实施例的安全巧片的二维敏感分布图的示意图;
[0060] 图6是根据本发明实施例的并行实现的安全巧片的=维敏感分布图;
[0061] 图7是根据本发明实施例的串行实现的安全巧片的S维敏感分布图;
[0062] 图8是根据本发明实施例的量化评估安全巧片安全性的系统的结构框图。
[0063]图中附图标记表示为;1-敏感点确定模块,la-空间评估模块,2-敏感时间长度 确定模块,3-敏感区域确定模块,4-安全性评估模块,11-划分单元,12-敏感点标记单元, 21-敏感时间长度获取单元,22-复位单元,23-移位单元,211-选择子单元,212-设定子单 元,213-检测子单元,214-敏感时间段标记子单元,215-计算子单元。
【具体实施方式】
[0064] 实施例1
[0065] 本实施例提供了一种量化评估安全巧片安全性的方法,如图1所示,包括:
[0066] S1.对待评估安全巧片进行错误注入攻击,W确定所述安全巧片在空间上的易受 错误注入攻击的敏感点,其中所述敏感点具有面积S,所述面积S是错误注入攻击的面积;
[0067] S2.对所述敏感点进行错误注入攻击,确定每个所述敏感点易受错误注入攻击的 敏感时间长度;
[0068]S3.确定所述安全巧片在时间、空间上的敏感区均
其中n表示所述 敏感点的个数,t(i)表示第i个敏感点的敏感时间长度,i为正整数;
[0069] S4.根据所述安全巧片的总面积、所述安全巧片完成一次加/解密所需要的总时 间W及所述安全巧片在时间、空间上的敏感区域,对所述安全巧片的安全性进行量化评估。
[0070] 具体地,安全巧片的敏感点所处的位置可能包含一个或多个寄存器、逻辑n,比如 某个寄存器位于敏感点对应的位置范围内,则说明该寄存器易受错误注入攻击。确定了易 受错误注入攻击的上述寄存器、逻辑口等在安全巧片的位置,可W有针对性的改良其性能, 有利于优化安全巧片的结构设计。错误注入攻击一般包括高低频电磁诱导错误、时钟或电 平突变诱导错误、与光致错误攻击、重粒子攻击等。
[0071] 通过对安全巧片进行错误注入攻击,就可W确定安全巧片易受错误注入攻击的敏 感点,可知敏感点的个数占巧片被攻击的总点数的比例越大,则安全巧片在空间上的安全 性就越低,能够据此在空间上对安全巧片的安全性进行量化的评估。
[0072] 有的安全巧片的敏感点在某些特定时间才会易受错误注入攻击,为了更好的评估 安全巧片的安全性,可W在步骤S1的基础上,对每个敏感点进行注入错误攻击,就可W确 定每个敏感点易受错误注入攻击的敏感时间长度,而安全巧片的所有的敏感点易受错误注 入攻击的敏感时间长度的累计值越大,说明安全巧片在空间和时间上可攻击的区域越大。 另外,安全巧片易受错误注入攻击的难易程度还跟安全巧片的总面积和安全巧片执行一次 加/解密的时间有关系,而安全巧片在时间、空间上的敏感区域是在安全巧片中的敏感点 位置的(空间上)基础上获取的,因此,根据安全巧片的总面积、安全巧片完成一次加/解 密所需要的总时间W及安全巧片在时间、空间上的敏感区域,就可W在空间、时间上对安全 巧片的安全性进行量化的评估了,能够准确评估安全巧片安全性,从众多安全巧片中挑选 出适用于某种情况的安全性高的安全巧片,确保了信息安全。
[0073] 优选地,如图2所示,所述步骤S1可W包括:
[0074] S11.根据所述安全巧片的总面积和一次错误注入攻击的面积,在所述安全巧片上 划分出多个需要错误注入攻击的点的位置;
[0075] S12.顺次对每个所述需要错误注入攻击的点进行错误注入攻击,将错误注入攻击 下加/解密结果产生有效错误的点标记为易受错误注入攻击的敏感点;
[0076] 具体地,攻击设备不同,一次错误注入攻击的面积有可能不同,但一般在比较两款 或者多款安全巧片安全性的过程中,都会采用同一攻击设备,因此一次错误注入攻击的面 积是个定值,将安全巧片的总面积与一次错误注入攻击的面积相除,就可W确定安全巧片 上需要错误注入攻击的点的个数了,对安全巧片进行均匀划分,就可w在安全巧片上划分 出多个需要错误注入攻击的点的位置了。错误注入攻击时,顺次对每个需要错误注入攻击 的点进行错误注入攻击,就可W获取错误注入攻击下加/解密分析得出的加/解密结果了, 通过分析可W获知加/解密结果是否产生有效错误,可W选用现有的攻击技术对加/解密 结果进行分析,判断是否产生有效错误,就可W快捷、准确地标记出易受错误注入攻击的 敏感点了。根据安全巧片的所有的敏感点的位置,就可W精确迅速的确定安全巧片在空间 上的敏感区域了。
[0077] 具体地,通常选择安全巧片左上角的位置作为第一个被错误注入攻击的点,然后 分析加/解密结果并判断是否产生有效错误,如果是,就将该点标记为敏感点,再移位到与 该点相邻的下一个点,重复进行上述操作,就可W不留死角的遍历完整块安全巧片,便于操 作,标记的敏感点也更为精确。
[007引优选地,所述步骤S1之后还包括,步骤Sla.对所述安全巧片在空间上的安全性进 行量化评估,所述安全巧片在空间上的安全性Sw=n/N,其中N表示需要错误注入攻击的 点的个数,n表示所述敏感点的个数,S?s越大,所述安全巧片在空间上的安全性越低,反之 越高。可W准确便捷的对安全巧片在空间上的安全性进行量化评估。本领域技术人员应当 理解,步骤Sla不限于紧接在步骤S1之后,而是可W在步骤S1之后的任意步骤执行。
[0079] 优选地,如图3所示,所述步骤S2可W包括:
[0080] S21.选择一个所述敏感点,在一个加/解密周期内,W-个时钟周期或者多个时 钟周期作为攻击时长对该敏感点进行一轮或多轮错误注入攻击,直至遍历整个所述加/解 密周期,据此确定该敏感点易受错误注入攻击的敏感时间长度;
[0081] S22.对所述安全巧片进行复位;
[0082] S23.移位到与该敏感点相邻的下一个敏感点,重复进行上述操作,直到遍历完所 有的敏感点,确定每个敏感点易受错误注入攻击的敏感时间长度。
[0083] 具体地,在一个加/解密周期内,如果错误注入攻击的攻击时长较短,则可W对该 敏感点连续进行多轮错误注入攻击,可W使测试结果更为准确。如一个加/解密周期为 50(K)ns,每轮错误注入攻击的时长为5ns,则一个加/解密周期内,需要对该敏感点连续进 行1000轮错误注入攻击,如首轮错误注入攻击的时间段为化s-5ns,则第2轮错误注入攻击 的时间段为5ns-10ns,第=轮错误注入攻击的时间段为10ns-15ns……,第1000轮错误注 入攻击的时间段为4995ns-50(K)ns,此时就遍历完了整个加/解密周期,不会遗漏任何一个 易受错误注入攻击的时间段,确保了检测结果的准确性。
[0084] 根据步骤S1中确定的敏感点的位置,可W有针对性的只选取敏感点进行错误注 入攻击来检验安全巧片在空间、时间上的安全性,有效缩短了测试时间。完成对某一个敏感 点的测试后,需要对安全巧片进行复位,该样可W使错误注入攻击相互独立,使测试结果更 为准确。复位后,就可W移位到与该敏感点相邻的下一个敏感点了,重复进行上述操作,直 到遍历完所有的敏感点,就可W确定每个敏感点易受错误注入攻击的敏感时间长度了,操 作便捷,测试效率高。
[0085] 优选地,如图4所示,所述步骤S21可W包括:
[0086] S211.选择一个所述敏感点;
[0087] S212.设定每轮错误注入攻击的攻击时长;
[008引 S213.在一个加/解密周期内,W-个时钟周期或者多个时钟周期作为攻击时长 对该敏感点进行一轮或多轮错误注入攻击,直至遍历整个所述加/解密周期,并记录每轮 错误注入攻击的开始时间和结束时间,且每轮错误注入攻击的时长均为所述攻击时长;
[0089] S214.分析每轮错误注入攻击下所述加/解密运算的加/解密结果,判断是否产生 有效错误,如果是,将该轮错误注入攻击的开始时间和结束时间标记为敏感时间段,反之不 标记;
[0090] S215.根据所述敏感时间段计算出该敏感点的敏感时间长度。
[0091] 具体地,设定的每轮错误注入攻击的攻击时长越短,测试结果就会越准确,因为攻 击时长越短,就可W在一个加/解密周期内对某一个敏感点进行多轮错误注入攻击,该样 得出的测试结果能够体现出敏感点易受错误注入攻击的真实程度,可W选用一个时钟周期 作为攻击时长,便于精确控制。如果某一轮错误注入攻击时,加/解密结果产生了有效错 误,则将该轮错误注入攻击的开始时间和结束时间标记为敏感时间段,每个敏感点的敏感 时间段可能有一条,也可能有多条,根据具体的错误注入攻击测试获取,通过每个敏感点的 一个或者多个敏感时间段,就可W计算出每个敏感时间段的时长,将一个或者多个时长相 加,就可W计算出该敏感点的敏感时间长度了,非常便捷。
[0092] 优选地,所述步骤S3中,所述安全巧片的安全性可W表示为:
[0093]
[0094] 其中n表示所述敏感点的个数,t(i)表示第i个敏感点的敏感时间长度,S表示 一次错误注入攻击的面积,M表示所述安全巧片的总面积,T表示所述安全巧片完成一次加 /解密所需要的时间,i为正整数,S山勺值越大,所述安全巧片的安全性越低,反之越高。能 够在空间、时间上准确的对安全巧片的安全性进行量化评估。
[0095] 优选地,遍历完整块安全巧片,确定完安全巧片的所有敏感点的位置后,可W根据 安全巧片划分的错误注入攻击的点的位置和安全巧片的所有敏感点的位置生成二维敏感 分布图,二维敏感分布图的示意图如图6所示,测试者可W通过二维敏感分布图形象直观 的看到敏感点(易受错误注入攻击的点的位置),对安全巧片的薄弱结构进行定位,优化其 结构设计。
[0096] 优选地,遍历完所有的敏感点,获取每个敏感点的敏感时间段后,可W根据敏感点 在安全巧片的位置W及每个敏感点的敏感时间段生成=维敏感分布图,图7为并行实现的 安全巧片的=维敏感分布图,图8为串行实现的安全巧片的=维敏感分布图,可W看到,通 过=维敏感分布图,可W形象直观的看到安全巧片在空间、时间上的敏感区域的体积,可W 对各个测试中的安全巧片(比如并行实现的安全巧片和串行实现的安全巧片)在空间、时 间上的安全性有一个直观的了解,一般如果安全巧片的总面积相同且完成一次加/解密所 需要的时间相同的情况下,S维敏感分布图中的体积越大,说明安全巧片在空间、时间上的 安全性越低,越易于被错误注入攻击,便于测试人员观察测试结果。
[0097] 实施例2
[009引本实施例提供了一种量化评估安全巧片安全性的系统,如图8所示,包括:
[0099] 敏感点确定模块1,用于对待评估安全巧片进行错误注入攻击,W确定所述安全巧 片在空间上的易受错误注入攻击的敏感点,其中所述敏感点具有面积S,所述面积s是错误 注入攻击的面积;
[0100] 敏感时间长度确定模块2,用于对所述敏感点进行错误注入攻击,确定每个所述敏 感点易受错误注入攻击的敏感时间长度;
[0101] 敏感区域确定模块3,用于确定所述安全巧片在时间、空间上的敏感区域
,其中n表示所述敏感点的个数,t(i)表示第i个敏感点的敏感时间长度,i 为正整数。
[0102] 安全性评估模块4,用于根据所述安全巧片的总面积、所述安全巧片完成一次加/ 解密所需要的总时间W及所述安全巧片在时间、空间上的敏感区域,对所述安全巧片的安 全性进行量化评估。
[0103] 具体地,安全巧片的敏感点可W为安全巧片中的某个寄存器、某个与非口、某个逻 辑单元等等,确定了上述寄存器、与非口、逻辑单元等在安全巧片的位置,可W有针对性的 改良其性能,有利于优化安全巧片的结构设计。错误注入攻击一般包括高低频电磁诱导错 误、时钟或电平突变诱导错误、与光致错误攻击、重粒子攻击等。
[0104] 优选地,所述第一确定模块1可W包括:
[01化]划分单元11,用于根据所述安全巧片的总面积和一次错误注入攻击的面积,在所 述安全巧片上划分出多个需要错误注入攻击的点的位置;
[0106] 敏感点标记单元12,用于顺次对每个所述需要错误注入攻击的点进行错误注入攻 击,将错误注入攻击下,加/解密结果产生有效错误的点标记为易受错误注入攻击的敏感 点。
[0107] 优选地,还可W包括,空间评估模块la,用于对所述安全巧片在空间上的安全性进 行量化评估,所述安全巧片在空间上的安全性Sw=n/N,其中N表示需要错误注入攻击的 点的个数,n表示所述敏感点的个数,越大,所述安全巧片在空间上的安全性越低,反之 越局。
[0108] 优选地,所述第二确定模块2可W包括:
[0109] 敏感时间长度获取单元21,用于选择一个所述敏感点,在一个加/解密周期内,W 一个时钟周期或者多个时钟周期作为攻击时长对该敏感点进行一轮或多轮错误注入攻击, 直至遍历整个所述加/解密周期,据此确定该敏感点易受错误注入攻击的敏感时间长度;
[0110] 复位单元22,用于对所述安全巧片进行复位;
[0111] 移位单元23,用于移位到与该敏感点相邻的下一个敏感点,重复进行上述操作,直 到遍历完所有的敏感点,确定每个敏感点易受错误注入攻击的敏感时间长度。
[0112] 通过本实施例通过敏感时间长度获取单元21,可W有针对性的只选取敏感点进行 错误注入攻击来检验安全巧片在空间、时间上的安全性,有效缩短了测试时间。完成对某一 个敏感点的测试后,通过复位单元22对安全巧片进行复位,该样可W使错误注入攻击相互 独立,使测试结果更为准确。复位后,就可W移位到与该敏感点相邻的下一个敏感点了,通 过移位单元23重复进行上述操作,直到遍历完所有的敏感点,就可W确定每个敏感点易受 错误注入攻击的敏感时间长度了,操作便捷,测试效率高。
[0113] 优选地,所述敏感时间长度获取单元21可W包括:
[0114] 第二选择子单元211,用于选择一个所述敏感点;
[0115] 设定子单元212,用于设定每轮错误注入攻击的攻击时长;
[0116] 检测子单元213,用于在一个加/解密周期内,W-个时钟周期或者多个时钟周 期作为攻击时长对该敏感点进行一轮或多轮错误注入攻击,直至遍历整个所述加/解密周 期,并记录每轮错误注入攻击的开始时间和结束时间,且每轮错误注入攻击的时长均为所 述攻击时长;
[0117] 敏感时间段标记子单元214,用于分析每轮错误注入攻击下所述加/解密运算的 加/解密结果,判断是否产生有效错误,如果是,将该轮错误注入攻击的开始时间和结束时 间标记为敏感时间段,反之不标记;
[0118] 计算子单元215,用于根据所述敏感时间段计算出该敏感点的敏感时间长度。
[0119] 优选地,所述安全性评估模块4,可W将所述安全巧片的安全性表示为:
[0120]
[0121] 其中n表示所述敏感点的个数,t(i)表示第i个敏感点的敏感时间长度,S表示一 次错误注入攻击的面积,M表示所述安全巧片的总面积,T表示所述安全巧片完成一次加/ 解密所需要的时间,i为正整数,的值越大,所述安全巧片的安全性越低,反之越高。
[0122] 根据本发明实施例的量化评估安全巧片安全性的系统,能够在空间和时间上对安 全巧片的安全性进行量化评估,提供了能够准确评估安全巧片安全性的方法及系统,有利 于挑选出适用于某种情况的安全性高的安全巧片,确保信息安全。
[0123] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序 产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实 施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机 可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产 品的形式。
[0124] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程 图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一 流程和/或方框、W及流程图和/或方框图中的流程和/或方框的结合。可提供该些计算 机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理 器W产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生 用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能 的装置。
[01巧]该些计算机程序指令也可 存储在能引导计算机或其他可编程数据处理设备W特 定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指 令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或 多个方框中指定的功能。
[0126] 该些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计 算机或其他可编程设备上执行一系列操作步骤W产生计算机实现的处理,从而在计算机或 其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图 一个方框或多个方框中指定的功能的步骤。
[0127] 尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造 性概念,则可对该些实施例作出另外的变更和修改。所W,所附权利要求意欲解释为包括优 选实施例W及落入本发明范围的所有变更和修改。
【主权项】
1. 一种量化评估安全芯片安全性的方法,其特征在于,包括: 对待评估安全芯片进行错误注入攻击,以确定所述安全芯片在空间上的易受错误注入 攻击的敏感点,其中所述敏感点具有面积S,所述面积S是错误注入攻击的面积; 对所述敏感点进行错误注入攻击,确定每个所述敏感点易受错误注入攻击的敏感时间 长度; 确定所述安全芯片在时间、空间上的敏感区域Ρ = ,其中η表示所述敏感点的 i:l 个数,t(i)表示第i个敏感点的敏感时间长度,i为正整数; 根据所述安全芯片的总面积、所述安全芯片完成一次加/解密所需要的总时间以及所 述安全芯片在时间、空间上的敏感区域,对所述安全芯片的安全性进行量化评估。2. 根据权利要求1所述的量化评估安全芯片安全性的方法,其特征在于,所述对待评 估安全芯片进行错误注入攻击,以确定所述安全芯片在空间上的易受错误注入攻击的敏感 点包括: 根据所述安全芯片的总面积和一次错误注入攻击的面积,在所述安全芯片上划分出多 个需要错误注入攻击的点的位置; 顺次对每个所述需要错误注入攻击的点进行错误注入攻击,将错误注入攻击下加/解 密结果产生有效错误的点标记为易受错误注入攻击的敏感点。3. 根据权利要求1所述的量化评估安全芯片安全性的方法,其特征在于,在所述对待 评估安全芯片进行错误注入攻击,以确定所述安全芯片在空间上的易受错误注入攻击的敏 感点之后,还包括 对所述安全芯片在空间上的安全性进行量化评估,所述安全芯片在空间上的安全性Sqs =n/N,其中N表示需要错误注入攻击的点的个数,η表示所述敏感点的个数,Sqs越大,所述 安全芯片在空间上的安全性越低,反之越高。4. 根据权利要求1所述的量化评估安全芯片安全性的方法,其特征在于,所述对所述 敏感点进行错误注入攻击,确定每个敏感点易受错误注入攻击的敏感时间长度,包括: 选择一个所述敏感点,在一个加/解密周期内,以一个时钟周期或者多个时钟周期作 为攻击时长对该敏感点进行一轮或多轮错误注入攻击,直至遍历整个所述加/解密周期, 据此确定该敏感点易受错误注入攻击的敏感时间长度; 对所述安全芯片进行复位; 移位到与该敏感点相邻的下一个敏感点,重复进行上述操作,直到遍历完所有的敏感 点,确定每个敏感点易受错误注入攻击的敏感时间长度。5. 根据权利要求4所述的量化评估安全芯片安全性的方法,其特征在于,所述选择一 个所述敏感点,在一个加/解密周期内,以一个时钟周期或者多个时钟周期作为攻击时长 对该敏感点进行一轮或多轮错误注入攻击,直至遍历完整个加/解密周期,据此确定该敏 感点易受错误注入攻击的敏感时间长度包括: 选择一个所述敏感点; 设定每轮错误注入攻击的攻击时长; 在一个加/解密周期内,以一个时钟周期或者多个时钟周期作为攻击时长对该敏感点 进行一轮或多轮错误注入攻击,直至遍历整个所述加/解密周期,并记录每轮错误注入攻 击的开始时间和结束时间,且每轮错误注入攻击的时长均为所述攻击时长; 分析每轮错误注入攻击下所述加/解密运算的加/解密结果,判断是否产生有效错误, 如果是,将该轮错误注入攻击的开始时间和结束时间标记为敏感时间段,反之不标记; 根据所述敏感时间段计算出该敏感点的敏感时间长度。6. 根据权利要求1所述的量化评估安全芯片安全性的方法,其特征在于,所述安全芯 片的安全性表示为:其中η表示所述敏感点的个数,t (i)表示第i个敏感点的敏感时间长度,s表示一次错 误注入攻击的面积,M表示所述安全芯片的总面积,T表示所述安全芯片完成一次加/解密 所需要的时间,i为正整数,\的值越大,所述安全芯片的安全性越低,反之越高。7. -种量化评估安全芯片安全性的系统,其特征在于,包括: 敏感点确定模块(1),用于对待评估安全芯片进行错误注入攻击,以确定所述安全芯片 在空间上的易受错误注入攻击的敏感点,其中所述敏感点具有面积s,所述面积s是错误注 入攻击的面积; 敏感时间长度确定模块(2),用于对所述敏感点进行错误注入攻击,确定每个所述敏感 点易受错误注入攻击的敏感时间长度; 敏感区域确定模块(3),用于确定所述安全芯片在时间、空间上的敏感区域 η F ,其中η表示所述敏感点的个数,t(i)表示第i个敏感点的敏感时间长度,i 为正整数。 安全性评估模块(4),用于根据所述安全芯片的总面积、所述安全芯片完成一次加/解 密所需要的总时间以及所述安全芯片在时间、空间上的敏感区域,对所述安全芯片的安全 性进行量化评估。8. 根据权利要求7所述的量化评估安全芯片安全性的系统,其特征在于,所述敏感点 确定t吴块(1)包括: 划分单元(11),用于根据所述安全芯片的总面积和一次错误注入攻击的面积,在所述 安全芯片上划分出多个需要错误注入攻击的点的位置; 敏感点标记单元(12),用于顺次对每个所述需要错误注入攻击的点进行错误注入攻 击,将错误注入攻击下加/解密结果产生有效错误的点标记为易受错误注入攻击的敏感 点。9. 根据权利要求7所述的量化评估安全芯片安全性的系统,其特征在于,还包括: 空间评估模块(Ia),用于对所述安全芯片在空间上的安全性进行量化评估,所述安全 芯片在空间上的安全性Sqs= n/N,其中N表示需要错误注入攻击的点的个数,η表示所述敏 感点的个数,Sqs越大,所述安全芯片在空间上的安全性越低,反之越高。10. 根据权利要求7所述的量化评估安全芯片安全性的系统,其特征在于,所述敏感时 间长度确定模块(2)包括: 敏感时间长度获取单元(21),用于选择一个所述敏感点,在一个加/解密周期内,以一 个时钟周期或者多个时钟周期作为攻击时长对该敏感点进行一轮或多轮错误注入攻击,直 至遍历整个所述加/解密周期,据此确定该敏感点易受错误注入攻击的敏感时间长度; 复位单元(22),用于对所述安全芯片进行复位; 移位单元(23),用于移位到与该敏感点相邻的下一个敏感点,重复进行上述操作,直到 遍历完所有的敏感点,确定每个敏感点易受错误注入攻击的敏感时间长度。11. 根据权利要求10所述的量化评估安全芯片安全性的系统,其特征在于,所述敏感 时间长度获取单元(21)包括: 选择子单元(211),用于选择一个所述敏感点; 设定子单元(212),用于设定每轮错误注入攻击的攻击时长; 检测子单元(213),用于在一个加/解密周期内,以一个时钟周期或者多个时钟周期作 为攻击时长对该敏感点进行一轮或多轮错误注入攻击,直至遍历整个所述加/解密周期, 并记录每轮错误注入攻击的开始时间和结束时间,且每轮错误注入攻击的时长均为所述攻 击时长; 敏感时间段标记子单元(214),用于分析每轮错误注入攻击下所述加/解密运算的加/ 解密结果,判断是否产生有效错误,如果是,将该轮错误注入攻击的开始时间和结束时间标 记为敏感时间段,反之不标记; 计算子单元(215),用于根据所述敏感时间段计算出该敏感点的敏感时间长度。12. 根据权利要求7所述的量化评估安全芯片安全性的系统,其特征在于,所述安全性 评估模块(4)将所述安全芯片的安全性表示为:其中η表示所述敏感点的个数,t (i)表示第i个敏感点的敏感时间长度,s表示一次错 误注入攻击的面积,M表示所述安全芯片的总面积,T表示所述安全芯片完成一次加/解密 所需要的时间,i为正整数,\的值越大,所述安全芯片的安全性越低,反之越高。
【专利摘要】本发明提供了一种量化评估安全芯片安全性的方法及系统,通过对待评估安全芯片进行错误注入攻击,以确定安全芯片在空间上的易受错误注入攻击的敏感点,再对敏感点进行错误注入攻击,确定每个敏感点易受错误注入攻击的敏感时间长度,之后确定安全芯片在时间、空间上的敏感区域,其中n表示所述敏感点的个数,t(i)表示第i个敏感点的敏感时间长度,i为正整数,最后根据安全芯片的总面积、安全芯片完成一次加/解密所需要的总时间以及安全芯片在时间、空间上的敏感区域,对安全芯片的安全性进行量化评估。因此,根据本发明实施例的量化评估安全芯片安全性的方法及系统,能够在空间和时间上对安全芯片的安全性进行量化评估。
【IPC分类】G06F21/77
【公开号】CN104881618
【申请号】CN201410856616
【发明人】邵翠萍, 李慧云, 周剑彬, 徐国卿, 李大为, 罗鹏
【申请人】中国科学院深圳先进技术研究院, 国家密码管理局商用密码检测中心
【公开日】2015年9月2日
【申请日】2014年12月31日
转载请注明原文地址:https://www.famiwei.com/read-8138458.html

最新回复(0)