一种应用安装包的二次打包检测方法及装置与流程

文档序号:26938653发布日期:2021-10-12 13:58阅读:134来源:国知局
一种应用安装包的二次打包检测方法及装置与流程

1.本技术涉及计算机技术领域,尤其涉及一种应用安装包的二次打包检测方法、装置、电子设备以及计算机可读存储介质。


背景技术:

2.随着互联网技术的快速发展,移动终端上的应用程序的种类和数量呈爆发式增长。与此同时,应用程序面临的安全威胁不断增多。
3.其中,移动终端上应用安装包(android application package,apk)被非法者破解并二次打包是影响移动终端安全的一个重要方面。正版apk被破解并被二次打包之后,通常会被加入一些恶意代码,在移动终端安装被二次打包的apk后,植入的恶意代码可以盗取用户资金及敏感信息等,造成严重的安全隐患。
4.现有技术中,虽然可以使用安全加固的方法来降低apk被非法者破解并进行二次打包的风险,然而目前的安全加固方式不具备实时检测的功能,使得apk被破解后也无从知晓,安全隐患依然存在。另外,基于被二次打包后apk的md5值会发生改变的特点,现有技术还可以通过判断待检测apk的md5值与官方apk的基准md5值是否一致的方式,检测二次打包的应用,但这种方式,需要预先存储官方apk的不同版本的基准md5值,对于频繁迭代的应用,可能不能做到及时获取并存储官方apk的不同版本的基准md5值,这也导致不能做到实时检测二次打包的应用。


技术实现要素:

