首页 / 专利库 / 银行与财务事项 / 数字货币 / 虚拟货币 / 一种代码静态分析方法和装置

一种代码静态分析方法和装置

阅读:672发布:2020-05-16

专利汇可以提供一种代码静态分析方法和装置专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种代码静态分析方法、装置、 电子 设备、计算机可读存储介质。该方法包括:接收用户提交的代码静态分析结果数据,并进行验证分析;通过 区 块 链 技术,将验证通过的代码静态分析结果数据保存至区块链的 指定 区块中;以及,通过区块链技术,向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的 虚拟 货币 。通过本技术方案,提高用户提交代码静态分析结果数据的兴趣,另外,根据用户提交的代码静态分析结果数据,得到用户对代码静态分析工具的分析反馈,有利于提供方掌握代码静态分析工具的运行情况以及分析规则的 缺陷 ,进而有利于对代码静态分析工具的优化,通过用户对代码静态分析工具的使用体验。,下面是一种代码静态分析方法和装置专利的具体信息内容。

1.一种代码静态分析方法,其中,该方法包括:
接收用户提交的代码静态分析结果数据,并进行验证分析;
通过链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中;
以及,通过区块链技术,向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币
2.如权利要求1所述的方法,其中,该方法进一步包括:
当接收到用户的权限兑换请求时,根据接收到的权限兑换请求中的虚拟货币的指定数量,设定该用户的代码静态分析的使用权限;
或者,当接收到用户的指定货币兑换请求时,将用户的账户中的指定数量的虚拟货币,兑换成与指定数量的虚拟货币对应的一定数量的指定货币,将兑换的一定数量的指定货币记录在该用户的账户中。
3.如权利要求1所述的方法,其中,所述用户提交的代码静态分析结果数据包括如下的一种或多种:
代码样本的分析结果数据;
已分析的代码样本数据;
用于代码静态分析的分析规则代码数据。
4.如权利要求1所述的方法,其中,所述区块链的指定区块包括保存用于代码静态分析的分析规则代码的区块、保存代码样本的区块;
所述将验证通过的代码静态分析结果数据保存至区块链的指定区块中包括:
当验证通过的代码静态分析结果数据是已分析的代码样本数据时,将该已分析的代码样本数据作为一条新的数据写入区块链的保存有代码样本的区块中;和/或,当验证通过的代码静态分析结果数据是用于代码静态分析的分析规则代码数据,将该用于代码静态分析的分析规则代码数据作为一条新的数据写入区块链的保存用于代码静态分析的分析规则代码的区块中。
5.如权利要求4所述的方法,其中,所述区块链的指定区块还包括保存当前代码静态分析的误报率和漏测率;该方法进一步包括:
获取所述区块链的指定区块中的代码样本增加后的新的代码静态分析的误报率和漏测率,和/或,获取使用新写入的用于代码静态分析的分析规则代码进行代码静态分析后的新的代码静态分析的误报率和漏测率;
将获取的新的代码静态分析的误报率和漏测率作为一条新的数据写入所述区块链的保存代码静态分析的误报率和漏测率的区块中。
6.如权利要求1所述的方法,其中,所述接收用户提交的代码静态分析结果数据,并进行验证分析包括:
将用户提交的代码静态分析结果数据发送至验证人员处,以便所述验证人员验证用户提交的代码静态分析结果数据是否有效;
接收所述验证人员返回的验证结果;
当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
7.如权利要求6所述的方法,其中,所述验证结果中还包括所述验证人员的权限信息;
该方法进一步包括:
根据所述验证人员的权限信息,判断所述验证人员是否有向所述区块链的指定区块中写入数据的权限;
若判断为是,且当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
8.一种代码静态分析装置,其中,该装置包括:
接收单元,适于接收用户提交的代码静态分析结果数据,并进行验证分析;
保存单元,适于通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中;
分发单元,适于通过区块链技术,向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币。
9.一种电子设备,其中,该电子设备包括:
处理器;以及,
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行根据权利要求1~7中任一项所述的方法。
10.一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现权利要求1~7中任一项所述的方法。

说明书全文

一种代码静态分析方法和装置

技术领域

[0001] 本发明涉及计算机技术领域,具体涉及一种代码静态分析方法、装置、电子设备和计算机可读存储介质。

背景技术

[0002] 目前的计算机技术中,特别计算机软件的实现上,都离不开程序代码。在程序代码完成后,可以采用代码静态分析的方法,来查找代码中存在的结构性错误、安全漏洞等问题,从而保证软件的整体质量。一般情况下,用户是通过代码静态分析工具进行代码静态分析,对于代码静态分析工具提供方来说,用户使用结束后,一般不会对代码静态分析的结果以及使用该代码静态分析的情况进行反馈,这样提供方就无法掌握代码静态分析工具的运行情况以及分析规则的缺陷,不利于代码静态分析工具的优化。

发明内容