5.本说明书实施例提供一种应用程序的二次打包检测方法、装置、电子设备以及计算机可读存储介质,以解决现有技术中无法实时检测二次打包的应用程序的问题。
6.本说明书实施例采用下述技术方案:
7.一种应用程序的二次打包检测方法,包括:
8.通过预置探针软件开发工具包sdk采集不小于预设数量的移动终端上的目标应用安装包apk的apk数据;所述apk数据包括所述目标apk的apk编号和所述目标apk的电子签名md5值;
9.基于统计学算法,根据所述apk数据,对所述目标apk进行分类;
10.根据分类结果,检测出被二次打包的目标apk。
11.一种应用程序的二次打包检测装置,包括:
12.采集模块,用于通过预置探针软件开发工具包sdk采集不小于预设数量的移动终端上的目标应用安装包apk的apk数据;所述apk数据包括所述目标apk的apk编号和所述目标apk的电子签名md5值;
13.分类模块,用于基于统计学算法,根据所述apk数据,对所述目标apk进行分类;
14.检测模块,用于根据分类结果,检测出被二次打包的目标apk。
15.一种电子设备,包括:存储器、处理器及存储在所在存储器上并可在所述处理器上
运行的计算机程序,所述计算机程序被所述处理器执行时实现任一所述的应用安装包的二次打包检测方法的步骤。
16.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现任一所述的应用安装包的二次打包检测方法的步骤。
17.本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
18.基于同一应用的不同版本apk的md5值不同,同一应用的同一版本的apk的md5值相同,且被二次打包后应用apk的md5值会发生改变的特点,以及移动终端上安装的是二次打包应用的数量占比较低等基础,本说明书实施例通过预置的探针sdk可以实时采集应用程序的apk数据,apk数据包括apk版本号和md5值,再通过统计学算法,对采集的apk数据,进行apk分类,由于移动终端上安装二次打包的应用数量比重较低,基于统计学算法,可以将分类结果中包含apk数量较少的一类分离出来,从而可以实现将采集的apk数据中是二次打包的应用程序检测出来,以实现对二次打包的apk的实时检测。
附图说明
19.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
20.图1为本说明书实施例提供的应用安装包的二次打包检测方法的流程示意图;
21.图2为本说明书实施例提供的应用安装包的二次打包检测装置的结构示意图;
22.图3为本说明书实施例提供的应用安装包的二次打包检测系统的结构示意图;
23.图4为本说明书实施例提供的电子设备结构示意图。
具体实施方式
24.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术具体实施例及相应的附图对本技术技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
25.以下结合附图,详细说明本技术各实施例提供的技术方案。
26.现有技术中,为了防止二次打包的应用造成安全隐患,可以使用安全加固的方法来降低apk被非法者破解并进行二次打包的风险,然而目前的安全加固方式不具备实时检测的功能,使得apk被破解后也无从知晓,安全隐患依然存在。
27.另外,基于被二次打包后apk的md5值会发生改变的特点,现有技术还可以通过判断待检测apk的md5值与官方apk的基准md5值是否一致的方式,检测二次打包的应用,但这种方式,需要预先存储官方apk的不同版本的基准md5值,对于频繁迭代的应用,可能不能做到及时获取并存储官方apk的不同版本的基准md5值,这也导致不能做到实时检测二次打包的应用。
28.为了实现对二次打包应用的实时检测,研究人员发现,对于某一应用,统计到被二次打包并安装在用户的移动终端上的数量,占市场上安装该款应用的总数量的比例较低,约低于1%,也就是说,对于普通移动终端用户而言,安装的某款应用是二次打包应用的概率低于1%,基于该统计存在的前提下,本说明书实施例利用统计学的方法对apk进行分类
识别,将占比较少的二次打包的应用检测出来,以实现对二次打包的应用程序的实时检测。
29.图1所示的是本说明书实施例提供的一种应用安装包的二次打包检测方法的流程示意图,通过该方法可以实现对二次打包的应用程序的实时检测。该方法的执行主体包括但不限于服务器、个人电脑、笔记本电脑、平板电脑、智能手机等可以通过运行预定程序或指令来执行数值计算和/或逻辑计算等预定处理过程的智能电子设备。其中,所述服务器可以是单个网络服务器或者多个网络服务器组成的服务器组或基于云计算(cloud computing)的由大量计算机或网络服务器构成的云。本说明书实施例对该方式的执行主体不做限制,该方法可以包括下述步骤:
30.步骤11:通过预置探针sdk采集不小于预设数量的移动终端上的目标apk的apk数据。
31.这里的apk数据可以包括目标apk的apk编号和目标apk的md5值。其中,md5值可以是现有技术中通过md5算法生成的应用安装包的电子签名。
32.在实际应用中,由于需要采集不小于预设数量的移动终端上的目标apk的apk数据,并将其中可能包含的二次打包的目标apk识别出来,这里的apk编号可以用于区分不同移动终端上的目标apk。相应的,由于采集到的不同移动终端上的目标apk的md5值可能相同,apk编号可以对应区分不同移动终端上的目标apk的md5值。
33.在实际应用中,预设数量可以根据实际需求设定,例如,可以设置为1000,对此本技术不做限制。可以理解的是,如上所述,本说明书实施例将统计学的方法应用到对二次打包的apk的检测,那么采集到的移动终端的目标apk的apk数据的数量越多,对目标apk的分类越准确,所以本说明书实施例采集不小于预设数量的移动终端上的目标apk的apk数据,从而以一定的数据量为基础实现对目标apk的识别分类。
34.这里的探针sdk可以用于采集目标apk的apk数据。在实际应用中,为了通过探针sdk采集目标apk的apk数据,可以预先将探针sdk植入移动终端的任一系统程序,和/或,将探针sdk植入移动终端的任一应用程序中。当移动终端的任一系统程序,和/或,任一应用程序中植入了探针sdk,该探针sdk可以采集该移动终端上安装的全部apk的apk数据,也即,可以采集到目标apk的apk数据。
35.在实际应用中,在被植入探针sdk的任一系统程序,和/或,被植入探针sdk的任一应用程序启动运行时,通过该探针sdk可以采集不小于预设数量的移动终端上的目标apk的apk数据。可以理解的是,该探针sdk可以随系统程序,和/或,应用程序的启动运动而同步运行,那么只要任一被植入探针sdk的系统程序,和/或,任一被植入探针sdk的应用程序启动运行,探针sdk即可执行采集移动终端上目标apk的apk数据,从而可以提高采集apk数据的效率,为实现实时检测二次打包的apk奠定基础。
36.在本说明书一个或多个实施例中,为了便于之后根据apk数据对目标apk进行分类,在通过探针sdk采集到移动终端上的目标apk的apk数据后,还可以包括:将采集到的apk编号和md5值发送至云端;按照预设数据存储结构,将该采集到的apk编号和md5值存储于云端中预先构建的数据库中。
37.在一种实施方式,为了便于对应存储apk编号和md5值,该预设数据存储结构可以是“关键字-值(key-value)”类型的数据存储结构,具体来说,可以是key为apk编号,value为md5值,例如:“apk0001:837373783”可以是key-value类型的数据存储结构的一种具体表
现形式,其中,apk0001可以代表apk编号,837373783可以代表md5值。当然,也可以采用其它类型的数据存储结构,对此本技术不做限制。
38.在实际应用中,将该采集到的apk编号和md5值存储于云端中预先构建的数据库中,可以具体包括:将该采集到的apk编号和md5值存储于云端中预先构建的数据库的表中。其中,该预先构建的数据库可以采用关系型数据库,或分布式数据库,对此本技术不做限制。
39.步骤12:基于统计学算法,根据apk数据,对目标apk进行分类。
40.如上所述,对于某一应用,统计到被二次打包并安装在用户的移动终端上的数量,占市场上安装该款应用的总数量的比例较低,相应的,可以理解的是,这里的不小于预设数量的目标apk中被二次打包的目标apk的数量可以较少并且由于同一版本的目标apk的md5值相同,那么可以认为同一版本的目标apk可以分为一类,若某版本下目标apk被分出不止一类,也就是说,同一版本的目标apk包含不止一个md5值,那么可以认为该不止一类中包含被二次打包的目标apk类。相应的,由于被二次打包的目标apk数量占比较小,可以认为包含目标apk数量少的目标apk类中所包含的目标apk,可以是被二次打包的目标apk。
41.基于上述理论,在本说明书一个或多个实施例中,基于统计学算法,根据apk数据,对目标apk进行分类,可以包括:
42.根据apk编号和md5值,以及预先定义的距离度量方式,确定不小于预设数量的目标apk之间的距离;
43.基于距离,对目标apk进行分类。
44.在一种实施方式中,如公式1所示的可以是一种预先定义的距离度量方式,可以包括:定义md5值相同的目标apk之间的距离为0;定义md5值不同的目标apk之间的距离为1。根据该预先定义的距离度量方式,可以确定出不小于预设数量的目标apk之间的距离,以便于之后基于距离,对目标apk进行分类。
[0045][0046]
其中,d
ij
为目标apk
i
和目标apk
j
之间的距离,md5
i
表示apk
i
的md5值,md5
j
表示apk
j
的md5值。
[0047]
在本说明书实施例中,通过采用0和1的距离度量方式,可以简单确定出目标apk之间的距离,并减少计算机在执行根据距离对目标apk进行分类的计算量。
[0048]
需要注意的是,上述距离度量方式是本说明书实施例提供的一种具体实施方式,并不代表本说明书实施例全部的实施方式。在实际应用中,还可以定义md5值相同的目标apk之间的距离为2,定义md5值不同的目标apk之间的距离为3等方式,对于采用什么数代表md5值相同的目标apk之间的距离,以及对于采用什么数代表md5值不同的目标apk之间的距离,本技术不做限制。
[0049]
在实际应用中,考虑到基于矩阵的矩阵变换,可以较为容易的实现对目标apk的分类,在本说明书一个或多个实施例中,基于距离,对目标apk进行分类,可以具体包括:
[0050]
根据距离,构建距离矩阵;
[0051]
通过对距离矩阵进行矩阵变换,筛出多个子距离矩阵。
[0052]
其中,多个子距离矩阵中的每个子距离矩阵分别对应一类目标apk,每个子距离矩
阵中的距离可以为0
[0053]
在实际应用中,如距离矩阵d所示的可以是根据距离,构建的距离矩阵。
[0054][0055]
为了便于理解如何通过对距离矩阵进行矩阵变换,筛除多个子距离矩阵,这里以5个目标apk的apk数据为例,做解释说明。
[0056]
假设5个目标apk的apk编号可以分别为:apk1、apk2、apk3、apk4、apk5,分别对应的md5值可以是111、222、111、333、222。
[0057]
按照如公式1所示的距离度量方式,确定各目标apk之间的距离可以是:d
11
=0、d
12
=1、d
13
=0、d
14
=1、d
15
=1等以此类推。可以理解的是,d
ii
=0,d
ij
=d
ji
,即,目标apk
i
和目标apk
i
之间的距离为0,目标apk
i
和目标apk
j
之间的距离,与目标apk
j
和目标apk
i
之间的距离相等。那么根据确定出来的距离,可以得到如距离矩阵d0所示的距离矩阵。
[0058][0059]
基于矩阵变换,将从左至右数的第二列和第三列进行交换,从上至下数的第二行和第三行进行交换,可以得到如距离矩阵d1所示的距离矩阵。
[0060][0061]
基于矩阵变换后的距离矩阵d1中,可以筛出子距离矩阵中,可以筛出子距离矩阵则可以认为apk编号apk1和apk3,分别对应的目标apk可以是一类目标apk。
[0062]
由于已经将apk编号apk1和apk3分别对应的目标apk划分为一类,可以将距离矩阵d1中下标包含1和3的矩阵元素筛除,得到如距离矩阵d2所示的距离矩阵。
[0063][0064]
那么再基于矩阵变换,将从左至右数的第二列和第三列进行交换,从上至下数的第二行和第三行进行交换,可以得到如距离矩阵d3所示的距离矩阵。
[0065][0066]
基于矩阵变换后的距离矩阵d3中,可以筛出子距离矩阵中,可以筛出子距离矩阵则可以认为apk编号apk2和apk5,分别对应的目标apk可以是一类目标apk。则,apk编号apk4对应的目标apk可以是一类目标apk。
[0067]
由此可以理解,多个子距离矩阵中的每个子距离矩阵分别对应一类目标apk,每个子距离矩阵中的距离可以为0。在实际应用中,根据采集到的apk数据所构建的距离矩阵,可以通过多次矩阵变换,筛出多个子距离矩阵。
[0068]
在本说明书实施例中,可以将md5值相同,即,apk之间的距离为0的目标apk划分为一类,使得可以不需要知道官方正版目标apk所有版本的基准md5值,就可以实现将目标apk进行分类,从而进一步提高实时检测的能力。
[0069]
步骤13:根据分类结果,检测出被二次打包的目标apk。
[0070]
通过步骤12,可以实现将不小于预设数量的目标apk进行分类,即,得到分类结果。如上文所述,由于被二次打包的目标apk数量占目标apk总数量的比例较小,那么可以认为分类结果中包含目标apk数量较少的一类中的目标apk,可以是被二次打包的apk。例如,按照步骤12中的例子,可以认为apk编号apk4对应的目标apk是被二次打包的目标apk。
[0071]
则在本说明书实施例中,根据分类结果,检测出被二次打包的目标apk,可以具体包括:确定出分类结果中,各类别中所包含的目标apk的数量不高于预设数量值的类别,该确定出的类别所对应的目标apk可以是被二次打包的目标apk。
[0072]
可以理解的是,该预设数量值的具体数值,可以是根据被采集apk数据的目标apk的总数量确定,例如,如上文所述,对于某一应用,统计到被二次打包并安装在用户的移动终端上的数量,占市场上安装该款应用的总数量的比例较低,约低于1%,那么若采集了1000个目标apk的apk数据,则可以设定预设数量值为10,则在检测二次打包的目标apk时,可以将包含低于10个目标apk的类别,认为是被二次打包的类别,相应的,该类别下所包含的目标apk可以是被二次打包的目标apk。
[0073]
在实际应用中,若检测出被二次打包的目标apk,还可以通过向移动终端用户发出警告、阻止安装程序执行等方式,告知用户要安装的目标apk可能是非正版官方apk,并存在安全风险,从而可以降低用户安装被二次打包的应用程序的概率。
[0074]
在本说明书实施例中,通过预置的探针sdk可以实时采集应用程序的apk数据,apk数据包括apk版本号和md5值,再通过统计学算法,对采集的apk数据,进行apk分类,由于移动终端上安装二次打包的应用数量比重较低,基于统计学算法,可以将分类结果中包含apk数量较少的一类分离出来,从而可以实现将采集的apk数据中是二次打包的应用程序检测出来,以实现对二次打包的apk的实时检测。
[0075]
以上为本说明书实施例所提供的应用安装包的二次打包检测方法,基于相同的发明构思,本说明书实施例还提供了相应的应用安装包的二次打包检测装置。如图2所示,该装置具体包括:
[0076]
采集模块21,用于通过预置探针软件开发工具包sdk采集不小于预设数量的移动终端上的目标应用安装包apk的apk数据;所述apk数据包括所述目标apk的apk编号和所述目标apk的电子签名md5值;
[0077]
分类模块22,用于基于统计学算法,根据所述apk数据,对所述目标apk进行分类;
[0078]
检测模块23,用于根据分类结果,检测出被二次打包的目标apk。
[0079]
上述装置实施例的具体工作流程可以包括:采集模块21,通过预置探针软件开发工具包sdk采集不小于预设数量的移动终端上的目标应用安装包apk的apk数据;分类模块22,基于统计学算法,根据所述apk数据,对所述目标apk进行分类;检测模块23,根据分类结果,检测出被二次打包的目标apk。
[0080]
在一种实施方式中,所述装置,还包括:
[0081]
植入模块,用于将所述探针sdk植入所述移动终端的任一系统程序,和/或,将所述探针sdk植入所述移动终端的任一应用程序。
[0082]
在一种实施方式中,采集模块21,具体包括:在所述任一系统程序运行时,和/或,所述任一应用程序启动运行时,通过所述探针sdk采集所述不小于预设数量的移动终端上的目标apk的apk编号和md5值。
[0083]
在一种实施方式中,所述装置,还包括:
[0084]
发送模块,用于将采集到的apk编号和md5值发送至云端;
[0085]
存储模块,用于按照预设数据存储结构,将所述采集到的apk编号和md5值存储于所述云端中预先构建的数据库中。
[0086]
在一种实施方式中,所述分类模块22,包括:
[0087]
距离确定单元,用于根据所述apk编号和所述md5值,以及预先定义的距离度量方式,确定所述不小于预设数量的目标apk之间的距离;
[0088]
分类单元,用于基于所述距离,对所述目标apk进行分类。
[0089]
在一种实施方式中,所述预先定义的距离度量方式,包括:
[0090]
定义md5值相同的目标apk之间的距离为0;
[0091]
定义md5值不同的目标apk之间的距离为1。
[0092]
在一种实施方式中,所述分类单元,包括:
[0093]
矩阵构建子单元,用于根据所述距离,构建距离矩阵;
[0094]
筛选子单元,用于通过对所述距离矩阵进行矩阵变换,筛出多个子距离矩阵;其中,所述多个子距离矩阵中的每个子距离矩阵分别对应一类目标apk;所述每个子距离矩阵中的距离为0。
[0095]
在本说明书实施例中,通过预置的探针sdk可以实时采集应用程序的apk数据,apk数据包括apk版本号和md5值,再通过统计学算法,对采集的apk数据,进行apk分类,由于移动终端上安装二次打包的应用数量比重较低,基于统计学算法,可以将分类结果中包含apk数量较少的一类分离出来,从而可以实现将采集的apk数据中是二次打包的应用程序检测出来,以实现对二次打包的apk的实时检测。
[0096]
以上为本说明书实施例提供的应用安装包的二次打包检测方法及装置,如图3所示,本说明书上实施例还提供一种应用安装包的二次打包检测系统。
[0097]
该应用安装包的二次打包检测系统,可以包括:探针sdk、云端数据分析中心、移动
circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本说明书实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本说明书实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
[0110]
该电子设备还可执行图1中应用安装包的二次打包检测装置执行的方法,并实现应用安装包的二次打包检测装置在图1所示实施例的功能,本说明书实施例在此不再赘述。
[0111]
本说明书实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图1所示实施例中应用安装包的二次打包检测装置执行的方法,并至少用于执行:
[0112]
通过预置探针软件开发工具包sdk采集不小于预设数量的移动终端上的目标应用安装包apk的apk数据;所述apk数据包括所述目标apk的apk编号和所述目标apk的电子签名md5值;
[0113]
基于统计学算法,根据所述apk数据,对所述目标apk进行分类;
[0114]
根据分类结果,检测出被二次打包的目标apk。
[0115]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0116]
本技术是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0117]
这些计算机程序指令也可存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0118]
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0119]
在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0120]
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0121]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其它数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其它类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其它内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其它光学存储、磁盒式磁带,磁带磁磁盘存储或其它磁性存储设备或任何其它非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0122]
还需要说明的是,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0123]
以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1