[0003] 鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的代码静态分析方法、装置、电子设备和计算机可读存储介质。
[0004] 根据本发明的一个方面,提供了一种代码静态分析方法,其中,该方法包括:
[0005] 接收用户提交的代码静态分析结果数据,并进行验证分析;
[0006] 通过链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中;
[0007] 以及,通过区块链技术,向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币
[0008] 可选地,该方法进一步包括:
[0009] 当接收到用户的权限兑换请求时,根据接收到的权限兑换请求中的虚拟货币的指定数量,设定该用户的代码静态分析的使用权限;
[0010] 或者,当接收到用户的指定货币兑换请求时,将用户的账户中的指定数量的虚拟货币,兑换成与指定数量的虚拟货币对应的一定数量的指定货币,将兑换的一定数量的指定货币记录在该用户的账户中。
[0011] 可选地,所述用户提交的代码静态分析结果数据包括如下的一种或多种:
[0012] 代码样本的分析结果数据;
[0013] 已分析的代码样本数据;
[0014] 用于代码静态分析的分析规则代码数据。
[0015] 可选地,所述区块链的指定区块包括保存用于代码静态分析的分析规则代码的区块、保存代码样本的区块;
[0016] 所述将验证通过的代码静态分析结果数据保存至区块链的指定区块中包括:
[0017] 当验证通过的代码静态分析结果数据是已分析的代码样本数据时,将该已分析的代码样本数据作为一条新的数据写入区块链的保存有代码样本的区块中;和/或,[0018] 当验证通过的代码静态分析结果数据是用于代码静态分析的分析规则代码数据,将该用于代码静态分析的分析规则代码数据作为一条新的数据写入区块链的保存用于代码静态分析的分析规则代码的区块中。
[0019] 可选地,所述区块链的指定区块还包括保存当前代码静态分析的误报率和漏测率;该方法进一步包括:
[0020] 获取所述区块链的指定区块中的代码样本增加后的新的代码静态分析的误报率和漏测率,和/或,获取使用新写入的用于代码静态分析的分析规则代码进行代码静态分析后的新的代码静态分析的误报率和漏测率;
[0021] 将获取的新的代码静态分析的误报率和漏测率作为一条新的数据写入所述区块链的保存代码静态分析的误报率和漏测率的区块中。
[0022] 可选地,所述接收用户提交的代码静态分析结果数据,并进行验证分析包括:
[0023] 将用户提交的代码静态分析结果数据发送至验证人员处,以便所述验证人员验证用户提交的代码静态分析结果数据是否有效;
[0024] 接收所述验证人员返回的验证结果;
[0025] 当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0026] 可选地,所述验证结果中还包括所述验证人员的权限信息;该方法进一步包括:
[0027] 根据所述验证人员的权限信息,判断所述验证人员是否有向所述区块链的指定区块中写入数据的权限;
[0028] 若判断为是,且当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0029] 可选地,所述根据所述验证人员的权限信息,判断所述验证人员是否有向所述区块链的指定区块中写入数据的权限包括:
[0030] 利用托管平台github的权限管理技术,设定验证人员的权限。
[0031] 根据本发明的另一方面,提供了一种代码静态分析装置,其中,该装置包括:
[0032] 接收单元,适于接收用户提交的代码静态分析结果数据,并进行验证分析;
[0033] 保存单元,适于通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中;
[0034] 分发单元,适于通过区块链技术,向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币。
[0035] 可选地,该装置进一步包括:
[0036] 兑换单元,适于当接收到用户的权限兑换请求时,根据接收到的权限兑换请求中的虚拟货币的指定数量,设定该用户的代码静态分析的使用权限;或者,当接收到用户的指定货币兑换请求时,将用户的账户中的指定数量的虚拟货币,兑换成与指定数量的虚拟货币对应的一定数量的指定货币,将兑换的一定数量的指定货币记录在该用户的账户中。
[0037] 可选地,所述用户提交的代码静态分析结果数据包括如下的一种或多种:
[0038] 代码样本的分析结果数据;
[0039] 已分析的代码样本数据;
[0040] 用于代码静态分析的分析规则代码数据。
[0041] 可选地,所述区块链的指定区块包括保存用于代码静态分析的分析规则代码的区块、保存代码样本的区块;
[0042] 所述保存单元,适于当验证通过的代码静态分析结果数据是已分析的代码样本数据时,将该已分析的代码样本数据作为一条新的数据写入区块链的保存有代码样本的区块中;和/或,当验证通过的代码静态分析结果数据是用于代码静态分析的分析规则代码数据,将该用于代码静态分析的分析规则代码数据作为一条新的数据写入区块链的保存用于代码静态分析的分析规则代码的区块中。
[0043] 可选地,所述区块链的指定区块还包括保存当前代码静态分析的误报率和漏测率;
[0044] 所述保存单元,还适于获取所述区块链的指定区块中的代码样本增加后的新的代码静态分析的误报率和漏测率,和/或,获取使用新写入的用于代码静态分析的分析规则代码进行代码静态分析后的新的代码静态分析的误报率和漏测率;将获取的新的代码静态分析的误报率和漏测率作为一条新的数据写入所述区块链的保存代码静态分析的误报率和漏测率的区块中。
[0045] 可选地,
[0046] 所述接收单元,适于将用户提交的代码静态分析结果数据发送至验证人员处,以便所述验证人员验证用户提交的代码静态分析结果数据是否有效;接收所述验证人员返回的验证结果;
[0047] 所述保存单元,适于当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0048] 可选地,所述验证结果中还包括所述验证人员的权限信息;
[0049] 所述保存单元,适于根据所述验证人员的权限信息,判断所述验证人员是否有向所述区块链的指定区块中写入数据的权限;若判断为是,且当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0050] 可选地,
[0051] 所述保存单元,适于利用托管平台github的权限管理技术,设定验证人员的权限。
[0052] 根据本发明的又一方面,提供了一种电子设备,其中,该电子设备包括:
[0053] 处理器;以及,
[0054] 被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行根据前述的方法。
[0055] 根据本发明的再一方面,提供了一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现前述的方法。
[0056] 根据本发明的技术方案,接收用户提交的代码静态分析结果数据,并进行验证分析;通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中;以及,通过区块链技术,向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币。通过本技术方案,因为可以获得一定数量的虚拟货币,会提高用户提交代码静态分析结果数据的兴趣,另外,根据用户提交的代码静态分析结果数据,得到用户对代码静态分析工具的分析反馈,有利于提供方掌握代码静态分析工具的运行情况以及分析规则的缺陷,进而有利于对代码静态分析工具的优化,通过用户对代码静态分析工具的使用体验。
[0057] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。附图说明
[0058] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0059] 图1示出了根据本发明一个实施例的代码静态分析方法的流程示意图;
[0060] 图2示出了根据本发明一个实施例的代码静态分析装置的结构示意图;
[0061] 图3示出了根据本发明一个实施例的电子设备的结构示意图;
[0062] 图4示出了根据本发明一个实施例的计算机可读存储介质的结构示意图。

具体实施方式

[0063] 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0064] 图1示出了根据本发明一个实施例的代码静态分析方法的流程示意图。如图1所示,该方法包括:
[0065] 步骤S110,接收用户提交的代码静态分析结果数据,并进行验证分析。
[0066] 基于本技术方案,用户为了得到虚拟货币,会积极的反馈代码静态分析结果数据。但是为了排除用户会提交一些无效的代码静态分析结果数据,在接收到用户提交的代码静态分析结果数据后,还需要对用户提交的代码静态分析结果数据进行验证分析。
[0067] 步骤S120,通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中。
[0068] 在用户提交的代码静态分析结果数据通过验证后,会进行保存的操作。
[0069] 对于区块链技术,狭义来讲,它是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。广义来讲,它是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。区块链技术具有不可篡改和可追溯性的特征。单个甚至多个节点对数据库修改无法影响其他节点的数据库,除非能控制整个网络中超过51%的节点同时修改,这几乎不可能发生。区块链中的每一笔交易都通过密码学方法与相邻两个区块串联,因此可以追溯到任何一笔交易的前世今生。
[0070] 在本实施例中,保存的操作是通过区块链技术实现的,是为了防止用户提交的代码静态分析结果数据被任意篡改,避免影响保存码静态分析结果数据的目的的实现,影响对代码静态分析工具的优化。具体是,将验证通过的代码静态分析结果数据保存至区块链的指定区块中。
[0071] 步骤S130,通过区块链技术,向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币。
[0072] 为了提高用户提交代码静态分析结果数据的积极性,在验证通过后,向对应的用户的账户中分发一定数量的虚拟货币,用户可以使用该虚拟货币完成对应的操作或业务。
[0073] 现有技术中,代码静态分析工具不可避免的会出现误报、漏测的情况,为了优化代码静态分析工具,需要根据代码静态分析工具在进行代码静态分析的结果情况,排查代码静态分析工具的缺陷,以便进行优化。但是在现有技术中,用户使用代码静态分析工具后,考虑到程序代码的隐私性或者其他方面的考虑,不会进行代码静态分析结果数据的反馈,提供方无法根据代码静态分析工具的实际运行情况排查缺陷,这给代码静态分析工具的优化带来一定的困难。
[0074] 通过本实施例的技术方案,因为可以获得一定数量的虚拟货币,会提高用户提交代码静态分析结果数据的兴趣,另外,根据用户提交的代码静态分析结果数据,得到用户对代码静态分析工具的分析反馈,有利于提供方掌握代码静态分析工具的运行情况以及分析规则的缺陷,进而有利于对代码静态分析工具的优化,通过用户对代码静态分析工具的使用体验。
[0075] 在本发明的一个实施例中,图1所示的方法的步骤S130向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币包括:设定预设分发规则;根据预设分发规则向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币。
[0076] 用户提交的代码静态分析结果数据的类型不同,以及有效的程度不同,因此,本实施例总预设分发规则,在该预设分发规则中规定有不同的代码静态分析结果数据的类型对应的应分发虚拟货币的数量;和/或,不同的有效程度对应的应分发虚拟货币的数量。
[0077] 在本发明的一个实施例中,图1所示的方法进一步包括:当接收到用户的权限兑换请求时,根据接收到的权限兑换请求中的虚拟货币的指定数量,设定该用户的代码静态分析的使用权限;或者,当接收到用户的指定货币兑换请求时,将用户的账户中的指定数量的虚拟货币,兑换成与指定数量的虚拟货币对应的一定数量的指定货币,将兑换的一定数量的指定货币记录在该用户的账户中。
[0078] 在本实施例中,用户可以利用得到的虚拟货币兑换代码静态分析工具的使用权限,不同数量的虚拟货币对应不同的使用权限;或者,将得到的虚拟货币兑换成其他指定货币,例如,Q币、微币、侠义元宝、纹等,以便用户使用兑换的指定货币,可以进一步提高用户提交代码静态分析结果数据的兴趣。
[0079] 在本发明的一个实施例中,图1所示的方法进一步包括:当接收到用户的指定会员兑换请求时,将用户的账户中的指定数量的虚拟货币,兑换成与指定数量的虚拟货币对应的指定应用的一定时间的会员使用权限。
[0080] 例如,将虚拟货币兑换成腾讯视频的会员、爱奇艺视频的会员等。
[0081] 在本发明的一个实施例中,在上述进行兑换之前,图1所示的方法进一步包括:判断该用户的账户中的虚拟货币数量是否大于或等于兑换请求中的虚拟货币的指定数量;若判断为是,执行兑换请求;若判断为否,向该用户发送虚拟货币数量不足的通知。
[0082] 在本发明的一个实施例中,图1所示的方法中的用户提交的代码静态分析结果数据包括如下的一种或多种:代码样本的分析结果数据;已分析的代码样本数据;用于代码静态分析的分析规则代码数据。
[0083] 在进行代码静态分析工具的优化中,需要的数据可以是代码样本的分析结果,判断代码静态分析的误报或漏测情况;也可以是已分析的代码样本数据,由于误报率或漏测率需要大量的代码样本的支持,根据用户提交的代码样本数据,可以获得误报率或漏测率;考虑到误报或漏测可能是分析规则代码的缺陷导致的,则用户可以根据自己掌握的代码静态分析的缺陷完成一个更好版本的用于代码静态分析的分析规则代码并将该代码数据提交,即用户也可以为代码静态分析工具的优化提供自己的修改方案。
[0084] 因为用户提交的代码静态分析结果数据的有效程度不一样,例如,在上述的用户提交的代码静态分析结果数据的类型中,有效程度从小到大依次是:代码样本的分析结果数据;已分析的代码样本数据;用于代码静态分析的分析规则代码数据。因此,在分发虚拟货币时,验证通过代码样本的分析结果数据对应的虚拟货币数量要小于验证通过的已分析的代码样本数据对应的虚拟货币数量;验证通过的已分析的代码样本数据对应的虚拟货币数量要小于验证通过的用于代码静态分析的分析规则代码数据对应的虚拟货币的数量。
[0085] 在本发明的一个实施例中,图1所示的方法中的区块链的指定区块包括保存用于代码静态分析的分析规则代码的区块、保存代码样本的区块。也就是说,在区块链中保存有代码静态分析工具的各条分析规则的详情,即各条分析规则对应的用于代码静态分析的分析规则代码。
[0086] 那么在进行保存的时候需要对应保存,图1所示的方法的步骤S120中的将验证通过的代码静态分析结果数据保存至区块链的指定区块中包括:当验证通过的代码静态分析结果数据是已分析的代码样本数据时,将该已分析的代码样本数据作为一条新的数据写入区块链的保存有代码样本的区块中;和/或,当验证通过的代码静态分析结果数据是用于代码静态分析的分析规则代码数据,将该用于代码静态分析的分析规则代码数据作为一条新的数据写入区块链的保存用于代码静态分析的分析规则代码的区块中。
[0087] 在本实施例中,不同的代码静态分析结果数据会保存至相应的区块中,考虑到,一个代码静态分析工具有会有不同的分析规则,则对应不同分析规则的代码静态分析结果数据会与对应的分析规则对应保存。
[0088] 进一步地,区块链的指定区块还包括保存当前代码静态分析的误报率和漏测率,也就是说,在区块链中保存各条分析规则对应的误报率和漏测率。
[0089] 图1所示的方法进一步包括:获取区块链的指定区块中的代码样本增加后的新的代码静态分析的误报率和漏测率,和/或,获取使用新写入的用于代码静态分析的分析规则代码进行代码静态分析后的新的代码静态分析的误报率和漏测率;将获取的新的代码静态分析的误报率和漏测率作为一条新的数据写入区块链的保存代码静态分析的误报率和漏测率的区块中。
[0090] 区块链中保存的误报率和漏测率是需要实时更新的,特别是,在新的已分析的代码样本数据写入,和/或,有新的用于代码静态分析的分析规则代码数据写入后,会影响误报率和漏测率,则需要获取新的误报率和漏测率,将新的误报率和漏测率作为一条新的数据写入区块链的保存代码静态分析的误报率和漏测率的区块中。
[0091] 需要说明的是,因为区块链技术具有不可篡改和可追溯性的特征,这里在向区块中写入数据时,都是作为一条新的数据写入的,这样根据区块中数据的存储情况,还可以获取到某一相应的信息的历史更改或历史操作情况,例如,用于代码静态分析的分析规则代码都经历了哪些修改,或者,代码静态分析工具的误报率和漏测率的趋势等。
[0092] 在本发明的一个实施例中,图1所示的步骤S110中的接收用户提交的代码静态分析结果数据,并进行验证分析包括:根据预设的验证规则对用户提交的代码静态分析结果数据进行验证。
[0093] 这里的验证规则可以根据需求进行设定,判断用户提交的代码静态分析结果数据是否有效,或者是否达到了预期的效果。
[0094] 在本发明的一个实施例中,图1所示的步骤S110中的接收用户提交的代码静态分析结果数据,并进行验证分析包括:将用户提交的代码静态分析结果数据发送至验证人员处,以便验证人员验证用户提交的代码静态分析结果数据是否有效;接收验证人员返回的验证结果;当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0095] 在本实施例中,对用户提交的代码静态分析结果数据的验证分析是人工完成的,这样可以从人工的度,对用户提交的代码静态分析结果数据进行全面的验证。在验证结束后,验证人员会返回相应的验证结果,例如验证通过或验证不通过。因为保存到区块链中的代码静态分析结果数据是需要起到一定的作用的,所以只有验证通过的代码静态分析结果数据才会被保存至区块链的指定区块中。
[0096] 进一步地,上述中的验证结果中还包括验证人员的权限信息;则图1所示的方法进一步包括:根据验证人员的权限信息,判断验证人员是否有向区块链的指定区块中写入数据的权限;若判断为是,且当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0097] 考虑到区块链的安全性,对区块链的写入操作是需要有写入权限的才可以执行的,因为本技术方案中的写入操作是自动完成的,则权限的设定和验证就放在了对验证人员的验证上,即给验证人员设定相应的操作权限,例如读取数据的权限,写入数据的权限、即可写入又可读取的权限。
[0098] 因为是需要将验证通过的代码静态分析结果数据保存至区块链的指定区块中,在本实施例中,仅验证验证人员是否有写入数据的权限。只有在验证通过,且该验证通过的结果是具有写入数据权限的验证人员返回的情况下,才执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0099] 优选地,上述的根据验证人员的权限信息,判断验证人员是否有向区块链的指定区块中写入数据的权限包括:利用托管平台github的权限管理技术,设定验证人员的权限。
[0100] 本实施例中,是通过托管平台github的权限管理技术,设定验证人员的权限,以及对验证人员的权项进行管理。github是一个面向开源及私有软件项目的托管平台,因为只支持git作为唯一的版本库格式进行托管,故名github。
[0101] 图2示出了根据本发明一个实施例的代码静态分析装置的结构示意图。如图2所示,该代码静态分析装置200包括:
[0102] 接收单元210,适于接收用户提交的代码静态分析结果数据,并进行验证分析。
[0103] 基于本技术方案,用户为了得到虚拟货币,会积极的反馈代码静态分析结果数据。但是为了排除用户会提交一些无效的代码静态分析结果数据,在接收到用户提交的代码静态分析结果数据后,还需要对用户提交的代码静态分析结果数据进行验证分析。
[0104] 保存单元220,适于通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中。
[0105] 在用户提交的代码静态分析结果数据通过验证后,会进行保存的操作。
[0106] 对于区块链技术,狭义来讲,它是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。广义来讲,它是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。区块链技术具有不可篡改和可追溯性的特征。单个甚至多个节点对数据库的修改无法影响其他节点的数据库,除非能控制整个网络中超过51%的节点同时修改,这几乎不可能发生。区块链中的每一笔交易都通过密码学方法与相邻两个区块串联,因此可以追溯到任何一笔交易的前世今生。
[0107] 在本实施例中,保存的操作是通过区块链技术实现的,是为了防止用户提交的代码静态分析结果数据被任意篡改,避免影响保存码静态分析结果数据的目的的实现,影响对代码静态分析工具的优化。具体是,将验证通过的代码静态分析结果数据保存至区块链的指定区块中。
[0108] 分发单元230,适于通过区块链技术,向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币。
[0109] 为了提高用户提交代码静态分析结果数据的积极性,在验证通过后,向对应的用户的账户中分发一定数量的虚拟货币,用户可以使用该虚拟货币完成对应的操作或业务。
[0110] 现有技术中,代码静态分析工具不可避免的会出现误报、漏测的情况,为了优化代码静态分析工具,需要根据代码静态分析工具在进行代码静态分析的结果情况,排查代码静态分析工具的缺陷,以便进行优化。但是在现有技术中,用户使用代码静态分析工具后,考虑到程序代码的隐私性或者其他方面的考虑,不会进行代码静态分析结果数据的反馈,提供方无法根据代码静态分析工具的实际运行情况排查缺陷,这给代码静态分析工具的优化带来一定的困难。
[0111] 通过本实施例的技术方案,因为可以获得一定数量的虚拟货币,会提高用户提交代码静态分析结果数据的兴趣,另外,根据用户提交的代码静态分析结果数据,得到用户对代码静态分析工具的分析反馈,有利于提供方掌握代码静态分析工具的运行情况以及分析规则的缺陷,进而有利于对代码静态分析工具的优化,通过用户对代码静态分析工具的使用体验。
[0112] 在本发明的一个实施例中,图2所示的装置的分发单元230,适于设定预设分发规则;根据预设分发规则向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币。
[0113] 用户提交的代码静态分析结果数据的类型不同,以及有效的程度不同,因此,本实施例总预设分发规则,在该预设分发规则中规定有不同的代码静态分析结果数据的类型对应的应分发虚拟货币的数量;和/或,不同的有效程度对应的应分发虚拟货币的数量。
[0114] 在本发明的一个实施例中,图2所示的装置进一步包括:
[0115] 兑换单元,适于当接收到用户的权限兑换请求时,根据接收到的权限兑换请求中的虚拟货币的指定数量,设定该用户的代码静态分析的使用权限;或者,当接收到用户的指定货币兑换请求时,将用户的账户中的指定数量的虚拟货币,兑换成与指定数量的虚拟货币对应的一定数量的指定货币,将兑换的一定数量的指定货币记录在该用户的账户中。
[0116] 在本实施例中,用户可以利用得到的虚拟货币兑换代码静态分析工具的使用权限,不同数量的虚拟货币对应不同的使用权限;或者,将得到的虚拟货币兑换成其他指定货币,例如,Q币、微币、侠义元宝、纹银等,以便用户使用兑换的指定货币,可以进一步提高用户提交代码静态分析结果数据的兴趣。
[0117] 在本发明的一个实施例中,上述兑换单元,还适于当接收到用户的指定会员兑换请求时,将用户的账户中的指定数量的虚拟货币,兑换成与指定数量的虚拟货币对应的指定应用的一定时间的会员使用权限。
[0118] 例如,将虚拟货币兑换成腾讯视频的会员、爱奇艺视频的会员等。
[0119] 在本发明的一个实施例中,在上述进行兑换之前,兑换单元,还适于判断该用户的账户中的虚拟货币数量是否大于或等于兑换请求中的虚拟货币的指定数量;若判断为是,执行兑换请求;若判断为否,向该用户发送虚拟货币数量不足的通知。
[0120] 在本发明的一个实施例中,上述的用户提交的代码静态分析结果数据包括如下的一种或多种:代码样本的分析结果数据;已分析的代码样本数据;用于代码静态分析的分析规则代码数据。
[0121] 在进行代码静态分析工具的优化中,需要的数据可以是代码样本的分析结果,判断代码静态分析的误报或漏测情况;也可以是已分析的代码样本数据,由于误报率或漏测率需要大量的代码样本的支持,根据用户提交的代码样本数据,可以获得误报率或漏测率;考虑到误报或漏测可能是分析规则代码的缺陷导致的,则用户可以根据自己掌握的代码静态分析的缺陷完成一个更好版本的用于代码静态分析的分析规则代码并将该代码数据提交,即用户也可以为代码静态分析工具的优化提供自己的修改方案。
[0122] 因为用户提交的代码静态分析结果数据的有效程度不一样,例如,在上述的用户提交的代码静态分析结果数据的类型中,有效程度从小到大依次是:代码样本的分析结果数据;已分析的代码样本数据;用于代码静态分析的分析规则代码数据。因此,在分发虚拟货币时,验证通过代码样本的分析结果数据对应的虚拟货币数量要小于验证通过的已分析的代码样本数据对应的虚拟货币数量;验证通过的已分析的代码样本数据对应的虚拟货币数量要小于验证通过的用于代码静态分析的分析规则代码数据对应的虚拟货币的数量。
[0123] 在本发明的一个实施例中,上述的区块链的指定区块包括保存用于代码静态分析的分析规则代码的区块、保存代码样本的区块。也就是说,在区块链中保存有代码静态分析工具的各条分析规则的详情,即各条分析规则对应的用于代码静态分析的分析规则代码。
[0124] 图2所示的保存单元220,适于当验证通过的代码静态分析结果数据是已分析的代码样本数据时,将该已分析的代码样本数据作为一条新的数据写入区块链的保存有代码样本的区块中;和/或,当验证通过的代码静态分析结果数据是用于代码静态分析的分析规则代码数据,将该用于代码静态分析的分析规则代码数据作为一条新的数据写入区块链的保存用于代码静态分析的分析规则代码的区块中。
[0125] 在本实施例中,不同的代码静态分析结果数据会保存至相应的区块中,考虑到,一个代码静态分析工具有会有不同的分析规则,则对应不同分析规则的代码静态分析结果数据会与对应的分析规则对应保存。
[0126] 进一步地,区块链的指定区块还包括保存当前代码静态分析的误报率和漏测率,也就是说,在区块链中保存各条分析规则对应的误报率和漏测率。
[0127] 图2所示的保存单元220,还适于获取区块链的指定区块中的代码样本增加后的新的代码静态分析的误报率和漏测率,和/或,获取使用新写入的用于代码静态分析的分析规则代码进行代码静态分析后的新的代码静态分析的误报率和漏测率;将获取的新的代码静态分析的误报率和漏测率作为一条新的数据写入区块链的保存代码静态分析的误报率和漏测率的区块中。
[0128] 区块链中保存的误报率和漏测率是需要实时更新的,特别是,在新的已分析的代码样本数据写入,和/或,有新的用于代码静态分析的分析规则代码数据写入后,会影响误报率和漏测率,则需要获取新的误报率和漏测率,将新的误报率和漏测率作为一条新的数据写入区块链的保存代码静态分析的误报率和漏测率的区块中。
[0129] 需要说明的是,因为区块链技术具有不可篡改和可追溯性的特征,这里在向区块中写入数据时,都是作为一条新的数据写入的,这样根据区块中数据的存储情况,还可以获取到某一相应的信息的历史更改或历史操作情况,例如,用于代码静态分析的分析规则代码都经历了哪些修改,或者,代码静态分析工具的误报率和漏测率的趋势等。
[0130] 在本发明的一个实施例中,图2所示的接收单元210,适于接收用户提交的代码静态分析结果数据,并进行验证分析包括:根据预设的验证规则对用户提交的代码静态分析结果数据进行验证。
[0131] 这里的验证规则可以根据需求进行设定,判断用户提交的代码静态分析结果数据是否有效,或者是否达到了预期的效果。
[0132] 在本发明的一个实施例中,图2所示的接收单元210,适于将用户提交的代码静态分析结果数据发送至验证人员处,以便验证人员验证用户提交的代码静态分析结果数据是否有效;接收验证人员返回的验证结果;
[0133] 保存单元,适于当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0134] 在本实施例中,对用户提交的代码静态分析结果数据的验证分析是人工完成的,这样可以从人工的角度,对用户提交的代码静态分析结果数据进行全面的验证。在验证结束后,验证人员会返回相应的验证结果,例如验证通过或验证不通过。因为保存到区块链中的代码静态分析结果数据是需要起到一定的作用的,所以只有验证通过的代码静态分析结果数据才会被保存至区块链的指定区块中。
[0135] 进一步地,上述中的验证结果中还包括验证人员的权限信息。
[0136] 图2所示的保存单元220,适于根据验证人员的权限信息,判断验证人员是否有向区块链的指定区块中写入数据的权限;若判断为是,且当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0137] 考虑到区块链的安全性,对区块链的写入操作是需要有写入权限的才可以执行的,因为本技术方案中的写入操作是自动完成的,则权限的设定和验证就放在了对验证人员的验证上,即给验证人员设定相应的操作权限,例如读取数据的权限,写入数据的权限、即可写入又可读取的权限。
[0138] 因为是需要将验证通过的代码静态分析结果数据保存至区块链的指定区块中,在本实施例中,仅验证验证人员是否有写入数据的权限。只有在验证通过,且该验证通过的结果是具有写入数据权限的验证人员返回的情况下,才执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0139] 优选地,上述的保存单元220,适于利用托管平台github的权限管理技术,设定验证人员的权限。
[0140] 本实施例中,是通过托管平台github的权限管理技术,设定验证人员的权限,以及对验证人员的权项进行管理。github是一个面向开源及私有软件项目的托管平台,因为只支持git作为唯一的版本库格式进行托管,故名github。
[0141] 优选地,图2所示的代码静态分析装置引用在代码静态分析工具中。
[0142] 这样将代码静态分析工具的使用、反馈、保存、改进、奖励统一到代码静态分析工具,既能让用户使用到高精度的代码静态分析工具,又可以实现代码静态分析工具的运行机制不断改进的效果。
[0143] 综上所述,根据本发明的技术方案,接收用户提交的代码静态分析结果数据,并进行验证分析;通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中;以及,通过区块链技术,向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币。通过本技术方案,因为可以获得一定数量的虚拟货币,会提高用户提交代码静态分析结果数据的兴趣,另外,根据用户提交的代码静态分析结果数据,得到用户对代码静态分析工具的分析反馈,有利于提供方掌握代码静态分析工具的运行情况以及分析规则的缺陷,进而有利于对代码静态分析工具的优化,通过用户对代码静态分析工具的使用体验。
[0144] 需要说明的是:
[0145] 在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
[0146] 在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0147] 类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
[0148] 本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
[0149] 此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
[0150] 本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的代码静态分析装置、电子设备、计算机可读存储介质中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
[0151] 例如,图3示出了根据本发明一个实施例的电子设备的结构示意图。该电子设备300传统上包括处理器310和被安排成存储计算机可执行指令(程序代码)的存储器320。存储器320可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器320具有存储用于执行图1所示的以及各实施例中的任何方法步骤的程序代码340的存储空间330。例如,用于程序代码的存储空间330可以包括分别用于实现上面的方法中的各种步骤的各个程序代码340。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为例如图4所述的计算机可读存储介质400。该计算机可读存储介质400可以具有与图3的电子设备中的存储器320类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元存储有用于执行根据本发明的方法步骤的程序代码410,即可以由诸如
310之类的处理器读取的程序代码,当这些程序代码由电子设备运行时,导致该电子设备执行上面所描述的方法中的各个步骤。
[0152] 应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
[0153] 本发明公开了A1、一种代码静态分析方法,其中,该方法包括:
[0154] 接收用户提交的代码静态分析结果数据,并进行验证分析;
[0155] 通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中;
[0156] 以及,通过区块链技术,向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币。
[0157] A2、如A1所述的方法,其中,该方法进一步包括:
[0158] 当接收到用户的权限兑换请求时,根据接收到的权限兑换请求中的虚拟货币的指定数量,设定该用户的代码静态分析的使用权限;
[0159] 或者,当接收到用户的指定货币兑换请求时,将用户的账户中的指定数量的虚拟货币,兑换成与指定数量的虚拟货币对应的一定数量的指定货币,将兑换的一定数量的指定货币记录在该用户的账户中。
[0160] A3、如A1所述的方法,其中,所述用户提交的代码静态分析结果数据包括如下的一种或多种:
[0161] 代码样本的分析结果数据;
[0162] 已分析的代码样本数据;
[0163] 用于代码静态分析的分析规则代码数据。
[0164] A4、如A1所述的方法,其中,所述区块链的指定区块包括保存用于代码静态分析的分析规则代码的区块、保存代码样本的区块;
[0165] 所述将验证通过的代码静态分析结果数据保存至区块链的指定区块中包括:
[0166] 当验证通过的代码静态分析结果数据是已分析的代码样本数据时,将该已分析的代码样本数据作为一条新的数据写入区块链的保存有代码样本的区块中;和/或,[0167] 当验证通过的代码静态分析结果数据是用于代码静态分析的分析规则代码数据,将该用于代码静态分析的分析规则代码数据作为一条新的数据写入区块链的保存用于代码静态分析的分析规则代码的区块中。
[0168] A5、如A4所述的方法,其中,所述区块链的指定区块还包括保存当前代码静态分析的误报率和漏测率;该方法进一步包括:
[0169] 获取所述区块链的指定区块中的代码样本增加后的新的代码静态分析的误报率和漏测率,和/或,获取使用新写入的用于代码静态分析的分析规则代码进行代码静态分析后的新的代码静态分析的误报率和漏测率;
[0170] 将获取的新的代码静态分析的误报率和漏测率作为一条新的数据写入所述区块链的保存代码静态分析的误报率和漏测率的区块中。
[0171] A6、如A1所述的方法,其中,所述接收用户提交的代码静态分析结果数据,并进行验证分析包括:
[0172] 将用户提交的代码静态分析结果数据发送至验证人员处,以便所述验证人员验证用户提交的代码静态分析结果数据是否有效;
[0173] 接收所述验证人员返回的验证结果;
[0174] 当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0175] A7、如A6所述的方法,其中,所述验证结果中还包括所述验证人员的权限信息;该方法进一步包括:
[0176] 根据所述验证人员的权限信息,判断所述验证人员是否有向所述区块链的指定区块中写入数据的权限;
[0177] 若判断为是,且当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0178] A8、如A7所述的方法,其中,所述根据所述验证人员的权限信息,判断所述验证人员是否有向所述区块链的指定区块中写入数据的权限包括:
[0179] 利用托管平台github的权限管理技术,设定验证人员的权限。
[0180] 本发明还公开了B9、一种代码静态分析装置,其中,该装置包括:
[0181] 接收单元,适于接收用户提交的代码静态分析结果数据,并进行验证分析;
[0182] 保存单元,适于通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中;
[0183] 分发单元,适于通过区块链技术,向验证通过的用户的账户分发与其提交的代码静态分析结果数据对应的一定数量的虚拟货币。
[0184] B10、如B9所述的装置,其中,该装置进一步包括:
[0185] 兑换单元,适于当接收到用户的权限兑换请求时,根据接收到的权限兑换请求中的虚拟货币的指定数量,设定该用户的代码静态分析的使用权限;或者,当接收到用户的指定货币兑换请求时,将用户的账户中的指定数量的虚拟货币,兑换成与指定数量的虚拟货币对应的一定数量的指定货币,将兑换的一定数量的指定货币记录在该用户的账户中。
[0186] B11、如B9所述的装置,其中,所述用户提交的代码静态分析结果数据包括如下的一种或多种:
[0187] 代码样本的分析结果数据;
[0188] 已分析的代码样本数据;
[0189] 用于代码静态分析的分析规则代码数据。
[0190] B12、如B9所述的装置,其中,所述区块链的指定区块包括保存用于代码静态分析的分析规则代码的区块、保存代码样本的区块;
[0191] 所述保存单元,适于当验证通过的代码静态分析结果数据是已分析的代码样本数据时,将该已分析的代码样本数据作为一条新的数据写入区块链的保存有代码样本的区块中;和/或,当验证通过的代码静态分析结果数据是用于代码静态分析的分析规则代码数据,将该用于代码静态分析的分析规则代码数据作为一条新的数据写入区块链的保存用于代码静态分析的分析规则代码的区块中。
[0192] B13、如B12所述的装置,其中,所述区块链的指定区块还包括保存当前代码静态分析的误报率和漏测率;
[0193] 所述保存单元,还适于获取所述区块链的指定区块中的代码样本增加后的新的代码静态分析的误报率和漏测率,和/或,获取使用新写入的用于代码静态分析的分析规则代码进行代码静态分析后的新的代码静态分析的误报率和漏测率;将获取的新的代码静态分析的误报率和漏测率作为一条新的数据写入所述区块链的保存代码静态分析的误报率和漏测率的区块中。
[0194] B14、如B9所述的装置,其中,
[0195] 所述接收单元,适于将用户提交的代码静态分析结果数据发送至验证人员处,以便所述验证人员验证用户提交的代码静态分析结果数据是否有效;接收所述验证人员返回的验证结果;
[0196] 所述保存单元,适于当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0197] B15、如B14所述的装置,其中,所述验证结果中还包括所述验证人员的权限信息;
[0198] 所述保存单元,适于根据所述验证人员的权限信息,判断所述验证人员是否有向所述区块链的指定区块中写入数据的权限;若判断为是,且当接收到的验证结果是验证通过时,再执行通过区块链技术,将验证通过的代码静态分析结果数据保存至区块链的指定区块中的步骤。
[0199] B16、如B15所述的装置,其中,
[0200] 所述保存单元,适于利用托管平台github的权限管理技术,设定验证人员的权限。
[0201] 本发明还公开了C17、一种电子设备,其中,该电子设备包括:
[0202] 处理器;以及,
[0203] 被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行根据A1~A8中任一项所述的方法。
[0204] 本发明还公开了D18、一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现A1~A8中任一项所述的方法。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